@@ -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