GNU Scientific Library (GSL)

GNU Scientific Library (GSL) - The GNU Scientific Library 2.x. - Messages

#1 Posted: 8/27/2013 5:53:11 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

GNU Scientific Library (GSL)

SMath Studio compatibility SMath Viewer compatibility mono compatibility Platform Extension page Sources Examples


Functions list:

Show Spoiler


Solvers for Non-Stiff Systems:

gslrk2(init, x1, x2, intvls, D) Explicit embedded Runge-Kutta (2, 3) method.

gslrk4(init, x1, x2, intvls, D) Explicit 4th order (classical) Runge-Kutta. Error estimation is carried out by the step doubling method.

gslrkf45(init, x1, x2, intvls, D) Explicit embedded Runge-Kutta-Fehlberg (4, 5) method.

gslrkck(init, x1, x2, intvls, D) Explicit embedded Runge-Kutta Cash-Karp (4, 5) method.

gslrk8pd(init, x1, x2, intvls, D) Explicit embedded Runge-Kutta Prince-Dormand (8, 9) method.

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 1E-7.
- RelTol - relative tolerance parameter, default value 1E-4.

Examples:

[albumimg]1553[/albumimg] [albumimg]1534[/albumimg] [albumimg]1535[/albumimg] [albumimg]1536[/albumimg]
[albumimg]1570[/albumimg] [albumimg]1571[/albumimg] [albumimg]1572[/albumimg] [albumimg]1573[/albumimg] [albumimg]1574[/albumimg] [albumimg]1575[/albumimg]

gsl.ode.integrate.sm (11 KiB) downloaded 163 time(s).
gsl.ode.kinetic1.sm (8 KiB) downloaded 152 time(s).
gsl.ode.kinetic2.sm (14 KiB) downloaded 139 time(s).
gsl.ode.kinetic3.sm (14 KiB) downloaded 140 time(s).
gsl.ode.test1.sm (19 KiB) downloaded 139 time(s).
gsl.ode.test2.sm (18 KiB) downloaded 140 time(s).
gsl.ode.Amplitude detector.sm (20 KiB) downloaded 167 time(s).

gsl.ode.integrate.pdf (92 KiB) downloaded 140 time(s).
gsl.ode.kinetic1.pdf (77 KiB) downloaded 134 time(s).
gsl.ode.kinetic2.pdf (92 KiB) downloaded 112 time(s).
gsl.ode.kinetic3.pdf (91 KiB) downloaded 120 time(s).
gsl.ode.test1.pdf (110 KiB) downloaded 128 time(s).
gsl.ode.test2.pdf (110 KiB) downloaded 130 time(s).
gsl.ode.Amplitude detector.pdf (148 KiB) downloaded 143 time(s).

Links:

1. GNU Scientific Library – Reference Manual.
2. GSL for Windows.
3. The GSL Team.
4. Thanks.

See also:

● [topic=726]Mathcad Toolbox[/topic]
● [topic=1918]DotNumerics[/topic]
● [topic=13809]SADEL[/topic]
● [topic=1970]Matlab C++ Math Library[/topic]
● [topic=17063]OSLO[/topic]
● [topic=17067]lsoda[/topic]
GNU Scientific Library. ODE Solvers. Arenstorf orbit.pdf (99 KiB) downloaded 340 time(s).
Russia ☭ forever, Viacheslav N. Mezentsev
4 users liked this post
Martin Kraska 8/28/2013 3:21:00 AM, Radovan Omorjan 8/28/2013 12:54:00 AM, ioan92 8/28/2013 2:54:00 AM, Davide Carpi 8/27/2013 6:21:00 PM
#2 Posted: 8/27/2013 6:21:50 PM
Davide Carpi

Davide Carpi

1417 likes in 2873 posts.

Group: Moderator

very very cool library, there are several interesting things

works for me (win 7 x64)


best regards,

Davide
If you like my plugins please consider to support the program buying a license; for personal contributions to me: paypal.me/dcprojects
#3 Posted: 8/28/2013 1:18:41 AM
Radovan Omorjan

Radovan Omorjan

325 likes in 2052 posts.

Group: Moderator

I agree with Davide. I mentioned this library few times as well

As I said before, uni is like a man working in a candy store and giving us very good and healthy sweets for free

Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
2 users liked this post
Davide Carpi 8/28/2013 3:58:00 AM, Вячеслав Мезенцев 8/28/2013 2:51:00 AM
#4 Posted: 8/28/2013 3:27:27 AM
Martin Kraska

