@@ -778,6 +778,7 @@ function process_DEProblem(constructor, sys::AbstractODESystem, u0map, parammap;
778
778
build_initializeprob = true ,
779
779
initialization_eqs = [],
780
780
fully_determined = false ,
781
+ check_units = true ,
781
782
kwargs... )
782
783
eqs = equations (sys)
783
784
dvs = unknowns (sys)
@@ -816,7 +817,7 @@ function process_DEProblem(constructor, sys::AbstractODESystem, u0map, parammap;
816
817
end
817
818
initializeprob = ModelingToolkit. InitializationProblem (
818
819
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 )
820
821
initializeprobmap = getu (initializeprob, unknowns (sys))
821
822
822
823
zerovars = Dict (setdiff (unknowns (sys), keys (defaults (sys))) .=> 0.0 )
@@ -1426,18 +1427,19 @@ function InitializationProblem{iip, specialize}(sys::AbstractODESystem,
1426
1427
warn_initialize_determined = true ,
1427
1428
initialization_eqs = [],
1428
1429
fully_determined = false ,
1430
+ check_units = true ,
1429
1431
kwargs... ) where {iip, specialize}
1430
1432
if ! iscomplete (sys)
1431
1433
error (" A completed system is required. Call `complete` or `structural_simplify` on the system before creating an `ODEProblem`" )
1432
1434
end
1433
1435
if isempty (u0map) && get_initializesystem (sys) != = nothing
1434
- isys = get_initializesystem (sys; initialization_eqs)
1436
+ isys = get_initializesystem (sys; initialization_eqs, check_units )
1435
1437
elseif isempty (u0map) && get_initializesystem (sys) === nothing
1436
1438
isys = structural_simplify (
1437
- generate_initializesystem (sys; initialization_eqs); fully_determined)
1439
+ generate_initializesystem (sys; initialization_eqs, check_units ); fully_determined)
1438
1440
else
1439
1441
isys = structural_simplify (
1440
- generate_initializesystem (sys; u0map, initialization_eqs); fully_determined)
1442
+ generate_initializesystem (sys; u0map, initialization_eqs, check_units ); fully_determined)
1441
1443
end
1442
1444
1443
1445
uninit = setdiff (unknowns (sys), [unknowns (isys); getfield .(observed (isys), :lhs )])
0 commit comments