solve an expression and plot

3 ビュー (過去 30 日間)
Atom
Atom 2013 年 6 月 3 日
Suppose, for each alpha, I have to find a delta which is the highest positive root of the equation A^2-4*B*beta=0. The expression of A, B are given in terms of alpha and delta. How to get that and how to plot alpha vs delta plot.
beta=0.85;gamma=.15;theta=0.1;
alpha=.303:.001:5
syms delta
A=-alpha*beta + alpha.*delta + gamma*beta + beta;
B=alpha.*theta*(beta -delta) + gamma*beta;
rr=solve(A^2-4*B*beta == 0)
plot(alpha,rr)

採用された回答

Walter Roberson
Walter Roberson 2013 年 6 月 3 日
beta = 0.85; gamma = .15; theta = 0.1;
alpha = .303: .001: 5;
syms Alpha delta
A = -Alpha * beta + Alpha .* delta + gamma * beta + beta;
B = Alpha .* theta * (beta - delta) + gamma * beta;
rr = solve( A^2 - 4*B*beta, delta);
rrt = double(subs(rr, Alpha, alpha(1));
[maxrrt, idx] = max(rrt);
maxrr = rr(idx);
rrpos = double(subs(maxrr, Alpha, alpha));
plot(alpha, rrpos)

その他の回答 (1 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 6 月 3 日
編集済み: Azzi Abdelmalek 2013 年 6 月 3 日
beta=0.85;
gamma=.15;
theta=0.1;
alpha=(.303:.001:5)'
syms delta
A=-alpha*beta + alpha*delta + gamma*beta + beta;
B=alpha*theta*(beta -delta) + gamma*beta;
for k=1:numel(A)
rr{k}=solve(A(k).^2-4*B(k)*beta == 0);
end
  2 件のコメント
Walter Roberson
Walter Roberson 2013 年 6 月 3 日
After which you would need the step of finding the highest positive root for each rr{:}
Atom
Atom 2013 年 6 月 4 日
Thanks for your reply. delta may some times given one +ve, one -ve roots and 2 positive. I need the largest positive value of delta for each alpha. I also would like to plot(alpha, delta).

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

カテゴリ

Help Center および File ExchangeParticle & Nuclear Physics についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by