exponential and polynomial equation

8 ビュー (過去 30 日間)
mostafa  Ahmed
mostafa Ahmed 2018 年 4 月 23 日
コメント済み: Walter Roberson 2018 年 4 月 24 日
need to to solve the equation
.5*Rut(U(i)-deltau(i))^2+S+1.5*Rut*deltau(i)^2 == .5*Rut(V(i)-U(i))^2+Yp;
where
deltau=Uf0*(exp(-((U(i)-Uf0)/(3*Uf0)).^2));
for U using ''solve'' function in for loop,, can anyone help plz.
  2 件のコメント
mostafa  Ahmed
mostafa Ahmed 2018 年 4 月 24 日
If I want this function in for loop with series values of V
Walter Roberson
Walter Roberson 2018 年 4 月 24 日
.. then do that ?
But doing that will not permit you to use solve() to find a closed form solution. solve() might possibly switch to finding a numeric solution; if so then you should just use vpasolve() instead.

サインインしてコメントする。

採用された回答

John D'Errico
John D'Errico 2018 年 4 月 23 日
Don't use solve. If all the other variables are known, then just use fzero.
Is Rut a variable? Or a function? If you think that this does a multiplication:
Rut(U(i)-deltau(i))^2
you are wrong. MATLAB requires an * in there.

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2018 年 4 月 23 日
solve() is intended for closed form solutions. You will not be able to find a closed form solution to that because of the exp() term.
If you have the values of all of the variables except for U then you can use vpasolve to get one solution. There are probably a few different solutions involving complex-valued numbers; I am not sure at the moment if there could be two real-valued solutions.

カテゴリ

Help Center および File ExchangePolynomials についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by