MATLAB: How can i calculate five unknown parameters?

fsolveMATLAB

Hello everyone,
I want to calculate the five unknown parameters for the following equations. Please could you give me a hint on how to do it?
Some of the parameters i already know them so i define them n = 1; k = 1.38064852 * 10^-23; T = 8; q = 1.60217662 * 10^-19; Vt = n*k*T/q; Np = 5; Ns = 12; Voc = 36.48; Isc = 8.12; Im = 7.62; Vm = 29.47;
These are the unknown parameters i am looking for: (Iph I_o Vt Rs Rp)
These are the equations i have and i want to solve them 1) Vt = (n*k*T)/q; 2) Np*Iph – Np*I_o*exp((Voc/Ns*Vt) – 1) – (Np/Ns) * (Voc/Rp) = 0; 3) Isc == Np*Iph – Np*I_o*exp((Isc*Rs)/(Np*Vt) -1) – ((Isc*Rs)/Rp); 4) Im == Np*Iph – Np*I_o*exp((((Vm/Ns)+((Im/Np)*Rs))/Vt) – 1) – Np* (((Vm/Ns) + ((Im/Np)*Rs))/Rp); 5) (Im/Vm) == ((Np/Ns*Vt)*I_o*exp(((Vm + Im*((Ns/Np)*Rs))/(Ns*Vt)) + (1/(Ns*Np)*Rp))) / (1 + (Rs/Vt)*I_o*exp((Vm + (Im*(Ns*Np)*Rs))/(Ns*Vt)) + (Rs/Rp)); 6) (-(1/Rp)) == ((-(Np/Ns*Vt))*I_o*exp((Isc*(Ns/Np)*Rs)/(Ns*Vt)) – (1/(Ns*Np)*Rp)) / (1 + (Rs/Vt)*I_o*exp((Isc*(Ns/Np)*Rs)/(Ns*Vt)) + (Rs/Rp)), Iph);
Thanks in advance
Regards,
Charalampos

Best Answer

Use the Optimization Toolbox fsolve (link) function.