m_c_theta1=(m_c0-1/M-1)*cos(theta1)+j_L0*sin(theta1)+1/M+1;
j_L_theta1=(-m_c0+1/M+1)*sin(theta1)+j_L0*cos(theta1);
m_c_gama=(m_c_theta1-1/M+1)*cos(gama-theta1)+j_L_theta1*sin(gama-theta1)+1/M-1;
j_L_gama=(-m_c_theta1+1/M-1)*sin(gama-theta1)+j_L_theta1*cos(gama-theta1);
Boundary Condition:
m_c_gama=-m_c0
j_L_gama=-j_L0
j_L_theta1=-(gamma*l)/2
Hi,
I need to solve these equations and these are my boundary conditions. I need to find m_c0,j_L0,theta1 and M.
Can anyone help me please?

7 comentarios

Kaushik Lakshminarasimhan
Kaushik Lakshminarasimhan el 15 de Feb. de 2017
Do you want an exact or approximate solution?
safi58
safi58 el 15 de Feb. de 2017
exact solution possibly..
Walter Roberson
Walter Roberson el 16 de Feb. de 2017
Complicated trig functions rarely have exact solutions.
Are there constraints to consider? Real values? Only need to consider one period?
safi58
safi58 el 16 de Feb. de 2017
there are boundary conditions which i have given. just need to consider one half cycle as other half cycle would be the same.
safi58
safi58 el 16 de Feb. de 2017
the solution should be like this
m_c0=1-cos(fi)/cos(gamma/2) j_L0=gamma*l*M/2+(M-1/M)*tan(gamma/2)
where theta1=(gamma/2)-fi gamma-theta1=(gamma/2)+fi
safi58
safi58 el 16 de Feb. de 2017
Can anyone give any solution to this question please?
Manuela Gräfe
Manuela Gräfe el 24 de Abr. de 2017
Hi, umme mumtahina.
I see you are working with the LLC converter and the IEEE document (Optimal design methodology for LLC Resonant Converter... by Zhijian Fang etc.).
I am looking for the same solution at the moment for my bachelor thesis and I was wondering if you could provide me your MATLAB code? So I 'don't have to annoy Walter Roberson with the same issues. Please contact me via private message.

Iniciar sesión para comentar.

 Respuesta aceptada

Walter Roberson
Walter Roberson el 16 de Feb. de 2017

0 votos

m_c0 = 4*((m_c_theta1+1)*sin(gamma)^2+l*gamma*(ROOT-(1/2)*cos(gamma)-1/2)*sin(gamma)+(2*ROOT*m_c_theta1+2*ROOT-2)*cos(gamma)-2*ROOT*m_c_theta1+2*ROOT-2)*m_c_theta1/((gamma^2*l^2+4*m_c_theta1^2+8*m_c_theta1+4)*sin(gamma)^2-4*l*gamma*(m_c_theta1-1)*sin(gamma)-16*m_c_theta1)
j_L0 = (1/2)*(-l*gamma*(gamma^2*l^2+4*m_c_theta1^2+4*m_c_theta1+4)*sin(gamma)^3+(2*m_c_theta1*(gamma^2*l^2+4*m_c_theta1^2+12*m_c_theta1+8)*cos(gamma)+4*l^2*(-1+(ROOT+1/2)*m_c_theta1)*gamma^2+(16*ROOT+8)*m_c_theta1^3+(16*ROOT+8)*m_c_theta1^2+16*m_c_theta1)*sin(gamma)^2-2*l*gamma*((l^2*(ROOT-1)*gamma^2+(4*ROOT+4)*m_c_theta1^2+(4*ROOT-8)*m_c_theta1+4*ROOT-4)*cos(gamma)+l^2*(ROOT-1)*gamma^2+(4*ROOT+4)*m_c_theta1^2+(-4*ROOT-8)*m_c_theta1+4*ROOT-4)*sin(gamma)-8*(l^2*(ROOT-1)*gamma^2+4*m_c_theta1^2*(ROOT+1))*(cos(gamma)+1))/(((gamma^2*l^2+4*(m_c_theta1+1)^2)*sin(gamma)^2-4*l*gamma*(m_c_theta1-1)*sin(gamma)-16*m_c_theta1)*sin(gamma))
theta1 = arctan((-2*gamma*l*sin(gamma)^2*m_c_theta1+((-l^2*(ROOT-1)*gamma^2-4*(m_c_theta1+1)*(ROOT*m_c_theta1+ROOT-1))*cos(gamma)-l^2*(ROOT-1)*gamma^2+4*ROOT*m_c_theta1^2-4*ROOT-4*m_c_theta1+4)*sin(gamma)-4*l*gamma*(cos(gamma)+1)*(ROOT-1))/((gamma^2*l^2+4*(m_c_theta1+1)^2)*sin(gamma)^2-4*l*gamma*(m_c_theta1-1)*sin(gamma)-16*m_c_theta1), ROOT)
M = ((4*m_c_theta1+4)*sin(gamma)^2+4*l*gamma*(ROOT-(1/2)*cos(gamma)-1/2)*sin(gamma)+(8*ROOT*m_c_theta1+8*ROOT-8)*cos(gamma)-8*ROOT*m_c_theta1+8*ROOT-8)/((gamma^2*l^2+4*m_c_theta1^2+8*m_c_theta1+4)*sin(gamma)^2-4*l*gamma*(m_c_theta1-1)*sin(gamma)-16*m_c_theta1)
where
ROOT = RootOf((-4*gamma*cos(gamma)*l*sin(gamma)+4*sin(gamma)^2*m_c_theta1^2+gamma^2*l^2*sin(gamma)^2-4*sin(gamma)^2+8-8*cos(gamma)+4*gamma*l*sin(gamma))*z^2+(-cos(gamma)*l^2*gamma^2*sin(gamma)^2-gamma^2*l^2*sin(gamma)^2-2*l*sin(gamma)^3*m_c_theta1*gamma-4*l*sin(gamma)^3*gamma+4*cos(gamma)*m_c_theta1*sin(gamma)^2+4*cos(gamma)*sin(gamma)^2-4*sin(gamma)^2*m_c_theta1-4*sin(gamma)^2)*z+cos(gamma)*l^2*gamma^2*sin(gamma)^2+2*l*sin(gamma)^3*m_c_theta1*gamma+4*l*sin(gamma)^3*gamma-2*cos(gamma)*m_c_theta1^2*sin(gamma)^2+4*gamma*cos(gamma)*l*sin(gamma)-4*cos(gamma)*m_c_theta1*sin(gamma)^2-2*sin(gamma)^2*m_c_theta1^2-4*gamma*l*sin(gamma)-4*cos(gamma)*sin(gamma)^2+4*sin(gamma)^2*m_c_theta1+8*sin(gamma)^2+8*cos(gamma)-8, z)
and RootOf(f(z),z) means the values, z, such that f(z) = 0 -- the roots of the equation.
As ROOT is a quadratic, it has two exact solutions that can be substituted in to the other equations.

