Mathcad Custom Functions

Mathcad Custom Functions - This plugin will help you to connect Mathcad custom functions - Mensajes

#21 Publicado: 29/3/2012 8:48:20
Radovan Omorjan

Radovan Omorjan

325 me gusta y 1 no me gusta en 2.052 mensajes.

Grupo: Moderator

Hello uni,
Wrote

This function from Mathematical library for MathCad v1.2 (Giuseppe Borzì ) which is in the userefi/mathlib.dll file. You can delete mathlib.dll and function round() will disappear without plug-in switch-off. The example with function is given in the Mathlib.pdf (page 3).


Unfortunately, there will dissapear all the mentioned functions and not only round().

Regards,
Radovan

When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#22 Publicado: 29/3/2012 9:43:01
kmihaylovich

kmihaylovich

8 me gusta en 131 mensajes.

Grupo: User

uni, welcome back! Is it possible to add support for the units in your library? It will be really great! Very desirable feature! Unfortunately most of the functions returns error instead of the result
#23 Publicado: 29/3/2012 9:51:53
kmihaylovich

kmihaylovich

8 me gusta en 131 mensajes.

Grupo: User

uni, I'm talking about errors when trying to use the dll from http://www.wsp.ru/ru/download.asp with your plugin... Please, could you support it? I've checked the code, but don't know how to fix it - the error appears in the file https://smath.info/svn/public/plugins/mcadefi/mcaduser/EFIManager.cpp in the line "throw gcnew Exception( "Error in mathcad efi function: "". If you have no time for this, could you please advise how to fix it? Please! Your plugin is great!
#24 Publicado: 29/3/2012 10:03:25
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Unfortunately no. Mathcad EFI never supported units. I made a maximum that is possible. I do not recommend to use this interface since it became outdated. As far as I know in new versions of Mathcad PTC forgot about it. There can be you mean something another.

Yes, I tried WaterSteamPro, there are too much functions. I had no license to work with them closely. Functions loaded, but no more than that.
Russia ☭ forever, Viacheslav N. Mezentsev
#25 Publicado: 29/3/2012 10:04:15
Radovan Omorjan

Radovan Omorjan

325 me gusta y 1 no me gusta en 2.052 mensajes.

Grupo: Moderator

Wrote

...Your plugin is great!


I agree. Uni made some great plugins - I mentioned that few times. They need some polishing, I think, and I hope it will happen ASAP.

Regards,
Radovan
When Sisyphus climbed to the top of a hill, they said: "Wrong boulder!"
#26 Publicado: 29/3/2012 10:11:14
kmihaylovich

kmihaylovich

8 me gusta en 131 mensajes.

Grupo: User

uni, do you mean that functions with no description - it is because of the no license installed?

You said that Mathcad EFI never supported units, but how Mathcad works with these functions using WaterSteamPro? Does it use another interface?
#27 Publicado: 29/3/2012 10:34:44
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Citar

uni, do you mean that functions with no description - it is because of the no license installed?

No, it was long ago, as I remember in case of function invocation there was a window with the message that there is no license. And the description on the picture is created by a plugin automatically. If we want to make a complete description is required an additional information which isn't available in wspmcad.dll (about units I mean).

Citar

You said that Mathcad EFI never supported units, but how Mathcad works with these functions using WaterSteamPro? Does it use another interface?

Yes, it read additional XML files with the description of functions (but I'm not sure, since didn't work with units). If you look at the function description in the MCADINCL.H file, will see that there is nothing about units.

Citar

I've checked the code, but don't know how to fix it - the error appears in the file https://smath.info/svn/p...mcaduser/EFIManager.cpp in the line "throw gcnew Exception( "Error in mathcad efi function: ""

If execution of the program reached this line, it means that function returned an error. The plugin tries to show an error in that look in which it is described in the library. There is one uncertainty which I didn't complete. A problem with the table of error messages. In one libraries of an error begin with a zero, in others from one. I didn't understand why such confusion, but it can cause the situation specified by you.
In any case function returned an error and the reason can be in other.
Russia ☭ forever, Viacheslav N. Mezentsev
#28 Publicado: 29/3/2012 10:53:20
kmihaylovich

kmihaylovich

8 me gusta en 131 mensajes.

Grupo: User

Thank you, uni!
#29 Publicado: 30/3/2012 21:00:56
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Citar

You said that Mathcad EFI never supported units, but how Mathcad works with these functions using WaterSteamPro? Does it use another interface?


I looked at library once again. In order that functions worked with units it is necessary to include the special file (watersteampro.mcd) in which each function from library is redefined for work with units. There is no additional interface, just redefinition.

I used "Water Steam Pro 6.0.1.36" from rutracker. I think it works with plugin .



Some docs (sm, pdf, rus): WaterSteamPro6.zip (mirror)
(my ftp works from time to time)
Russia ☭ forever, Viacheslav N. Mezentsev
A 2 usuarios les gustó este mensaje
Andrey Ivashov 31/3/2012 0:47:00, kmihaylovich 2/4/2012 13:25:00
#30 Publicado: 2/4/2012 13:26:45
kmihaylovich

kmihaylovich

8 me gusta en 131 mensajes.

Grupo: User

Thank you! I will use it.
#31 Publicado: 11/4/2012 5:57:19
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Wrote

