Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

Options
Go to last post Go to first unread
Offline uni  
#1 Posted : 28 August 2013 00:53:11(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)

New Stable GNU Scientific Library (GSL) 1.0.6784.5718 is available!

The GNU Scientific Library 1.16 (Win32+x64)

Download

Plug-in icon GNUScientificLibrary.zip (Date: 2018.07.29; File size: 253.07 KB) - 18 downloads

Credits

This is open-source project developed by The GNU Scientific Library (GSL) (http://www.gnu.org/software/gsl/). Sources can be found at https://smath.info/svn/public/plugins/GNUScientificLibrary/.


Functions list:

Ordinary Differential Equations: gslrk2(5), gslrk4(5), gslrkf45(5), gslrkck(5), gslrk8pd(5), gslmsadams(5), gslrk1imp(5), gslrk2imp(5), gslrk4imp(5), gslbsimp(5), gslmsbdf(5), gslrk1imp(6), gslrk2imp(6), gslrk4imp(6), gslbsimp(6), gslmsbdf(6).



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.

Links:

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




gsl.ode.integrate.sm (12kb) downloaded 11 time(s).
gsl.ode.kinetic1.sm (9kb) downloaded 24 time(s).
gsl.ode.kinetic2.sm (15kb) downloaded 24 time(s).
gsl.ode.kinetic3.sm (15kb) downloaded 18 time(s).
gsl.ode.test1.sm (20kb) downloaded 20 time(s).
gsl.ode.test2.sm (19kb) downloaded 21 time(s).
gsl.ode.Amplitude detector.sm (21kb) downloaded 28 time(s).

gsl.ode.integrate.pdf (93kb) downloaded 11 time(s).
gsl.ode.kinetic1.pdf (78kb) downloaded 14 time(s).
gsl.ode.kinetic2.pdf (93kb) downloaded 14 time(s).
gsl.ode.kinetic3.pdf (92kb) downloaded 10 time(s).
gsl.ode.test1.pdf (111kb) downloaded 12 time(s).
gsl.ode.test2.pdf (111kb) downloaded 14 time(s).
gsl.ode.Amplitude detector.pdf (149kb) downloaded 17 time(s).

Edited by user 24 January 2019 12:57:03(UTC)  | Reason: Not specified

File Attachment(s):
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 4 users thanked uni for this useful post.
on 28/08/2013(UTC),  on 28/08/2013(UTC),  on 28/08/2013(UTC),  on 28/08/2013(UTC)
Online Davide Carpi  
#2 Posted : 28 August 2013 01:21:50(UTC)
Davide Carpi


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 13/01/2012(UTC)
Posts: 2,159
Man
Italy
Location: Italy

Was thanked: 1091 time(s) in 716 post(s)
very very cool library, there are several interesting things Biggrinirol:

works for me (win 7 x64)


best regards,

Davide

Edited by user 28 August 2013 01:25:15(UTC)  | Reason: Not specified

If you like my plugins please consider a donation to SMath Studio; for personal contributions to me: paypal.me/dcprojects
Offline omorr  
#3 Posted : 28 August 2013 08:18:41(UTC)
omorr


Rank: Administration

Groups: Registered, Administrators, Advanced Member
Joined: 23/06/2009(UTC)
Posts: 1,695
Man
Serbia

Was thanked: 299 time(s) in 256 post(s)
I agree with Davide. I mentioned this library few times as well Good

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

Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
thanks 2 users thanked omorr for this useful post.
on 28/08/2013(UTC),  on 28/08/2013(UTC)
Offline mkraska  
#4 Posted : 28 August 2013 10:27:27(UTC)
mkraska


Rank: Advanced Member

Groups: Registered
Joined: 15/04/2012(UTC)
Posts: 1,486
Germany

Was thanked: 789 time(s) in 504 post(s)
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/wi...th%20with%20Plugins.ashx
thanks 1 user thanked mkraska for this useful post.
on 28/08/2013(UTC)
Offline uni  
#5 Posted : 28 August 2013 10:33:37(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
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.

Edited by user 28 August 2013 10:47:39(UTC)  | Reason: Not specified

Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 1 user thanked uni for this useful post.
on 28/08/2013(UTC)
Offline mkraska  
#6 Posted : 28 August 2013 11:50:52(UTC)
mkraska


Rank: Advanced Member

Groups: Registered
Joined: 15/04/2012(UTC)
Posts: 1,486
Germany

Was thanked: 789 time(s) in 504 post(s)
Originally Posted by: uni Go to Quoted Post
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/wi...th%20with%20Plugins.ashx
Offline uni  
#7 Posted : 28 August 2013 12:13:24(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
Originally Posted by: mkraska Go to Quoted Post
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.
uni attached the following image(s):
Namespace operator.PNG
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 1 user thanked uni for this useful post.
on 28/08/2013(UTC)
Offline kilele  
#8 Posted : 28 August 2013 12:51:42(UTC)
kilele


Rank: Advanced Member

Groups: Registered
Joined: 30/03/2011(UTC)
Posts: 392

Was thanked: 132 time(s) in 113 post(s)
Originally Posted by: omorr Go to Quoted Post

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


I see viacheslav and davide more like fabulous dwarves blacksmiths and radovan and martin like mere mortal betatesters, thanks btw Biggrin

Edited by user 28 August 2013 12:53:26(UTC)  | Reason: Not specified

Offline mkraska  
#9 Posted : 28 August 2013 15:04:36(UTC)
mkraska


Rank: Advanced Member

Groups: Registered
Joined: 15/04/2012(UTC)
Posts: 1,486
Germany

Was thanked: 789 time(s) in 504 post(s)
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/wi...th%20with%20Plugins.ashx
Offline uni  
#10 Posted : 28 August 2013 18:21:27(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
Updated to GSL 1.16.
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 3 users thanked uni for this useful post.
on 28/08/2013(UTC),  on 28/08/2013(UTC),  on 29/08/2013(UTC)
Offline uni  
#11 Posted : 16 September 2016 16:37:36(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
Updated for the fully automatic build using Release Manager.
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
Offline overlord  
#12 Posted : 23 June 2018 23:49:08(UTC)
overlord


Rank: Advanced Member

Groups: Registered
Joined: 23/07/2013(UTC)
Posts: 78
Turkey

Was thanked: 25 time(s) in 16 post(s)
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
Offline uni  
#13 Posted : 24 June 2018 00:36:27(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
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.

Edited by user 01 August 2018 05:57:37(UTC)  | Reason: Not specified

Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
Offline uni  
#14 Posted : 01 August 2018 18:19:18(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
gslrkck simple test.



gslrkck.test1.sm (12kb) downloaded 15 time(s).
gslrkck.test1.pdf (49kb) downloaded 22 time(s).
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 1 user thanked uni for this useful post.
on 02/08/2018(UTC)
Offline uni  
#15 Posted : 12 December 2018 14:12:57(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
Updated.

Changes:
- zero point issue fixed;
- added support for the simple D(t,x) definition.
Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 4 users thanked uni for this useful post.
on 12/12/2018(UTC),  on 12/12/2018(UTC),  on 12/12/2018(UTC),  on 12/12/2018(UTC)
Offline uni  
#16 Posted : 24 December 2018 18:50:43(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
Updated.



gsl.ode.kinetic1.sm (9kb) downloaded 24 time(s).
gsl.ode.kinetic2.sm (15kb) downloaded 24 time(s).
gsl.ode.kinetic3.sm (15kb) downloaded 18 time(s).
gsl.ode.test1.sm (20kb) downloaded 20 time(s).
gsl.ode.test2.sm (19kb) downloaded 21 time(s).
gsl.ode.Amplitude detector.sm (21kb) downloaded 28 time(s).

gsl.ode.kinetic1.pdf (78kb) downloaded 14 time(s).
gsl.ode.kinetic2.pdf (93kb) downloaded 14 time(s).
gsl.ode.kinetic3.pdf (92kb) downloaded 10 time(s).
gsl.ode.test1.pdf (111kb) downloaded 12 time(s).
gsl.ode.test2.pdf (111kb) downloaded 14 time(s).
gsl.ode.Amplitude detector.pdf (149kb) downloaded 17 time(s).

Edited by user 25 December 2018 02:48:35(UTC)  | Reason: Not specified

Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 4 users thanked uni for this useful post.
on 24/12/2018(UTC),  on 24/12/2018(UTC),  on 24/12/2018(UTC),  on 25/12/2018(UTC)
Offline uni  
#17 Posted : 22 January 2019 03:23:03(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
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).

