Solving Non-Linear Equations
Ältere Kommentare anzeigen
I am stuck up with the following program. I want to solve for 3 variables b, n, k. Please help.
for b,n,k I am getting <1x1 sym> how to get the values? Any help would be highly apprecaited.. Thanks
clear
T = 0.89;
R = 0.11;
lamda = 0.98;
d = 1.65;
pi = 3.14;
phit = 0.60;
phir = 0.31;
syms b n k;
eq1 = 'phir=atan(((-2)*k)/(1-((n)^2)-((k)^2)))';
eq2 = 'T=((1-R)^2)+((4)*(R)*(sin(phir)^2))*(exp((-((4*(pi)*k)/(lamda)))*(d)))/((1)-(R)*(exp(((4*(pi)*k)/(lamda))*(d)))^2)+((4)*(R)*(exp(((4*(pi)*k)/(lamda))*(d)))*(sin(b+phir)^2))';
eq3 = 'phit=((2)*(pi)*(n)*(d)/(lamda))+arctan(((k)*((n)^2+(k)^2-(1)))/(((k)^2+(n)^2)*(2+n)*(n)))+arctan((((R)*exp((4)*(pi)*(k))/(lamda))*(sin(b+phir)^2))/((1)-((R)*exp((4)*(pi)*(k)))/(lamda))*(cos(b+phir)^2))';
eq4 = 'b=(((2)*(pi)*(n)*(d))/(lamda))';
sol1 = solve(eq1);
sol2 = solve(eq2);
sol3 = solve(eq3);
sol4 = solve(eq4);
Antworten (3)
Rizwana Junaid
am 15 Okt. 2012
0 Stimmen
you can solve ur system by calling ode45 function. for that you will have to save all equations in one file and call the solver function from the other main file.
1 Kommentar
Shaumik
am 15 Okt. 2012
Walter Roberson
am 15 Okt. 2012
You need to remove all of your apostrophes. If you are using R2012a or later, change your = that are in the equations to == but if you are using an earlier version, convert your A=B forms to (B)-(A) or (A)-(B) with no = or == in the definition of the expression. For example,
eq4 = (b)-((((2)*(pi)*(n)*(d))/(lamda)));
The result of your solve() is going to be a structure array with one field for each variable name. Access the field to see the value, such as
sol4.k
2 Kommentare
Shaumik
am 16 Okt. 2012
Sachin Ganjare
am 16 Okt. 2012
0 Stimmen
Undefined function or method 'arctan' for input arguments of type 'sym'.
Matlab function name is 'atan' and not 'arctan'
Hope it helps!!!
3 Kommentare
Shaumik
am 16 Okt. 2012
Sachin Ganjare
am 16 Okt. 2012
Bearbeitet: Sachin Ganjare
am 16 Okt. 2012
Probably you do not need quotes in your equation.
Check in your version of matlab documentation.
Hope it helps!!!
Shaumik
am 16 Okt. 2012
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!