1 Pages (13 items)
OSLO - Open Solving Library for ODEs - Messages
#1 Posted: 1/19/2019 2:22:15 AM
OSLO - Open Solving Library for ODEs

Functions list: RK547M(5), GearBDF(5)
RK547M(init, x1, x2, intvls, D) Implementation of Runge-Kutta algoritm with per-point accurancy control from Dormand and Prince article.
GearBDF(init, x1, x2, intvls, D) Implementation of Gear's BDF method with dynamically changed step size and order. Order changes between 1 and 3.
Arguments:
- init is either a vector of n real initial values, where n is the number of unknowns (or a single scalar initial value, in the case of a single ODE).
- x1 and x2 are real, scalar endpoints of the interval over which the solution to the ODE(s) is evaluated. Initial values in init are the values of the ODE function(s) evaluated at x1.
- intvls is the integer number of discretization intervals used to interpolate the solution function. The number of solution points is the number of intervals + 1.
- D is a vector function of the form D(x,y) specifying the right-hand side of the system
Options:
- AbsTol - absolute tolerance parameter, default value 10⁻⁷.
- RelTol - relative tolerance parameter, default value 10⁻⁴.
- MaxStep - maximal step value, default value x2-x1.
Links:
1. Open Solving Library for ODEs.
2. OSLO User Guide (pdf).
Open Solving Library for ODEs (OSLO) 1.0 User Guide.pdf (1 MiB) downloaded 85 time(s).
oslo.integrate.sm (10 KiB) downloaded 115 time(s).
oslo.kinetic1.sm (7 KiB) downloaded 96 time(s).
oslo.kinetic2.sm (11 KiB) downloaded 103 time(s).
oslo.kinetic3.sm (11 KiB) downloaded 93 time(s).
oslo.test1.sm (15 KiB) downloaded 82 time(s).
oslo.test2.sm (15 KiB) downloaded 97 time(s).
oslo.Amplitude detector.sm (20 KiB) downloaded 96 time(s).
oslo.integrate.pdf (88 KiB) downloaded 105 time(s).
oslo.kinetic1.pdf (75 KiB) downloaded 96 time(s).
oslo.kinetic2.pdf (91 KiB) downloaded 99 time(s).
oslo.kinetic3.pdf (85 KiB) downloaded 93 time(s).
oslo.test1.pdf (99 KiB) downloaded 86 time(s).
oslo.test2.pdf (101 KiB) downloaded 96 time(s).
oslo.Amplitude detector.pdf (149 KiB) downloaded 98 time(s).
See also:
● [topic=726]Mathcad Toolbox[/topic]
● [topic=17088]Intel ODE Solver Library[/topic]
● [topic=1918]DotNumerics[/topic]
● [topic=13809]SADEL[/topic]
● [topic=1970]Matlab C++ Math Library[/topic]
● [topic=17067]lsoda[/topic]
● [topic=1997]GNU Scientific Library (GSL)[/topic]





Functions list: RK547M(5), GearBDF(5)
RK547M(init, x1, x2, intvls, D) Implementation of Runge-Kutta algoritm with per-point accurancy control from Dormand and Prince article.
GearBDF(init, x1, x2, intvls, D) Implementation of Gear's BDF method with dynamically changed step size and order. Order changes between 1 and 3.
Arguments:
- init is either a vector of n real initial values, where n is the number of unknowns (or a single scalar initial value, in the case of a single ODE).
- x1 and x2 are real, scalar endpoints of the interval over which the solution to the ODE(s) is evaluated. Initial values in init are the values of the ODE function(s) evaluated at x1.
- intvls is the integer number of discretization intervals used to interpolate the solution function. The number of solution points is the number of intervals + 1.
- D is a vector function of the form D(x,y) specifying the right-hand side of the system
Options:
- AbsTol - absolute tolerance parameter, default value 10⁻⁷.
- RelTol - relative tolerance parameter, default value 10⁻⁴.
- MaxStep - maximal step value, default value x2-x1.
Links:
1. Open Solving Library for ODEs.
2. OSLO User Guide (pdf).
Open Solving Library for ODEs (OSLO) 1.0 User Guide.pdf (1 MiB) downloaded 85 time(s).
oslo.integrate.sm (10 KiB) downloaded 115 time(s).
oslo.kinetic1.sm (7 KiB) downloaded 96 time(s).
oslo.kinetic2.sm (11 KiB) downloaded 103 time(s).
oslo.kinetic3.sm (11 KiB) downloaded 93 time(s).
oslo.test1.sm (15 KiB) downloaded 82 time(s).
oslo.test2.sm (15 KiB) downloaded 97 time(s).
oslo.Amplitude detector.sm (20 KiB) downloaded 96 time(s).
oslo.integrate.pdf (88 KiB) downloaded 105 time(s).
oslo.kinetic1.pdf (75 KiB) downloaded 96 time(s).
oslo.kinetic2.pdf (91 KiB) downloaded 99 time(s).
oslo.kinetic3.pdf (85 KiB) downloaded 93 time(s).
oslo.test1.pdf (99 KiB) downloaded 86 time(s).
oslo.test2.pdf (101 KiB) downloaded 96 time(s).
oslo.Amplitude detector.pdf (149 KiB) downloaded 98 time(s).
See also:
● [topic=726]Mathcad Toolbox[/topic]
● [topic=17088]Intel ODE Solver Library[/topic]
● [topic=1918]DotNumerics[/topic]
● [topic=13809]SADEL[/topic]
● [topic=1970]Matlab C++ Math Library[/topic]
● [topic=17067]lsoda[/topic]
● [topic=1997]GNU Scientific Library (GSL)[/topic]
Russia ☭ forever, Viacheslav N. Mezentsev
5 users liked this post
frapuano 1/19/2019 5:26:00 AM, Radovan Omorjan 1/19/2019 4:05:00 AM, Andrey Ivashov 1/20/2019 5:20:00 AM, sergio 1/19/2019 6:22:00 AM, Davide Carpi 1/19/2019 5:13:00 AM
#2 Posted: 1/19/2019 6:49:32 AM
Hello uni,
Thank you for some more ODE solvers. However, I could not resist to mention my favorite db_GearsBDF() which can escape the problem when y2 approaches zero. I mentioned this stiff example long time ago and you were using it often (kinetic2.sm example here). Unfortunately, it seams GearBDF() from this plugin can not overcome zero values and gets into the negative ones like most of the solvers.

