HP PRIME - What is the fastest way...



#2

From CAS view I want to calculate the inverse transform Laplace of a function...

invlaplace(1/(1+0.2*x+x^2) for example... It's Ok I have a blablabla function of small x as a result. Good! BUT... :

I need to place a big X in place of small x for future copy/paste in the symb view F1(X)=blabla of X and then plotting these...

invlaplace(1/(1+0.2*x+x^2),x='X') doesn't work

subst template or subst(blabala of x, 'X') doesn't work

What is the fastest way... Assuming you have a long function of small x as a result in CAS view How to transfer it in F1(X)= on symb function view ?

Edited: 19 Oct 2013, 10:04 a.m.


#3

Quote:
From CAS view I want to calculate the inverse transform Laplace of a function...

invlaplace(1/(1+0.2*x+x^2) for example... It's Ok I have a blablabla function of small x as a result. Good! BUT... :

I need to place a big X in place of small x for future copy/paste in the symb view F1(X)=blabla of X and then plotting these...

invlaplace(1/(1+0.2*x+x^2),x='X') doesn't work

subst template or subst(blabala of x, 'X') doesn't work

What is the fastest way... Assuming you have a long function of small x as a result in CAS view How to transfer it in F1(X)= on symb function view ?



I think X is a system variable. See Joe Horns list of system variables on his web page or in the thread about PRIME VARIABLES
#4

Remember to quote your variable.

Note that you can't do invlaplace(1/(1+0.2*x+x^2))|x='X' directly as that will evaluate to something * Dirac(x) since the substitution happens first. You need to do it as a two step.

invlaplace(1/(1+0.2*x+x^2)) then

<result>|x='X'


As a side note, the Get from Home/CAS was supposed to do a bit of intelligent rewriting to help avoid this type of thing. It fell on the list of "get to it later" though unfortunately. :-(

TW


#5

Thanks for the quality of your listening Tim,

I've made a mistake in editing my post...

I have first try :

invlaplace(1/(1+0.2*x+x^2),x,'X') with no success...

BUT then I have already try what you suggest :

first command line :
invlaplace(1/(1+0.2*x+x^2)) give me a first result :

1.00*SIN(0.99*x)*EXP(-0.1*x) as expected

then second command line :

1.00*SIN(0.99*x)*EXP(-0.1*x)|x='X' with quotes ! And the result is :

0. !!!

The same happen with subst(1.00*SIN(0.99*x)*EXP(-0.1*x),x='X')

I'am in CAS view...


#6

The decimal numbers are "reals". When you do the where | it evaluates approximately since they are non-exact objects.

You can either click the [a b/c] key to toggle the decimals first before the where, or start with 2/10 in the beginning and it will work.

I'll investigate why a simple substitution is evaluating down. I definitely don't think that should be the case.

TW

#7

Here is something strange for me....

In fact what you suggest, Tim, works but only if I use exact terms in the original Laplace form :

first command :

invlaplace(1/(1+(2/10)*x+x^2)) 2/10 in place of 0.2 !!

and then ExactFirstResultOf(x)|x='X'

do the job !!

Can you comment these ?

Thanks for your help

EDIT : Tim you give the answer before I place this last post !! ;o) !

Edited: 19 Oct 2013, 12:36 p.m.


Possibly Related Threads…
Thread Author Replies Views Last Post
  HP-71B: fastest memory copy? Hans Brueggemann 5 1,820 02-07-2012, 03:32 AM
Last Post: Hans Brueggemann
  HP-15C LE : fastest selling ever ? Donald Ingram 7 2,282 10-02-2011, 03:27 AM
Last Post: Paul Dale

Forum Jump: