how can I use parameter instead of equation in dsolve

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

 채택된 답변

Kai Gehrs
Kai Gehrs 2012년 4월 27일
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

추가 답변 (1개)

Walter Roberson
Walter Roberson 2012년 4월 27일
dsolve( subs(sym('Dx=l')) )

댓글 수: 4

Hi Walter!
This is for MATLAB R2012a only?
Shouldn't be. It is just using a straight-forwards subs().
When I use this command, MATLAB returns the error:
Warning: Empty equation
> In dsolve at 109
In chechdsolve2 at 3
ans =
[ empty sym ]
Thanks
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?

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Mathematics에 대해 자세히 알아보기

태그

질문:

2012년 4월 27일

댓글:

2014년 11월 26일

Community Treasure Hunt

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

Start Hunting!

Translated by