@@ -778,6 +778,7 @@ function process_DEProblem(constructor, sys::AbstractODESystem, u0map, parammap;
778778 build_initializeprob = true ,
779779 initialization_eqs = [],
780780 fully_determined = false ,
781+ check_units = true ,
781782 kwargs... )
782783 eqs = equations (sys)
783784 dvs = unknowns (sys)
@@ -816,7 +817,7 @@ function process_DEProblem(constructor, sys::AbstractODESystem, u0map, parammap;
816817 end
817818 initializeprob = ModelingToolkit. InitializationProblem (
818819 sys, t, u0map, parammap; guesses, warn_initialize_determined,
819- initialization_eqs, eval_expression, eval_module, fully_determined)
820+ initialization_eqs, eval_expression, eval_module, fully_determined, check_units )
820821 initializeprobmap = getu (initializeprob, unknowns (sys))
821822
822823 zerovars = Dict (setdiff (unknowns (sys), keys (defaults (sys))) .=> 0.0 )
@@ -1426,18 +1427,19 @@ function InitializationProblem{iip, specialize}(sys::AbstractODESystem,
14261427 warn_initialize_determined = true ,
14271428 initialization_eqs = [],
14281429 fully_determined = false ,
1430+ check_units = true ,
14291431 kwargs... ) where {iip, specialize}
14301432 if ! iscomplete (sys)
14311433 error (" A completed system is required. Call `complete` or `structural_simplify` on the system before creating an `ODEProblem`" )
14321434 end
14331435 if isempty (u0map) && get_initializesystem (sys) != = nothing
1434- isys = get_initializesystem (sys; initialization_eqs)
1436+ isys = get_initializesystem (sys; initialization_eqs, check_units )
14351437 elseif isempty (u0map) && get_initializesystem (sys) === nothing
14361438 isys = structural_simplify (
1437- generate_initializesystem (sys; initialization_eqs); fully_determined)
1439+ generate_initializesystem (sys; initialization_eqs, check_units ); fully_determined)
14381440 else
14391441 isys = structural_simplify (
1440- generate_initializesystem (sys; u0map, initialization_eqs); fully_determined)
1442+ generate_initializesystem (sys; u0map, initialization_eqs, check_units ); fully_determined)
14411443 end
14421444
14431445 uninit = setdiff (unknowns (sys), [unknowns (isys); getfield .(observed (isys), :lhs )])
0 commit comments