求解方程:
其中,已知量为:
x_TE_1=1.23; y_TE_1=3.3232; z_TE_1=0.9876; h_T=0;
R_E=6378137; R_P=6356752;
x_ES=1; y_ES=1; z_ES=1;
求解:x_TE,y_TE,z_TE
代码:
x_TE_1=1.23;y_TE_1=3.3232; z_TE_1=0.9876;
R_E=6378137; R_P=6356752;
x_ES=1; y_ES=1; z_ES=1;
h_T=0;
syms x_TE y_TE z_TE
eq1=(x_TE-x_ES)/(x_TE_1-x_ES)-(y_TE-y_ES)/(y_TE_1-y_ES);
eq2=(x_TE-x_ES)/(x_TE_1-x_ES)-(z_TE-z_ES)/(z_TE_1-z_ES);
eq3=(x_TE^2)/((R_E+h_T)^2)+(y_TE^2)/((R_E+h_T)^2)+(z_TE^2)/((R_P+h_T)^2);
f = matlabFunction([eq1;eq2;eq3], 'vars', {[x_TE y_TE z_TE]});
x0 = [x_TE_1 y_TE_1 z_TE_1];
options=optimset('Display','iter','MaxFunEvals',1000,'TolFun',1e-10);
[x,fval,exitflag,output] = fsolve(f,x0,options);