Error using sym>convertChar (line 1537) when solving an ODE using laplace transform. How to fix the problem?
Ältere Kommentare anzeigen
%%CODE
%% Solving 2nd order ODE using laplace transform
clc, clear , close all
syms x t s X F
F = laplace('diff(x(t),t,t)+7*diff(x(t),t)+10*x(t)= 20',s); % solving using laplace transform
F = subs(F,{'x(0)','D(x)(0)'},{5,3}); % initial values
F = subs(F,{'laplace(x(t),t,s)'},{X}); % substituting the initial values then solve Laplace
X = solve(F,'X');
X = ilaplace(X);
X = simplify(X); pretty(X);
disp(X)
%% ERROR BELOW
Error using sym>convertChar (line 1537)
Character vectors and strings in the first argument can only
specify a variable or number. To evaluate character vectors and
strings representing symbolic expressions, use 'str2sym'.
Error in sym>tomupad (line 1253)
S = convertChar(x);
Error in sym (line 220)
S.s = tomupad(x);
Error in transform (line 22)
if ~isa(f, 'sym'), f = sym(f); end
Error in sym/laplace (line 28)
L = transform('symobj::laplace', 't', 's', 'z', F, varargin{:});
Error in HW_1_3_2_4070H300 (line 4)
F = laplace('diff(x(t),t,t)+7*diff(x(t),t)+10*x(t)= 20',s); %
solving using laplace transform
2 Kommentare
Naveed Naqvi
am 15 Mai 2021
Having the same exact problem unfortunately :/
Walter Roberson
am 15 Mai 2021
Since R2017b (I think it is) you cannot pass character vectors to laplace() . You need to construct the symbolic equation and pass that instead.
Akzeptierte Antwort
Weitere Antworten (1)
Walter Roberson
am 15 Mai 2021
Bearbeitet: Walter Roberson
am 15 Mai 2021
%%CODE
%% Solving 2nd order ODE using laplace transform
syms x(t) s X F
Dx = diff(x,t);
D2x = diff(Dx,t);
eqn = D2x + 7*Dx + 10*x(t) == 20
F = laplace(eqn,s) % solving using laplace transform
F = subs(F,{x(0), Dx(0)},{5,3}) % initial values
F = subs(F, {laplace(x(t),t,s)},{X}) % substituting the initial values then solve Laplace
X = solve(F, X)
X = ilaplace(X)
Kategorien
Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
