# Error while using infer(res)

**URL:** <https://discourse.pumas.ai/t/error-while-using-infer-res/291>\
**Category:** Estimation\
**Created:** [February 29, 2020, 2:53pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291 "2020-02-29T14:53:28Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![sai\_matcha](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/sai_matcha/32/297_2.png) [@sai\_matcha](https://discourse.pumas.ai/u/sai_matcha)\
**Post date:** [February 29, 2020, 2:53pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/1 "2020-02-29T14:53:28Z")

</div>

```auto
using Pumas, Plots
twocompevsd = @model begin
@param begin
    tvKa ∈ RealDomain(lower=0)
    tvV1 ∈ RealDomain(lower=0)
    tvV2 ∈ RealDomain(lower=0)
    tvCL ∈ RealDomain(lower=0)
    tvQ ∈ RealDomain(lower=0)
    Ω ∈ PDiagDomain(5)
    σ ∈ RealDomain(lower=0)
end
@random begin
η ~ MvNormal(Ω)
end
@pre begin
Ka = tvKa*exp(η[1])
V = tvV1*exp(η[2])
V2 = tvV2*exp(η[3])
CL =tvCL*exp(η[4])
Q =tvQ*exp(η[5])
end
@dynamics begin
Depot' = -Ka*Depot
Central' = Ka*Depot - (CL/V)*Central + Q/V2*Peripheral - Q/V*Central
Peripheral' = -Q/V2*Peripheral + Q/V*Central
end
@derived begin
    Cp = @. Central/V
    dv ~ @. Normal(Cp,sqrt(Cp^2*σ))
end
end

param = (tvKa = 0.9, tvV1 = 50, tvV2 = 20, tvCL = 9, tvQ =12, Ω=Diagonal([0.09,0.09,0.09,0.09,0.09]), σ=0.04)

DR = DosageRegimen(1000,cmt=1,time=0)

population = Population(map(i->Subject(id=i,evs=DR),1:15))

obs = simobs(twocompevsd,population,param,obstimes=0.1:1:24)

plot(obs)

df = DataFrame(obs)

data = read_pumas(df,dvs=[:dv])

res = fit(twocompevsd,data,param,Pumas.FOCEI())

infer(res)

```

error

```auto
 infer(res)
Calculating: variance-covariance matrixERROR: DomainError with -4.435231697442742e-6:
sqrt will only return a complex result if called with a complex argument. Try sqrt(Complex(x)).
Stacktrace:
 [1] throw_complex_domainerror(::Symbol, ::Float64) at .\math.jl:32
 [2] sqrt at .\math.jl:492 [inlined]
 [3] _broadcast_getindex_evalf at .\broadcast.jl:630 [inlined]
 [4] _broadcast_getindex at .\broadcast.jl:603 [inlined]
 [5] _getindex at .\broadcast.jl:626 [inlined]
 [6] _broadcast_getindex at .\broadcast.jl:602 [inlined]
 [7] getindex at .\broadcast.jl:563 [inlined]
 [8] macro expansion at .\broadcast.jl:909 [inlined]
 [9] macro expansion at .\simdloop.jl:77 [inlined]
 [10] copyto! at .\broadcast.jl:908 [inlined]
 [11] copyto! at .\broadcast.jl:863 [inlined]
 [12] copy at .\broadcast.jl:839 [inlined]
 [13] materialize at .\broadcast.jl:819 [inlined]
 [14] unwhiten(::PDMats.PDiagMat{Float64,Array{Float64,1}}, ::SubArray{ForwardDiff.Dual{ForwardDiff.Tag{Pumas.var"#190#191"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Tuple{}},Float64},Float64,5},1,Array{ForwardDiff.Dual{ForwardDiff.Tag{Pumas.var"#190#191"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Tuple{}},Float64},Float64,5},1},Tuple{UnitRange{Int64}},true}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:2
 [15] transform_with at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\transforms.jl:295 [inlined]
 [16] _transform_tuple at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\TransformVariables\a4AMY\src\aggregation.jl:161 [inlined]
 [17] transform_tuple at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\TransformVariables\a4AMY\src\aggregation.jl:171 [inlined]
 [18] transform_with at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\TransformVariables\a4AMY\src\aggregation.jl:223 [inlined]
 [19] transform(::TransformVariables.TransformTuple{NamedTuple{(:η,),Tuple{Pumas.MvNormalTransform{MvNormal{Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},FillArrays.Zeros{Float64,1,Tuple{Base.OneTo{Int64}}}}}}}}, ::Array{ForwardDiff.Dual{ForwardDiff.Tag{Pumas.var"#190#191"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Tuple{}},Float64},Float64,5},1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\TransformVariables\a4AMY\src\generic.jl:196
 [20] (::Pumas.var"#190#191"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Tuple{}})(::Array{ForwardDiff.Dual{ForwardDiff.Tag{Pumas.var"#190#191"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Tuple{}},Float64},Float64,5},1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:685
 [21] #_derived_vηorth_gradient#189(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(Pumas._derived_vηorth_gradient), ::PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"}, ::Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}, ::NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:693
 [22] _derived_vηorth_gradient at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:684 [inlined]
 [23] #∂²l∂η²#195(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(Pumas.∂²l∂η²), ::PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"}, ::Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}, ::NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}, ::Array{Float64,1}, ::Pumas.FOCEI) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:728
 [24] ∂²l∂η² at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:728 [inlined]
 [25] (::Pumas.var"#_fgh!#146"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Pumas.FOCEI,Tuple{}})(::Float64, ::Array{Float64,1}, ::Nothing, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:223
 [26] (::NLSolversBase.var"#81#85"{NLSolversBase.InplaceObjective{Nothing,Nothing,Pumas.var"#_fgh!#146"{Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}},Pumas.FOCEI,Tuple{}},Nothing,Nothing},Float64})(::Array{Float64,1}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\NLSolversBase\mGaJg\src\objective_types\incomplete.jl:99
 [27] value_gradient!!(::NLSolversBase.TwiceDifferentiable{Float64,Array{Float64,1},Array{Float64,2},Array{Float64,1}}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\NLSolversBase\mGaJg\src\interface.jl:82
 [28] initial_state(::Optim.NewtonTrustRegion{Float64}, ::Optim.Options{Float64,Nothing}, ::NLSolversBase.TwiceDifferentiable{Float64,Array{Float64,1},Array{Float64,2},Array{Float64,1}}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Optim\SFpsz\src\multivariate\solvers\second_order\newton_trust_region.jl:298
 [29] optimize at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Optim\SFpsz\src\multivariate\optimize\optimize.jl:33 [inlined]
 [30] #_orth_empirical_bayes!#145(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(Pumas._orth_empirical_bayes!), ::Array{Float64,1}, ::PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"}, ::Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}, ::NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}, ::Pumas.FOCEI) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:248
 [31] _orth_empirical_bayes! at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:221 [inlined]
 [32] #_orth_empirical_bayes#143(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(Pumas._orth_empirical_bayes), ::PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"}, ::Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}, ::NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{Float64,Float64,Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}, ::Pumas.FOCEI) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:197
 [33] _orth_empirical_bayes at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:195 [inlined]
 [34] (::Pumas.var"#232#233"{Float64,Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},Pumas.FittedPumasModel{PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},1},Optim.MultivariateOptimizationResults{Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat},Float64,Array{Float64,1},Float64,Float64,Array{Optim.OptimizationState{Float64,Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat}},1},Bool},Pumas.FOCEI,Array{Array{Float64,1},1},Tuple{},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},Pumas.PDiagTransform,TransformVariables.ShiftedExp{true,Int64}}}}},Tuple{},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,Pumas.DiagonalTransform,TransformVariables.Identity}}},Float64,Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}})(::Array{Float64,1}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:1184
 [35] #finite_difference_jacobian!#40(::Float64, ::Float64, ::UnitRange{Int64}, ::Nothing, ::Bool, ::typeof(FiniteDiff.finite_difference_jacobian!), ::Array{Float64,2}, ::Pumas.var"#232#233"{Float64,Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},Pumas.FittedPumasModel{PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},1},Optim.MultivariateOptimizationResults{Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat},Float64,Array{Float64,1},Float64,Float64,Array{Optim.OptimizationState{Float64,Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat}},1},Bool},Pumas.FOCEI,Array{Array{Float64,1},1},Tuple{},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},Pumas.PDiagTransform,TransformVariables.ShiftedExp{true,Int64}}}}},Tuple{},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,TransformVariables.Identity,Pumas.DiagonalTransform,TransformVariables.Identity}}},Float64,Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}}}, ::Array{Float64,1}, ::FiniteDiff.JacobianCache{Array{Float64,1},Array{Float64,1},Array{Float64,1},UnitRange{Int64},Nothing,Val{:central},Float64}, ::Array{Float64,1}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\FiniteDiff\EBys0\src\jacobians.jl:372
 [36] (::FiniteDiff.var"#kw##finite_difference_jacobian!")(::NamedTuple{(:relstep, :absstep, :colorvec, :sparsity),Tuple{Float64,Float64,UnitRange{Int64},Nothing}}, ::typeof(FiniteDiff.finite_difference_jacobian!),
::Array{Float64,2}, ::Function, ::Array{Float64,1}, ::FiniteDiff.JacobianCache{Array{Float64,1},Array{Float64,1},Array{Float64,1},UnitRange{Int64},Nothing,Val{:central},Float64}, ::Array{Float64,1}) at .\none:0
 [37] (::FiniteDiff.var"#kw##finite_difference_jacobian!")(::NamedTuple{(:relstep, :absstep),Tuple{Float64,Float64}}, ::typeof(FiniteDiff.finite_difference_jacobian!), ::Array{Float64,2}, ::Function, ::Array{Float64,1}, ::Type{Val{:central}}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\FiniteDiff\EBys0\src\jacobians.jl:282
 [38] #_observed_information#231(::Float64, ::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(Pumas._observed_information), ::Pumas.FittedPumasModel{PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},1},Optim.MultivariateOptimizationResults{Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat},Float64,Array{Float64,1},Float64,Float64,Array{Optim.OptimizationState{Float64,Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat}},1},Bool},Pumas.FOCEI,Array{Array{Float64,1},1},Tuple{},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},Pumas.PDiagTransform,TransformVariables.ShiftedExp{true,Int64}}}}}, ::Val{true}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:1203
 [39] _observed_information at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:1161 [inlined]
 [40] #vcov#253(::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}}, ::typeof(vcov), ::Pumas.FittedPumasModel{PumasModel{ParamSet{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#27#34",var"#28#35",var"#29#36",ODEProblem{Nothing,Tuple{Nothing,Nothing},false,Nothing,ODEFunction{false,var"#30#37",LinearAlgebra.UniformScaling{Bool},Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing,Nothing},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},DiffEqBase.StandardODEProblem},var"#32#39",var"#33#40"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},Nothing,Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1}},1},Optim.MultivariateOptimizationResults{Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat},Float64,Array{Float64,1},Float64,Float64,Array{Optim.OptimizationState{Float64,Optim.BFGS{LineSearches.InitialStatic{Float64},LineSearches.BackTracking{Float64,Int64},Pumas.var"#211#212"{NLSolversBase.OnceDifferentiable{Float64,Array{Float64,1},Array{Float64,1}},Array{Float64,1}},Nothing,Optim.Flat}},1},Bool},Pumas.FOCEI,Array{Array{Float64,1},1},Tuple{},Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{,Tuple{}}},TransformVariables.TransformTuple{NamedTuple{(:tvKa, :tvV1, :tvV2, :tvCL, :tvQ, :Ω, :σ),Tuple{TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},TransformVariables.ShiftedExp{true,Int64},Pumas.PDiagTransform,TransformVariables.ShiftedExp{true,Int64}}}}}) at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:1361
 [41] vcov at C:\Users\Lenovo\.juliapro\JuliaPro_v1.3.1-1\packages\Pumas\Twdge\src\estimation\likelihoods.jl:1361 [inlined]
 [42] #infer#272(::Float64, 

```

---

<div class="post-metadata">

**Author:** ![vijay](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/vijay/32/96_2.png) [@vijay](https://discourse.pumas.ai/u/vijay)\
**Post date:** [February 29, 2020, 4:08pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/2 "2020-02-29T16:08:12Z")

</div>

Can you post the results of your `res` @sai_matcha?

---

<div class="post-metadata">

**Author:** ![jogagobburu](https://avatars.discourse-cdn.com/v4/letter/j/3e96dc/32.png) [@jogagobburu](https://discourse.pumas.ai/u/jogagobburu)\
**Post date:** [February 29, 2020, 10:55pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/3 "2020-02-29T22:55:11Z")

</div>

Dear Sai - Thank you for your post. Here are some considerations for you:

1. The error msg you faced is to do with the ability to estimate the Standard Errors (SE). In this case, we were able to reproduce your simulations only to find that the BSV (omega) for V and V2 are negligible. Hence the problem estimating SE.
2. We also inspected the simulated data, to surmise that it is unlikely to estimate the distribution related parameters given the variability - I suspect due to the 20% residual error. In this case, the BSV of the distribution parameters will not be able to be estimated. If you exclude the estimation of these two parameters (BSV of V2, Q), then the model estimation and subsequent SE estimation were successful. You might want to consider not estimating those two parameters or consider an alternative design. This is a simulation/estimation problem; and not a software related issue.
3. There are few additional comments for your consideration:  
3a. You might want to use consistent parameter V and tvV1 - could cost us some time if we were to revisit this code after a longtime.  
3b. Looks like you intended to estimate the variance of the proportional residual error. However, the notation used was σ (which is really the SD). While the estimation will not be affected it might be a good practice to call it `σ²`.  
3c. We might be better off to call the output of fit() as `result_twocompevsd` rather than res, as it should not be confused with residuals. [I know other examples online use res too. :)]  
Please let us know if we could be of further help…J

---

<div class="post-metadata">

**Author:** ![sai\_matcha](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/sai_matcha/32/297_2.png) [@sai\_matcha](https://discourse.pumas.ai/u/sai_matcha)\
**Post date:** [March 1, 2020, 6:46am UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/4 "2020-03-01T06:46:13Z")

</div>

thank you very much @jogagobburu .  
I tried running a model with K23,K32 instead Q . i was able to simulate by using that model. i wanted to know why most of the people prefer Q instead K23,K32

---

<div class="post-metadata">

**Author:** ![jogagobburu](https://avatars.discourse-cdn.com/v4/letter/j/3e96dc/32.png) [@jogagobburu](https://discourse.pumas.ai/u/jogagobburu)\
**Post date:** [March 1, 2020, 12:36pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/5 "2020-03-01T12:36:07Z")

</div>

I don’t think numerically there should be that much of a difference between clearance based vs rate constant based models. However there are couple of philosophical/technical considerations.

1. Because clearance and volume reflect physiologic parameters, it is easier to consider covariates that might influence them. A rate constant might be considered as the ratio of those fundamental parameters, hence derived. Testing a covariate on a ratio is tricky as one would not know which parameter is affected - cleanse or volume. For eg we eGFR is related to systemic clearance. If we relate eGFR to the elimination rate constant the interpretation is now confounded.
2. If you agree with above philosophy, then because rate constants are derived ratios there is also need then to estimate Covariance between volume and rate constant. As the rate constant could change due to changes in both clearance and volume based parameters.
3. No matter which approach you use, always think about which would be the most convenient way to communicate to prescribers.  
J

---

<div class="post-metadata">

**Author:** ![sai\_matcha](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/sai_matcha/32/297_2.png) [@sai\_matcha](https://discourse.pumas.ai/u/sai_matcha)\
**Post date:** [March 2, 2020, 5:19am UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/6 "2020-03-02T05:19:59Z")

</div>

```auto
julia> res
FittedPumasModel

Successful minimization: true

Likelihood approximation: Pumas.FOCEI
Deviance: 100.75023
Total number of observation records: 360
Number of active observation records: 360
Number of subjects: 15

-------------------
         Estimate
-------------------
tvKa 0.52131
tvV1 39.189
tvV2 28.958
tvCL 9.1881
tvQ 13.803
Ω₁,₁ 0.10911
Ω₂,₂ 0.080255
Ω₃,₃ 0.049688
Ω₄,₄ 0.054085
Ω₅,₅ 0.06587
σ 0.035358
-------------------

```

---

<div class="post-metadata">

**Author:** ![sai\_matcha](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/sai_matcha/32/297_2.png) [@sai\_matcha](https://discourse.pumas.ai/u/sai_matcha)\
**Post date:** [March 2, 2020, 5:20am UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/7 "2020-03-02T05:20:25Z")

</div>

thank you very much @jogagobburu

---

<div class="post-metadata">

**Author:** ![sai\_matcha](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/sai_matcha/32/297_2.png) [@sai\_matcha](https://discourse.pumas.ai/u/sai_matcha)\
**Post date:** [March 2, 2020, 5:21am UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/8 "2020-03-02T05:21:34Z")

</div>

@vijay i run the model for 5 times, infer(res) was successful for 3 times and 2 times it gave gave error

---

<div class="post-metadata">

**Author:** ![pkofod](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.pumas.ai/pkofod/32/59_2.png) [@pkofod](https://discourse.pumas.ai/u/pkofod)\
**Post date:** [March 12, 2020, 8:20pm UTC](https://discourse.pumas.ai/t/error-while-using-infer-res/291/9 "2020-03-12T20:20:47Z")

</div>

As stated already, you have quite a lot of random effects. It can sometimes be hard to identify these. Other software will sometimes just “remove” the parameter (ignore it for the rest of the estimation) or abort if we get too close to 0 for a variance parameter. In the next version of Pumas it will actually tell you to look for small variance if infer fails. I ran your model a few times, and when it failed, this is what I saw

```auto

julia> res = fit(twocompevsd,data,param,Pumas.FOCEI())
FittedPumasModel

Successful minimization: true

Likelihood approximation: Pumas.FOCEI
Deviance: 236.37229
Total number of observation records: 360
Number of active observation records: 360
Number of subjects: 15

--------------------
         Estimate
--------------------
tvKa 0.69899
tvV1 42.2
tvV2 33.596
tvCL 8.3638
tvQ 20.173
Ω₁,₁ 0.066574
Ω₂,₂ 0.23629
Ω₃,₃ 0.029744
Ω₄,₄ 0.2052
Ω₅,₅ 2.5024e-7
σ 0.042494
--------------------

```

I guess you can see by now what went wrong.

Now of course, you can never say never. There is a chance that this is a spurious result, and the fit procedure failed to find the best parameters (and got stuck in a region with a small fifth omega), but I doubt it. The starting parameters are sane, the obtained parameters are sane, and the optimization convergence information also seems sane

```auto
julia> res.optim
 * Status: success

 * Candidate solution
    Minimizer: [-3.58e-01, 3.74e+00, 3.51e+00, ...]
    Minimum: 4.490040e+02

 * Found with
    Algorithm: BFGS
    Initial Point: [-1.05e-01, 3.91e+00, 3.00e+00, ...]

 * Convergence measures
    |x - x'| = 6.24e-01 ≰ 0.0e+00
    |x - x'|/|x'| = 4.10e-02 ≰ 0.0e+00
    |f(x) - f(x')| = 1.20e-06 ≰ 0.0e+00
    |f(x) - f(x')|/|f(x')| = 2.68e-09 ≰ 0.0e+00
    |g(x)| = 7.19e-04 ≤ 1.0e-03

 * Work counters
    Seconds run: 27 (vs limit Inf)
    Iterations: 51
    f(x) calls: 55
    ∇f(x) calls: 52

```

Mixed effects models can be very useful when we need subject specific flexibility, but it’s also hard to identify these parameters. Remember, each individual has 5 sources of unobserved “noise” we have to handle here. It’s quite a lot, even for 23 observations.
