@@ -739,22 +739,23 @@ function Symbolics.derivative(::typeof(apply_interpolation), args::NTuple{2, Any
739739end
740740
741741@register_symbolic build_interpolation (
742- interpolation_type:: UnionAll , u:: AbstractArray , x:: AbstractArray )
743- build_interpolation (interpolation_type, u, x) = interpolation_type (u, x)
742+ interpolation_type:: UnionAll , u:: AbstractArray , x:: AbstractArray , args :: Tuple )
743+ build_interpolation (interpolation_type, u, x, args ) = interpolation_type (u, x, args ... )
744744
745- function ParametrizedInterpolation (interp_type:: T , u, x, t = t ; name) where {T}
745+ function ParametrizedInterpolation (interp_type:: T , u, x, args ... ; name) where {T}
746746 @parameters data[1 : length (x)] = u
747747 @parameters ts[1 : length (x)] = x
748- @parameters interpolation_type:: T = interp_type [tunable = false ]
748+ @parameters interpolation_type:: T = interp_type [tunable = false ] interpolation_args :: Tuple = args [tunable = false ]
749749 @parameters interpolator:: interp_type
750750
751751 @named output = RealOutput ()
752752
753753 eqs = [output. u ~ apply_interpolation (interpolator, t)]
754754
755- ODESystem (eqs, t, [], [u, x, interpolation_type, interpolator];
755+ ODESystem (eqs, t, [], [u, x, interpolation_type, interpolator, interpolation_args ];
756756 parameter_dependencies = [
757- interpolator => build_interpolation (interpolation_type, u, x)
757+ interpolator => build_interpolation (
758+ interpolation_type, u, x, interpolation_args)
758759 ],
759760 systems = [output],
760761 name)
0 commit comments