how can I use parameter instead of equation in dsolve

3 visualizzazioni (ultimi 30 giorni)
Hi
I want to solve an ordinary differential symbolic equation with dsolve. But I want to save my equation in a parameter and use this parameter in dsolve. My codes are coming below:
clear all
syms a x
l=a*x;
dsolve('Dx=l')
these codes don't work. What should I do?
Thanks a lot

Risposta accettata

Kai Gehrs
Kai Gehrs il 27 Apr 2012
Hi Frank,
you can try something like
clear all; syms a x; l=a*x; dsolve(['Dx= ' char(l)])
The point is that variables/parameters inside a string cannot be "evaluated". But as the example suggests you can use the command CHAR to convert a symbolic expression to a character string and use the brackets to concatenate strings appropriately.
Hope this helps and best regards,
-- Kai

Più risposte (1)

Walter Roberson
Walter Roberson il 27 Apr 2012
dsolve( subs(sym('Dx=l')) )
  4 Commenti
frank
frank il 28 Apr 2012
When I use this command, MATLAB returns the error:
Warning: Empty equation
> In dsolve at 109
In chechdsolve2 at 3
ans =
[ empty sym ]
Thanks
Luan Trinh
Luan Trinh il 26 Nov 2014
Hi everyone,
I want to know how to solve some ODEs like this: clear all; syms a x; l=a*x; dsolve(['D2x*' char(l)+ 'Dx*x' == 0])
Could you help me?

Accedi per commentare.

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by