Created
March 28, 2020 14:25
-
-
Save pkofod/b3b35aef3810cca6ac9c7d8c33bfc59e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
julia> @code_warntype Pumas.vpc(pkres.model, pkres.data, coef(pkres), 1) | |
Variables | |
#self#::Core.Compiler.Const(Pumas.vpc, false) | |
m::PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"} | |
population::Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1} | |
param::NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}} | |
reps::Int64 | |
#675::Pumas.var"#675#677"{PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1},NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}} | |
#676::Pumas.var"#676#678"{Tuple{Float64,Float64,Float64},Symbol,Int64} | |
quantiles::Tuple{Float64,Float64,Float64} | |
ci_level::Float64 | |
dvname::Symbol | |
h::Int64 | |
empirical::Array{Any,1} | |
sims::Any | |
ci_quantiles::Tuple{Float64,Float64,Float64} | |
sim_quantiles::Any | |
sim_quantile_ci::Array{Any,1} | |
Body::Pumas.VPC{Array{Any,1},Array{Any,1}} | |
1 ─ (quantiles = Core.tuple(0.1, 0.5, 0.9)) | |
│ %2 = Base.convert(Pumas.Float64, 0.95)::Core.Compiler.Const(0.95, false) | |
│ (ci_level = Core.typeassert(%2, Pumas.Float64)) | |
│ %4 = :dv | |
│ %5 = Base.convert(Pumas.Symbol, %4)::Core.Compiler.Const(:dv, false) | |
│ (dvname = Core.typeassert(%5, Pumas.Symbol)) | |
│ (h = 2) | |
│ %8 = (:h,)::Core.Compiler.Const((:h,), false) | |
│ %9 = Core.apply_type(Core.NamedTuple, %8)::Core.Compiler.Const(NamedTuple{(:h,),T} where T<:Tuple, false) | |
│ %10 = Core.tuple(h::Core.Compiler.Const(2, false))::Core.Compiler.Const((2,), false) | |
│ %11 = (%9)(%10)::NamedTuple{(:h,),Tuple{Int64}} | |
│ %12 = Core.kwfunc(Pumas.quantile_t_data)::Core.Compiler.Const(Pumas.var"#kw##quantile_t_data"(), false) | |
│ %13 = quantiles::Core.Compiler.Const((0.1, 0.5, 0.9), false)::Core.Compiler.Const((0.1, 0.5, 0.9), false) | |
│ (empirical = (%12)(%11, Pumas.quantile_t_data, population, %13, dvname::Core.Compiler.Const(:dv, false))) | |
│ %15 = Pumas.:(var"#675#677")::Core.Compiler.Const(Pumas.var"#675#677", false) | |
│ %16 = Core.typeof(m)::Core.Compiler.Const(PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"}, false) | |
│ %17 = Core.typeof(population)::Core.Compiler.Const(Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1}, false) | |
│ %18 = Core.typeof(param)::Core.Compiler.Const(NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}, false) | |
│ %19 = Core.apply_type(%15, %16, %17, %18)::Core.Compiler.Const(Pumas.var"#675#677"{PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1},NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}}, false) | |
│ (#675 = %new(%19, m, population, param)) | |
│ %21 = #675::Pumas.var"#675#677"{PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1},NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}} | |
│ %22 = (1:reps)::Core.Compiler.PartialStruct(UnitRange{Int64}, Any[Core.Compiler.Const(1, false), Int64]) | |
│ %23 = Base.Generator(%21, %22)::Core.Compiler.PartialStruct(Base.Generator{UnitRange{Int64},Pumas.var"#675#677"{PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1},NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}}}, Any[Pumas.var"#675#677"{PumasModel{ParamSet{NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Int64,TransformVariables.Infinity{true},Float64},RealDomain{Float64,TransformVariables.Infinity{true},Float64},PDiagDomain{PDMats.PDiagMat{Float64,Array{Float64,1}}},RealDomain{Int64,TransformVariables.Infinity{true},Float64}}}},var"#3#12",var"#4#13",var"#5#15",Central1,var"#6#16",var"#9#19"},Array{Subject{NamedTuple{(:dv,),Tuple{Array{Union{Missing, Float64},1}}},NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}},Array{Pumas.Event{Float64,Float64,Float64,Float64,Float64,Float64,Int64},1},Array{Float64,1},Pumas.ConstantCovar{NamedTuple{(:isPM, :wt),Tuple{Int64,Int64}}},Float64},1},NamedTuple{(:tvcl, :tvv, :pmoncl, :Ω, :σ_prop),Tuple{Float64,Float64,Float64,PDMats.PDiagMat{Float64,Array{Float64,1}},Float64}}}, Core.Compiler.PartialStruct(UnitRange{Int64}, Any[Core.Compiler.Const(1, false), Int64])]) | |
│ (sims = Base.collect(%23)) | |
│ %25 = (1 - ci_level::Core.Compiler.Const(0.95, false))::Core.Compiler.Const(0.050000000000000044, false) | |
│ %26 = (%25 / 2)::Core.Compiler.Const(0.025000000000000022, false) | |
│ %27 = (1 + ci_level::Core.Compiler.Const(0.95, false))::Core.Compiler.Const(1.95, false) | |
│ %28 = (%27 / 2)::Core.Compiler.Const(0.975, false) | |
│ (ci_quantiles = Core.tuple(%26, 0.5, %28)) | |
│ %30 = Pumas.:(var"#676#678")::Core.Compiler.Const(Pumas.var"#676#678", false) | |
│ %31 = Core.typeof(quantiles::Core.Compiler.Const((0.1, 0.5, 0.9), false))::Core.Compiler.Const(Tuple{Float64,Float64,Float64}, false) | |
│ %32 = Core.typeof(dvname::Core.Compiler.Const(:dv, false))::Core.Compiler.Const(Symbol, false) | |
│ %33 = Core.typeof(h::Core.Compiler.Const(2, false))::Core.Compiler.Const(Int64, false) | |
│ %34 = Core.apply_type(%30, %31, %32, %33)::Core.Compiler.Const(Pumas.var"#676#678"{Tuple{Float64,Float64,Float64},Symbol,Int64}, false) | |
│ %35 = quantiles::Core.Compiler.Const((0.1, 0.5, 0.9), false)::Core.Compiler.Const((0.1, 0.5, 0.9), false) | |
│ %36 = dvname::Core.Compiler.Const(:dv, false)::Core.Compiler.Const(:dv, false) | |
│ (#676 = %new(%34, %35, %36, h::Core.Compiler.Const(2, false))) | |
│ %38 = #676::Core.Compiler.Const(Pumas.var"#676#678"{Tuple{Float64,Float64,Float64},Symbol,Int64}((0.1, 0.5, 0.9), :dv, 2), false)::Core.Compiler.Const(Pumas.var"#676#678"{Tuple{Float64,Float64,Float64},Symbol,Int64}((0.1, 0.5, 0.9), :dv, 2), false) | |
│ (sim_quantiles = Pumas.map(%38, sims)) | |
│ (sim_quantile_ci = Pumas.quantile_sub_sim(sim_quantiles, quantiles::Core.Compiler.Const((0.1, 0.5, 0.9), false), ci_quantiles::Core.Compiler.Const((0.025000000000000022, 0.5, 0.975), false))) | |
│ %41 = Pumas.VPC(empirical, sim_quantile_ci)::Pumas.VPC{Array{Any,1},Array{Any,1}} | |
└── return %41 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment