Welcome to the forums. Please post in English or French.

You are not logged in.

#1 2020-01-27 09:46:05

mf
Member
Registered: 2019-06-18
Posts: 55

[SOLVED] POU_D_E elements and thermal analysis

Good morning,

I have a rather big model with bolts that I model with POU_D_E elements (2 per bolt, bolt cut in half, apply a DEPL on both inner nodes to simulate bolt pretension. The outer nodes of the POU_D_E elements are in a  LIAISON_SOLIDE with the 'thread' and bolt supporting surface in the parts that are connected). The rest of the model are 3D-elements. If anyone is interested, I can elaborate in this bolt model, it works a treat.

I wanted to subject this model to a thermal cycle to see how the pretension drops at higher temperature.

The problem I just faced is that the POU_D_E elements cannot be used in a thermal model.

Is there any way around this, or are there any plans to make the POU_D_E element usable in a thermal model? I really do not want to model the bolts in 3D, it eats a LOT of performance. I would only do this if there is absolutely no alternative.

Thank you and have a nice day,

Mario.

Last edited by mf (2020-01-31 07:49:58)

Offline

#2 2020-01-27 17:28:28

Johannes_ACKVA
Member
From: Ingenieurbüro für Mechanik, DE
Registered: 2009-11-04
Posts: 696
Website

Re: [SOLVED] POU_D_E elements and thermal analysis

hello Mario
I think the best is  to define a temperature field for your Mechanical model using in advance CREA_RESU. So you have not to do a thermal analysis and don't need a thermal model. You need only the mechanical model and POU_D_E exists for that.

Some ideas are here:
https://www.            code-aster.org/forum2/viewtopic.php?id=20935

But instead of  ResTher= LIRE_RESU  you must do something like this:

CTemp0=CREA_CHAMP(TYPE_CHAM='NOEU_TEMP_R', OPERATION='AFFE', MODELE=Model,
                  AFFE=(
                        _F(TOUT='OUI',      NOM_CMP='TEMP', VALE=20,),
                        ))

CTemp1=CREA_CHAMP(TYPE_CHAM='NOEU_TEMP_R', OPERATION='AFFE', MODELE=Model,
                  AFFE=(
                        _F(TOUT='OUI',                   NOM_CMP='TEMP', VALE=20,),
                        _F(GROUP_MA=('screw',), NOM_CMP='TEMP', VALE=-1000,),
                        ))
CTemp2=CREA_CHAMP(TYPE_CHAM='NOEU_TEMP_R', OPERATION='AFFE', MODELE=Model,
                  AFFE=(
                        _F(TOUT='OUI',                   NOM_CMP='TEMP', VALE=20,),
                        _F(GROUP_MA=('screw',), NOM_CMP='TEMP', VALE=-2000,),
                        ))


ResTher=CREA_RESU(OPERATION='AFFE',
                  TYPE_RESU='EVOL_THER',
                  NOM_CHAM='TEMP',
                  AFFE=(
                         _F(CHAM_GD=CTemp0,
                            INST=0 ),
                         _F(CHAM_GD=CTemp1,
                            INST=1 ),
                         _F(CHAM_GD=CTemp2,
                            INST=2 ),
                      . . . . 

                     ),)
. . . 
MatField=AFFE_MATERIAU(MAILLAGE=Mesh,
                       AFFE=(
                              _F(TOUT='OUI',         MATER=Material,),
                             ),
                       AFFE_VARC=_F(TOUT='OUI', NOM_VARC='TEMP', EVOL=ResTher,  VALE_REF= 20),
                      )

Regards Johannes_ACKVA

__________________________________________________________________
next CODE-ASTER-courses at Ingenieurbüro für Mechanik, Germany

*** CODE-ASTER  DYNAMIC ANALYSIS
     19-20 March  2020

*** CODE-ASTER INTRO + CONTACT + MATERIAL
     04-08 May 2020


Ingenieurbüro für Mechanik
D 91717 Wassertrüdingen / Germany

www.code-aster.de                                                Training & Support for NASTRAN and CODE-ASTER

Offline

#3 2020-01-28 08:03:32

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

Good morning!