2019-01-22_05-46-47.png 2019-01-22_05-17-11.png

Edited by user 22 January 2019 03:47:19(UTC)  | Reason: Not specified

Russia forever!
Viacheslav N. Mezentsev
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
thanks 3 users thanked uni for this useful post.
on 22/01/2019(UTC),  on 22/01/2019(UTC),  on 22/01/2019(UTC)
Offline EricLB  
#18 Posted : 06 May 2019 20:49:56(UTC)
EricLB

Rank: Newbie

Groups: Registered
Joined: 06/05/2019(UTC)
Posts: 1
Mexico
Location: CDMX

Hello...

How do I use this dlls in a MVS C# project?
I'm trying to excecute a little example using P/Invoke:

public MainWindow()
{
InitializeComponent();

double res = gsl_pow_2(5);
System.Console.WriteLine("Resultado: "+res);
}

[DllImport( "gsl32.dll" )]
private static extern double gsl_pow_2(double x);

I get a System.EntryPointNotFoundException. Am I missing something?
Regards.
Offline uni  
#19 Posted : 14 May 2019 16:33:45(UTC)
uni


Rank: Advanced Member

Groups: Registered, Advanced Member
Joined: 10/11/2010(UTC)
Posts: 896
Man
Russian Federation

Was thanked: 793 time(s) in 457 post(s)
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
💰 Support me for plugins development: https://money.yandex.ru/to/410013245578758/100
Offline Jean Giraud  
#20 Posted : 16 May 2019 07:34:23(UTC)
Jean Giraud


Rank: Advanced Member

Groups: Registered
Joined: 04/07/2015(UTC)
Posts: 3,616
Canada

Was thanked: 679 time(s) in 530 post(s)
Originally Posted by: EricLB Go to Quoted Post
How do I use this dlls in a MVS C# project?
I'm trying to excecute a little example using P/Invoke:


Are you saying MVS [?] is like running some C# from Numerical Recipes
Why not code equation editor/program Smath style ?
That reminds me long time ago BenaLib a damned advanced and well
garnished package for Excel. What was the interest to run Legendre
polynomials [per say]. How would it complement Smath ?
Sorry ... I'm lost in there.

Users browsing this topic
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.