Nel primo tutorial viene trattato il tema delle analisi termiche con il software Code-Aster (http://code-aster.org). L'analisi è contestualizzata nello studio del raffreddamento dopo solubilizzazione di un generico componente meccanico, in lega di alluminio, caratterizzato da una massa termica non bilanciata. Il componente esce dal forno alla temperatura di 500°C e viene quindi immerso in acqua non agitata alla temperatura di 50 °C.
SALOME MECA
Attraverso questo software opensource (http://www.code-aster.org/V2/spip.php?article303) liberamente scaricabile è possibile eseguire tutti gli step dell'analisi. Gli step si dividono in : definizione della geometria, calcolo della mesh, definizione delle istruzioni di calcolo, soluzione, post-processing.
MODULO GEOMETRIA
La geometria viene importata in file STEP, successivamente viene creato un gruppo di facce sul quale applicare le condizioni al contorno. Vengono selezionate le superfici di scambio termico pezzo-acqua, tale gruppo prende il nome di "quench"; la superficie inferiore del componente, appoggiato su una piastra di supporto durante il trattamento, non entra in contatto con l'acqua e pertanto al momento non viene inserita nel gruppo quench.
MODULO MESH
La mesh viene calcolato attraverso l'algoritmo NETGEN con elementi triangolari e quadrangolari, il dimensionamento degli elementi è stato eseguito in modo da avere almeno 3 nodi per ogni sezione. La mesh quindi viene esportata in formato MED
MODULO ASTER
Attraverso "Aster -> add study case" è possibile iniziare una nuova simulazione fornendo un file di comandi, il file .comm e un file con la mesh .med.
file .comm =
DEBUT();
#MESH IMPORT: lire_maillage per importare la mesh in formato MED
mesh=LIRE_MAILLAGE(FORMAT='MED',);
#MATERIAL DEFINITION / DEFINIZIONE MATERIALE
#funzione DEFI_MATERIAU. THER = thermal properties / proprietà termiche
#IMPORTANT !!!! RHO_CP = density * specific heat [J/(m^3 *K)]
mate=DEFI_MATERIAU(THER=_F(LAMBDA=140.0,
RHO_CP=2430000.0,),);
#MATERIAL DOMAIN / DEFINIZIONE DEL DOMINIO DEL MATERIALE
#command AFFE_MATERIAU . Define wich part (TOUT=OUI) of the mesh (MAILLAGE) is affected by material properties (MATER)
affe_t=AFFE_MATERIAU(MAILLAGE=mesh,
AFFE=_F(TOUT='OUI',
MATER=mate,),
AFFE_VARC=_F(TOUT='OUI',
NOM_VARC='TEMP',
VALE_REF=20.0,),);
#MODEL DEFINITION / DEFINIZIONE DEL MODELLO
#command AFFE_MODELE , definition of the phisical domain (PHENOMENE=thermique)
m_ter=AFFE_MODELE(MAILLAGE=mesh,
AFFE=_F(TOUT='OUI',
PHENOMENE='THERMIQUE',
MODELISATION='3D_DIAG',),);
#THERMAL BOUNDARY CONDITION / CONDIZIONI AL CONTORNO TERMICHE
#Boundary Exchange / Scambio Termico alla superficie (ECHANGE)
#In this water quenching case a static mean exchange coefficient (COEF_H) [W/(m^2 * K)] is used with a defined water temperature (TEMP_EXT)
char_t=AFFE_CHAR_THER(MODELE=m_ter,
ECHANGE=_F(GROUP_MA='quench',
COEF_H=3000.0,
TEMP_EXT=50.0,),);
#TIME TRANSIENT DEFINITION / DEFINIZIONE DELLA LISTA DEGLI ISTANTI DI CALCOLO
#Starting from a list of number defined with DEFI_LIST_REEL in several intervals, the intervals have smaller timesteps during the firsts seconds of the simulation
tempo=DEFI_LIST_REEL(DEBUT=0.0,
INTERVALLE=(_F(JUSQU_A=1.0,
NOMBRE=20,),
_F(JUSQU_A=5.0,
NOMBRE=20,),
_F(JUSQU_A=20.0,
NOMBRE=20,),),);
inst=DEFI_LIST_INST(DEFI_LIST=_F(METHODE='AUTO',
LIST_INST=tempo,
PAS_MINI=0.005,
PAS_MAXI=3.0,),
ADAPTATION=_F(),);
#THERMAL SOLVER / RISOLUZIONE DEL PROBLEMA TERMICO
#since this is a linear case the command for the resolution is THER_LINEARE, the initial state (ETAT_INIT) is defined in temperature (500 C) at the time 0.0 (INST_ETAT_INIT)
t_lin=THER_LINEAIRE(MODELE=m_ter,
CHAM_MATER=affe_t,
EXCIT=_F(CHARGE=char_t,),
ETAT_INIT=_F(VALE=500.0,
INST_ETAT_INIT=0.0,),
INCREMENT=_F(LIST_INST=inst,
INST_INIT=0.0,),
SOLVEUR=_F(METHODE='MULT_FRONT',),
PARM_THETA=0.57,);
#SAVING RESULTS / SALVATAGGIO DEI RISULTATI
#The data calculated in THER_LINEAIRE, defined by the command RESU, are saved in MED format.
IMPR_RESU(FORMAT='MED',
RESU=_F(MAILLAGE=mesh,
RESULTAT=t_lin,
TOUT_CHAM='OUI',),);
FIN();
Una volta definito il file di comando si lancia la simulazione attraverso il tasto play
MODULO DI POST PROCESSING (PARAVIEW)
I risultati ottenuti dal calcolo sono quindi importati nel modulo di paraview per essere analizzati.



