@@ -472,22 +472,8 @@ function handle_rational_polynomials(x, wrt; fraction_cancel_fn = simplify_fract
472
472
return num, den
473
473
end
474
474
475
- function SciMLBase. HomotopyNonlinearFunction (sys:: System , args... ; kwargs... )
476
- ODEFunction {true} (sys, args... ; kwargs... )
477
- end
478
-
479
- function SciMLBase. HomotopyNonlinearFunction {true} (sys:: System , args... ;
480
- kwargs... )
481
- ODEFunction {true, SciMLBase.AutoSpecialize} (sys, args... ; kwargs... )
482
- end
483
-
484
- function SciMLBase. HomotopyNonlinearFunction {false} (sys:: System , args... ;
485
- kwargs... )
486
- ODEFunction {false, SciMLBase.FullSpecialize} (sys, args... ; kwargs... )
487
- end
488
-
489
- function SciMLBase. HomotopyNonlinearFunction {iip, specialize} (
490
- sys:: System , args... ; eval_expression = false , eval_module = @__MODULE__ ,
475
+ @fallback_iip_specialize function SciMLBase. HomotopyNonlinearFunction {iip, specialize} (
476
+ sys:: System ; eval_expression = false , eval_module = @__MODULE__ ,
491
477
p = nothing , fraction_cancel_fn = SymbolicUtils. simplify_fractions, cse = true ,
492
478
kwargs... ) where {iip, specialize}
493
479
if ! iscomplete (sys)
@@ -510,7 +496,7 @@ function SciMLBase.HomotopyNonlinearFunction{iip, specialize}(
510
496
511
497
# we want to create f, jac etc. according to `sys2` since that will do the solving
512
498
# but the `sys` inside for symbolic indexing should be the non-polynomial system
513
- fn = NonlinearFunction {iip} (sys2; eval_expression, eval_module, cse, kwargs... )
499
+ fn = NonlinearFunction {iip} (sys2; p, eval_expression, eval_module, cse, kwargs... )
514
500
obsfn = ObservedFunctionCache (
515
501
sys; eval_expression, eval_module, checkbounds = get (kwargs, :checkbounds , false ), cse)
516
502
fn = remake (fn; sys = sys, observed = obsfn)
0 commit comments