Cephes Math Library - Adds 78 special functions (Cephes Math Library 2.4, CALGO). - Сообщения






Functions list:
H1v(), H2v(), Jvc(), Yvc(), Ivc(), Kvc(), jsph(), ysph(), h1sph(), h2sph(), Ai(), Bi(), Aip(), Bip(), struvec(),
H1e(), H2e(), Jve(), Yve(), Ive(), Kve(), Aie(), Bie(), Aipe(), Bipe(),
lg(), rgam(), binomial(), Beta1(), lbeta1(), psic(), igamma(), igammac(), igammai(), ibeta(), ibetai(),
hyp1c1(), hyp2c0(), hyp2c1(), hyp1c2(), hyp3c0(),
LegendreE(), LegendreF(), LegendreEc(), LegendreEc1(), LegendreKc(), LegendreKc1(), sn(), cn(), dn(), phi(),
LegendreP(), LegendrePc(), LegendrePc1(), Rf(), Rd(), Rj(),
Dawson(), FresnelC(), FresnelS(), dilog(), Riezeta(), Riezeta2(),
expint(), sinint(), cosint(), sinhint(), coshint(), Plm(), Qlm(), pnorm(), Ylm(), Yl(),
arrot(), signum(), csgn(), sfact(), mask().
H2v - [ v,z ] Hankel function of real order v and complex argument z (2nd kind). Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Jv - [ v,z ] Bessel function of real order v and complex argument z. Argument z is considered in the cut plane -pi < arg(z) <= pi.
Yv - [ v,z ] Neumann function of real order v and complex argument z. Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Iv - [ v,z ] Modified Bessel function of real order v and complex argument z. Argument z is considered in the cut plane -pi < arg(z) <= pi.
Kv - [ v,z ] Modified Bessel function of the third kind of real order v and complex argument z. Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
jv - [ v,x ] Spherical Bessel function of real order v and complex argument z. Argument z is considered in the cut plane -pi < arg(z) <= pi.
yv - [ v,x ] Spherical Neumann function of real order v and complex argument z. Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
h1v - [ v,x ] Spherical Hankel function of real order v and complex argument z (1st kind). Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
h2v - [ v,x ] Spherical Hankel function of real order v and complex argument z (2nd kind). Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Ai - [ x ] First Airy function, solution of the differential equation y"=xy. The argument can be complex
Bi - [ x ] Second Airy function, solution of the differential equation y"=xy. The argument can be complex
Aip - [ x ] Derivative of the first Airy function, solution of the differential equation y"=xy. The argument can be complex
Bip - [ x ] Derivative of the second Airy function, solution of the differential equation y"=xy. The argument can be complex
Struve - [ v,x ] Computes the Struve function of real order v and real argument x. Negative x is rejected unless v is an integer.
H1e - [ v,z ] Exponentially scaled Hankel function of real order v and complex argument z (1st kind). Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
H2e - [ v,z ] Exponentially scaled Hankel function of real order v and complex argument z (2nd kind). Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Je - [ v,z ] Exponentially scaled Bessel function of real order v and complex argument z. Argument z is considered in the cut plane -pi < arg(z) <= pi.
Ye - [ v,z ] Exponentially scaled Neumann function of real order v and complex argument z. Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Ie - [ v,z ] Exponentially scaled modified Bessel function of real order v and complex argument z. Argument z is considered in the cut plane -pi < arg(z) <= pi.
Ke - [ v,z ] Exponentially scaled modified Bessel function of the third kind of real order v and complex argument z. Argument z must be nonzero and is considered in the cut plane -pi < arg(z) <= pi.
Ae - [ x ] Exponentially scaled first Airy function of complex argument.
Be - [ x ] Exponentially scaled second Airy function of complex argument.
Aep - [ x ] Exponentially scaled derivative of first Airy function of complex argument.
Bep - [ x ] Exponentially scaled first derivative of second Airy function of complex argument.
lgam - [ z ] Natural logarithm of gamma function. Argument z is considered in the cut plane -pi < arg(z) <= pi.
rgam - [ x ] Returns one divided by the gamma function of the argument.
binomial - [ a,k ] Binomial coefficient, a is real k must be a non negative integer.
beta - [ x,y ] Beta function or Euler's integral of the first kind. The arguments can be complex
lbeta - [ x,y ] Natural logarithm of beta function. Arguments are considered in the cut plane -pi < arg(z) <= pi.
Psi - [ z ] Logarithmic derivative of the gamma function. The argument can be complex
igam - [ a,x ] Incomplete gamma integral; both arguments must be real and positive.
igamc - [ a,x ] Complemented incomplete gamma integral; both arguments must be real and positive.
igami - [ a,x ] Inverse of complemented imcomplete gamma integral of real arguments.
ibeta - [ a,b,x ] Incomplete beta integral; the domain of definition is 0<=x<=1, a>0 and b>0.
ibetai - [ a,b,x ] Inverse of incomplete beta integral; the domain of definition is a>0 and b>0.
hyp1f1 - [ a,b,x ] Confluent hypergeometric function 1F1 with real arguments.
hyp2f0 - [ a,b,x ] Hypergeometric function 2F0 with real arguments.
hyp2f1 - [ a,b,c,x ] Gauss hypergeometric function 2F1 with real arguments.
hyp1f2 - [ a,b,c,x ] Hypergeometric function 1F2 with real arguments.
hyp3f0 - [ a,b,c,x ] Hypergeometric function 3F0 with real arguments.
LegendreE - [ x,k ] Legendre's canonical incomplete elliptic integral of the second kind with real arguments.
LegendreF - [ x,k ] Legendre's canonical incomplete elliptic integral of the first kind with real arguments.
LegendreEc - [ k ] Legendre's complete elliptic integral of the second kind with real argument.
LegendreEc1 - [ k ] Associated Legendre's complete elliptic integral of the second kind with real argument.
LegendreKc - [ k ] Legendre's complete elliptic integral of the first kind with real argument.
LegendreKc1 - [ k ] Associated Legendre's complete elliptic integral of the first kind with real argument.
LegendreP - [ x,n,k ] Legendre's canonical incomplete elliptic integral of the third kind with real arguments.
LegendrePc - [ n,k ] Legendre's complete elliptic integral of the third kind with real arguments.
LegendrePc1 - [ n,k ] Associated Legendre's complete elliptic integral of the third kind with real arguments.
Rf - [ x,y,z ] Carlson's incomplete elliptic integral of the first kind with real arguments.
Rd - [ x,y,z ] Carlson's incomplete elliptic integral of the second kind with real argument.
Rj - [ x,y,z,p ] Carlson's incomplete elliptic integral of the third kind with real argument.
sn - [ u,k ] Jacobian elliptic functions sn(u,k) of real arguments.
cn - [ u,k ] Jacobian elliptic functions cn(u,k) of real arguments.
dn - [ u,k ] Jacobian elliptic functions dn(u,k) of real arguments.
phi - [ u,k ] Amplitude of jacobian elliptic functions phi(u,k) of real arguments.
Dawson - [ x ] Dawson's Integral of real argument.
FresnelC - [ x ] Fresnel integral C(x) of real argument.
FresnelS - [ x ] Fresnel integral S(x) of real argument.
dilog - [ x ] Dilogarithm function of real argument.
Zeta - [ x ] Riemann zeta function of real argument. x must be positive
Zeta2 - [ x,q ] Riemann zeta function of two arguments. It is the sum, for k integer ranging from 0 to infinity, of (k+q)^-x where q is a positive integer and x > 1.
Ei - [ n,x ] Exponential integral Ei. n in an integer, x is real.
Si - [ x ] Sine integral of real argument.
Ci - [ x ] Cosine integral of real argument.
Shi - [ x ] Hyperbolic sine integral of real argument.
Chi - [ x ] Hyperbolic cosine integral of real argument.
Plm - [ l,m,x ] First kind Legendre polynomials and associated functions of degree l and integer order m. Plm(l,m,x) = (-1)^m (1-x^2)^(m/2) d^m( Pn(n,x) )/dx^m where l and x must be real and Pn(n,x) is the Legendre polynomial.
Qlm - [ l,m,x ] Second kind Legendre functions of degree l, integer order m and argument 0<=x<1.
plm - [ l,m,x ] Normalized first kind Legendre polynomials and associated functions of integer degree l and integer order m.
Ylm - [ l,m,theta,phi ] Spherical harmonic of integer degree l, integer order m, latitude theta in [-PI,PI] and longitude phi.
Yl - [ l,theta,phi ] Sequence of spherical harmonic of integer degree l, integer order m=0..l, latitude theta in [-PI,PI] and longitude phi.
round - [ x ] Round real x to nearest or even integer number.
signum - [ x ] Sign of x.
csgn - [ x ] Complex sign of x.
sfact - [ n ] Semifactorial of integer n.
mask - [ x ] Masks and unmasks the partial loss of precision error. If called with x = 0 that error message is disabled, if called with x != 0 that error message is enabled. Returns the previous state; default is unmasked.
Note. This is the same math library that was previously in the mcadefi plugin (mathlib.dll). So you need to update mcadefi plugin to avoid duplication of functions.
Cephes Math Library. Functions.pdf (41 КиБ) скачан 315 раз(а).
Links:
1. Cephes Mathematical Library.
2. Collected Algorithms (CALGO).
Cephes Math Library. Functions.txt (8 КиБ) скачан 203 раз(а).
I tried to compile the 64-bit version of the library from sources and apparently it didn't work.
Wrote64-bit platform? This plugin must support the 64-bit platform, but I'm not been able to test. If so, it is possible to restore functions by manual copying mathlib.dll.
I tried to compile the 64-bit version of the library from sources and apparently it didn't work.
Yes, 64bit. Did not yet try the inofficial distribution with the 32bit-tagged exe.
In order to undo an update, one can go to the plugin dir and change the text in the config.ini to point to an older subdirectory. To find the plugin dir, users might try the attached link sheet.
EDIT: This is not reliable. You must delete the plugin dirs for Cephes and efi (use the attached sheet to find efi and use the time stamp to find cephes)
Then re-install the userefi sub-directory contents in the efi subdirectory from the inofficial distribution.
Plugin index.sm (24 КиБ) скачан 131 раз(а).
WroteWrote64-bit platform? This plugin must support the 64-bit platform, but I'm not been able to test. If so, it is possible to restore functions by manual copying mathlib.dll.
I tried to compile the 64-bit version of the library from sources and apparently it didn't work.
Yes, 64bit. Did not yet try the inofficial distribution with the 32bit-tagged exe.
In order to undo an update, one can go to the plugin dir and change the text in the config.ini to point to an older subdirectory. To find the plugin dir, users might try the attached link sheet.
Hmm...I tried the unofficial 32-bit tagged SMath by Martin on one 32bit computer (did not try the regular one yet). I can not get to see the functions in the function list. I even tried to delete both extension folders (EFI and Cephes)and reinstalled them again on by one. No success yet. I might make some mistake, though.
Regards,
Radovan
[EDIT] Tried once more, and unfortunately I can not get all these functions back now