Regards,
Radovan
Thank you for some more ODE solvers. However, I could not resist to mention my favorite db_GearsBDF() which can escape the problem when y2 approaches zero. I mentioned this stiff example long time ago and you were using it often (kinetic2.sm example here). Unfortunately, it seams GearBDF() from this plugin can not overcome zero values and gets into the negative ones like most of the solvers.
Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#3 Posted: 1/19/2019 7:03:21 AM
Yes, weak solvers. There are some settings there, but I was not able to select them correctly for this task. Another strange problem with accuracy. Unlike other solvers, a smaller step is needed here. In general, there are questions to the developers (Microsoft Research and Moscow State University).
Not only dn_GearsBDF() can solve your task. Some other solvers have also achieved success. Still looking for the best. Not all solvers are still implemented, the test suite is also still small.
Not only dn_GearsBDF() can solve your task. Some other solvers have also achieved success. Still looking for the best. Not all solvers are still implemented, the test suite is also still small.
Russia ☭ forever, Viacheslav N. Mezentsev
3 users liked this post
Davide Carpi 1/19/2019 7:44:00 AM, Radovan Omorjan 1/19/2019 7:12:00 AM, frapuano 1/19/2019 7:21:00 AM
#4 Posted: 1/19/2019 7:25:58 PM
Wrote... the test suite is also still small.
Hi Viacheslav. Maybe you're interested in check this matlab ode's:
http://people.sc.fsu.edu/~jburkardt%20/m_src/test_ode/test_ode.html .
At the end, there are also png images for the plots.
Best regards.
Alvaro.
1 users liked this post
Вячеслав Мезенцев 1/19/2019 7:54:00 PM
#5 Posted: 1/19/2019 9:01:03 PM
And another one: TEST SET FOR IVP SOLVERS.
Russia ☭ forever, Viacheslav N. Mezentsev
#6 Posted: 1/20/2019 4:39:23 AM
WroteAnd another one: TEST SET FOR IVP SOLVERS.
In this link it was mentioned about the book and packages made in R (Karline Soetaert et al). I was exposing my students to the R and some of their packages (deSolve, bvpSolve, rootSolve etc.) for few years now. I am really impressed by them. There are solvers for IVP, BVP, DAE, PDE etc. All my credits to the authors and their efforts. Surprisingly, there are quite a lot numerical packages in R which is considered to be mainly a statistical environment.
Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
frapuano 1/20/2019 5:20:00 AM
#7 Posted: 1/20/2019 10:42:43 AM
WroteIn this link it was mentioned about the book and packages made in R (Karline Soetaert et al). I was exposing my students to the R and some of their packages (deSolve, bvpSolve, rootSolve etc.) for few years now. I am really impressed by them. There are solvers for IVP, BVP, DAE, PDE etc. All my credits to the authors and their efforts. Surprisingly, there are quite a lot numerical packages in R which is considered to be mainly a statistical environment.
Can't be more right Radovan: for using R, better be an R man
All those solvers fall in the category Lagrangian Methods quite evolved since CAS
Soon, there will be as many dedicated ODE solvers as they will be proved for
Physicals system to solve. dn_GearsBDF is a good companion for stiff systems,
and hyper fast [see comparison attached].
Jean
ODE HIRES.sm (57 KiB) downloaded 76 time(s).
#10 Posted: 1/21/2019 3:47:25 AM
Wrote... thanks Radovan for the undocumented
ODE GearsBDF Undocumented.sm (9 KiB) downloaded 93 time(s).
You are welcome Jean, and thank you. There is another one by uni - lsoda.
Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#11 Posted: 1/21/2019 4:50:46 PM
WroteYou are welcome Jean, and thank you. There is another one by uni - lsoda.
Thanks Radovan,
As it looks, the previous 8 ODE from Viacheslav are all Isoda.
Do you feel comfortable to code Smath ?
An all version(s) compatible will enhance the native tiny Smath.
Naturally, Smath does not solve the "Pulse". Does not recognize F(t).
Cheers ... Jean
#13 Posted: 12/20/2021 4:18:54 PM

Plugin updated.
Changes:
- solution restructured;
- converting the task for the ODE solver to the numerical form is now performed through the Mathcad Toolbox plugin (to avoid code duplication), so it must be installed;
- refactored.
Solvers that support mathematical notation now reuse code from the Mathcad Toolbox plugin. Now there is no need to recompile every such plugin.
Russia ☭ forever, Viacheslav N. Mezentsev
1 Pages (13 items)
-
New Posts
-
No New Posts