Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

comsol doesn't pick Lorentz force for structural step

Please login with a confirmed email address before reporting spam

Hello! I am experience a problem while picking Lorentz force from previous study.

I have a coil (domain 4) where i will ramp the current and a steel region (domains 2,5, 10, 11) where I'm trying to find stresses and deformations caused by Lorentz forces due to eddy currents induced in the steel. The rest is air.

I am ramping the current in the coil from maximum current to zero current, which induces eddy currents in yte steel region and should cause deformations in the steel region due to Lorentz forces.

I do: Study 1, Step 1: Coil Geometry analysis, with coil homogenized muti-turn, numeric feature. In mf/coil feature I prescribe Icoil=100[kA]-100[kA]*t, where t is defined as 0 in parameters. This works fine.

Study1, Step 2: Stationary - solves for magnetic field, t=0 This works fine.

Study 2: Step 1: time dependent - this is transient study where t changes from 0 to 1, reducing Icoil from 100kA to 0.. This seems to work also. I can see magnetic field changing with time, can plot induced currents in the steel region. In Study 1 and Study 2 only mf module is active.

Study 3, Step 1: stationary Here I activate solid mechanics module, but deactivate mf module. In solid mechanics body load is set to be Lorentz force force contribution(mf).

When I run this step it solves, however i doesn't pick up Lorentz forces and resulting stresses are zeros. I can't understand why Comsol at Study 3 doesn't pick Lorentz forces from the previous study. I tried to change body load from Lorentz forces to User Defined mf.FLtzx, mf.FLtzy, mf.FLtzz, but still Comsol doesn't pick the body load and resulting stresses are zeros. I have attached file with this model. can anyone please suggest me how to fix it?

Thanks!



2 Replies Last Post 2020年3月12日 GMT+8 00:06
Durk de Vries COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 4 years ago 2020年3月10日 GMT+8 22:43

Hi Sergey,

Your third study will take the solution from the second study. And 'Solution' in this case, means the information that is stored for the degree of freedom 'A'.

In study 3, this information is used to deduce the B, H, J, D, and E fields, where the E field was the time derivative of the A field in the transient study. For a stationary study however, there is no time derivative, and therefore, no E field (notice that the Magnetic Fields interface only models induced electric fields, not static ones. For that, you will need the Magnetic and Electric Fields interface).

Since the third study is a stationary study, it will take the information stored for A, and then use the definition of the E field as it is given for stationary studies (which is 'zero'), to derive E from A. With the E field being zero, your eddy currents and your Lorentz force vanishes.

Basically, you are asking COMSOL to interpret a transient result during a stationary study, which results in an ambiguous situation.

There are several ways around this. The preferred choice depends on how 'easy' you want it to be, and what kind of performance you would like.

One fairly simple alternative to implement, is to set the Solid Mechanics interface to 'quasistatic' in the interface settings window, and just solve it together with the Magnetic Fields interface in Study 2. I noticed, in your initial model, Study 2 takes 7.5 hours to solve. If you switch to a direct solver (including both MF and SOLID), you can do it in a couple of minutes.

Another alternative is to use the 'withsol()' operator for the manual coupling: * withsol('sol3', mf.FLtzx, setval(t,1)) * withsol('sol3', mf.FLtzy, setval(t,1)) * withsol('sol3', mf.FLtzz, setval(t,1))

The withsol operator will take the data directly from solution3 without reinterpreting it for the stationary case. You don't need to set in the study, where the data should come from. The operator does that for you. See the reference manual for more details on this.

See attached files. Kind regards,

Durk

Hi Sergey, Your third study will take the solution from the second study. And 'Solution' in this case, means the information that is stored for the degree of freedom 'A'. In study 3, this information is used to deduce the B, H, J, D, and E fields, where the E field was the time derivative of the A field in the transient study. For a stationary study however, there is no time derivative, and therefore, no E field (*notice that the Magnetic Fields interface only models induced electric fields, not static ones. For that, you will need the Magnetic and Electric Fields interface*). Since the third study is a stationary study, it will take the information stored for A, and then use the definition of the E field as it is given for stationary studies (*which is 'zero'*), to derive E from A. With the E field being zero, your eddy currents and your Lorentz force vanishes. Basically, you are asking COMSOL to interpret a transient result during a stationary study, which results in an ambiguous situation. There are several ways around this. The preferred choice depends on how 'easy' you want it to be, and what kind of performance you would like. One fairly simple alternative to implement, is to set the Solid Mechanics interface to 'quasistatic' in the interface settings window, and just solve it together with the Magnetic Fields interface in Study 2. *I noticed, in your initial model, Study 2 takes 7.5 hours to solve. If you switch to a direct solver (including both MF and SOLID), you can do it in a couple of minutes.* Another alternative is to use the 'withsol()' operator for the manual coupling: * withsol('sol3', mf.FLtzx, setval(t,1)) * withsol('sol3', mf.FLtzy, setval(t,1)) * withsol('sol3', mf.FLtzz, setval(t,1)) The withsol operator will take the data directly from solution3 without reinterpreting it for the stationary case. You don't need to set in the study, where the data should come from. The operator does that for you. See the reference manual for more details on this. See attached files. Kind regards, Durk


Please login with a confirmed email address before reporting spam

Posted: 4 years ago 2020年3月12日 GMT+8 00:06

Hi Durk! Great thanks for you detailed explanation and for the examples in the attachements. I understood the issue and was able to fix it. The second solution is a better fit for me.

Best regards, Sergey

Hi Durk! Great thanks for you detailed explanation and for the examples in the attachements. I understood the issue and was able to fix it. The second solution is a better fit for me. Best regards, Sergey

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.