What kind of problems is it mostly used for? Please describe.
Somewhat stiff problems that require symmetric and symplectic methods could benefit from them.
Describe the algorithm you’d like
The classical Gauss methods (s stages, order 2s) would be nice to have, e.g., for two, three, and four stages.
Other implementations to know about
https://github.com/JuliaGNI/GeometricIntegrators.jl implements them but does apparently not use the specialized implementations to reduce the complexity of the linear algebra routines like the Radau methods implemented in OrdinaryDiffEqFIRK.jl do, cf. http://www.unige.ch/~hairer/preprints/coimbra.pdf.
https://github.com/SciML/IRKGaussLegendre.jl implements the 8-stage version with a specialized fixed-point solver, making it really useful only for non-stiff equations (as described in their README.md).
PETSc implements Gauss methods, but only for sparse Jacobians. It can currently be used via the low-level interface of PETSc.jl, see https://github.com/JuliaParallel/PETSc.jl/blob/main/examples/ex51_implicit.jl
References
Any standard textbook on numerical methods for ODEs includes these methods, even Wikipedia: https://en.wikipedia.org/wiki/List_of_Runge–Kutta_methods#Gauss–Legendre_methods
This is related to #521 and #1004.
The papers https://doi.org/10.1007/s11075-014-9825-0 (preprint available at https://arxiv.org/abs/1304.0974) and https://doi.org/10.1007/s11075-017-0367-0 are related to this.
What kind of problems is it mostly used for? Please describe.
Somewhat stiff problems that require symmetric and symplectic methods could benefit from them.
Describe the algorithm you’d like
The classical Gauss methods (s stages, order 2s) would be nice to have, e.g., for two, three, and four stages.
Other implementations to know about
https://github.com/JuliaGNI/GeometricIntegrators.jl implements them but does apparently not use the specialized implementations to reduce the complexity of the linear algebra routines like the Radau methods implemented in OrdinaryDiffEqFIRK.jl do, cf. http://www.unige.ch/~hairer/preprints/coimbra.pdf.
https://github.com/SciML/IRKGaussLegendre.jl implements the 8-stage version with a specialized fixed-point solver, making it really useful only for non-stiff equations (as described in their README.md).
PETSc implements Gauss methods, but only for sparse Jacobians. It can currently be used via the low-level interface of PETSc.jl, see https://github.com/JuliaParallel/PETSc.jl/blob/main/examples/ex51_implicit.jl
References
Any standard textbook on numerical methods for ODEs includes these methods, even Wikipedia: https://en.wikipedia.org/wiki/List_of_Runge–Kutta_methods#Gauss–Legendre_methods
This is related to #521 and #1004.
The papers https://doi.org/10.1007/s11075-014-9825-0 (preprint available at https://arxiv.org/abs/1304.0974) and https://doi.org/10.1007/s11075-017-0367-0 are related to this.