Martin Kraska

1222 likes in 2150 posts.

Group: Moderator

Uni,
I see you do not use prefixes any more. Does that mean, you are considering the GSL as the primary source of generic SMath functions? IMHO that would be sensible, as GSL seems to be the most vital and most free library among the ones you wrapped so far. However, I have no idea about performance issues.
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 users liked this post
Davide Carpi 8/28/2013 3:58:00 AM
#5 Posted: 8/28/2013 3:33:37 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Functions that are not yet implemented not have a prefix. When I add a function in the plug-in, I add a prefix to it. All the functions in this library will have the same or similar names which given in their description.

For example: gsl_sf_bessel_J0() -> gslsfJ0(), gsl_sf_airy_Ai() -> gslsfAi(), ...

I'll ask Andrey to implement the namespace for functions. This option may be enabled and disabled as the description of the region. In this case, you can specify the function names without the prefix.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Davide Carpi 8/28/2013 3:58:00 AM
#6 Posted: 8/28/2013 4:50:52 AM
Martin Kraska

Martin Kraska

1222 likes in 2150 posts.

Group: Moderator

Wrote

I'll ask Andrey to implement the namespace for functions. This option may be enabled and disabled as the description of the region. In this case, you can specify the function names without the prefix.



I am not sure that I understand correctly, what the namespace for functions concept is meant to be.
Is that something like local aliasing?
Is that a by-region setting?
What is the visualization concept?

I'd expect something like switching on aliasing (and perhaps enabling of the plugin) by a separate statement "with("GLS" ) or with("Matlab" ). This could be
deactivated later in the same sheet by a function without() in a traceable manner.

BTW, how about including a plugin hint in the description string of the functions. I had to search the forum in order to find out what plugin provides the erf() function (Davide, sorry for my leaking memory). Not a big deal for me, but would help to correctly direct user feedback.
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#7 Posted: 8/28/2013 5:13:24 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Wrote

I'd expect something like switching on aliasing (and perhaps enabling of the plugin) by a separate statement "with("GLS" ) or with("Matlab" ). This could be
deactivated later in the same sheet by a function without() in a traceable manner.


I think it only works for the document in text form. It is unlikely that this method will be useful in our case.

We have one example of namespace support. Not necessarily indicate the selected space, but the user should be able to select it. We can assign a hot key to display the namespace for the selected function.

Namespace operator.PNG
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Davide Carpi 8/28/2013 1:39:00 PM
#8 Posted: 8/28/2013 5:51:42 AM
kilele

kilele

133 likes in 397 posts.

Group: User

Wrote


As I said before, uni is like a man working in a candy store and giving us very good and healthy sweets for free



I see viacheslav and davide more like fabulous dwarves blacksmiths and radovan and martin like mere mortal betatesters, thanks btw :d
#9 Posted: 8/28/2013 8:04:36 AM
Martin Kraska

Martin Kraska

1222 likes in 2150 posts.

Group: Moderator

Ok, it is a Mathcad concept (I was not aware of that).

