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 Kommentare

Kaushik Lakshminarasimhan
Kaushik Lakshminarasimhan am 15 Feb. 2017
Do you want an exact or approximate solution?
safi58
safi58 am 15 Feb. 2017
exact solution possibly..
Walter Roberson
Walter Roberson am 16 Feb. 2017
Complicated trig functions rarely have exact solutions.
Are there constraints to consider? Real values? Only need to consider one period?
safi58
safi58 am 16 Feb. 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 am 16 Feb. 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 am 16 Feb. 2017
Can anyone give any solution to this question please?
Manuela Gräfe
Manuela Gräfe am 24 Apr. 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.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 16 Feb. 2017

0 Stimmen

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 Kommentare

safi58
safi58 am 16 Feb. 2017
Hi Walter, Thanks But how did you find the expressions for m_c0 ,j_L0, theta1 and M ?
Walter Roberson
Walter Roberson am 16 Feb. 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 am 17 Feb. 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 am 17 Feb. 2017
Bearbeitet: safi58 am 17 Feb. 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 am 17 Feb. 2017
sol = solve(eqns, m_c0, j_L0, theta1, M, 'returnconditions', true);
would take a long time, not worth doing.
Walter Roberson
Walter Roberson am 17 Feb. 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 am 17 Feb. 2017
No, that is a duplicate. I am not going to answer duplicates.
safi58
safi58 am 19 Feb. 2017
Sorry for that. Walter, can you please clarify on the solution method because I am a little bit confused.
safi58
safi58 am 20 Feb. 2017
i got it!!!!
Manuela Gräfe
Manuela Gräfe am 24 Apr. 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.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Programming 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!

Translated by