Solve a function in terms of a variable?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I need to find this equation in terms of M2:
syms M M1 M2 Alpha
dAlpha = sqrt((M^2)-1)/(M*(1+(.2*(M^2))));
integralAlpha = int(dAlpha,M)
eqn = subs(integralAlpha,M,M2) - subs(integralAlpha,M,M1) == Alpha
sol = solve(eqn,M2)
but I am getting an error that says:
Warning: Cannot find explicit solution.
> In solve at 319
In Testing at 8
sol =
Empty sym: 0-by-1
0 Kommentare
Antworten (1)
Roger Stafford
am 13 Apr. 2015
Bearbeitet: Roger Stafford
am 13 Apr. 2015
If my memory serves me correctly, that function will give rise to elliptic integrals of the first and second kinds, incomplete. That may be why 'solve' failed to come up with an explicit solution. However, before you give up on 'solve' I would suggest you place the limits, M1 and M2, as arguments in 'int' itself instead of first getting an indefinite integral:
integralAlpha = int(dAlpha,M,M1,M2);
If that fails, then try using numerical integration with specific values for M1 and M2, and use 'fzero' instead of 'solve'.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Assumptions finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!