Télécharger vari.notice

Retour à la liste

Afficher cette notice en

Numérotation des lignes :
$$$$ VARI     NOTICE  SERRE     16/07/20    21:15:09     9017           
                                             DATE     16/07/20
                                             
  Operateur VARI                           Voir aussi :
    --------------  

    --------------------
    | 1ere possibilite |
    --------------------

    Objet :
    _______

    L'operateur VARI calcule un champ variable a partir d'un champ
donne et d'une loi de variation donnee sous la forme d'une fonction.

      CHEL2 = VARI  | MODL1 CHEL1 EVOL1 |  (MOT1) ;
                    | MODL1 CHPO1 EVOL1 |
      ou

      CHPO2 = VARI CHPO1 EVOL1 (MOT2) ;

      Commentaire :
      _____________


      MODL1  : Objet modele (type MMODEL)

      CHEL1  : Champ donne (type MCHAML)
               S'il a plusieurs composantes, on prend celle dont le nom
               est en abscisse de la loi de variation.

      CHPO1  : Champ donne (type CHPOINT)
               S'il a plusieurs composantes, on prend celle dont le nom
               est en abscisse de la loi de variation.

      EVOL1  : Objet definissant la loi de variation (type EVOLUTION)

      MOT1   : Objet de type MOT, sur 8 caracteres, servant a preciser
               le support du champ scalaire. Les noms possibles sont :

               'NOEUD   '  : Scalaire aux noeuds

               'GRAVITE '  : Scalaire au centre de gravite

               'RIGIDITE'  : Scalaire aux points d'integration de la
                             raideur

               'MASSE   '  : Scalaire aux points d'integration de la
                             masse

               'STRESSES'  : Scalaire aux points de calcul des
                             contrainte

               Le nom pris par defaut est 'RIGIDITE'.

      MOT2   : nom a attribuer a la composante du champ par point
               resultat. Par defaut, on prend le nom en ordonnee de la loi
               de variation.

      CHPO2  : champ par points (type CHPOINT) a une seule composante
               de meme nature que CHPO1.

      CHEL2  : objet resultat (type MCHAML, de sous-type SCALAIRE).

    --------------------
    | 2eme possibilite |
    --------------------

    Objet :
    _______

    La valeur de certaines composantes d'un champ/element (ex :
    les proprietes materielles) depend en un point d'un parametre
    (ex : la temperature). Les lois de variation de ces composantes 
    en fonction de leur parametre respectif sont donnees par des
    objets de type EVOLUTION ou NUAGE (FLOTTANT - EVOLUTION ou 
    FLOTTANT-FLOTTANT-EVOLUTION). 
    (note : operateur MATE accepte les objets de ces types).
    Etant donne un champ/point ou un champ/element, l'operateur VARI
    determine la valeur des composantes du champ/element selon leurs
    lois de variation en chaque point.
    Remarque 1 :  Le parametre sus-cite peut varier d'un point a 
                  l'autre du champ/element .
    Remarque 2 : Dans le cas d'un nuage sous la forme 
                 FLOTTANT-FLOTTANT-EVOLUTION, il est necessaire que le
                 nuage soit defini sous la forme d'une grille (memes
                 valeurs donnees au deuxieme FLOTTANT pour chaque 
                 valeur du premier FLOTTANT)


    Extension : evaluation externe de composantes
    ---------
    La valeur de certaines composantes d'un champ/element (ex : les
    proprietes materielles) depend en un point d'un ou de plusieurs
    parametres.
    Ces composantes sont decrites par des objets LISTMOTS donnant les
    listes de leurs parametres respectifs.
    (note : operateur MATE accepte les objets de type LISTMOTS)
    Les lois de variation de ces composantes en fonction de leurs
    parametres sont programmees par l'utilisateur dans le module
    externe COMPUT et ses dependances, qui ont ete compiles et lies
    au reste du code.
    Etant donne un champ/point ou un champ/element donnant les valeurs
    des parametres, l'operateur VARI appelle le module externe COMPUT
    pour evaluer les composantes en chaque noeud ou point d'integration
    du support demande.

    Remarque 1 : la description d'une composante par un objet LISTMOTS
    doit etre uniforme sur toutes les sous-zones du modele, car la
    fonction externe evaluant la composante est unique.

    Remarque 2 : le module externe COMPUT est appele pour TOUTES les
    composantes devant etre evaluees par des fonctions externes.
    La programmation de l'utilisateur doit faire la distinction des
    composantes par leur nom.

    Remarque 3 : avant l'evaluation de chaque composante, un premier
    appel au module externe COMPUT est effectue, afin de verifier la
    coherence entre la description de la composante et la programmation
    du module externe : meme nombre de parametres et memes noms de
    parametres. Apres cette verification, le module COMPUT est appele
    pour evaluer la composante en chaque point du support demande.

    Remarque 4 : mode operatoire
    1 - Programmer le module externe COMPUT et ses dependances :
        - Reprendre le module exemple integre au code.
          Il faut conserver imperativement la premiere carte du module
          exemple pour assurer le succes de la compilation.
        - Respecter l'interface d'appel de la routine.
        - Prevoir une sequence de verification initiale dissociee des
          operations d'evaluation.
    2 - Compiler le module externe et ses dependances, puis edition de
        liens avec le reste du code.
    3 - Mise en oeuvre en langage Gibiane en respectant la syntaxe
        decrite ci-apres.

    Remarque 5 : interface du module externe COMPUT

      SUBROUTINE COMPUT(IVERI,NOMCMP,NOMPAR,VALPAR,NPARA,VALCMP,IERUT)
      IMPLICIT REAL*8(A-H,O-Z)

      INTEGER      IVERI, NPARA, IERUT
      CHARACTER*4  NOMCMP, NOMPAR(NPARA)
      REAL*8       VALPAR(NPARA), VALCMP

      ENTREE : IVERI  : INTEGER, indicateur de verification
                        IVERI=1 : On fait les verifications puis
                                  retour a l'appelant sans faire
                                  de calcul
                        IVERI=0 : On ne fait pas les verifications
                                  On calcule directement la composante
                                  demandee
      ENTREE : NOMCMP : CHARACTER*4, nom de la composante a evaluer
      ENTREE : NOMPAR : CHARACTER*4(NPARA), noms des parametres
      ENTREE : VALPAR : REAL*8(NPARA), valeurs des parametres
      ENTREE : NPARA  : INTEGER, nombre de parametres
      SORTIE : VALCMP : REAL*8, valeur de la composante
      SORTIE : IERUT  : INTEGER, code retour
                        IERUT= 0 : OK
                        IERUT<>0 : NOOK
                        Les cas d'erreur pris en charge par la
                        programmation de l'utilisateur doivent
                        faire l'objet d'une affectation de IERUT
                        differente de 0

    CHEL2 = VARI 'NUAG' MODL1 CHEL1 CHEP1 (MOT1) (MOT2);

      Commentaire :
      _____________

      NUAG   : Mot cle

      MODL1  : Objet modele (type MMODEL)

      CHEL1  : Champ donne (type MCHAML). Ses composantes peuvent etre
               des objets de type
               1) FLOTTANT si la composante est constant sur toute
                  la structure;
               2) EVOLUTIO si la composante en ce point depend du
                  parametre cite en haut;
               3) NUAGE si la composante elle-meme est decrite par
                  un objet de type EVOLUTIO qui est une fonction
                  du parametre cite en haut.

      CHEP1  : Champ donne (type CHPOINT ou MCHAML) ayant les
               composantes necessaires au calcul

      MOT1   : Objet de type MOT, sur 8 caracteres, servant a preciser
               le support du champ scalaire. Les noms possibles sont :

               'NOEUD   '  : Scalaire aux noeuds

               'GRAVITE '  : Scalaire au centre de gravite

               'RIGIDITE'  : Scalaire aux points d'integration de la
                             raideur

               'MASSE   '  : Scalaire aux points d'integration de la
                             masse

               'STRESSES'  : Scalaire aux points de calcul des
                             contrainte

               Le nom pris par defaut est 'RIGIDITE'.

      MOT2   : Objet de type MOT servant a indiquer un sous-type 
               pour le MCHAML resultat. Par defaut, il aura le 
               meme sous-type que celui de MCHAML donne CHEL1. 
          
      CHEL2  : objet resultat (type MCHAML, de meme sous-type que le 
               champ CHEL1).


      REMARQUE :
      __________

      Si CHEP1 est de type MCHAML, il convient de respecter       
      l'ordre d'ecriture des arguments.


    --------------------
    | 3eme possibilite |
    --------------------

    Objet :
    _______

    L'operateur VARI permet d'evaluer les tables de l'eau. Les objets
  OBJi sont tous de meme type (FLOTTANT, CHPOINT ou LISTREEL).

    OBJ3 = 'VARI' MOT1  OBJ1  OBJ2 ;

    Commentaire :
    _____________

    1) OBJ3 = 'VARI' 'CPLIQ' OBJ1 OBJ2 ;

       avec OBJ1 : Pression totale (en Pa)
            OBJ2 : Enthalpie liquide specifique (en J/kg)
            OBJ3 : Capacite calorifique de l'eau liquide (en J/kg/K)

    2) OBJ3 = 'VARI' 'HLS' OBJ1 (OBJ2) ;

       avec OBJ1 : Pression totale (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Enthalpie liquide specifique (en J/kg)
       Note : En absence de temperature, evaluation a saturation.

    3) OBJ3 = 'VARI' 'HVS' OBJ1 (OBJ2) ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Enthalpie vapeur specifique (en J/kg)
       Note : En absence de temperature, evaluation a saturation.

    4) OBJ3 = 'VARI' 'LATENT' OBJ1 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ3 : Chaleur latente de vaporisation (en J/kg)

    5) OBJ3 = 'VARI' 'PSATT' OBJ1 ;

       avec OBJ1 : Temperature (en K)
            OBJ3 : Pression partielle de vapeur a saturation (en Pa)

    6) OBJ3 = 'VARI' 'TSATP' OBJ1 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ3 : Temperature a saturation (en K)

    7) OBJ3 = 'VARI' 'PVAP' OBJ1 OBJ2 ;

       avec OBJ1 : Densite de vapeur (en kg/m3)
            OBJ2 : Temperature (en K)
            OBJ3 : Pression partielle de vapeur (en Pa)

    8) OBJ3 = 'VARI' 'ROLIQ' OBJ1 OBJ2 ;

       avec OBJ1 : Pression de l'enceinte (en Pa)
            OBJ2 : Enthalpie liquide specifique (en J/kg)
            OBJ3 : Densite de l'eau liquide (en kg/m3)

    9) OBJ3 = 'VARI' 'ROVAP' OBJ1 (OBJ2) ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Densite de la vapeur d'eau (en kg/m3)
       Note : En absence de temperature, evaluation a saturation.
            
   10) OBJ3 = 'VARI' 'TLIQ' OBJ1 OBJ2 ;

       avec OBJ1 : Pression totale (en Pa)
            OBJ2 : Enthalpie liquide specifique (en J/kg)
            OBJ3 : Temperature de l'eau liquide (en K)

   11) OBJ3 = 'VARI' 'ZVAP' OBJ1 OBJ2 ;

       avec OBJ1 : Densite de la vapeur d'eau (en kg/m3)
            OBJ2 : Temperature de la vapeur d'eau (en K)
            OBJ3 : Correction gaz reel de la vapeur (-)

   12) OBJ3 = 'VARI' 'DHVDT' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature de la vapeur d'eau (en K)
            OBJ3 : Derivee partielle de l'enthalpie vapeur par
                   rapport a la temperature

   13) OBJ3 = 'VARI' 'DHVDP' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature de la vapeur d'eau (en K)
            OBJ3 : Derivee partielle de l'enthalpie vapeur par
                   rapport a la pression partielle de vapeur

   14) OBJ3 = 'VARI' 'DHVDT' OBJ1 OBJ2 ;

       avec OBJ1 : Pression totale (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle de l'enthalpie liquide par
                   rapport a la temperature

   15) OBJ3 = 'VARI' 'DHLDP' OBJ1 OBJ2 ;

       avec OBJ1 : Pression totale (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle de l'enthalpie liquide
                   rapport a la pression totale

   16) OBJ3 = 'VARI' 'DPSAT' OBJ1 ;

       avec OBJ1 : Temperature (en K)
            OBJ3 : Derivee partielle de la pression de saturation
                   par rapport a la temperature

   17) OBJ3 = 'VARI' 'DZVDP' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle du facteur de compressibilite
                   rapport a la pression partielle de vapeur

   18) OBJ3 = 'VARI' 'DZVDT' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle du facteur de compressibilite
                   rapport a la temperature

   19) OBJ3 = 'VARI' 'DRVDP' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle de la densite de vapeur par
                   rapport a la pression partielle de vapeur

   20) OBJ3 = 'VARI' 'DRVDT' OBJ1 OBJ2 ;

       avec OBJ1 : Pression partielle de vapeur (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Derivee partielle de la densite de vapeur par
                   rapport a la temperature

   21) OBJ3 = 'VARI' 'MULIQ' OBJ1 ;

       avec OBJ1 : Temperature (en K)
            OBJ3 : Viscosité dynamique de l'eau (en kg/m/s)

   22) OBJ3 = 'VARI' 'LBDALIQ' OBJ1 OBJ2 ;

       avec OBJ1 : Pression (en Pa)
            OBJ2 : Temperature (en K)
            OBJ3 : Conductivité thermique de l'eau (en W/m/K)

© Cast3M 2003 - Tous droits réservés.
Mentions légales