SD cham_no_s ============ .. code-block:: text cham_no_s (K19) ::= record ♦'.CNSK' : OJB S V K8 long = 2 ♦'.CNSD' : OJB S V I long = 2 ♦'.CNSC' : OJB S V K8 long = nb_CMP ♦'.CNSV' : OJB S V R/C/I/... long = nb_NOEUD*nb_CMP ♦'.CNSL' : OJB S V L long = nb_NOEUD*nb_CMP Contenu des OJB --------------- Cette SD sert à décrire un champ de grandeurs portées par les nœuds d'un maillage. Objet '.CNSK' ------------- .. csv-table:: "'.CNSK'(1)", "mailla: nom du maillage sous-jacent au cham_no_s." "'.CNSK'(2)", "nomgd: nom de la grandeur associée au cham_no_s('DEPL_R', 'SIEF_R', ...)" Objet '.CNSD' ------------- .. csv-table:: "'.CNSD'(1)", "nb_NOEUD: nombre de nœuds du maillage sous-jacent." "'.CNSD'(2)", "nb_CMP: nombre maximum des CMPS portées par les nœuds." Objet '.CNSC' ------------- .. csv-table:: "'.CNSC'(icmp)", "cmp_i: nom de la ième CMP du cham_no_s" Remarque L'ordre des CMPS dans .CNSC peut être quelconque. On n'est pas obligé de respecter l'ordre du catalogue des grandeurs. En revanche, les CMPS doivent faire partie des CMPS de la grandeur nomgd. Objet '.CNSV' ------------- Cet objet contient les valeurs du cham_no_s. Le type de ce vecteur JEVEUX (R/C/I/K8,...) est celui de la grandeur nomgd. Sa dimension est nb_NOEUD*nb_CMP; c'est-à-dire que tous les nœuds de maillage peuvent porter toutes les CMPS décrites dans .CNSC. On accède à la ICMP-ème CMP du INO-ème NOEUD par la formule : .. code-block:: text VALEUR(INO,ICMP)= .CNSV( (INO-1)*nb_CMP + ICMP) Remarque La présence (ou l'absence) d'une CMP sur un NOEUD est indiquée via l'objet .CNSL (voir ci-dessous). Lors de la création d'un cham_no_s, ses valeurs non affectées sont en mises à “undef” pour mieux détecter leur usage illicite. Objet '.CNSL' ------------- Cet objet contient des booléens indiquant la présence (ou l'absence) des valeurs du cham_no_s.Sa dimension est nb_NOEUD*nb_CMP; on s'y déplace de la même façon que dans l'objet .CNSV On examine la présence de la ICMP-ème CMP du INO-ème NOEUD par la formule : .. code-block:: text EXISTE(INO,ICMP)= .CNSL( (INO-1)*nb_CMP + ICMP)