BoundaryValueDiffEqAscher
Gauss Legendre collocation methods with Ascher's error control adaptivity and mesh refinement routines. To be able to access the solvers in BoundaryValueDiffEqFIRK, you must first install them use the Julia package manager:
using Pkg
Pkg.add("BoundaryValueDiffEqAscher")solve(prob::BVProblem, alg, dt; kwargs...)
solve(prob::TwoPointBVProblem, alg, dt; kwargs...)Full List of Methods
Ascher1: 1 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher2: 2 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher3: 3 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher4: 4 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher5: 5 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher6: 6 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.Ascher7: 7 stage Gauss Legendre collocation method with Ascher's error control adaptivity and mesh refinement.
Detailed Solvers Explanation
BoundaryValueDiffEqAscher.Ascher1 — Type
Ascher1(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)1-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher1(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher2 — Type
Ascher2(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)2-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher2(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher3 — Type
Ascher3(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)3-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher3(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher4 — Type
Ascher4(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)4-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher4(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher5 — Type
Ascher5(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)5-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher5(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher6 — Type
Ascher6(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)6-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher6(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}BoundaryValueDiffEqAscher.Ascher7 — Type
Ascher7(; nlsolve = nothing, optimize = nothing, zeta = Float64[],
jac_alg = BVPJacobianAlgorithm(), max_num_subintervals = 3000)7-stage Gauss-Legendre collocation method with Ascher error-control adaptivity and mesh refinement for boundary-value problems, including problems with algebraic constraints.
Fields
nlsolve: Nonlinear solver used for the collocation system.nothingselects the package default.optimize: Optimization solver used by the mesh-refinement machinery.nothingselects the package default.zeta: Side-condition locations for problems that require them. The default empty vector is appropriate when no side conditions are present.jac_alg:BVPJacobianAlgorithmthat selects the Jacobian construction strategy for the collocation system.max_num_subintervals: Maximum number of mesh subintervals permitted while refining the solution.
Keyword Arguments
nlsolve = nothing: Internal nonlinear solver. Any solver implementing the SciMLNonlinearProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.optimize = nothing: Internal optimization solver. Any solver implementing the SciMLOptimizationProbleminterface may be used. Its autodifferentiation setting is ignored because this solver usesjac_alg.zeta = Float64[]: Side-condition locations. Supply the points required by the problem; leave empty when the problem has no side conditions.jac_alg = BVPJacobianAlgorithm(): Jacobian construction strategy. For type stability, provide ForwardDiff chunk sizes in the AD types selected by this value.max_num_subintervals = 3000: Maximum number of mesh subintervals.
Example
alg = Ascher7(zeta = [0.0, 0.5, 1.0])References
@article{Ascher1994CollocationSF,
title={Collocation Software for Boundary Value Differential-Algebraic Equations},
author={Uri M. Ascher and Raymond J. Spiteri},
journal={SIAM J. Sci. Comput.},
year={1994},
volume={15},
pages={938-952},
url={https://api.semanticscholar.org/CorpusID:10597070}
}
@article{Ascher1979ACS,
title={A collocation solver for mixed order systems of boundary value problems},
author={Uri M. Ascher and J. Christiansen and Robert D. Russell},
journal={Mathematics of Computation},
year={1979},
volume={33},
pages={659-679},
url={https://api.semanticscholar.org/CorpusID:121729124}
}