フィルターのクリア

Hello, I've got the problem. Can any one help me with that error?

2 ビュー (過去 30 日間)
Pablo Alonso
Pablo Alonso 2023 年 1 月 24 日
回答済み: Walter Roberson 2023 年 1 月 24 日
syms x(t)
D3x = diff(x, t, 3);
D2x = diff(x, t, 2);
Dx = diff(x, t);
eqn = diff(x, t, 2)+2*diff(x, t)+x == 2;
cond = [x(0)==0, diff(x, t)==0];
xSol(t) = dsolve (eqn,cond)
Warning: Number of equations greater than number of indeterminates. Trying heuristics to reduce to square system.
> In symengine
In mupadengine/evalin_internal
In mupadengine/feval_internal
In dsolve>mupadDsolve (line 334)
In dsolve (line 203)
Error using mupadengine/feval_internal
Unable to reduce to square system because the number of equations differs from the number of indeterminates.
Error in dsolve>mupadDsolve (line 334)
T = feval_internal(symengine,'symobj::dsolve',sys,x,options);
Error in dsolve (line 203)
sol = mupadDsolve(args, options);

回答 (2 件)

Walter Roberson
Walter Roberson 2023 年 1 月 24 日
cond = [x(0)==0, diff(x, t)==0];
The first part of that sets a boundary condition. The second part of it says that the derivative of x(t) is zero, which is a second equation rather than a boundary condition. The only way to satisfy diff(x, t) == 0 is if x(t) is constant
You probably wanted Dx(0)==0 or similar

KSSV
KSSV 2023 年 1 月 24 日
It looks there is some problem with conditions. Check the conditions. Without the conditions it is working fine.
syms x(t)
Dx = diff(x);
D2x = diff(Dx) ;
D3x = diff(D2x) ;
eqn = diff(x, t, 2)+2*diff(x, t)+x == 2;
cond = [x(0)==0, diff(x, t)==0];
xSol(t) = dsolve (eqn)
xSol(t) = 

カテゴリ

Help Center および File ExchangePartial Differential Equation Toolbox についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by