1
1
"""
2
- struct Model{F,argnames,defaultnames,missings,Targs,Tdefaults}
2
+ struct Model{F,argnames,defaultnames,missings,Targs,Tdefaults,Ctx<:AbstactContext }
3
3
f::F
4
4
args::NamedTuple{argnames,Targs}
5
5
defaults::NamedTuple{defaultnames,Tdefaults}
6
+ context::Ctx=DefaultContext()
6
7
end
7
8
8
9
A `Model` struct with model evaluation function of type `F`, arguments of names `argnames`
9
- types `Targs`, default arguments of names `defaultnames` with types `Tdefaults`, and missing
10
- arguments `missings`.
10
+ types `Targs`, default arguments of names `defaultnames` with types `Tdefaults`, missing
11
+ arguments `missings`, and evaluation context of type `Ctx` .
11
12
12
13
Here `argnames`, `defaultargnames`, and `missings` are tuples of symbols, e.g. `(:a, :b)`.
14
+ `context` is by default `DefaultContext()`.
13
15
14
16
An argument with a type of `Missing` will be in `missings` by default. However, in
15
17
non-traditional use-cases `missings` can be defined differently. All variables in `missings`
@@ -1077,7 +1079,7 @@ end
1077
1079
Return an array of log joint probabilities evaluated at each sample in an MCMC `chain`.
1078
1080
1079
1081
# Examples
1080
-
1082
+
1081
1083
```jldoctest
1082
1084
julia> using MCMCChains, Distributions
1083
1085
@@ -1093,7 +1095,7 @@ julia> # construct a chain of samples using MCMCChains
1093
1095
chain = Chains(rand(10, 2, 3), [:s, :m]);
1094
1096
1095
1097
julia> logjoint(demo_model([1., 2.]), chain);
1096
- ```
1098
+ ```
1097
1099
"""
1098
1100
function logjoint (model:: Model , chain:: AbstractMCMC.AbstractChains )
1099
1101
var_info = VarInfo (model) # extract variables info from the model
@@ -1124,7 +1126,7 @@ end
1124
1126
Return an array of log prior probabilities evaluated at each sample in an MCMC `chain`.
1125
1127
1126
1128
# Examples
1127
-
1129
+
1128
1130
```jldoctest
1129
1131
julia> using MCMCChains, Distributions
1130
1132
@@ -1140,7 +1142,7 @@ julia> # construct a chain of samples using MCMCChains
1140
1142
chain = Chains(rand(10, 2, 3), [:s, :m]);
1141
1143
1142
1144
julia> logprior(demo_model([1., 2.]), chain);
1143
- ```
1145
+ ```
1144
1146
"""
1145
1147
function logprior (model:: Model , chain:: AbstractMCMC.AbstractChains )
1146
1148
var_info = VarInfo (model) # extract variables info from the model
@@ -1171,7 +1173,7 @@ end
1171
1173
Return an array of log likelihoods evaluated at each sample in an MCMC `chain`.
1172
1174
1173
1175
# Examples
1174
-
1176
+
1175
1177
```jldoctest
1176
1178
julia> using MCMCChains, Distributions
1177
1179
@@ -1187,7 +1189,7 @@ julia> # construct a chain of samples using MCMCChains
1187
1189
chain = Chains(rand(10, 2, 3), [:s, :m]);
1188
1190
1189
1191
julia> loglikelihood(demo_model([1., 2.]), chain);
1190
- ```
1192
+ ```
1191
1193
"""
1192
1194
function Distributions. loglikelihood (model:: Model , chain:: AbstractMCMC.AbstractChains )
1193
1195
var_info = VarInfo (model) # extract variables info from the model
0 commit comments