@@ -156,7 +156,7 @@ function alg_cache(alg::Rosenbrock23, u, rate_prototype, ::Type{uEltypeNoUnits},
156156 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
157157 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
158158 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing ,u,p,t); u0 = _vec (tmp))
159- linsolve = init (linprob, alg. linsolve ,
159+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) ,
160160 alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
161161 assumptions = LinearSolve. OperatorAssumptions (true ))
162162
@@ -198,7 +198,7 @@ function alg_cache(alg::Rosenbrock32, u, rate_prototype, ::Type{uEltypeNoUnits},
198198 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
199199 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
200200 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing ,u,p,t); u0 = _vec (tmp))
201- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
201+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
202202 assumptions = LinearSolve. OperatorAssumptions (true ))
203203 algebraic_vars = f. mass_matrix === I ? nothing :
204204 [all (iszero, x) for x in eachcol (f. mass_matrix)]
@@ -233,7 +233,7 @@ function alg_cache(alg::Rosenbrock23, u, rate_prototype, ::Type{uEltypeNoUnits},
233233 uf = UDerivativeWrapper (f, t, p)
234234 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
235235 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
236- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
236+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
237237 Rosenbrock23ConstantCache (constvalue (uBottomEltypeNoUnits), tf, uf, J, W, linsolve,
238238 alg_autodiff (alg))
239239end
@@ -263,7 +263,7 @@ function alg_cache(alg::Rosenbrock32, u, rate_prototype, ::Type{uEltypeNoUnits},
263263 uf = UDerivativeWrapper (f, t, p)
264264 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
265265 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
266- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
266+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
267267 Rosenbrock32ConstantCache (constvalue (uBottomEltypeNoUnits), tf, uf, J, W, linsolve,
268268 alg_autodiff (alg))
269269end
@@ -343,7 +343,7 @@ function alg_cache(alg::ROS3P, u, rate_prototype, ::Type{uEltypeNoUnits},
343343 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
344344 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
345345 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing , u, p, t); u0 = _vec (tmp))
346- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
346+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
347347 assumptions = LinearSolve. OperatorAssumptions (true ))
348348 Rosenbrock33Cache (u, uprev, du, du1, du2, k1, k2, k3, k4,
349349 fsalfirst, fsallast, dT, J, W, tmp, atmp, weight, tab, tf, uf,
@@ -360,7 +360,7 @@ function alg_cache(alg::ROS3P, u, rate_prototype, ::Type{uEltypeNoUnits},
360360 uf = UDerivativeWrapper (f, t, p)
361361 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
362362 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
363- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
363+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
364364 Rosenbrock33ConstantCache (tf, uf,
365365 ROS3PTableau (constvalue (uBottomEltypeNoUnits),
366366 constvalue (tTypeNoUnits)), J, W, linsolve)
@@ -426,7 +426,7 @@ function alg_cache(alg::Rodas3, u, rate_prototype, ::Type{uEltypeNoUnits},
426426 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
427427 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
428428 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing , u, p, t); u0 = _vec (tmp))
429- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
429+ linsolve = init (linprob, alg. wrapprecs (alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
430430 assumptions = LinearSolve. OperatorAssumptions (true ))
431431 Rosenbrock34Cache (u, uprev, du, du1, du2, k1, k2, k3, k4,
432432 fsalfirst, fsallast, dT, J, W, tmp, atmp, weight, tab, tf, uf,
@@ -453,7 +453,7 @@ function alg_cache(alg::Rodas3, u, rate_prototype, ::Type{uEltypeNoUnits},
453453 uf = UDerivativeWrapper (f, t, p)
454454 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
455455 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
456- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
456+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
457457 Rosenbrock34ConstantCache (tf, uf,
458458 Rodas3Tableau (constvalue (uBottomEltypeNoUnits),
459459 constvalue (tTypeNoUnits)), J, W, linsolve)
@@ -615,7 +615,7 @@ function alg_cache(alg::Rodas23W, u, rate_prototype, ::Type{uEltypeNoUnits},
615615 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
616616 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
617617 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing , u, p, t); u0 = _vec (tmp))
618- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
618+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
619619 assumptions = LinearSolve. OperatorAssumptions (true ))
620620 Rodas23WCache (u, uprev, dense1, dense2, dense3, du, du1, du2, k1, k2, k3, k4, k5,
621621 fsalfirst, fsallast, dT, J, W, tmp, atmp, weight, tab, tf, uf, linsolve_tmp,
@@ -655,7 +655,7 @@ function alg_cache(alg::Rodas3P, u, rate_prototype, ::Type{uEltypeNoUnits},
655655 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
656656 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
657657 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing , u, p, t); u0 = _vec (tmp))
658- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
658+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
659659 assumptions = LinearSolve. OperatorAssumptions (true ))
660660 Rodas3PCache (u, uprev, dense1, dense2, dense3, du, du1, du2, k1, k2, k3, k4, k5,
661661 fsalfirst, fsallast, dT, J, W, tmp, atmp, weight, tab, tf, uf, linsolve_tmp,
@@ -671,7 +671,7 @@ function alg_cache(alg::Rodas23W, u, rate_prototype, ::Type{uEltypeNoUnits},
671671 uf = UDerivativeWrapper (f, t, p)
672672 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
673673 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
674- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
674+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
675675 Rodas23WConstantCache (tf, uf,
676676 Rodas3PTableau (constvalue (uBottomEltypeNoUnits),
677677 constvalue (tTypeNoUnits)), J, W, linsolve,
@@ -686,7 +686,7 @@ function alg_cache(alg::Rodas3P, u, rate_prototype, ::Type{uEltypeNoUnits},
686686 uf = UDerivativeWrapper (f, t, p)
687687 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
688688 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
689- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
689+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
690690 Rodas3PConstantCache (tf, uf,
691691 Rodas3PTableau (constvalue (uBottomEltypeNoUnits),
692692 constvalue (tTypeNoUnits)), J, W, linsolve,
@@ -715,7 +715,7 @@ function alg_cache(
715715 uf = UDerivativeWrapper (f, t, p)
716716 J, W = build_J_W (alg, u, uprev, p, t, dt, f, nothing , uEltypeNoUnits, Val (false ))
717717 linprob = nothing # LinearProblem(W,copy(u); u0=copy(u))
718- linsolve = nothing # init(linprob,alg.linsolve ,alias_A=true,alias_b=true)
718+ linsolve = nothing # init(linprob,wrapprecs( alg, W, weight, u, p, t) ,alias_A=true,alias_b=true)
719719 tab = tabtype (alg)(constvalue (uBottomEltypeNoUnits), constvalue (tTypeNoUnits))
720720 RosenbrockCombinedConstantCache (tf, uf,
721721 tab, J, W, linsolve,
@@ -759,7 +759,7 @@ function alg_cache(
759759 jac_config = build_jac_config (alg, f, uf, du1, uprev, u, tmp, du2)
760760 J, W = build_J_W (alg, u, uprev, p, t, dt, f, jac_config, uEltypeNoUnits, Val (true ))
761761 linprob = LinearProblem (W, _vec (linsolve_tmp), (nothing , u, p, t); u0 = _vec (tmp))
762- linsolve = init (linprob, alg. linsolve , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
762+ linsolve = init (linprob, wrapprecs ( alg, W, weight, u, p, t) , alias = LinearAliasSpecifier (alias_A = true , alias_b = true ),
763763 assumptions = LinearSolve. OperatorAssumptions (true ))
764764
765765
0 commit comments