Thank you for your answer. I did not see that coming, I thought it was entirely impossible. I will try your suggestion, but it will take a while. Basically, your method is like a TEMP_IMPO.

So I am thinking: is THERMIQUE not implemented for POU_D_E (and others) because it is just not feasible? Or is it very hard to implement? An implementation would involve implementation of
-) setting temperatures on all nodes
-) thermal conduction along axis and all surfaces
-) radiation through surfaces
-) ECHANGE
-) FLUX_REP on surfaces
-) LIAISON_DDL
-) ECHANGE_PAROI on surfaces
....... all that for different cross sections and geometries.

However, thank you very much. By the way: this is the bolt model we 'invented' at your course in last November. I modified it so that the length of both elements equals the 'free elongation length' [if that expression makes sense] of the bolt (plus the LIAISON_DDL coefficients of the inner nodes should be 0.5 and -0.5 not 1 and -1). This way I can do some analytical calculations also. It has been very useful!

Kind regards,

Mario.

Last edited by mf (2020-01-28 08:04:31)

Offline

#4 2020-01-29 09:14:19

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

Good morning,

I applied the changes according to your post. The bolted parts themselves expand with temperature, as expected. But I am quite sure that the bolts (POU_D_E elements) do not expand with temperature. Why? I get HUGE forces in the POU_D_E elements. 'N' is nearly doubled with increasing T, although their ALPHA is greater than that of the surrounding material. Thus, N should drop with increasing temperature, as it does in real life. Therefore, I conclude, that my POU_D_Es do not expand with temperature. Their elongation matches the elongation nearly that of the bolted parts, that's approx. correct. But their tension should not increase that much. It would snap any bolt in real life in this kind of connection.

I tried the following:
-) activate CRITERE=ABSOLU in the Resther above--> ~no effect (I did not look at the exact N values but they are much too high, therefore ~)
-) activate/deactivate CARA_ELEM in Resther above--> ~no effect
-) changed NU to CONSTANT. It was NU(T) before but resulted in a warning "<ELEMENTS3_59> Poisson's ratio is nonconstant. Current programming N does not hold account of it..." The warning itself is also a bit misleading as 'N' is the force in the POU_D_E elements. It should read 'NU', I guess.
-) deactivated all boundary conditions, replaced them with POI spring elements to fix the parts in space to help 'free' expansion of the parts. These are in the same AFFE_CARA_ELEM. Is that a problem?

I did not try with 2nd order elements so far, that is under way (calculation time is nearly 10-fold). I do not expect a great change.

What could be wrong? Sorry, I cannot post mesh/model and .comm at the moment, but it is similar to the posts above. I apply pretension via a LIAISON_DDL at the inner nodes of the bolts (each consists of 2 POU_D_E) and hold that LIAISON_DDL during the thermal expansion. The outer nodes of each POU_D_E are connected via LIASION_SOLIDE to their respective underhead area and thread cylinder (activated all the time). I do not get any errors/warnings, the contacts converge everything seems to be alright at first sight.

Kind regards and thanks,

Mario.

Offline

#5 2020-01-30 12:46:07

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

Good day,

I am pretty sure that my bolt model is not entirely correct for thermal expansion in a following timestep. I attach a simplified version of my .comm, as some parts of i (material data) are not intended for public use. I did some auto find+replace for translation of groups etc. so its possible that some Aster commands are not correct. Please excuse that. RET, BAR and DUE are the parts connected by the bolts. Sorry, I am not allowed to show the GEO or MESH. All bolts are separated in half, the halves are modeled by POU_D_Es.

What I did until now was keep the pretension step in all timesteps (PRETbolt was active from t=1 to t=6 type load was FIXE_CSTE), also those which lead to thermal expansion. That gave the mentioned 2-fold N in all my bolts (I expect N to drop with increasing temperature).

I am pretty sure the following will be successful, but I ran into problems (this corresponds to the .comm attached):
1) t=1 apply pretension with PRETbolt
2) t=1.5 lock the pretensioned nodes with respect to each other (they should not be locked in space however, thermal expansion should be able to move them together). PRETbolt=0, LOCKbolt=1
3) t=2: first high temperature step, model should expand with T, as the bolts.
4) and so on.

