Skip to content

Derivative boundary condition support is missing #281

@caMi11er

Description

@caMi11er

I’m trying to use BVProblem with solver RadauIIa5.
In the boundary condition function called by the solver,
I need to refer to the first derivative of the solution.

sol(tx, Val{1}; idxs=1) is rejected by BVProblem with solver RadauIIa5.

ERROR: MethodError: no method matching (::BoundaryValueDiffEqCore.EvalSol{BoundaryValueDiffEqFIRK.FIRKCacheExpand{…}, Vector{…}, Vector{…}})(::Float64, ::Type{Val{…}}; idxs::Int64)
 .
 .
 .
Closest candidates are:
  (::BoundaryValueDiffEqCore.EvalSol{C})(::Number) where C<:BoundaryValueDiffEqFIRK.FIRKCacheExpand got unsupported keyword argument "idxs"
   @ BoundaryValueDiffEqFIRK ~/.julia/packages/BoundaryValueDiffEqFIRK/ddek7/src/interpolation.jl:134

Stacktrace:
  [1] bcond!(resid::Vector{…}, sol::BoundaryValueDiffEqCore.EvalSol{…}, par::Tuple{…}, r::Vector{…})
    @ Main ~/Applications/Julia/RealisticSeismology-main/src/RealMod/src/shtar.jl:59
  [2] eval_bc_residual!(resid::Vector{…}, ::SciMLBase.StandardBVProblem, bc!::typeof(bcond!), sol::BoundaryValueDiffEqCore.EvalSol{…}, p::Tuple{…}, t::Vector{…})

I'm told that DiffResults.derivative is also unavailable…
ChrisRackauckas: the analytical solution to the derivative should be implemented but it’s not in this case and it’s missing a better error message.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions