GNU Scientific Library (GSL)

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

#1 Pubblicato: 27/08/2013 17:53:11
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

GNU Scientific Library (GSL)

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


Functions list:

Mostra 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:

2018-12-21_19-34-30.png 2018-12-20_13-51-23.png 2018-12-20_13-52-15.png 2018-12-20_13-52-51.png
2018-12-24_20-42-34.png 2018-12-24_20-43-03.png 2018-12-24_20-43-34.png gsl.ode.test1.png gsl.ode.test2.png 2018-12-24_20-44-48.png

gsl.ode.integrate.sm (11,45 KiB) scaricato 1883 volta(e).
gsl.ode.kinetic1.sm (8,27 KiB) scaricato 1883 volta(e).
gsl.ode.kinetic2.sm (14,94 KiB) scaricato 1967 volta(e).
gsl.ode.kinetic3.sm (14,73 KiB) scaricato 1880 volta(e).
gsl.ode.test1.sm (19,22 KiB) scaricato 1866 volta(e).
gsl.ode.test2.sm (18,87 KiB) scaricato 1896 volta(e).
gsl.ode.Amplitude detector.sm (20,19 KiB) scaricato 1968 volta(e).

gsl.ode.integrate.pdf (92,44 KiB) scaricato 1000 volta(e).
gsl.ode.kinetic1.pdf (77,32 KiB) scaricato 1052 volta(e).
gsl.ode.kinetic2.pdf (92,67 KiB) scaricato 982 volta(e).
gsl.ode.kinetic3.pdf (91,09 KiB) scaricato 947 volta(e).
gsl.ode.test1.pdf (110,61 KiB) scaricato 938 volta(e).
gsl.ode.test2.pdf (110,4 KiB) scaricato 983 volta(e).
gsl.ode.Amplitude detector.pdf (148,63 KiB) scaricato 1001 volta(e).

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,51 KiB) scaricato 1507 volta(e).
Russia ☭ forever, Viacheslav N. Mezentsev
4 utenti hanno apprezzato questo post
Martin Kraska 28/08/2013 03:21:00, Radovan Omorjan 28/08/2013 00:54:00, ioan92 28/08/2013 02:54:00, Davide Carpi 27/08/2013 18:21:00
#2 Pubblicato: 27/08/2013 18:21:50
Davide Carpi

Davide Carpi

1.443 apprezzamenti in 2.936 post.

Gruppo: 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 Pubblicato: 28/08/2013 01:18:41
Radovan Omorjan

Radovan Omorjan

325 apprezzamenti e 1 disapprezzamenti in 2.052 post.

Gruppo: 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 utenti hanno apprezzato questo post
Davide Carpi 28/08/2013 03:58:00, Вячеслав Мезенцев 28/08/2013 02:51:00
#4 Pubblicato: 28/08/2013 03:27:27
Martin Kraska

Martin Kraska

1.361 apprezzamenti in 2.275 post.

Gruppo: 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.
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
1 utenti hanno apprezzato questo post
Davide Carpi 28/08/2013 03:58:00
#5 Pubblicato: 28/08/2013 03:33:37
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: 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 utenti hanno apprezzato questo post
Davide Carpi 28/08/2013 03:58:00
#6 Pubblicato: 28/08/2013 04:50:52
Martin Kraska

Martin Kraska

1.361 apprezzamenti in 2.275 post.

Gruppo: 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.
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
#7 Pubblicato: 28/08/2013 05:13:24
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: 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 utenti hanno apprezzato questo post
Davide Carpi 28/08/2013 13:39:00
#8 Pubblicato: 28/08/2013 05:51:42
kilele

kilele

134 apprezzamenti in 397 post.

Gruppo: 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 Pubblicato: 28/08/2013 08:04:36
Martin Kraska

Martin Kraska

1.361 apprezzamenti in 2.275 post.

Gruppo: 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.
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
#10 Pubblicato: 28/08/2013 11:21:27
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

