4. Exemples d’utilisation#

Soit le fichier texte suivant contenant l’information à lire. Il est composé de colonnes de chiffres, ici séparées par des caractères blancs, définissant des blocs, eux-mêmes délimités par du texte libre.

Toute ligne comprenant d’autres caractères que des chiffres et le séparateur prédéfini est considérée comme texte libre délimitant. On a donc 4 blocs dans le fichier suivant:

aaa bbb ccc

ddd

eee fff

0. 0. 0.

0.1 1. 10.

0.2 2. 20.

0.3 3. 30.

xxx yyy

www zzz

0.4 4. 40. 400.

0.5 5. 50. 500.

0.6 6. 60. 600.

xxx

70. 700.

80. 800.

90. 900.

ppp qqq

8.8

9.9

4.1. Lecture d’une fonction simple#

En exploitant les valeurs par défaut pour le choix des colonnes:

F=LIRE_FONCTION(    UNITE = 38,

NOM_PARA = ‘INST’, )

La fonction ainsi créée est:

Abscisses    = [:ref:`0., 0.1, 0.2, 0.3 <0., 0.1, 0.2, 0.3>`]

Ordonnées    = [:ref:`0., 1. , 2. , 3.  <0., 1. , 2. , 3. >`]

En associant pour abscisses et ordonnées des colonnes prises dans des blocs différents:

F=LIRE_FONCTION(    UNITE = 38,

NOM_PARA = ‘INST’,

INDIC_PARA = [:ref:`2,4 <2,4>`],

INDIC_RESU = [:ref:`3,1 <3,1>`],

La fonction ainsi créée est:

Abscisses    = [:ref:`400., 500., 600. <400., 500., 600.>`]

Ordonnées    = [:ref:` 70., 80., 90. < 70., 80., 90.>`]

Attention, la commande vérifie alors que les cardinaux des colonnes définies par INDIC_PARA et INDIC_RESU sont bien identiques. Ce qui n’aurait pas été le cas ici avec par exemple INDIC_PARA = [1,3].

4.2. Lecture d’une fonction complexe#

En exploitant les valeurs par défaut pour le choix des colonnes:

F=LIRE_FONCTION(    UNITE        = 38,

NOM_PARA    = ‘INST’,

TYPE        = ‘FONCTION_C’,

FORMAT_C    = ‘REEL_IMAG’, )

La fonction ainsi créée est:

Abscisses    = [:ref:`0., 0.1, 0.2, 0.3 <0., 0.1, 0.2, 0.3>`]

Ordonnées    = [:external:ref:`(0.,0.) , (1.,10.) , (2.,20.) , (3.,30.) <(0.,0.) , (1.,10.) , (2.,20.) , (3.,30.)>`]

On aurait bien sûr pu préciser d’autres colonnes pour INDIC_REEL et INDIC_IMAG que celles par défaut. Attention toutefois à pointer sur des colonnes de même cardinal.

4.3. Lecture d’une nappe#

En exploitant les valeurs par défaut pour le choix des colonnes:

F=LIRE_FONCTION(    UNITE                = 38,

NOM_PARA            = ‘INST’,

INDIC_PARA        = [:ref:`4,1 <4,1>`],

NOM_PARA_FONC        = ‘FREQ’,

INDIC_ABSCISSE    = [:ref:`2,2 <2,2>`],

DEFI_FONCTION        = (    F(    INDIC_RESU = [:ref:`3,1 <3,1>`], ),

F( INDIC_RESU = [2,3], ), ) )

La nappe ainsi créée est:

Pour la valeur du paramètre INST=8.8, la fonction:

Abscisses    = [:ref:`4. , 5. , 6. <4. , 5. , 6.>`]

Ordonnées    = [:ref:`70. , 80. , 90. <70. , 80. , 90.>`]

Pour la valeur du paramètre INST=9.9, la fonction:

Abscisses    = [:ref:`4. , 5. , 6. <4. , 5. , 6.>`]

Ordonnées    = [:ref:`40. , 50. , 60. <40. , 50. , 60.>`]

Les vérifications de cohérence des cardinaux de colonnes d’abscisses et d’ordonnées sont faites par la commande.