The example with m as units and m as variable does not really convince me. By math standards, these items should be distinguished by type face (italic for variables, upright for units or other items that are not supposed to change. SMath has this the other way around, but at least clearly indicates the difference. Thus, the unit name space tag is the apostrophe ' in front of the name.

There is another "namespace" then in SMath, the absolute variables with ~ as tag (which would be fine to represent matrix/vector values).

An option for getting along without new features would be to leave the prefixes in the names and to provide generic names pointing to the most appropriate function from whatever plugin it may come or even to provide wrapper functions like Findroot() to choose from what is available.

The ordinary ("mortal" ) user hardly wants to choose from 20 ode solvers or from 10 nonlinear solvers.
Martin Kraska Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#10 Posted: 8/28/2013 11:21:27 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Updated to GSL 1.16.
Russia ☭ forever, Viacheslav N. Mezentsev
3 users liked this post
Davide Carpi 8/28/2013 1:39:00 PM, Radovan Omorjan 8/28/2013 4:42:00 PM, ioan92 8/29/2013 8:51:00 AM
#11 Posted: 9/16/2016 10:37:36 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Updated for the fully automatic build using Release Manager.
Russia ☭ forever, Viacheslav N. Mezentsev
#12 Posted: 6/23/2018 5:49:08 PM
overlord

overlord

554 likes in 1333 posts.

Group: Moderator

Installing this plugin causing forced close on Arch Linux + Mono.
After forced close you cannot be able to open Smath again unless manually deleting the plugin.

Regards
#13 Posted: 6/23/2018 6:36:27 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Because the plugin is not compatible with Linux + Mono:

Quote

VS2013, .Net 2.0, C#, C++/CLI, Win32 + x64



Win32 + x64 - means Windows only, C++/CLI - unmanaged code used.
Russia ☭ forever, Viacheslav N. Mezentsev
#14 Posted: 8/1/2018 12:19:18 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

gslrkck simple test.

[albumimg]1497[/albumimg]

gslrkck.test1.sm (11 KiB) downloaded 102 time(s).
gslrkck.test1.pdf (48 KiB) downloaded 107 time(s).
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
sergio 8/1/2018 6:07:00 PM
#15 Posted: 12/12/2018 8:12:57 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Updated.

Changes:
- zero point issue fixed;
- added support for the simple D(t,x) definition.
Russia ☭ forever, Viacheslav N. Mezentsev
4 users liked this post
Andrey Ivashov 12/12/2018 9:34:00 AM, Radovan Omorjan 12/12/2018 9:07:00 AM, sergio 12/12/2018 9:16:00 AM, frapuano 12/12/2018 9:33:00 AM
#16 Posted: 12/24/2018 12:50:43 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Updated.

[albumimg]1570[/albumimg] [albumimg]1571[/albumimg] [albumimg]1572[/albumimg] [albumimg]1573[/albumimg] [albumimg]1574[/albumimg] [albumimg]1575[/albumimg]

gsl.ode.kinetic1.sm (8 KiB) downloaded 152 time(s).
gsl.ode.kinetic2.sm (14 KiB) downloaded 139 time(s).
gsl.ode.kinetic3.sm (14 KiB) downloaded 140 time(s).
gsl.ode.test1.sm (19 KiB) downloaded 139 time(s).
gsl.ode.test2.sm (18 KiB) downloaded 140 time(s).
gsl.ode.Amplitude detector.sm (20 KiB) downloaded 167 time(s).

gsl.ode.kinetic1.pdf (77 KiB) downloaded 134 time(s).
gsl.ode.kinetic2.pdf (92 KiB) downloaded 112 time(s).
gsl.ode.kinetic3.pdf (91 KiB) downloaded 120 time(s).
gsl.ode.test1.pdf (110 KiB) downloaded 128 time(s).
gsl.ode.test2.pdf (110 KiB) downloaded 130 time(s).
gsl.ode.Amplitude detector.pdf (148 KiB) downloaded 143 time(s).
Russia ☭ forever, Viacheslav N. Mezentsev
4 users liked this post
sergio 12/24/2018 1:23:00 PM, frapuano 12/24/2018 2:23:00 PM, Radovan Omorjan 12/24/2018 2:53:00 PM, Alvaro Diaz Falconi 12/25/2018 1:33:00 AM
#17 Posted: 1/21/2019 9:23:03 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

Updated.

Added: gslmsadams(5), gslrk1imp(5), gslrk2imp(5), gslrk4imp(5), gslbsimp(5), gslmsbdf(5).
Fixed: gslrk1imp(6), gslrk2imp(6), gslrk4imp(6), gslbsimp(6), gslmsbdf(6).
Removed: gslmsadams(6).

Solvers with 5 arguments working with numerical Jacobian (not so good but I don't know how to improve it now).

Click to enlarge Click to enlarge
Russia ☭ forever, Viacheslav N. Mezentsev
3 users liked this post
frapuano 1/22/2019 5:02:00 AM, Radovan Omorjan 1/22/2019 5:32:00 AM, Davide Carpi 1/22/2019 7:43:00 AM
#18 Posted: 5/14/2019 10:33:45 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

I was on a journey.

This use of the library is beyond the scope of the forum. I will try to create a simple example, but you still need to read the original documentation to use the library.

Russia ☭ forever, Viacheslav N. Mezentsev
#19 Posted: 5/21/2021 1:55:24 AM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

SMath Studio compatibility

Updated.

Changes:

- updated to GSL 2.4.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
sergio 5/21/2021 4:24:00 AM
#20 Posted: 12/9/2021 1:03:00 PM
Вячеслав Мезенцев

Вячеслав Мезенцев

1402 likes in 1708 posts.

Group: Moderator

SMath Studio compatibility

Plugin updated.

Changes:

- added support for ODE systems in mathematical form;
- refactored.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Davide Carpi 12/9/2021 5:26:00 PM
  • New Posts New Posts
  • No New Posts No New Posts