Updated to GSL 1.16.
Russia ☭ forever, Viacheslav N. Mezentsev
3 utenti hanno apprezzato questo post
Davide Carpi 28/08/2013 13:39:00, Radovan Omorjan 28/08/2013 16:42:00, ioan92 29/08/2013 08:51:00
#11 Pubblicato: 16/09/2016 10:37:36
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

Updated for the fully automatic build using Release Manager.
Russia ☭ forever, Viacheslav N. Mezentsev
#12 Pubblicato: 23/06/2018 17:49:08
overlord

overlord

600 apprezzamenti in 1.381 post.

Gruppo: 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 Pubblicato: 23/06/2018 18:36:27
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

Because the plugin is not compatible with Linux + Mono:

Citazione

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 Pubblicato: 01/08/2018 12:19:18
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

gslrkck simple test.

2018-08-01_20-17-13.png

gslrkck.test1.sm (11,34 KiB) scaricato 1925 volta(e).
gslrkck.test1.pdf (48,07 KiB) scaricato 972 volta(e).
Russia ☭ forever, Viacheslav N. Mezentsev
1 utenti hanno apprezzato questo post
sergio 01/08/2018 18:07:00
#15 Pubblicato: 12/12/2018 08:12:57
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

Updated.

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

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

Updated.

2018-12-24_20-42-34.png 2018-12-24_20-43-03.png 2018-12-24_20-43-34.png gsl.ode.test1.png gsl.ode.test2.png 2018-12-24_20-44-48.png

gsl.ode.kinetic1.sm (8,27 KiB) scaricato 1883 volta(e).
gsl.ode.kinetic2.sm (14,94 KiB) scaricato 1967 volta(e).
gsl.ode.kinetic3.sm (14,73 KiB) scaricato 1880 volta(e).
gsl.ode.test1.sm (19,22 KiB) scaricato 1866 volta(e).
gsl.ode.test2.sm (18,87 KiB) scaricato 1896 volta(e).
gsl.ode.Amplitude detector.sm (20,19 KiB) scaricato 1968 volta(e).

gsl.ode.kinetic1.pdf (77,32 KiB) scaricato 1052 volta(e).
gsl.ode.kinetic2.pdf (92,67 KiB) scaricato 982 volta(e).
gsl.ode.kinetic3.pdf (91,09 KiB) scaricato 947 volta(e).
gsl.ode.test1.pdf (110,61 KiB) scaricato 938 volta(e).
gsl.ode.test2.pdf (110,4 KiB) scaricato 983 volta(e).
gsl.ode.Amplitude detector.pdf (148,63 KiB) scaricato 1001 volta(e).
Russia ☭ forever, Viacheslav N. Mezentsev
4 utenti hanno apprezzato questo post
sergio 24/12/2018 13:23:00, frapuano 24/12/2018 14:23:00, Radovan Omorjan 24/12/2018 14:53:00, Alvaro 25/12/2018 01:33:00
#17 Pubblicato: 21/01/2019 21:23:03
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: 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 utenti hanno apprezzato questo post
frapuano 22/01/2019 05:02:00, Radovan Omorjan 22/01/2019 05:32:00, Davide Carpi 22/01/2019 07:43:00
#18 Pubblicato: 14/05/2019 10:33:45
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: 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 Pubblicato: 21/05/2021 01:55:24
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

SMath Studio compatibility

Updated.

Changes:

- updated to GSL 2.4.
Russia ☭ forever, Viacheslav N. Mezentsev
1 utenti hanno apprezzato questo post
sergio 21/05/2021 04:24:00
#20 Pubblicato: 09/12/2021 13:03:00
Вячеслав Мезенцев

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

1.558 apprezzamenti in 1.868 post.

Gruppo: Moderator

SMath Studio compatibility

Plugin updated.

Changes:

- added support for ODE systems in mathematical form;
- refactored.
Russia ☭ forever, Viacheslav N. Mezentsev
1 utenti hanno apprezzato questo post
Davide Carpi 09/12/2021 17:26:00
  • Nuovi post
  • Nessun nuovo post