The problem I ran into is the following:
In t=1 I want to apply the pretension (worked flawlessly before I introduced LOCKbolt). Although the multiplier of function of LOCKbolt is 0 at t=1 I get a singular matrix. It seems pretty clear to me that I cannot apply  PRETbolt t=1 and do the locking with LOCKbolt in the same step. These nodes would then have contradicting boundary conditions. Therefore the multiplier of PRETbolt is 0 in t=1. That changes in t=1.5.

How can this matrix be singular in t=1? It seems as zero times the LOCKbolt also gives rise to overdefined nodes already at t=1? Should I apply LOCKbolt as DIDI? Is there any other mistake which gives rise to a singular matrix? If I remove LOCKbolt in STAT_NON_LINE the calculation runs smoothly.

I appreciate all inputs, I tried a lot but did not succeed.

Thank you

Mario.


Attachments:
CurrentCase.comm, Size: 14 KiB, Downloads: 29

Offline

#6 2020-01-30 16:33:54

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

To put it differently:
What is the best way to apply pretension to  a node and lock this node relative to another node in a following timestep? I'm thinking about a similar technique to item 4 in post id=5763.

Kind regards,

Mario.

Offline

#7 2020-01-31 07:45:09

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

I think I will solve these problems with doing the following:
1.) SINGULARITY in above example: the singularity is the consequence of to many (in this case 2) LIAISON_DDLs on one or more nodes. This problem must be viewed in conjunction with 2.) I want to change my model to a single POU_D_E per bolt and use a LIAISON_SOLIDE for tensioning and locking the bolts.
2.) LIAISONs cannot be turned off within one STAT_NON_LINE with FONC_MULT=0. Therefore 1 gave me a singularity, there were 2 LIAISONs active albeit for one of them FONC_MULT was always =0. I HAVE TO USE 2 STAT_NON_LINES!

The attached funny study shows this problem: A POU_D_E is in a LIASON_SOLIDE with the surface of a box. In t=1 the other node of the POU_D_E is elongated. In t=1.5 it is attached to the other box. In t=2 the elongation is 0, the connected POU_D_E pulls on the surface of the 2d box. Both boxes see the same tension. This is what I want. BUT, this is what happens:

As the 2nd LIAISON cannot be switched on in t=1.5 it is activated all the time, the surface of the 2nd box is already dented in t=1. It does not matter if the function in FONC_MULT is active or not, the result is the same.

Because I think I will solve my big simulation with this I mark this thread SOLVED.

This can also be found in post ID=14604.

Thank you Johannes,

Mario.

Offline

#8 2020-01-31 07:48:17

mf
Member
Registered: 2019-06-18
Posts: 55

Re: [SOLVED] POU_D_E elements and thermal analysis

I think I will solve these problems with doing the following:
1.) SINGULARITY in above example: the singularity is the consequence of to many (in this case 2) LIAISON_DDLs on one or more nodes. This problem must be viewed in conjunction with 2.) I want to change my model to a single POU_D_E per bolt and use a LIAISON_SOLIDE for tensioning and locking the bolts.
2.) LIAISONs cannot be turned off within one STAT_NON_LINE with FONC_MULT=0. Therefore 1 gave me a singularity, there were 2 LIAISONs active albeit for one of them FONC_MULT was always =0. I HAVE TO USE 2 STAT_NON_LINES!

The attached funny study shows this problem: A POU_D_E is in a LIASON_SOLIDE with the surface of a box. In t=1 the other node of the POU_D_E is elongated. In t=1.5 it is attached to the other box. In t=2 the elongation is 0, the connected POU_D_E pulls on the surface of the 2d box. Both boxes see the same tension. This is what I want. BUT, this is what happens:

As the 2nd LIAISON cannot be switched on in t=1.5 it is activated all the time, the surface of the 2nd box is already dented in t=1. It does not matter if the function in FONC_MULT is active or not, the result is the same.

Because I think I will solve my big simulation with this I mark this thread SOLVED.

This can also be found in post ID=14604.

Thank you Johannes,

Mario.


Attachments:
TEST14_POU_D_E.tar.xz, Size: 163.55 KiB, Downloads: 28

Offline