Hello,

I've noted that Mathcad EFI plugin has its own round(1) function. SMath has round(2). In spite of that the both functions have the same name but different numbers of arguments, when the EFI plugin is active then we can not use round(2). Here is a simple example:

EFI plufin enabled:
[MATH=eng]c←80/9[/MATH]
[MATH=eng]c=8.8889[/MATH]
[MATH=eng]round(c)=9[/MATH]
[MATH=eng]round(c,3)=9[/MATH]

EFI plugin disabled:
[MATH=eng]round(c,3)=8.889[/MATH]

Regards,
Radovan


I'd made some changes: mcadefi_20120411.zip (mirror)
Russia ☭ forever, Viacheslav N. Mezentsev
A 3 usuarios les gustó este mensaje
Radovan Omorjan 11/4/2012 6:06:00, kmihaylovich 11/4/2012 6:06:00, Andrey Ivashov 11/4/2012 11:53:00
#32 Publicado: 3/5/2013 7:20:27
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Updated. Small fixes, but doesn't work in SMathStudio 0.96.4868 (Andrey will fix this in the next build).
Russia ☭ forever, Viacheslav N. Mezentsev
#33 Publicado: 3/5/2013 11:27:54
kilele

kilele

134 me gusta en 397 mensajes.

Grupo: User

Great! I overlooked what this plugin was about. It seems to be like the plugin requested in
Built-in Thermodynamic (and other) Tables - Internal function to return thermodynamic properties
I've just updated one of my posts on that thread with c# libraries :
http://en.smath.info/forum/yaf_postsm9354_Built-in-Thermodynamic--and-other--Tables.aspx#post9354
#34 Publicado: 11/6/2013 12:07:37
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Updated.
Russia ☭ forever, Viacheslav N. Mezentsev
#35 Publicado: 17/6/2013 18:14:42
Martin Kraska

Martin Kraska

1.361 me gusta en 2.275 mensajes.

Grupo: Moderator

I have problems installing EFI. Did install the mathlib.dll from userefi.zip in post #1

Details in the attached sheet...
Plugin EFI for SMath Studio.sm (45,1 KiB) descargado 1610 vez(es).
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
A 2 usuarios les gustó este mensaje
ioan92 18/6/2013 0:19:00, Вячеслав Мезенцев 18/6/2013 7:13:00
#36 Publicado: 18/6/2013 8:56:31
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

Wrote

I have problems installing EFI. Did install the mathlib.dll from userefi.zip in post #1

Details in the attached sheet...



Try to update and show me the log file (userefi\efi.txt).

Russia ☭ forever, Viacheslav N. Mezentsev
#37 Publicado: 18/6/2013 17:41:15
Martin Kraska

Martin Kraska

1.361 me gusta en 2.275 mensajes.

Grupo: Moderator

Wrote


Try to update and show me the log file (userefi\efi.txt).



Different behaviour now. Installs cleanly, but then math regions cannot be edited any more (or more precise: just character by character intermixed with error messages.)

But, sorry, I did not find a file efi.txt in the plugin directory. Details again in the attachment.
Plugin EFI for SMath Studio.sm (23,78 KiB) descargado 1596 vez(es).
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
#38 Publicado: 18/6/2013 18:13:14
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

This means that plugin can't load mcaduser.dll library. I don't know why.

Citar

But, sorry, I did not find a file efi.txt in the plugin directory.


Updated. Try again with new version. This file is deleted when you close the program.
Russia ☭ forever, Viacheslav N. Mezentsev
#39 Publicado: 18/6/2013 18:40:33
Martin Kraska

Martin Kraska

1.361 me gusta en 2.275 mensajes.

Grupo: Moderator

Better now, no more crashes, but no function as well.

Installs cleanly. Edit of math regions without problems now, after manually adding mathlib.dll to userefi (still required?) I see the file efi.txt. Contents: (says: not a valid Win32 application. Exception of HRESULT...

19.06.2013 00:32:26 [Error] ist keine zulässige Win32-Anwendung. (Ausnahme von HRESULT: 0x800700C1)
Technische Mechanik mit SMath Studio: https://link.springer.com/book/10.1007/978-3-658-50592-9
#40 Publicado: 18/6/2013 19:19:42
Вячеслав Мезенцев

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

1.558 me gusta en 1.868 mensajes.

Grupo: Moderator

I think the problem is that you are using a 64-bit system. This is an old problem and I don't know how to solve it. Also, I don't know if this is possible at all (load 32-bit libraries on 64-bit system).

EDIT: Lesson 2. Support of 32-bit applications in the 64-bit Windows environment. Why cannot 32-bit DLL's be used in a 64-bit program?
Citar

It is impossible to load a 32-bit DLL from a 64-bit process and execute its code. It is impossible due to the design of 64-bit systems. It is impossible fundamentally. And no tricks and undocumented means will help you. To do this you will have to load and initialize WoW64, not to speak of the kernel structures. Actually, it means that a 64-bit process must be made 32-bit "on the fly".



There is no easy way. You can't use user libraries that have been created for 32-bit systems.
Russia ☭ forever, Viacheslav N. Mezentsev
A 1 usuarios les gustó este mensaje
Davide Carpi 19/6/2013 0:36:00
  • Nuevos mensajes
  • Sin mensajes nuevos