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

You are not logged in.

#1 2020-11-04 16:12:03

laverne
Member
Registered: 2008-06-26
Posts: 10

mode animation with DYNA_NON_LINE/MODE_VIBR

Hello,
How could I animate mode in Paravis when modal analysis is made with DYNA_NON_LINE / MODE_VIBR like in sdnl138b ?
regards
Jérôme

Offline

#2 2020-11-04 18:06:15

GPSalachs
Member
Registered: 2018-03-10
Posts: 216

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

Hello as you can see in the testcase there are these lines of code:

TAB_SPE2=RECU_TABLE(CO=RESUE,
                    NOM_TABLE='ANALYSE_MODALE',);

IMPR_TABLE(TABLE=TAB_SPE2);

TEST_TABLE(
           VALE_CALC_I=8,
           NOM_PARA='NB_MODE',
           TABLE=TAB_SPE2,
           FILTRE=(
                   _F(CRIT_COMP='EQ',
                      NOM_PARA='TYPE_MODE',
                      VALE_K='DEPL_VIBR',),
                   _F(CRIT_COMP='EQ',
                      NOM_PARA='NUME_MODE',
                      VALE_I=1,),
                   _F(NOM_PARA='INST',
                      VALE=Tfin,),
                   ),
           )

Now to my understanding, this filters out at a specific instant the information of the table ANALYSE MODALE. To print more than one mode you
could probably define mode filters and VALE_I parameters (Example: VALE_I = 2 etc.) Then to visualize the results in IMPR_RESU you define for each filter(?) a result. I don't know if you can collect them all in a modal base to imprint them..

Hope it helps, if you find another way please let me know because this process interests me!

Thank you!

Last edited by GPSalachs (2020-11-04 18:11:32)

Offline

#3 2020-11-04 20:49:57

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

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

Hi,

you want to see something like this? How to create it (sdnl138b with mesh sdnl138a.med):

1) First you have to create a result that is readable by ParaVis, that is an .rmed file. In SM you do that with 'Set Output Results' (IMPR_RESU in Code Aster) and FORMAT = 'MED'. Here I chose the RESUD result as an example. So it looks like this:

IMPR_RESU(
  FORMAT='MED',
  RESU=_F(
    RESULTAT=RESUD
  ),
  UNITE=80
)

2) Open this result in ParaVis. Choose 'GenerateVevtors' and 'Time'. This way, the modes are ordered by a time rather than with 'Mode', where they are in separate 'components' (components possibly not being the right expression...).
3) Choose the Filter 'WarpByVector' with whatever scaling you like (see attached image).
4) Optional: AnnotateTime
5) Save Animation as .ogv.

Thats it!

Mario.


Attachments:
modes_animation.zip, Size: 528.25 KiB, Downloads: 42

Offline

#4 2020-11-09 09:01:31

jlf
Member
Registered: 2007-11-22
Posts: 245

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

Hello,

All the solutions proposed in the precedents messages don't works. The result of a DNL with MODE_VIBR is a specific concept : it's a table container (cf doc U4.53.01 §3.19).
Why : because at each time step you have more that one mode (more than one DEPL field).

You need to extract from this table at each time step : the name of the DEPL field concept, the number of the mode, the frequency (doc U4.71.05).

JLF

The pseudo code :

TAB_SPEC=RECU_TABLE(CO=RESUD, NOM_TABLE='ANALYSE_MODALE',);
tab = TAB_SPEC.EXTR_TABLE().values()
# 
for each step time in tab:
    extract : time, nume_inst, nume_mode , freq 
    extract DEPL field from TAB_SPEC( time, nume_mode  ) with EXTR_TABLE
    save DEPL field in MED format

Offline

#5 2020-11-09 10:25:56

GPSalachs
Member
Registered: 2018-03-10
Posts: 216

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

jlf wrote:

Hello,

All the solutions proposed in the precedents messages don't works. The result of a DNL with MODE_VIBR is a specific concept : it's a table container (cf doc U4.53.01 §3.19).
Why : because at each time step you have more that one mode (more than one DEPL field).

You need to extract from this table at each time step : the name of the DEPL field concept, the number of the mode, the frequency (doc U4.71.05).

JLF

The pseudo code :

TAB_SPEC=RECU_TABLE(CO=RESUD, NOM_TABLE='ANALYSE_MODALE',);
tab = TAB_SPEC.EXTR_TABLE().values()
# 
for each step time in tab:
    extract : time, nume_inst, nume_mode , freq 
    extract DEPL field from TAB_SPEC( time, nume_mode  ) with EXTR_TABLE
    save DEPL field in MED format

Thank you very much for this pseudocode. When i was looking into how to save the modes, i was for a specific instance, extracting each mode on different commands.There was my mistake. I didn't think to extract and save the DEPL field!
Again thank you very much!

Offline

#6 2020-11-09 15:18:51

jlf
Member
Registered: 2007-11-22
Posts: 245

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

Hello,

The test case "sdnl138b" will be completed soon with a "real code", to give an example.
Also the [STAT|DYNA]_NON_LINE, EXTR_TABLE documentations with explications about how to extract for a step time all the modal displacement from a "table container".

JLF

Last edited by jlf (2020-11-09 15:19:23)

Offline

#7 2020-11-12 15:52:26

GPSalachs
Member
Registered: 2018-03-10
Posts: 216

Re: mode animation with DYNA_NON_LINE/MODE_VIBR

jlf wrote:

Hello,

The test case "sdnl138b" will be completed soon with a "real code", to give an example.
Also the [STAT|DYNA]_NON_LINE, EXTR_TABLE documentations with explications about how to extract for a step time all the modal displacement from a "table container".

JLF

Thank you very much!

Offline