I got the same problem like you. I also do not know what to do. I think the best way will be to wait for Uni until he dissolve the problem and give us the new corrected plugin.
The best regards,
Janusz
The problem for me was solved by
- deleting the cephes and the efi subdirectory,
- re-installing the efi from the extension manager
- copy all dll's from the userefi dir in the inofficial distribution to the re-installed plugin.
The test sheet with the special functions is ok.
log contents is:
17.08.2013 20:04:41 [INFO ] [Plugin::Initialize()]: Is64Bit() = 32
17.08.2013 20:04:41 [ERROR] [Plugin::Initialize()]: Die Datei oder Assembly "mathlib, Version=1.0.4977.42823, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden. Diese Anwendung konnte nicht gestartet werden, da die Side-by-Side-Konfiguration ungültig ist. Weitere Informationen finden Sie im Anwendungsereignisprotokoll. Weitere Details können auch mit dem Befehlszeilentool sxstrace.exe angezeigt werden. (Ausnahme von HRESULT: 0x800736B1)
Not only cephes does not work but some of Davides plugins do not work as well. (Random, FindRoots, Diag...)
Edit: Roll back by deleting the cephes dir and re-installing mathlib.dll
Edit: Plugin index now contains link to cephes dir
Plugin index.sm (25 КиБ) скачан 101 раз(а).
8/17/2013 8:39:14 PM [ERROR] [Plugin::Initialize()]: Could not load file or assembly 'mathlib, Version=1.0.4977.42823, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The application has failed to start because its side-by-side configuration is incorrect. Please see the application event log or use the command-line sxstrace.exe tool for more detail. (Exception from HRESULT: 0x800736B1)
Regards,
Radovan
It's not as easy as I thought before. Please, try again.
Try to install Microsoft Visual C++ 2010 Redistributable Package (x86) or Microsoft Visual C++ 2010 Redistributable Package (x64).
ЦитатаThe Microsoft Visual C++ 2010 Redistributable Package installs runtime components of Visual C++ Libraries required to run applications developed with Visual C++ on a computer that does not have Visual C++ 2010 installed.
I tried it again, installed the VC++2010 Redistributable as well, but no success.
As I could see from the log.txt - there is only one additional line about successful initialize - but no functions loaded. I do not know what is the influence of the present "not working" condition but it seems that lots of files do not work anymore - see the pictures please
Regards,
Radovan
what works:
- Cephes math (may be due to not deleting mathlib from EFI subdir)
- Checkbox
- Clear()
- EFI (steam tables)
- Hyperlink
- Imageregion
- MathcadFileAccess
- maple()
what does not work:
- 3D plot region (incl. CreateMesh)
- plotting of al_airy (display of values works)
- Combobox
- UoM()
- ODEsolver
- even built-in functions like rows()
- FindRoot
- statistical tools
- xy plot region
- zedgraph region
log contents:
18.08.2013 08:28:54 [ERROR] [Plugin.Initialize()] Die Datei oder Assembly "mathlib, Version=1.0.4978.15952, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden. Diese Anwendung konnte nicht gestartet werden, da die Side-by-Side-Konfiguration ungültig ist. Weitere Informationen finden Sie im Anwendungsereignisprotokoll. Weitere Details können auch mit dem Befehlszeilentool sxstrace.exe angezeigt werden. (Ausnahme von HRESULT: 0x800736B1)
18.08.2013 08:28:54 [INFO ] [Plugin.Initialize()] Successfully. 0 functions loaded.
18.08.2013 08:46:01 [ERROR] [Plugin.Initialize()] Die Datei oder Assembly "mathlib, Version=1.0.4978.15952, Culture=neutral, PublicKeyToken=null" oder eine Abhängigkeit davon wurde nicht gefunden. Diese Anwendung konnte nicht gestartet werden, da die Side-by-Side-Konfiguration ungültig ist. Weitere Informationen finden Sie im Anwendungsereignisprotokoll. Weitere Details können auch mit dem Befehlszeilentool sxstrace.exe angezeigt werden. (Ausnahme von HRESULT: 0x800736B1)
18.08.2013 08:46:01 [INFO ] [Plugin.Initialize()] Successfully. 0 functions loaded.
WroteTry to install Microsoft Visual C++ 2010 Redistributable Package (x86) or Microsoft Visual C++ 2010 Redistributable Package (x64).
According to system control I have Visual C++ Redistributable 2005 installed. The 2010 installer fails and complains that a newer version is installed. Actually I don't know the dependencies and therefore I am hesitating to intervene.
I have both programs: VS2008 and VS2010, so everything works. Cephes consists of very old sources, written in C (I tried to fix the code so that it looks like C++). Compile them is difficult. VS tries to connect the old library, which is not on your machine.
As for the other plugins, I think it is in violation of the logic of the chain. Symbolic part of this plugin is also included in the work, but because the functions are not loaded it returns an error (false) somewhere in the call chain. I'm not sure about this, here it is necessary to consult with Andrey.
The ODESolvers project configured in the same way and it works. Therefore, I think the problem is in the old C code that I was not able to put in a modern look. I would like to compile the source code for the 64-bit platform too.
WroteI don't know why, but the plugin uses libraries from VS2008: msvcm90.dll (release version) and msvcm90d.dll (debug version). The project is compiled in debug configuration, as in the release it doesn't launch. So, I think you need to try to install Microsoft Visual C++ 2008 Redistributable Package (x86) or Microsoft Visual C++ 2008 Redistributable Package (x64) instead of VC++ 2010.
Sorry, install of VC++ 2008 (went without problems) did not help.
I don't know if you could make use of Interfacing C/C++ and Python with SWIG
who knows if it may be possible to glue all this with ironpython and smath

This reminds me of a way to convert java libraries to .NET assemblies by means of the tool ikvm.
There are lots of interesting code in java that would be nice to use in SMath.
Edit :
Swig supports C# as well
WroteUpdated. Well, the last time. I compiled plugin in the release configuration. Maybe this version will work. And show me the log file.
Much better now, yet still problems. Part of the functions now work and no side effenct so far.
Thank you for keep fighting!
log.txt (30 КиБ) скачан 85 раз(а).
-
Новые сообщения
-
Нет новых сообщений