MATLAB: Vpa command for solving a root(), after solve() command

equationvpa

Hi,
I'm trying to find the optimum T in the following equation:
n_ov = ((alf_eff * (2 * pi * sigG^2 * C_max * K * (1 - exp( (-r^2) / (2 * sigG^2) ))) - eps_eff * r^2 * sigB * T^4 - (B*(T-T_l)) / P_in) * (1 - T_l / T))
First I derive T;
dT = diff(n_ov, T)
To find the optimum T, I search T where dT = 0.
T_opt = solve(dT == 0, T)
I got the following results:
root(4*P_in*r^2*sigB*z^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z^4*exp(r^2/(2*sigG^2)) + B*z^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z, 1)
root(4*P_in*r^2*sigB*z^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z^4*exp(r^2/(2*sigG^2)) + B*z^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z, 2)
root(4*P_in*r^2*sigB*z^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z^4*exp(r^2/(2*sigG^2)) + B*z^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z, 3)
root(4*P_in*r^2*sigB*z^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z^4*exp(r^2/(2*sigG^2)) + B*z^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z, 4)
root(4*P_in*r^2*sigB*z^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z^4*exp(r^2/(2*sigG^2)) + B*z^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z, 5)
For this I now I can use the vpa command. I did the same as explained in the matlab documentation vpa() .
So I just try to solve T_opt with the vpa command
T_opt_vpa = vpa(T_opt)
This returns me exactly the same as I just tried with the solve() command, the only difference is that z now z1 is.
root(4*P_in*r^2*sigB*z1^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z1^4*exp(r^2/(2*sigG^2)) + B*z1^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z1, 1)
root(4*P_in*r^2*sigB*z1^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z1^4*exp(r^2/(2*sigG^2)) + B*z1^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z1, 2)
root(4*P_in*r^2*sigB*z1^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z1^4*exp(r^2/(2*sigG^2)) + B*z1^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z1, 3)
root(4*P_in*r^2*sigB*z1^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z1^4*exp(r^2/(2*sigG^2)) + B*z1^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z1, 4)
root(4*P_in*r^2*sigB*z1^5*exp(r^2/(2*sigG^2)) - 3*P_in*T_l*r^2*sigB*z1^4*exp(r^2/(2*sigG^2)) + B*z1^2*exp(r^2/(2*sigG^2)) - 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi*exp(r^2/(2*sigG^2)) + 2*C_max*K*P_in*T_l*alf_eff*sigG^2*pi - B*T_l^2*exp(r^2/(2*sigG^2)), z1, 5)
Anybody an idea what I'm doing wrong? Thanks in advance

Best Answer

You have a fifth-degree polynomial in ‘z’: z^5 in all 5 terms. Analytic representations do not exist for polynomials larger than fourth-degree. You will have to substitute numeric values for your variables and solve it numerically.