NI Home > Community > NI Discussion Forums

LabVIEW MathScript RT Module

Showing results for 
Search instead for 
Do you mean 
Reply
Member
MeeHow
Posts: 34
0 Kudos

Error using evalsrcipt

[ Edited ]

Hi all,

I tried to use mathscript to evalute something specified in front panel, so I've fount evalscript, but after I've connected everything I've received something that I didn't expected;/ Can anyone tell me what's wrong?

http://imageshack.us/m/839/4359/19136236.jpg

 

fp.JPG

Knight of NI
altenbach
Posts: 27,291
0 Kudos

Re: Error using evalsrcipt

[ Edited ]

It would be so much easier for us to troubleshoot if you could attach the actual VI instead of a picture. Make sure it contains useful default data in the controls.

 


MeeHow wrote:

...g I've received something that I didn't expected;/ Can anyone tell me what's wrong?



Now we know what you did not expect, but we still don't know what you actually expected. That might be useful to know too. :smileyvery-happy:

 

Why do you think that a 2D complex array is the correct representation for the output? Define it as a string output instead and make the string indicator big enough (horizontally and vertically) to show all characters. Better?


LabVIEW Champion . Do more with less code and in less time .

Member
MeeHow
Posts: 34
0 Kudos

Re: Error using evalsrcipt

Ok I've fixed some errors and it works quite well but it's really slow... but it's not the point, I can use formulas like this: c1(1:3) but I can't replace it;/ I tried to put more output (c1 as input and output) and tried c1(1:3)=1 or add in node:

c3 = eval(formula)
c1=eval(formula)

 or change it to eval(formula) and put in formula c3=....

 but it won't work

 

What I'm expecting? good working program:smileytongue:  Seriously - to work with formulas (from front panel) that you can use in formula node or mathscript in block diagram. I want to use formulas like these: 

c1(1:3)=1

c2(5)=c1(1)

c3=c1*c2

c3=c1(2:7)+c2(1:6)

etc

Yes, I know - it's complicated;/

Member
PatriciaAD
Posts: 30

Re: Error using evalsrcipt

Hi MeeHow,

 

Thanks for the extra details!

 

Yes, the Mathscript node is expected to run a lot slower when there is an exclamation mark inside. Please read this page for details - Slow performance of MathScript Node, or just use the context help.

 

Since you want to use formulas from front panel, that the user types, without checking for correct spelling, you will continue to have this issue.

 

All the formulas you gave as example work with evalscript, and also if you just type them in the node, except for the 3rd one, where it is not clear what multiplication you expect. In the VI I attached, it is replaced with .* to multiply each element one by one. If you would like matrix multiplication, you need to use the transpose of one of the 2 arrays.

 

Anyway, from the timing benchmarks on my computer, the execution lasts only about half of a second.

 

If you need to grow your application and need faster execution time for more complex formulas, you should really consider checking for correctnes of formula before passing it to Mathscript node.

 

Let us know if you have more questions!

 

Patricia