Matlab Runtime Library - Consists of approximately 400 Matlab math functions - Messages
#21 Posted: 8/24/2013 9:37:51 AM
WroteWroteUpdated. Now the installer is located within the plugin.
There is an user interaction issue. After updating the plugin and re-starting smath,
the installer dialog pops up and offers installation. You are also informed that you do not need installation if you already have the runtime environment installed. In this case it is natural that the user chooses [Cancel]. Then, however, the dialog pops up every time you launch smath.
If you choose [Install] even if you know that nothing needs to be installed, then suddenly the installer gets aware of that and just finishes and no more messages appear on start-up.
Updated. I think I found a way to do the installation without the use of environment variable path. You can remove the path from the environment variable. Also, you can delete the installation files from c:\MATLAB6p5.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Martin Kraska 8/24/2013 10:25:00 AM
#22 Posted: 8/24/2013 10:24:53 AM
Works here.
Is there a chance to return scalars if the result matrix has 1x1 size by default (without touching each function separately)? Then we could use all the functions as direct replacement for the standard ones. The drawback would be that these functions cannot handle lists (except if you can recognize that in the plugin and do sys2mat and vice versa.
One could even think of working with any nested structures by flattening them out internally and afterwards restructuring the results according to input.
I guess that unit handling would not be trivial. However, for most special functions this is irrelevant anyways.
Is there a chance to return scalars if the result matrix has 1x1 size by default (without touching each function separately)? Then we could use all the functions as direct replacement for the standard ones. The drawback would be that these functions cannot handle lists (except if you can recognize that in the plugin and do sys2mat and vice versa.
One could even think of working with any nested structures by flattening them out internally and afterwards restructuring the results according to input.
I guess that unit handling would not be trivial. However, for most special functions this is irrelevant anyways.
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#23 Posted: 8/24/2013 11:36:32 AM
WroteWorks here.
Is there a chance to return scalars if the result matrix has 1x1 size by default (without touching each function separately)? Then we could use all the functions as direct replacement for the standard ones.
Updated. Done. As for the rest, I'll think about it.
Russia ☭ forever, Viacheslav N. Mezentsev
2 users liked this post
#24 Posted: 8/24/2013 12:17:01 PM
Great! Thanks a lot. Now all functions can be called with scalar argument and return scalars in that case. Is it sensible to include the mw... names in the doc (some of them are already in it) or can they be expected to change to generic ones in the near future?
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#25 Posted: 8/24/2013 12:27:08 PM
I'm not sure, but I think that next year we will not see support for namespaces and function overloading. Andrey is a very busy. Therefore, I recommend to use prefixes in the documentation.
For now we have 49 functions.
For now we have 49 functions.
[INFO ] [Plugin.Initialize()] Is64Bit() = 32
[INFO ] [Plugin.Initialize()] mwabs(1) - the absolute value of the elements of X.
[INFO ] [Plugin.Initialize()] mweq(2) - A == B.
[INFO ] [Plugin.Initialize()] mwfft2(1) - two-dimensional fast Fourier transform.
[INFO ] [Plugin.Initialize()] mwfind(1) - find indices and values of nonzero elements.
[INFO ] [Plugin.Initialize()] mwfprintf(4) - [file, permission, format, data] - write formatted data to file.
[INFO ] [Plugin.Initialize()] mwge(2) - A >= B.
[INFO ] [Plugin.Initialize()] mwgt(2) - A > B.
[INFO ] [Plugin.Initialize()] mwifft2(1) - two-dimensional inverse discrete Fourier transform.
[INFO ] [Plugin.Initialize()] mwifftshift(2) - inverse FFT shift.
[INFO ] [Plugin.Initialize()] mwle(2) - A <= B.
[INFO ] [Plugin.Initialize()] mwlt(2) - A < B.
[INFO ] [Plugin.Initialize()] mwneq(2) - A ~= B.
[INFO ] [Plugin.Initialize()] mwsign(1) - signum function.
[INFO ] [Plugin.Initialize()] mwfscanf(3) - ( file, permission, format ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwfscanf(4) - ( file, permission, format, size ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwode45(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, medium order method.
[INFO ] [Plugin.Initialize()] mwode23(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwode113(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, variable order method.
[INFO ] [Plugin.Initialize()] mwode15s(5) - (init, x1, x2, intvls, D) solve stiff differential equations and DAEs, variable order method.
[INFO ] [Plugin.Initialize()] mwode23s(5) - (init, x1, x2, intvls, D) solve stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwand(2) - A & B.
[INFO ] [Plugin.Initialize()] mwor(2) - A | B.
[INFO ] [Plugin.Initialize()] mwnot(1) - ~A.
[INFO ] [Plugin.Initialize()] mwacos(1) - inverse cosine.
[INFO ] [Plugin.Initialize()] mwacosh(1) - inverse hyperbolic cosine.
[INFO ] [Plugin.Initialize()] mwacot(1) - inverse cotangent.
[INFO ] [Plugin.Initialize()] mwacoth(1) - inverse hyperbolic cotangent.
[INFO ] [Plugin.Initialize()] mwacsc(1) - inverse cosecant.
[INFO ] [Plugin.Initialize()] mwacsch(1) - inverse hyperbolic cosecant.
[INFO ] [Plugin.Initialize()] mwall(1) - ( A ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwall(2) - ( A, DIM ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwangle(1) - phase angle.
[INFO ] [Plugin.Initialize()] mwany(1) - ( A ) for any nonzeros.
[INFO ] [Plugin.Initialize()] mwany(2) - ( A, DIM ) test for any nonzeros.
[INFO ] [Plugin.Initialize()] mwasec(1) - inverse secant.
[INFO ] [Plugin.Initialize()] mwasech(1) - inverse hyperbolic secant.
[INFO ] [Plugin.Initialize()] mwasin(1) - inverse sine.
[INFO ] [Plugin.Initialize()] mwasinh(1) - inverse hyperbolic sine.
[INFO ] [Plugin.Initialize()] mwatan(1) - inverse tangent.
[INFO ] [Plugin.Initialize()] mwatanh(1) - inverse hyperbolic tangent.
[INFO ] [Plugin.Initialize()] mwatan2(2) - ( Y, X ) four-quadrant inverse tangent.
[INFO ] [Plugin.Initialize()] mwabs(1) - diagonal scaling to improve eigenvalue accuracy.
[INFO ] [Plugin.Initialize()] mwbeta(2) - (Z,W) computes the beta function for corresponding elements of Z and W. The beta function is defined as beta(z,w) = integral from 0 to 1 of t.^(z-1) .* (1-t).^(w-1) dt. The arrays Z and W must be the same size (or either can be scalar).
[INFO ] [Plugin.Initialize()] mwbetainc(3) - (X,Z,W) computes the incomplete beta function for corresponding elements of X, Z, and W. The elements of X must be in the closed interval [0,1]. The arguments X, Z and W must all be the same size (or any of them can be scalar).
[INFO ] [Plugin.Initialize()] mwbetaln(2) - (Z,W) computes the natural logarithm of the beta function for corresponding elements of Z and W. The arrays Z and W must be the same size (or either can be scalar). BETALN is defined as: BETALN = LOG(BETA(Z,W)) and is obtained without computing BETA(Z,W). Since the beta function can range over very large or very small values, its logarithm is sometimes more useful
[INFO ] [Plugin.Initialize()] mwbin2dec(1) - convert binary string to decimal integer.
[INFO ] [Plugin.Initialize()] mwbitand(2) - (A,B ) returns the bit-wise AND of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] mwbitcmp(2) - (A,N) returns the bit-wise complement of A as an N-bit non-negative integer.
[INFO ] [Plugin.Initialize()] mwbitor(2) - (A,B ) returns the bit-wise OR of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] Successfully. 49 functions loaded.
[INFO ] [Plugin.Initialize()] mwabs(1) - the absolute value of the elements of X.
[INFO ] [Plugin.Initialize()] mweq(2) - A == B.
[INFO ] [Plugin.Initialize()] mwfft2(1) - two-dimensional fast Fourier transform.
[INFO ] [Plugin.Initialize()] mwfind(1) - find indices and values of nonzero elements.
[INFO ] [Plugin.Initialize()] mwfprintf(4) - [file, permission, format, data] - write formatted data to file.
[INFO ] [Plugin.Initialize()] mwge(2) - A >= B.
[INFO ] [Plugin.Initialize()] mwgt(2) - A > B.
[INFO ] [Plugin.Initialize()] mwifft2(1) - two-dimensional inverse discrete Fourier transform.
[INFO ] [Plugin.Initialize()] mwifftshift(2) - inverse FFT shift.
[INFO ] [Plugin.Initialize()] mwle(2) - A <= B.
[INFO ] [Plugin.Initialize()] mwlt(2) - A < B.
[INFO ] [Plugin.Initialize()] mwneq(2) - A ~= B.
[INFO ] [Plugin.Initialize()] mwsign(1) - signum function.
[INFO ] [Plugin.Initialize()] mwfscanf(3) - ( file, permission, format ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwfscanf(4) - ( file, permission, format, size ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwode45(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, medium order method.
[INFO ] [Plugin.Initialize()] mwode23(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwode113(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, variable order method.
[INFO ] [Plugin.Initialize()] mwode15s(5) - (init, x1, x2, intvls, D) solve stiff differential equations and DAEs, variable order method.
[INFO ] [Plugin.Initialize()] mwode23s(5) - (init, x1, x2, intvls, D) solve stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwand(2) - A & B.
[INFO ] [Plugin.Initialize()] mwor(2) - A | B.
[INFO ] [Plugin.Initialize()] mwnot(1) - ~A.
[INFO ] [Plugin.Initialize()] mwacos(1) - inverse cosine.
[INFO ] [Plugin.Initialize()] mwacosh(1) - inverse hyperbolic cosine.
[INFO ] [Plugin.Initialize()] mwacot(1) - inverse cotangent.
[INFO ] [Plugin.Initialize()] mwacoth(1) - inverse hyperbolic cotangent.
[INFO ] [Plugin.Initialize()] mwacsc(1) - inverse cosecant.
[INFO ] [Plugin.Initialize()] mwacsch(1) - inverse hyperbolic cosecant.
[INFO ] [Plugin.Initialize()] mwall(1) - ( A ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwall(2) - ( A, DIM ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwangle(1) - phase angle.
[INFO ] [Plugin.Initialize()] mwany(1) - ( A ) for any nonzeros.
[INFO ] [Plugin.Initialize()] mwany(2) - ( A, DIM ) test for any nonzeros.
[INFO ] [Plugin.Initialize()] mwasec(1) - inverse secant.
[INFO ] [Plugin.Initialize()] mwasech(1) - inverse hyperbolic secant.
[INFO ] [Plugin.Initialize()] mwasin(1) - inverse sine.
[INFO ] [Plugin.Initialize()] mwasinh(1) - inverse hyperbolic sine.
[INFO ] [Plugin.Initialize()] mwatan(1) - inverse tangent.
[INFO ] [Plugin.Initialize()] mwatanh(1) - inverse hyperbolic tangent.
[INFO ] [Plugin.Initialize()] mwatan2(2) - ( Y, X ) four-quadrant inverse tangent.
[INFO ] [Plugin.Initialize()] mwabs(1) - diagonal scaling to improve eigenvalue accuracy.
[INFO ] [Plugin.Initialize()] mwbeta(2) - (Z,W) computes the beta function for corresponding elements of Z and W. The beta function is defined as beta(z,w) = integral from 0 to 1 of t.^(z-1) .* (1-t).^(w-1) dt. The arrays Z and W must be the same size (or either can be scalar).
[INFO ] [Plugin.Initialize()] mwbetainc(3) - (X,Z,W) computes the incomplete beta function for corresponding elements of X, Z, and W. The elements of X must be in the closed interval [0,1]. The arguments X, Z and W must all be the same size (or any of them can be scalar).
[INFO ] [Plugin.Initialize()] mwbetaln(2) - (Z,W) computes the natural logarithm of the beta function for corresponding elements of Z and W. The arrays Z and W must be the same size (or either can be scalar). BETALN is defined as: BETALN = LOG(BETA(Z,W)) and is obtained without computing BETA(Z,W). Since the beta function can range over very large or very small values, its logarithm is sometimes more useful
[INFO ] [Plugin.Initialize()] mwbin2dec(1) - convert binary string to decimal integer.
[INFO ] [Plugin.Initialize()] mwbitand(2) - (A,B ) returns the bit-wise AND of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] mwbitcmp(2) - (A,N) returns the bit-wise complement of A as an N-bit non-negative integer.
[INFO ] [Plugin.Initialize()] mwbitor(2) - (A,B ) returns the bit-wise OR of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] Successfully. 49 functions loaded.
Russia ☭ forever, Viacheslav N. Mezentsev
3 users liked this post
Davide Carpi 8/24/2013 6:23:00 PM, Martin Kraska 8/24/2013 5:17:00 PM, Radovan Omorjan 8/25/2013 4:22:00 AM
#26 Posted: 8/24/2013 5:16:12 PM
Thanks for the information. If the loss of list processing capability would be the only drawback of just re-defining the internal functions, I would vote for that.
Something went wrong with the diagonal scaling. I can't see such a function.
Something went wrong with the diagonal scaling. I can't see such a function.
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
#27 Posted: 8/25/2013 4:32:19 AM
WroteI'm not sure, but I think that next year we will not see support for namespaces and function overloading. Andrey is a very busy. Therefore, I recommend to use prefixes in the documentation.
For now we have 49 functions.[INFO ] [Plugin.Initialize()] Is64Bit() = 32
[INFO ] [Plugin.Initialize()] mwabs(1) - the absolute value of the elements of X.
[INFO ] [Plugin.Initialize()] mweq(2) - A == B.
[INFO ] [Plugin.Initialize()] mwfft2(1) - two-dimensional fast Fourier transform.
[INFO ] [Plugin.Initialize()] mwfind(1) - find indices and values of nonzero elements.
[INFO ] [Plugin.Initialize()] mwfprintf(4) - [file, permission, format, data] - write formatted data to file.
[INFO ] [Plugin.Initialize()] mwge(2) - A >= B.
[INFO ] [Plugin.Initialize()] mwgt(2) - A > B.
[INFO ] [Plugin.Initialize()] mwifft2(1) - two-dimensional inverse discrete Fourier transform.
[INFO ] [Plugin.Initialize()] mwifftshift(2) - inverse FFT shift.
[INFO ] [Plugin.Initialize()] mwle(2) - A <= B.
[INFO ] [Plugin.Initialize()] mwlt(2) - A < B.
[INFO ] [Plugin.Initialize()] mwneq(2) - A ~= B.
[INFO ] [Plugin.Initialize()] mwsign(1) - signum function.
[INFO ] [Plugin.Initialize()] mwfscanf(3) - ( file, permission, format ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwfscanf(4) - ( file, permission, format, size ) - read formatted data from file.
[INFO ] [Plugin.Initialize()] mwode45(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, medium order method.
[INFO ] [Plugin.Initialize()] mwode23(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwode113(5) - (init, x1, x2, intvls, D) solve non-stiff differential equations, variable order method.
[INFO ] [Plugin.Initialize()] mwode15s(5) - (init, x1, x2, intvls, D) solve stiff differential equations and DAEs, variable order method.
[INFO ] [Plugin.Initialize()] mwode23s(5) - (init, x1, x2, intvls, D) solve stiff differential equations, low order method.
[INFO ] [Plugin.Initialize()] mwand(2) - A & B.
[INFO ] [Plugin.Initialize()] mwor(2) - A | B.
[INFO ] [Plugin.Initialize()] mwnot(1) - ~A.
[INFO ] [Plugin.Initialize()] mwacos(1) - inverse cosine.
[INFO ] [Plugin.Initialize()] mwacosh(1) - inverse hyperbolic cosine.
[INFO ] [Plugin.Initialize()] mwacot(1) - inverse cotangent.
[INFO ] [Plugin.Initialize()] mwacoth(1) - inverse hyperbolic cotangent.
[INFO ] [Plugin.Initialize()] mwacsc(1) - inverse cosecant.
[INFO ] [Plugin.Initialize()] mwacsch(1) - inverse hyperbolic cosecant.
[INFO ] [Plugin.Initialize()] mwall(1) - ( A ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwall(2) - ( A, DIM ) test to determine if all elements are nonzero.
[INFO ] [Plugin.Initialize()] mwangle(1) - phase angle.
[INFO ] [Plugin.Initialize()] mwany(1) - ( A ) for any nonzeros.
[INFO ] [Plugin.Initialize()] mwany(2) - ( A, DIM ) test for any nonzeros.
[INFO ] [Plugin.Initialize()] mwasec(1) - inverse secant.
[INFO ] [Plugin.Initialize()] mwasech(1) - inverse hyperbolic secant.
[INFO ] [Plugin.Initialize()] mwasin(1) - inverse sine.
[INFO ] [Plugin.Initialize()] mwasinh(1) - inverse hyperbolic sine.
[INFO ] [Plugin.Initialize()] mwatan(1) - inverse tangent.
[INFO ] [Plugin.Initialize()] mwatanh(1) - inverse hyperbolic tangent.
[INFO ] [Plugin.Initialize()] mwatan2(2) - ( Y, X ) four-quadrant inverse tangent.
[INFO ] [Plugin.Initialize()] mwabs(1) - diagonal scaling to improve eigenvalue accuracy.
[INFO ] [Plugin.Initialize()] mwbeta(2) - (Z,W) computes the beta function for corresponding elements of Z and W. The beta function is defined as beta(z,w) = integral from 0 to 1 of t.^(z-1) .* (1-t).^(w-1) dt. The arrays Z and W must be the same size (or either can be scalar).
[INFO ] [Plugin.Initialize()] mwbetainc(3) - (X,Z,W) computes the incomplete beta function for corresponding elements of X, Z, and W. The elements of X must be in the closed interval [0,1]. The arguments X, Z and W must all be the same size (or any of them can be scalar).
[INFO ] [Plugin.Initialize()] mwbetaln(2) - (Z,W) computes the natural logarithm of the beta function for corresponding elements of Z and W. The arrays Z and W must be the same size (or either can be scalar). BETALN is defined as: BETALN = LOG(BETA(Z,W)) and is obtained without computing BETA(Z,W). Since the beta function can range over very large or very small values, its logarithm is sometimes more useful
[INFO ] [Plugin.Initialize()] mwbin2dec(1) - convert binary string to decimal integer.
[INFO ] [Plugin.Initialize()] mwbitand(2) - (A,B ) returns the bit-wise AND of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] mwbitcmp(2) - (A,N) returns the bit-wise complement of A as an N-bit non-negative integer.
[INFO ] [Plugin.Initialize()] mwbitor(2) - (A,B ) returns the bit-wise OR of the two arguments A and B. Both A and B must contain non-negative integers between 0 and BITMAX.
[INFO ] [Plugin.Initialize()] Successfully. 49 functions loaded.
Thank you uni

As I could see in the first post of yours, when you manage to get those functions to work you are updating the plugin - blue starting with mw... (I counted more than 49 at the moment )

If you get most of those functions in the list to work in spite of the mentioned obstacles in SMath (different number of arguments etc.), it would be really something big

Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
Вячеслав Мезенцев 8/25/2013 5:57:00 AM
#28 Posted: 8/25/2013 5:38:43 AM
The functions mwall() and mwany() do not work correctly.
Also, I recommend to modify the calling syntax.
mwany(M) test if any of the elements in M is nonzero. Corresponds to matlab any(M( : )), where the colon operator flattens the matrix into a vector.
mwany(M,1) or mwany(M,2) do the test along the columns and rows respectively (no change except bug fixing required)
Same for mwall.
mwany.sm (10 KiB) downloaded 93 time(s).
Also, I recommend to modify the calling syntax.
mwany(M) test if any of the elements in M is nonzero. Corresponds to matlab any(M( : )), where the colon operator flattens the matrix into a vector.
mwany(M,1) or mwany(M,2) do the test along the columns and rows respectively (no change except bug fixing required)
Same for mwall.
mwany.sm (10 KiB) downloaded 93 time(s).
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
2 users liked this post
#29 Posted: 8/25/2013 6:04:51 AM
Updated. 83 functions (see log.txt in the plugin folder).
Russia ☭ forever, Viacheslav N. Mezentsev
2 users liked this post
#30 Posted: 8/25/2013 7:16:02 AM
Thank you uni
I tried it first and could see that mwbesselx() functions do not work. Then I checked the log.txt file.
This is the end of it
....
8/25/2013 12:35:58 PM [INFO ] [Plugin.Initialize()] Successfully. 83 functions loaded.
8/25/2013 12:39:34 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:34 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:51 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:51 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:56 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:56 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:32 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:32 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:50 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:50 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
....
No success with mwbetainc() yet as well. I suppose you know all this, just wanted to confirm.
Regards,
Radovan

WroteUpdated. 83 functions (see log.txt in the plugin folder).
I tried it first and could see that mwbesselx() functions do not work. Then I checked the log.txt file.
This is the end of it
....
8/25/2013 12:35:58 PM [INFO ] [Plugin.Initialize()] Successfully. 83 functions loaded.
8/25/2013 12:39:34 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:34 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:51 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:51 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:56 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:39:56 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:32 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:32 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:50 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
8/25/2013 12:41:50 PM [ERROR] [Plugin.NumericEvaluation()] mwbesseli(2) Exception has been thrown by the target of an invocation.
....
No success with mwbetainc() yet as well. I suppose you know all this, just wanted to confirm.
Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#31 Posted: 8/25/2013 7:35:46 AM
Show me log.txt from the \bin\win32\ directory.
[albumimg]286[/albumimg]
[albumimg]286[/albumimg]
Russia ☭ forever, Viacheslav N. Mezentsev
#32 Posted: 8/25/2013 8:29:05 AM
I confirm the problem. The log in bin/win32 says
25.08.2013 14:18:54 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
25.08.2013 14:19:00 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
25.08.2013 14:19:09 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:19:16 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:19:20 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:20:55 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
and I get an error message from SMath (translated)
The program cannot be launched because DFORMD.dll is missing on your computer. Re-install the program to solve the problem.
such a dll is present on my system as part of the ANSYS finite element package.

25.08.2013 14:18:54 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
25.08.2013 14:19:00 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
25.08.2013 14:19:09 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:19:16 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:19:20 [ERROR] [mwbesselj] Failed to load MEX-File : besselmx.
25.08.2013 14:20:55 [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
and I get an error message from SMath (translated)
The program cannot be launched because DFORMD.dll is missing on your computer. Re-install the program to solve the problem.
such a dll is present on my system as part of the ANSYS finite element package.
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 users liked this post
Вячеслав Мезенцев 8/25/2013 9:10:00 AM
#33 Posted: 8/25/2013 9:00:05 AM
I checked the log.txt file. There is only one message repeating when I call any of the bessel functions
8/25/2013 2:22:55 PM [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
when I try to use mwbetainc() there is only one message about the first argument
8/25/2013 2:45:00 PM [ERROR] [mwbetainc] X must be in the interval [0,1].
although I used something like this
[MATH=eng]z:range(0,10)[/MATH]
[MATH=eng]mwbetainc(0.5,z,3)=#@#[/MATH]
with the usual error message ...-function is not defined
Regards,
Radovan
[EDIT] I do not have a message about missing dll like Martin
8/25/2013 2:22:55 PM [ERROR] [mwbesseli] Failed to load MEX-File : besselmx.
when I try to use mwbetainc() there is only one message about the first argument
8/25/2013 2:45:00 PM [ERROR] [mwbetainc] X must be in the interval [0,1].
although I used something like this
[MATH=eng]z:range(0,10)[/MATH]
[MATH=eng]mwbetainc(0.5,z,3)=#@#[/MATH]
with the usual error message ...-function is not defined
Regards,
Radovan
[EDIT] I do not have a message about missing dll like Martin
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
Вячеслав Мезенцев 8/25/2013 9:11:00 AM
#34 Posted: 8/25/2013 9:13:29 AM
Updated. Try now. As for mwbetainc(), I don't know yet what's going on.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Radovan Omorjan 8/25/2013 9:20:00 AM
#35 Posted: 8/25/2013 9:21:39 AM
WroteUpdated. Try now. As for mwbetainc(), I don't know yet what's going on.
I can confirm that mwbesselx() functions are working for me

Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
Вячеслав Мезенцев 8/26/2013 5:51:00 AM
#36 Posted: 8/26/2013 5:37:51 AM
Updated. 112 functions.
Added: mwrand(), mwrandn(), mwsize(), mwconv(), mwconv2(), mwnnz(), mwnonzeos(), mwtrace(), mwconj(), mwxor(), mwtril(), mwtriu(), mwcorrcoef(), mweye(), mwones(), mwzeros(), mwroots(), mwrot90(), mwsum().
Added: mwrand(), mwrandn(), mwsize(), mwconv(), mwconv2(), mwnnz(), mwnonzeos(), mwtrace(), mwconj(), mwxor(), mwtril(), mwtriu(), mwcorrcoef(), mweye(), mwones(), mwzeros(), mwroots(), mwrot90(), mwsum().
Russia ☭ forever, Viacheslav N. Mezentsev
2 users liked this post
#37 Posted: 8/26/2013 9:45:32 AM
I am trying to keep up... ;-)
When you assign a matrix generating function to a variable, then this is done symbolically by default in your plugin. Thus, a random matrix looks differently every time it is used. This behaviour is different from Davide's Statistical tools, where numeric evaluation seems to be default.
I guess that symbols with changing contents at every use are somewhat unexpected for the user. Therefore, I would therefore recommend to set evaluation to numeric by default, unless there is something to gain from symbolic evaluation (which I do not see so far, bit I may be wrong).
Edit: There are multiple implications of that SMath symbolics is unaware of scalar or vector properties of operands. Therefore I urgently recommend to suppress symbolic evaluation for (possibly) matrix valued functions. In the second example, replacing mwones() by Ones() solves the problem (mismatch between symbolic and numeric evaluation)
Edit2: To internally apply eval() in every function should help.

When you assign a matrix generating function to a variable, then this is done symbolically by default in your plugin. Thus, a random matrix looks differently every time it is used. This behaviour is different from Davide's Statistical tools, where numeric evaluation seems to be default.
I guess that symbols with changing contents at every use are somewhat unexpected for the user. Therefore, I would therefore recommend to set evaluation to numeric by default, unless there is something to gain from symbolic evaluation (which I do not see so far, bit I may be wrong).
Edit: There are multiple implications of that SMath symbolics is unaware of scalar or vector properties of operands. Therefore I urgently recommend to suppress symbolic evaluation for (possibly) matrix valued functions. In the second example, replacing mwones() by Ones() solves the problem (mismatch between symbolic and numeric evaluation)
Edit2: To internally apply eval() in every function should help.
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 users liked this post
Вячеслав Мезенцев 8/27/2013 5:00:00 AM
#38 Posted: 8/26/2013 5:57:17 PM
some functions do not work...
Error message in log file: Argument to xxx must not be complex.
Error message in SMath: function is not defined.
I can't see any complex argument.
Section math boolean matlab.sm (25 KiB) downloaded 98 time(s).
Error message in log file: Argument to xxx must not be complex.
Error message in SMath: function is not defined.
I can't see any complex argument.
Section math boolean matlab.sm (25 KiB) downloaded 98 time(s).
Martin Kraska
Pre-configured portable distribution of SMath Studio: https://en.smath.info/wiki/SMath%20with%20Plugins.ashx
1 users liked this post
Вячеслав Мезенцев 8/27/2013 5:00:00 AM
#39 Posted: 8/27/2013 1:00:14 AM
Confirmed
log.txt from the plugin folder
the last part
....
8/27/2013 6:50:53 AM [INFO ] [Plugin.Initialize()] Successfully. 112 functions loaded.
8/27/2013 6:52:42 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:42 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:55 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:55 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:08 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:08 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:19 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:19 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:48 AM [ERROR] [Plugin.NumericEvaluation()] mwor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:48 AM [ERROR] [Plugin.NumericEvaluation()] mwor(2) Exception has been thrown by the target of an invocation.
log.txt from win32 folder
8/27/2013 6:52:42 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:42 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:55 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:55 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:08 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:08 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:19 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:19 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:48 AM [ERROR] [mwor] Operands to OR must not be complex.
8/27/2013 6:53:48 AM [ERROR] [mwor] Operands to OR must not be complex.
Regards,
Radovan
log.txt from the plugin folder
the last part
....
8/27/2013 6:50:53 AM [INFO ] [Plugin.Initialize()] Successfully. 112 functions loaded.
8/27/2013 6:52:42 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:42 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:55 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:52:55 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:08 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:08 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:13 AM [ERROR] [Plugin.NumericEvaluation()] mwand(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:19 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:19 AM [ERROR] [Plugin.NumericEvaluation()] mwxor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:48 AM [ERROR] [Plugin.NumericEvaluation()] mwor(2) Exception has been thrown by the target of an invocation.
8/27/2013 6:53:48 AM [ERROR] [Plugin.NumericEvaluation()] mwor(2) Exception has been thrown by the target of an invocation.
log.txt from win32 folder
8/27/2013 6:52:42 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:42 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:55 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:52:55 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:08 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:08 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:13 AM [ERROR] [mwand] Operands to AND must not be complex.
8/27/2013 6:53:19 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:19 AM [ERROR] [mwxor] Operands to AND must not be complex.
8/27/2013 6:53:48 AM [ERROR] [mwor] Operands to OR must not be complex.
8/27/2013 6:53:48 AM [ERROR] [mwor] Operands to OR must not be complex.
Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
1 users liked this post
Вячеслав Мезенцев 8/27/2013 5:00:00 AM
#40 Posted: 8/27/2013 5:09:24 AM
Updated. 136 functions.
mwrand(), mvrandn(), mwand(), mwor(), mwnot(), mwxor() - bugs fixed;
[albumimg]287[/albumimg]
As for symbolic simplifications when dealing with matrices, I think that in this case it's a bug. The multiplication operator believes that the second operand returns a scalar, but this is not true.

mwrand(), mvrandn(), mwand(), mwor(), mwnot(), mwxor() - bugs fixed;
[albumimg]287[/albumimg]
As for symbolic simplifications when dealing with matrices, I think that in this case it's a bug. The multiplication operator believes that the second operand returns a scalar, but this is not true.
Russia ☭ forever, Viacheslav N. Mezentsev
1 users liked this post
Davide Carpi 8/27/2013 11:55:00 AM
-
New Posts
-
No New Posts