10 comentarios

safi58
safi58 el 16 de Feb. de 2017
Hi Walter, Thanks But how did you find the expressions for m_c0 ,j_L0, theta1 and M ?
Walter Roberson
Walter Roberson el 16 de Feb. de 2017
The MATLAB code would be
syms m_c0 j_L0 theta1 M m_c_gama j_L_gama j_L_theta1
syms m_c_theta1 gama l
eqn1 = m_c_theta1==(m_c0-1/M-1)*cos(theta1)+j_L0*sin(theta1)+1/M+1;
eqn2 = j_L_theta1==(-m_c0+1/M+1)*sin(theta1)+j_L0*cos(theta1);
eqn3 = m_c_gama==(m_c_theta1-1/M+1)*cos(gama-theta1)+j_L_theta1*sin(gama-theta1)+1/M-1;
eqn4 = j_L_gama==(-m_c_theta1+1/M-1)*sin(gama-theta1)+j_L_theta1*cos(gama-theta1);
m_c_gama=-m_c0;
j_L_gama=-j_L0;
j_L_theta1=-(gama*l)/2;
eqns = subs([eqn1, eqn2, eqn3, eqn4]);
sol = solve(eqns, m_c0, j_L0, theta1, M);
Note: if you try to add 'returnconditions', true to the solve() then it will take a long time.
The MATLAB results appear to be more compact than the ones I found earlier.
Note: I had to assume that the gamma in your boundary condition was the same as the gama in your equations.
Walter Roberson
Walter Roberson el 17 de Feb. de 2017
[m_c0 == sol.m_c0(1), j_L0 == sol.j_L0(1), theta1 == sol.theta1(1), M == sol.M(1)]
[m_c0 == sol.m_c0(2), j_L0 == sol.j_L0(2), theta1 == sol.theta1(2), M == sol.M(2)]
safi58
safi58 el 17 de Feb. de 2017
Editada: safi58 el 17 de Feb. de 2017
Hi Walter, Thank you so much. Your help is much appreciated. CAn you please tell me how can I validate these solutions? I mean how can I be sure that these solutions are the result of these equations?
And what do you mean by return conditions?
Walter Roberson
Walter Roberson el 17 de Feb. de 2017
sol = solve(eqns, m_c0, j_L0, theta1, M, 'returnconditions', true);
would take a long time, not worth doing.
Walter Roberson
Walter Roberson el 17 de Feb. de 2017
To verify the solution, go back to the equations in eqns and subs() in particular numeric values for m_c0, j_L0, theta1, M . Then vpasolve() to get numeric values for those. Now subs() the particular numeric values into the variables in the sol structure and vpa() that, and see whether the formula's numeric solutions agreed the vpasolve() numeric solutions.
Walter Roberson
Walter Roberson el 17 de Feb. de 2017
No, that is a duplicate. I am not going to answer duplicates.
safi58
safi58 el 19 de Feb. de 2017
Sorry for that. Walter, can you please clarify on the solution method because I am a little bit confused.
safi58
safi58 el 20 de Feb. de 2017
i got it!!!!
Manuela Gräfe
Manuela Gräfe el 24 de Abr. de 2017
Hi, umme mumtahina.
I see you are working with the LLC converter and the IEEE document (Optimal design methodology for LLC Resonant Converter... by Zhijian Fang etc.).
I am looking for the same solution at the moment for my bachelor thesis and I was wondering if you could provide me your MATLAB code? So I 'don't have to annoy Walter Roberson with the same issues. Please contact me via private message.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Programming en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 15 de Feb. de 2017

Comentada:

el 24 de Abr. de 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by