* ENERMODE PROCEDUR BP208322 13/06/27 21:15:07 7785 LOG1/'LOGIQUE'; ********************************************** * * CALCUL DU BILAN ENERGETIQUE * * TBASS : TABLE DE SOUTYPE 'BASE_MODALE' OU 'ENSEMBLE_DE_BASES'; * TRESD : TABLE DE SOUSTYPE 'RESULTAT_DYNE' OU TABLE CONTENANT * DES TABLES DE SOUSTYPE 'RESULTAT_DYNE' * TINIT : TABLE DE CONDITIONS INITIALES * * LOG1 : RESULTAT POUR CHAQUE MODE SI LOG1 * ********************************************** 'SI' ('EGA' TRESD.'SOUSTYPE' 'RESULTAT_DYNE'); DIM_REP = 1 ; IREP = FAUX; 'SINON' ; 'FINSI' ; 'SINON' ; 'FINSI' ; 'SI' ('EXISTE' TBASS 'SOUSTYPE') ; 'SI' ('EGA' TBASS.'SOUSTYPE' 'ENSEMBLE_DE_BASES'); 'SINON' ; 'SI' ('EGA' TBASS.'SOUSTYPE' 'BASE_MODALE'); IDIM = 1 ; IBAS = VRAI ; 'SINON' ; 'FINSI' ; 'FINSI'; 'SINON' ; 'FINSI'; 'REPETER' BOU4 IDIM ; 'SI' IBAS ; TBAS = TBASS ; 'SINON'; TBAS = TBASS.&BOU4 ; 'FINSI'; 'REPETER' BOU2 DIM1 ; P1 = TBAS.'MODES'.&BOU2 .'POINT_REPERE' ; 'SI' (&BOU2 'EGA' 1) ; MAIL1 = P1 ; 'SINON' ; MAIL1 = MAIL1 ET P1 ; 'FINSI' ; 'FIN' BOU2 ; 'SI' ('EXISTE' TINIT) ; 'SI' ('NEG' TINIT.'SOUSTYPE' 'INITIAL') ; 'MESS' 'ON NE TROUVE PAS DE TABLE DE CONDITIONS INITIALES'; 'FINSI' ; 'SI' ('EXISTE' TINIT 'VITESSE') ; CHVIT = CHVIT + TINIT.'VITESSE'; 'FINSI' ; 'FINSI' ; 'REPETER' BOU1 DIM1 ; 'REPETER' BOU3 DIM_REP ; 'SI' IREP ; 'SI' ('EXISTE' TRESD &BOU3) ; TRES1 = TRESD.&BOU3 ; 'SINON' ; 'QUIT' BOU3 ;'FINSI' ; 'SINON'; TRES1 = TRESD ; 'FINSI' ; 'SI' ('NEG' TRES1.'SOUSTYPE' 'RESULTAT_DYNE') ; 'FINSI'; LIS_TEM0 = TRES1.'TEMPS_DE_SORTIE' ; P1 = TBAS.'MODES'.&BOU1 .'POINT_REPERE' ; M1 = TBAS.'MODES'.&BOU1 .'MASSE_GENERALISEE'; NUM_MODE = TBAS.'MODES'.&BOU1 .'NUMERO_MODE' ; LISWCIN = LISWCIN - LISWCIN0 ; 'SI' (&BOU3 'EGA' 1) ; 'SINON' ; 'CONC' EVEXT; 'CONC' EVINT ; 'FINSI' ; 'SI' (&BOU3 'EGA' DIM_REP) ; EVBILAN = EVEXT - EVINT - EVCIN ; 'SI' ('EXISTE' LOG1) ; 'SI' LOG1 ; 'FINSI'; 'FINSI'; 'FINSI' ; 'FIN' BOU3 ; *** BILAN TOTAL POUR UNE BASE ; 'SI' (&BOU1 'EGA' 1) ; EVEXTT = EVEXT ; EVINTT = EVINT ; EVCINT = EVCIN ; 'SINON' ; EVEXTT = EVEXTT + EVEXT ; EVINTT = EVINTT + EVINT ; EVCINT = EVCINT + EVCIN ; 'FINSI'; 'FIN' BOU1 ; 'FIN' BOU4 ; *** BILAN TOTAL POUR L'ENSEMBLE DE BASES ; 'REPETER' BOU4 IDIM ; 'SI' (&BOU4 'EGA' 1) ; 'SINON' ; EVCINT = EVCINT + TCIN.&BOU4 ; 'FINSI'; 'FIN' BOU4 ; 'TITRE' 'BILAN TOTAL'; EVBILAN = EVEXTT - EVINTT - EVCINT ; 'FINP' ;
© Cast3M 2003 - Tous droits réservés.
Mentions légales