Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
Peter Jentsch
CovidAlertABM
Commits
54733796
Commit
54733796
authored
Jul 26, 2021
by
Peter Jentsch
Browse files
switch back to poissoncountsampler, much faster
parent
b8f8000d
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
6 additions
and
8 deletions
+6
-8
CovidAlertVaccinationModel/src/ABM/mixing_distributions.jl
CovidAlertVaccinationModel/src/ABM/mixing_distributions.jl
+2
-2
CovidAlertVaccinationModel/src/ABM/mixing_graphs.jl
CovidAlertVaccinationModel/src/ABM/mixing_graphs.jl
+0
-2
CovidAlertVaccinationModel/src/data.jl
CovidAlertVaccinationModel/src/data.jl
+4
-4
No files found.
CovidAlertVaccinationModel/src/ABM/mixing_distributions.jl
View file @
54733796
...
@@ -38,8 +38,8 @@ const contact_time_distributions = load_contact_time_distributions()
...
@@ -38,8 +38,8 @@ const contact_time_distributions = load_contact_time_distributions()
function
shift_contact_distributions
(
sampler_matrix
::
AbstractMatrix
{
T
},
proportion
)
where
T
function
shift_contact_distributions
(
sampler_matrix
::
AbstractMatrix
{
T
},
proportion
)
where
T
return
map
(
sampler_matrix
)
do
sampler
return
map
(
sampler_matrix
)
do
sampler
μ_old
=
mean
(
sampler
)
μ_old
=
sampler
.
μ
#
mean(sampler)
return
Poisson
(
μ_old
*
proportion
)
return
Distributions
.
PoissonCountSampler
(
Poisson
(
μ_old
*
proportion
)
)
end
end
end
end
...
...
CovidAlertVaccinationModel/src/ABM/mixing_graphs.jl
View file @
54733796
...
@@ -95,8 +95,6 @@ function time_dep_mixing_graphs(len,base_network,demographics,index_vectors,ws_m
...
@@ -95,8 +95,6 @@ function time_dep_mixing_graphs(len,base_network,demographics,index_vectors,ws_m
rest_static_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
daily
,
contact_time_distributions
.
rest
)
rest_static_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
daily
,
contact_time_distributions
.
rest
)
rest_weekly_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
twice_a_week
,
weekly_shift
(
contact_time_distributions
.
rest
))
rest_weekly_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
twice_a_week
,
weekly_shift
(
contact_time_distributions
.
rest
))
rest_justonce_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
otherwise
,
daily_shift
(
contact_time_distributions
.
rest
))
rest_justonce_edges
=
WeightedGraph
(
demographics
,
index_vectors
,
rest_matrix_tuple
.
otherwise
,
daily_shift
(
contact_time_distributions
.
rest
))
inf_network_list
=
[
home_static_edges
,
rest_static_edges
,
ws_justonce_edges
,
rest_justonce_edges
]
inf_network_list
=
[
home_static_edges
,
rest_static_edges
,
ws_justonce_edges
,
rest_justonce_edges
]
...
...
CovidAlertVaccinationModel/src/data.jl
View file @
54733796
...
@@ -101,9 +101,9 @@ function load_mixing_matrices()
...
@@ -101,9 +101,9 @@ function load_mixing_matrices()
return
map
(
t
->
from_mean
.
(
Geometric
{
Float64
},
t
),
workschool_mixing
),
map
(
t
->
from_mean
.
(
Geometric
{
Float64
},
t
),
rest_mixing
)
return
map
(
t
->
from_mean
.
(
Geometric
{
Float64
},
t
),
workschool_mixing
),
map
(
t
->
from_mean
.
(
Geometric
{
Float64
},
t
),
rest_mixing
)
end
end
#
function make_sampler(λ)
function
make_sampler
(
λ
)
#
return Distributions.PoissonADSampler(λ)#Distributions.DiscreteNonParametricSampler(0:durmax,[pdf(Poisson(λ),x) for x in 0:durmax])
return
Distributions
.
PoissonADSampler
(
λ
)
#Distributions.DiscreteNonParametricSampler(0:durmax,[pdf(Poisson(λ),x) for x in 0:durmax])
#
end
end
function
load_contact_time_distributions
()
function
load_contact_time_distributions
()
distkey
=
"Distributions.Poisson"
distkey
=
"Distributions.Poisson"
fnames
=
(
fnames
=
(
...
@@ -113,7 +113,7 @@ function load_contact_time_distributions()
...
@@ -113,7 +113,7 @@ function load_contact_time_distributions()
)
)
contact_distributions_tuple
=
map
(
fnames
)
do
fname
contact_distributions_tuple
=
map
(
fnames
)
do
fname
dat
=
deserialize
(
joinpath
(
PACKAGE_FOLDER
,
"intervals_model_output"
,
"simulation_output"
,
"
$
fname.dat"
))
dat
=
deserialize
(
joinpath
(
PACKAGE_FOLDER
,
"intervals_model_output"
,
"simulation_output"
,
"
$
fname.dat"
))
return
map
(
p
->
Poisson
(
mode
(
p
.
particles
)),
as_symmetric_matrix
(
dat
[
distkey
]
.
P
))
return
map
(
p
->
make_sampler
(
mode
(
p
.
particles
)),
as_symmetric_matrix
(
dat
[
distkey
]
.
P
))
end
end
return
contact_distributions_tuple
return
contact_distributions_tuple
end
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment