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.

Contact Pressure (solid.Tn) access when using ElectroMagneticHeating (EMH) Multiphysics

José Dinarte Vieira Goulart

Please login with a confirmed email address before reporting spam

Hello everyone, im working in a problem with thermal-eletric-mechanical coupling. In that way, i have mechanical (solid) + thermal (heat transfer) + eletrical (e.c.) physics coupled with thermal expansion (t.e.) + eletro magnetic heating (e.m.h.) multiphysics.

I have only one contact pair in this problem. The main issue comes from the fact that in eletrical current physics my eletrical pair contact have a contriction conductance (hc) that depends on a interpolated function that depends on contact pressure that comes from solid.Tn. What happens it is that when running all coupled i got the error that solver cannot evaluate solid.Tn. Unselecting Eletro Magnectic Heating from multyphics solve the problem, but i lost the temperature field. I see that because EMH couples heat transfer and eletrical current, probably it doesnt access the solid physics, even if its running all way coupled, and possibly thats the reason it says that cannot evaluate solid.Tn.

Anyone have a clue on how to counter this problem?

Thanks!


2 Replies Last Post 8 sept. 2022, 19:58 UTC−4
Henrik Sönnerlind COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 2 years ago 8 sept. 2022, 11:40 UTC−4

This sounds strange; that variable should be available. Which contact method are you using in the Solid Mechanics interface?

Or: That variable may be defined only on the destination side of the contact pair. If your expression is evaluated also on the source side, it would fail. That can be fixed by defining a variable on the source boundary solid.Tn as dst2src_p1(solid.Tn).

-------------------
Henrik Sönnerlind
COMSOL
This sounds strange; that variable should be available. Which contact method are you using in the Solid Mechanics interface? Or: That variable may be defined only on the destination side of the contact pair. If your expression is evaluated also on the source side, it would fail. That can be fixed by defining a variable on the source boundary *solid.Tn* as *dst2src\_p1(solid.Tn)*.

José Dinarte Vieira Goulart

Please login with a confirmed email address before reporting spam

Posted: 2 years ago 8 sept. 2022, 19:58 UTC−4

This sounds strange; that variable should be available. Which contact method are you using in the Solid Mechanics interface?

Or: That variable may be defined only on the destination side of the contact pair. If your expression is evaluated also on the source side, it would fail. That can be fixed by defining a variable on the source boundary solid.Tn as dst2src_p1(solid.Tn).

Dear Sönnerlind, thank you very much for your reply!

I'm using Penalty method in Solid Mechanics interface. I have defined my "Constriction Condutance" (hc) as "User defined" in "Pair eletrical contact" as follows: if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(solid.Tn), 0) In that way i have the expected results (can tell by plotting "ec.pelc3.hconstr" over the contact surface) but i have to drop Eletro Magnetic Heating from Multipyhisics. Following your suggestion i have changed to: if(dst2src_ap10, int1(dst2src_ap10(solid.Tn)), 0) + if(src2dst_ap10, int1(dst2src_ap10(solid.Tn)), 0) where 'int1' it is my interpolated function defined by ( S/m2 (f(arg)) vs MPa (arg) )

When changes were maded i can now start the problem but i have zero division error.

When modfied to if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(dst2src_ap10(solid.Tn)), 0) i can run the problem ( all coupled ) but never comes to a convergence ( Mechanical, Eletrical and Thermal lines keep crossing each other and never fall down to convergence ).

I can tell that im not sure what i'm doing. I think it would be easier to ask, whats the correct way to define a Constriction Conductance that depends on contact pressure that will be used as argument for a defined function? I came to this equation "if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(solid.Tn), 0) " but simply doesn't run with E.M.H. enabled

>This sounds strange; that variable should be available. Which contact method are you using in the Solid Mechanics interface? > >Or: That variable may be defined only on the destination side of the contact pair. If your expression is evaluated also on the source side, it would fail. That can be fixed by defining a variable on the source boundary *solid.Tn* as *dst2src\_p1(solid.Tn)*. Dear Sönnerlind, thank you very much for your reply! I'm using Penalty method in Solid Mechanics interface. I have defined my "Constriction Condutance" (hc) as "User defined" in "Pair eletrical contact" as follows: if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(solid.Tn), 0) In that way i have the expected results (can tell by plotting "ec.pelc3.hconstr" over the contact surface) but i have to drop Eletro Magnetic Heating from Multipyhisics. Following your suggestion i have changed to: if(dst2src_ap10, int1(dst2src_ap10(solid.Tn)), 0) + if(src2dst_ap10, int1(dst2src_ap10(solid.Tn)), 0) where 'int1' it is my interpolated function defined by ( S/m2 (f(arg)) vs MPa (arg) ) When changes were maded i can now start the problem but i have zero division error. When modfied to if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(dst2src_ap10(solid.Tn)), 0) i can run the problem ( all coupled ) but never comes to a convergence ( Mechanical, Eletrical and Thermal lines keep crossing each other and never fall down to convergence ). I can tell that im not sure what i'm doing. I think it would be easier to ask, whats the correct way to define a Constriction Conductance that depends on contact pressure that will be used as argument for a defined function? I came to this equation "if(dst2src_ap10, int1(solid.Tn), 0) + if(src2dst_ap10, int1(solid.Tn), 0) " but simply doesn't run with E.M.H. enabled

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.