ajout des fichiers pour le test de la fusion des noeuds voisins
This commit is contained in:
parent
bdcf122aca
commit
06927cf318
9 changed files with 1320 additions and 0 deletions
37
Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/README
Executable file
37
Batterie/FONCTION_UNIQUE/UTILITAIRES/Test_R_fusion-noeuds-voisins/README
Executable file
|
@ -0,0 +1,37 @@
|
|||
------------------------------------------------------------
|
||||
But du test
|
||||
------------------------------------------------------------
|
||||
Test rapide de l'utilitaire de fusion de maillage
|
||||
""
|
||||
TYPE_DE_CALCUL
|
||||
utilitaires avec plus fusion_de_noeuds
|
||||
""
|
||||
|
||||
------------------------------------------------------------
|
||||
Description du calcul
|
||||
------------------------------------------------------------
|
||||
Fusion de deux cubes 1x1x1 en 3D avec 8 éléments chacun (Hexaèdres quadratiques 27 pti)
|
||||
Les deux cubes sont l'un à côté de l'autre et le calcul consiste à fusionner les noeuds entre-eux
|
||||
loi isoelas classique
|
||||
Les fichiers initiaux pour le calcul sont cube_soude.her et cube_soude.lis
|
||||
|
||||
------------------------------------------------------------
|
||||
Grandeurs de comparaison
|
||||
------------------------------------------------------------
|
||||
Comparaison des fichiers cube_soude_nevez.her et cube_soude_nevez.lis avec les fichiers de références cube_soude_nevez.her.ref1 et cube_soude_nevez.lis.ref1
|
||||
version d'herezh 6.697
|
||||
|
||||
------------------------------------------------------------
|
||||
Informations sur les fichiers facultatifs
|
||||
------------------------------------------------------------
|
||||
Des fichiers temporaires sont créés pour la comparaison qui contiennent uniquement les données puis ils sont éffacés à la fin de l'éxécution du programme perl.
|
||||
|
||||
------------------------------------------------------------
|
||||
Comparaison avec des solutions analytiques
|
||||
------------------------------------------------------------
|
||||
du texte...
|
||||
|
||||
------------------------------------------------------------
|
||||
Comparaison avec des codes de calcul
|
||||
------------------------------------------------------------
|
||||
du texte...
|
|
@ -0,0 +1,87 @@
|
|||
|
||||
###########################################################################
|
||||
# ecriture automatique d'un maillage au format .her, par Herezh++ #
|
||||
###########################################################################
|
||||
# version: 6.697
|
||||
|
||||
|
||||
|
||||
nom_maillage cube_soude # nom du maillage
|
||||
|
||||
noeuds ------------ # definition des noeuds
|
||||
54 NOEUDS # definition du nombre de noeuds
|
||||
|
||||
|
||||
#---------------------------------------------------------------
|
||||
#|NO DU| X | Y | Z |
|
||||
#|NOEUD| | | |
|
||||
#---------------------------------------------------------------
|
||||
|
||||
1 0.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
2 0.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
3 0.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
4 0.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
5 0.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
6 0.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
7 0.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
8 0.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
9 0.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
10 5.00000000000000000e-01 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
11 5.00000000000000000e-01 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
12 5.00000000000000000e-01 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
13 5.00000000000000000e-01 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
14 5.00000000000000000e-01 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
15 5.00000000000000000e-01 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
16 5.00000000000000000e-01 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
17 5.00000000000000000e-01 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
18 5.00000000000000000e-01 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
19 1.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
20 1.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
21 1.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
22 1.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
23 1.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
24 1.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
25 1.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
26 1.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
27 1.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
28 1.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
29 1.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
30 1.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
31 1.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
32 1.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
33 1.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
34 1.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
35 1.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
36 1.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
37 1.50000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
38 1.50000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
39 1.50000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
40 1.50000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
41 1.50000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
42 1.50000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
43 1.50000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
44 1.50000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
45 1.50000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
46 2.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
47 2.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
48 2.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
49 2.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
50 2.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
51 2.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
52 2.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
53 2.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
54 2.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
|
||||
|
||||
elements ----------
|
||||
|
||||
2 ELEMENTS # definition du nombre d'elements
|
||||
#----------------------------------------------------------------------
|
||||
#| NO | | |
|
||||
#|ELTS | type element | Noeuds |
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
1 HEXAEDRE QUADRACOMPL 19 25 7 1 21 27 9 3 22 16 4 10 20 26 8 2 24 18 6 12 13 23 17 5 11 15 14
|
||||
2 HEXAEDRE QUADRACOMPL 46 52 34 28 48 54 36 30 49 43 31 37 47 53 35 29 51 45 33 39 40 50 44 32 38 42 41
|
||||
|
||||
|
|
@ -0,0 +1,314 @@
|
|||
|
||||
###########################################################################
|
||||
# ecriture automatique d'un maillage au format .lis, par Herezh++ #
|
||||
###########################################################################
|
||||
# version: 6.697
|
||||
|
||||
|
||||
|
||||
# -- reference de noeud
|
||||
N_arriere 1 2 3 10 11 12 19 20 21
|
||||
|
||||
N_arriere_1 28 29 30 37 38 39 46 47 48
|
||||
|
||||
N_arriere_droit 1 2 3
|
||||
|
||||
N_arriere_droit_1 28 29 30
|
||||
|
||||
N_arriere_gauche 19 20 21
|
||||
|
||||
N_arriere_gauche_1 46 47 48
|
||||
|
||||
N_avant 7 8 9 16 17 18 25 26 27
|
||||
|
||||
N_avant_1 34 35 36 43 44 45 52 53 54
|
||||
|
||||
N_avant_droit 7 8 9
|
||||
|
||||
N_avant_droit_1 34 35 36
|
||||
|
||||
N_avant_gauche 25 26 27
|
||||
|
||||
N_avant_gauche_1 52 53 54
|
||||
|
||||
N_bas 1 4 7 10 13 16 19 22 25
|
||||
|
||||
N_bas_1 28 31 34 37 40 43 46 49 52
|
||||
|
||||
N_bas_arriere 1 10 19
|
||||
|
||||
N_bas_arriere_1 28 37 46
|
||||
|
||||
N_bas_arriere_droit 1
|
||||
|
||||
N_bas_arriere_droit_1 28
|
||||
|
||||
N_bas_arriere_gauche 19
|
||||
|
||||
N_bas_arriere_gauche_1 46
|
||||
|
||||
N_bas_avant 7 16 25
|
||||
|
||||
N_bas_avant_1 34 43 52
|
||||
|
||||
N_bas_avant_droit 7
|
||||
|
||||
N_bas_avant_droit_1 34
|
||||
|
||||
N_bas_avant_gauche 25
|
||||
|
||||
N_bas_avant_gauche_1 52
|
||||
|
||||
N_bas_droit 1 4 7
|
||||
|
||||
N_bas_droit_1 28 31 34
|
||||
|
||||
N_bas_gauche 19 22 25
|
||||
|
||||
N_bas_gauche_1 46 49 52
|
||||
|
||||
N_droit 1 2 3 4 5 6 7 8 9
|
||||
|
||||
N_droit_1 28 29 30 31 32 33 34 35 36
|
||||
|
||||
N_gauche 19 20 21 22 23 24 25 26 27
|
||||
|
||||
N_gauche_1 46 47 48 49 50 51 52 53 54
|
||||
|
||||
N_haut 3 6 9 12 15 18 21 24 27
|
||||
|
||||
N_haut_1 30 33 36 39 42 45 48 51 54
|
||||
|
||||
N_haut_arriere 3 12 21
|
||||
|
||||
N_haut_arriere_1 30 39 48
|
||||
|
||||
N_haut_arriere_droit 3
|
||||
|
||||
N_haut_arriere_droit_1 30
|
||||
|
||||
N_haut_arriere_gauche 21
|
||||
|
||||
N_haut_arriere_gauche_1 48
|
||||
|
||||
N_haut_avant 9 18 27
|
||||
|
||||
N_haut_avant_1 36 45 54
|
||||
|
||||
N_haut_avant_droit 9
|
||||
|
||||
N_haut_avant_droit_1 36
|
||||
|
||||
N_haut_avant_gauche 27
|
||||
|
||||
N_haut_avant_gauche_1 54
|
||||
|
||||
N_haut_droit 3 6 9
|
||||
|
||||
N_haut_droit_1 30 33 36
|
||||
|
||||
N_haut_gauche 21 24 27
|
||||
|
||||
N_haut_gauche_1 48 51 54
|
||||
|
||||
N_to 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
21 22 23 24 25 26 27
|
||||
|
||||
N_to_1 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
||||
48 49 50 51 52 53 54
|
||||
|
||||
N_tout 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
||||
41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
||||
|
||||
N_tout_1 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
||||
48 49 50 51 52 53 54
|
||||
|
||||
# -- reference des elements
|
||||
E_arriere_droit 1
|
||||
|
||||
E_arriere_droit_1 2
|
||||
|
||||
E_arriere_gauche 1
|
||||
|
||||
E_arriere_gauche_1 2
|
||||
|
||||
E_avant 1
|
||||
|
||||
E_avant_1 2
|
||||
|
||||
E_avant_droit 1
|
||||
|
||||
E_avant_droit_1 2
|
||||
|
||||
E_avant_gauche 1
|
||||
|
||||
E_avant_gauche_1 2
|
||||
|
||||
E_bas 1
|
||||
|
||||
E_bas_1 2
|
||||
|
||||
E_bas_arriere 1
|
||||
|
||||
E_bas_arriere_1 2
|
||||
|
||||
E_bas_arriere_droit 1
|
||||
|
||||
E_bas_arriere_droit_1 2
|
||||
|
||||
E_bas_arriere_gauche 1
|
||||
|
||||
E_bas_arriere_gauche_1 2
|
||||
|
||||
E_bas_avant 1
|
||||
|
||||
E_bas_avant_1 2
|
||||
|
||||
E_bas_avant_droit 1
|
||||
|
||||
E_bas_avant_droit_1 2
|
||||
|
||||
E_bas_avant_gauche 1
|
||||
|
||||
E_bas_avant_gauche_1 2
|
||||
|
||||
E_bas_droit 1
|
||||
|
||||
E_bas_droit_1 2
|
||||
|
||||
E_bas_gauche 1
|
||||
|
||||
E_bas_gauche_1 2
|
||||
|
||||
E_derriere 1
|
||||
|
||||
E_derriere_1 2
|
||||
|
||||
E_droit 1
|
||||
|
||||
E_droit_1 2
|
||||
|
||||
E_gauche 1
|
||||
|
||||
E_gauche_1 2
|
||||
|
||||
E_haut 1
|
||||
|
||||
E_haut_1 2
|
||||
|
||||
E_haut_arriere 1
|
||||
|
||||
E_haut_arriere_1 2
|
||||
|
||||
E_haut_arriere_droit 1
|
||||
|
||||
E_haut_arriere_droit_1 2
|
||||
|
||||
E_haut_arriere_gauche 1
|
||||
|
||||
E_haut_arriere_gauche_1 2
|
||||
|
||||
E_haut_avant 1
|
||||
|
||||
E_haut_avant_1 2
|
||||
|
||||
E_haut_avant_droit 1
|
||||
|
||||
E_haut_avant_droit_1 2
|
||||
|
||||
E_haut_avant_gauche 1
|
||||
|
||||
E_haut_avant_gauche_1 2
|
||||
|
||||
E_haut_droit 1
|
||||
|
||||
E_haut_droit_1 2
|
||||
|
||||
E_haut_gauche 1
|
||||
|
||||
E_haut_gauche_1 2
|
||||
|
||||
E_to 1
|
||||
|
||||
E_to_1 2
|
||||
|
||||
E_tout 1 2
|
||||
|
||||
E_tout_1 2
|
||||
|
||||
# -- references de pt d'integ, noeuds, faces et arretes associes a des elements
|
||||
A_arriere_droit 1 8
|
||||
|
||||
A_arriere_droit_1 2 8
|
||||
|
||||
A_arriere_gauche 1 5
|
||||
|
||||
A_arriere_gauche_1 2 5
|
||||
|
||||
A_avant_droit 1 7
|
||||
|
||||
A_avant_droit_1 2 7
|
||||
|
||||
A_avant_gauche 1 6
|
||||
|
||||
A_avant_gauche_1 2 6
|
||||
|
||||
A_bas_arriere 1 4
|
||||
|
||||
A_bas_arriere_1 2 4
|
||||
|
||||
A_bas_avant 1 2
|
||||
|
||||
A_bas_avant_1 2 2
|
||||
|
||||
A_bas_droit 1 3
|
||||
|
||||
A_bas_droit_1 2 3
|
||||
|
||||
A_bas_gauche 1 1
|
||||
|
||||
A_bas_gauche_1 2 1
|
||||
|
||||
A_haut_arriere 1 12
|
||||
|
||||
A_haut_arriere_1 2 12
|
||||
|
||||
A_haut_avant 1 10
|
||||
|
||||
A_haut_avant_1 2 10
|
||||
|
||||
A_haut_droit 1 11
|
||||
|
||||
A_haut_droit_1 2 11
|
||||
|
||||
A_haut_gauche 1 9
|
||||
|
||||
A_haut_gauche_1 2 9
|
||||
|
||||
F_arriere 1 2
|
||||
|
||||
F_arriere_1 2 2
|
||||
|
||||
F_avant 1 5
|
||||
|
||||
F_avant_1 2 5
|
||||
|
||||
F_bas 1 1
|
||||
|
||||
F_bas_1 2 1
|
||||
|
||||
F_droit 1 6
|
||||
|
||||
F_droit_1 2 6
|
||||
|
||||
F_gauche 1 3
|
||||
|
||||
F_gauche_1 2 3
|
||||
|
||||
F_haut 1 4
|
||||
|
||||
F_haut_1 2 4
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
|
||||
###########################################################################
|
||||
# ecriture automatique d'un maillage au format .her, par Herezh++ #
|
||||
###########################################################################
|
||||
# version: 6.697
|
||||
|
||||
|
||||
|
||||
nom_maillage cube_soude_nevez # nom du maillage
|
||||
|
||||
noeuds ------------ # definition des noeuds
|
||||
45 NOEUDS # definition du nombre de noeuds
|
||||
|
||||
|
||||
#---------------------------------------------------------------
|
||||
#|NO DU| X | Y | Z |
|
||||
#|NOEUD| | | |
|
||||
#---------------------------------------------------------------
|
||||
|
||||
1 0.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
2 0.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
3 0.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
4 0.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
5 0.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
6 0.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
7 0.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
8 0.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
9 0.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
10 5.00000000000000000e-01 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
11 5.00000000000000000e-01 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
12 5.00000000000000000e-01 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
13 5.00000000000000000e-01 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
14 5.00000000000000000e-01 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
15 5.00000000000000000e-01 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
16 5.00000000000000000e-01 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
17 5.00000000000000000e-01 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
18 5.00000000000000000e-01 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
19 1.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
20 1.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
21 1.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
22 1.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
23 1.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
24 1.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
25 1.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
26 1.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
27 1.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
28 1.50000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
29 1.50000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
30 1.50000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
31 1.50000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
32 1.50000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
33 1.50000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
34 1.50000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
35 1.50000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
36 1.50000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
37 2.00000000000000000e+00 0.00000000000000000e+00 0.00000000000000000e+00
|
||||
38 2.00000000000000000e+00 0.00000000000000000e+00 5.00000000000000000e-01
|
||||
39 2.00000000000000000e+00 0.00000000000000000e+00 1.00000000000000000e+00
|
||||
40 2.00000000000000000e+00 5.00000000000000000e-01 0.00000000000000000e+00
|
||||
41 2.00000000000000000e+00 5.00000000000000000e-01 5.00000000000000000e-01
|
||||
42 2.00000000000000000e+00 5.00000000000000000e-01 1.00000000000000000e+00
|
||||
43 2.00000000000000000e+00 1.00000000000000000e+00 0.00000000000000000e+00
|
||||
44 2.00000000000000000e+00 1.00000000000000000e+00 5.00000000000000000e-01
|
||||
45 2.00000000000000000e+00 1.00000000000000000e+00 1.00000000000000000e+00
|
||||
|
||||
|
||||
elements ----------
|
||||
|
||||
2 ELEMENTS # definition du nombre d'elements
|
||||
#----------------------------------------------------------------------
|
||||
#| NO | | |
|
||||
#|ELTS | type element | Noeuds |
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
1 HEXAEDRE QUADRACOMPL 19 25 7 1 21 27 9 3 22 16 4 10 20 26 8 2 24 18 6 12 13 23 17 5 11 15 14
|
||||
2 HEXAEDRE QUADRACOMPL 37 43 25 19 39 45 27 21 40 34 22 28 38 44 26 20 42 36 24 30 31 41 35 23 29 33 32
|
||||
|
||||
|
|
@ -0,0 +1,303 @@
|
|||
|
||||
###########################################################################
|
||||
# ecriture automatique d'un maillage au format .lis, par Herezh++ #
|
||||
###########################################################################
|
||||
# version: 6.697
|
||||
|
||||
|
||||
|
||||
# -- reference de noeud
|
||||
N_arriere 1 2 3 10 11 12 19 20 21
|
||||
|
||||
N_arriere_1 28 29 30 37 38 39
|
||||
|
||||
N_arriere_droit 1 2 3
|
||||
|
||||
|
||||
N_arriere_gauche 19 20 21
|
||||
|
||||
N_arriere_gauche_1 37 38 39
|
||||
|
||||
N_avant 7 8 9 16 17 18 25 26 27
|
||||
|
||||
N_avant_1 34 35 36 43 44 45
|
||||
|
||||
N_avant_droit 7 8 9
|
||||
|
||||
|
||||
N_avant_gauche 25 26 27
|
||||
|
||||
N_avant_gauche_1 43 44 45
|
||||
|
||||
N_bas 1 4 7 10 13 16 19 22 25
|
||||
|
||||
N_bas_1 28 31 34 37 40 43
|
||||
|
||||
N_bas_arriere 1 10 19
|
||||
|
||||
N_bas_arriere_1 28 37
|
||||
|
||||
N_bas_arriere_droit 1
|
||||
|
||||
|
||||
N_bas_arriere_gauche 19
|
||||
|
||||
N_bas_arriere_gauche_1 37
|
||||
|
||||
N_bas_avant 7 16 25
|
||||
|
||||
N_bas_avant_1 34 43
|
||||
|
||||
N_bas_avant_droit 7
|
||||
|
||||
|
||||
N_bas_avant_gauche 25
|
||||
|
||||
N_bas_avant_gauche_1 43
|
||||
|
||||
N_bas_droit 1 4 7
|
||||
|
||||
|
||||
N_bas_gauche 19 22 25
|
||||
|
||||
N_bas_gauche_1 37 40 43
|
||||
|
||||
N_droit 1 2 3 4 5 6 7 8 9
|
||||
|
||||
|
||||
N_gauche 19 20 21 22 23 24 25 26 27
|
||||
|
||||
N_gauche_1 37 38 39 40 41 42 43 44 45
|
||||
|
||||
N_haut 3 6 9 12 15 18 21 24 27
|
||||
|
||||
N_haut_1 30 33 36 39 42 45
|
||||
|
||||
N_haut_arriere 3 12 21
|
||||
|
||||
N_haut_arriere_1 30 39
|
||||
|
||||
N_haut_arriere_droit 3
|
||||
|
||||
|
||||
N_haut_arriere_gauche 21
|
||||
|
||||
N_haut_arriere_gauche_1 39
|
||||
|
||||
N_haut_avant 9 18 27
|
||||
|
||||
N_haut_avant_1 36 45
|
||||
|
||||
N_haut_avant_droit 9
|
||||
|
||||
|
||||
N_haut_avant_gauche 27
|
||||
|
||||
N_haut_avant_gauche_1 45
|
||||
|
||||
N_haut_droit 3 6 9
|
||||
|
||||
|
||||
N_haut_gauche 21 24 27
|
||||
|
||||
N_haut_gauche_1 39 42 45
|
||||
|
||||
N_to 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
21 22 23 24 25 26 27
|
||||
|
||||
N_to_1 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
||||
|
||||
N_tout 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
||||
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
||||
41 42 43 44 45
|
||||
|
||||
N_tout_1 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
||||
|
||||
# -- reference des elements
|
||||
E_arriere_droit 1
|
||||
|
||||
E_arriere_droit_1 2
|
||||
|
||||
E_arriere_gauche 1
|
||||
|
||||
E_arriere_gauche_1 2
|
||||
|
||||
E_avant 1
|
||||
|
||||
E_avant_1 2
|
||||
|
||||
E_avant_droit 1
|
||||
|
||||
E_avant_droit_1 2
|
||||
|
||||
E_avant_gauche 1
|
||||
|
||||
E_avant_gauche_1 2
|
||||
|
||||
E_bas 1
|
||||
|
||||
E_bas_1 2
|
||||
|
||||
E_bas_arriere 1
|
||||
|
||||
E_bas_arriere_1 2
|
||||
|
||||
E_bas_arriere_droit 1
|
||||
|
||||
E_bas_arriere_droit_1 2
|
||||
|
||||
E_bas_arriere_gauche 1
|
||||
|
||||
E_bas_arriere_gauche_1 2
|
||||
|
||||
E_bas_avant 1
|
||||
|
||||
E_bas_avant_1 2
|
||||
|
||||
E_bas_avant_droit 1
|
||||
|
||||
E_bas_avant_droit_1 2
|
||||
|
||||
E_bas_avant_gauche 1
|
||||
|
||||
E_bas_avant_gauche_1 2
|
||||
|
||||
E_bas_droit 1
|
||||
|
||||
E_bas_droit_1 2
|
||||
|
||||
E_bas_gauche 1
|
||||
|
||||
E_bas_gauche_1 2
|
||||
|
||||
E_derriere 1
|
||||
|
||||
E_derriere_1 2
|
||||
|
||||
E_droit 1
|
||||
|
||||
E_droit_1 2
|
||||
|
||||
E_gauche 1
|
||||
|
||||
E_gauche_1 2
|
||||
|
||||
E_haut 1
|
||||
|
||||
E_haut_1 2
|
||||
|
||||
E_haut_arriere 1
|
||||
|
||||
E_haut_arriere_1 2
|
||||
|
||||
E_haut_arriere_droit 1
|
||||
|
||||
E_haut_arriere_droit_1 2
|
||||
|
||||
E_haut_arriere_gauche 1
|
||||
|
||||
E_haut_arriere_gauche_1 2
|
||||
|
||||
E_haut_avant 1
|
||||
|
||||
E_haut_avant_1 2
|
||||
|
||||
E_haut_avant_droit 1
|
||||
|
||||
E_haut_avant_droit_1 2
|
||||
|
||||
E_haut_avant_gauche 1
|
||||
|
||||
E_haut_avant_gauche_1 2
|
||||
|
||||
E_haut_droit 1
|
||||
|
||||
E_haut_droit_1 2
|
||||
|
||||
E_haut_gauche 1
|
||||
|
||||
E_haut_gauche_1 2
|
||||
|
||||
E_to 1
|
||||
|
||||
E_to_1 2
|
||||
|
||||
E_tout 1 2
|
||||
|
||||
E_tout_1 2
|
||||
|
||||
# -- references de pt d'integ, noeuds, faces et arretes associes a des elements
|
||||
A_arriere_droit 1 8
|
||||
|
||||
A_arriere_droit_1 2 8
|
||||
|
||||
A_arriere_gauche 1 5
|
||||
|
||||
A_arriere_gauche_1 2 5
|
||||
|
||||
A_avant_droit 1 7
|
||||
|
||||
A_avant_droit_1 2 7
|
||||
|
||||
A_avant_gauche 1 6
|
||||
|
||||
A_avant_gauche_1 2 6
|
||||
|
||||
A_bas_arriere 1 4
|
||||
|
||||
A_bas_arriere_1 2 4
|
||||
|
||||
A_bas_avant 1 2
|
||||
|
||||
A_bas_avant_1 2 2
|
||||
|
||||
A_bas_droit 1 3
|
||||
|
||||
A_bas_droit_1 2 3
|
||||
|
||||
A_bas_gauche 1 1
|
||||
|
||||
A_bas_gauche_1 2 1
|
||||
|
||||
A_haut_arriere 1 12
|
||||
|
||||
A_haut_arriere_1 2 12
|
||||
|
||||
A_haut_avant 1 10
|
||||
|
||||
A_haut_avant_1 2 10
|
||||
|
||||
A_haut_droit 1 11
|
||||
|
||||
A_haut_droit_1 2 11
|
||||
|
||||
A_haut_gauche 1 9
|
||||
|
||||
A_haut_gauche_1 2 9
|
||||
|
||||
F_arriere 1 2
|
||||
|
||||
F_arriere_1 2 2
|
||||
|
||||
F_avant 1 5
|
||||
|
||||
F_avant_1 2 5
|
||||
|
||||
F_bas 1 1
|
||||
|
||||
F_bas_1 2 1
|
||||
|
||||
F_droit 1 6
|
||||
|
||||
F_droit_1 2 6
|
||||
|
||||
F_gauche 1 3
|
||||
|
||||
F_gauche_1 2 3
|
||||
|
||||
F_haut 1 4
|
||||
|
||||
F_haut_1 2 4
|
||||
|
||||
|
||||
|
|
@ -0,0 +1,105 @@
|
|||
###############################################################################################
|
||||
# Fichier de commande pour la visualisation elements finis #
|
||||
# Herezh++ V6.658 #
|
||||
# Copyright (c) 1997-2014, Gerard Rio (gerard.rio@univ-ubs.fr) http://kleger.univ-ubs.fr/Herezh/ #
|
||||
# http://www-lg2m.univ-ubs.fr #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
|
||||
debut_fichier_commande_visu # >>>>>> le mot cle: <debut_fichier_commande_visu>
|
||||
# permet au programme de se positionner au debut du fichier, il est indispensable
|
||||
|
||||
|
||||
# =================================================================================
|
||||
# || ***** demande d'une visualisation Gmsh: ***** ||
|
||||
# =================================================================================
|
||||
# un mot cle de debut (debut_visualisation_Gmsh)
|
||||
# un mot cle de fin ( fin_visualisation_Gmsh) apres tous les ordres particuliers
|
||||
# la seule presence du premier mots cle suffit a activer la visualisation Gmsh
|
||||
# la presence du second permet une meilleur lisibilite du fichier, mais n'est pas indispensable
|
||||
debut_visualisation_Gmsh
|
||||
|
||||
# ----------------------------- definition des parametres du maillage initial: ----------------
|
||||
debut_maillage_initial # un mot cle de debut de liste
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
pseudo-homothetie_sur_les_maillages_ 0 # 0 = aucune homothetie, 1 = il y en a
|
||||
# --- def eventuelle de la pseudo-homothetie: une par maillage,
|
||||
# pseudo-homothetie pour le maillage : 1
|
||||
# maillage_ 1
|
||||
# mot cle: maillage_ puis le numero du maillage,
|
||||
# pseudo-homothetie_ 0 # 0 = non active, 1 = active
|
||||
# ensuite si c'est active, on trouve :
|
||||
# mot cle: centre_homothetie_ puis les coordonnees du centre d'homothetie
|
||||
# puis mot cle: fact_mult_ puis les coordonnees donnant les coefs multiplicatifs selon les axes.
|
||||
# centre_homothetie_
|
||||
# fact_mult_
|
||||
visualisation_references_sur_les_maillages_ 1 # 0 = pas de visualisation des reference, 1 = sortie des ref dans fichier unique 2= sortie des ref dans plusieurs fichiers
|
||||
fin_maillage_initial # le mot cle de fin
|
||||
|
||||
# ----------------------------- definition des parametres pour les isovaleurs : ----------------
|
||||
debut_isovaleur_Gmsh # mot cle de debut des parametres pour les isovaleurs
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
ancien_format_ 0 # 1 = ancien format, 0 = nouveau format
|
||||
# un parametre indiquant si les tenseurs sont en absolue (rep 1) ou suivant un repere ad hoc
|
||||
# (tangent pour les coques, suivant la fibre moyenne pour les element 1D )
|
||||
tenseur_en_absolue_ 1
|
||||
1 # le numero de maillage
|
||||
# tableau des ddl aux noeuds a visualiser, un par maillage
|
||||
debut_tableau_ddl_aux_noeuds fin_tableau_ddl_aux_noeuds
|
||||
# tableau des choix_var aux noeuds a visualiser, un par maillage
|
||||
# choix_var (=1 ou 0) indique si oui ou non il s'agit de la variation
|
||||
debut_tableau_choix_var_ddl_aux_noeuds fin_tableau_choix_var_ddl_aux_noeuds
|
||||
# tableau des ddl_etendu aux noeuds a visualiser, un par maillage
|
||||
debut_tableau_ddl_etendu_aux_noeuds fin_tableau_ddl_etendu_aux_noeuds
|
||||
# tableau de grandeurs evoluees aux noeuds a visualiser, un par maillage
|
||||
deb_list_GrandEvoluee_noeud fin_list_GrandEvoluee_noeud
|
||||
# tableau de ddl aux elements a visualiser, un par maillage
|
||||
debut_tableau_ddl_aux_elements fin_tableau_ddl_aux_elements
|
||||
# tableau de grandeurs evoluees aux elements a visualiser, un par maillage
|
||||
deb_list_GrandEvoluee_element fin_list_GrandEvoluee_element
|
||||
# tableau de grandeurs particulieres aux elements a visualiser, un par maillage
|
||||
deb_list_GrandParticuliere_element fin_list_GrandParticuliere_element
|
||||
fin_isovaleur_Gmsh # mot cle de fin des parametres pour les isovaleurs
|
||||
|
||||
# ----------------------------- definition des parametres de deformee: ----------------
|
||||
debut_deformee # un mot cle de debut de liste
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# definition des alertes: deb_list_alerte
|
||||
# un mot clef de debut
|
||||
# puis deux nombres: un mini et un maxi, et un nom
|
||||
# un mot clef de fin: fin_list_alerte
|
||||
deb_list_alerte
|
||||
fin_list_alerte
|
||||
fin_deformee # un mot cle de fin
|
||||
|
||||
# ----------------------------- definition de la liste des increments a balayer: ----------------
|
||||
debut_list_increment # un mot cle de debut de liste
|
||||
actif 1 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entier separee par des blancs, ou le mot cle (tous_les_increments)
|
||||
# un mot cle de fin de liste ( fin_list_increment)
|
||||
tous_les_increments fin_list_increment
|
||||
|
||||
# ----------------------------- choix des maillages a visualiser: ----------------
|
||||
# la liste est facultative, par defaut la visualisation concerne le premier maillage
|
||||
debut_choix_maillage # un mot cle de debut,
|
||||
actif 0 # <0 ou 1> indique si l'ordre est actif ou non
|
||||
# une liste d'entiers , puis <fin_choix_maillage>, sur une meme ligne
|
||||
1 fin_choix_maillage
|
||||
|
||||
fin_visualisation_Gmsh
|
||||
# =================================================================================
|
||||
# || fin de la visualisation Gmsh ||
|
||||
# =================================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
fin_fichier_commande_visu # <<<<<< le mot cle <fin_fichier_commande_visu> permet
|
||||
# l'arret de la lecture des commandes, apres ce mot cle, aucune commande n'est lu, de plus
|
||||
# sans le mot cle de fin de fichier, le fichier n'est pas valide
|
||||
|
||||
###############################################################################################
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
0.01
|
|
@ -0,0 +1,159 @@
|
|||
#######################################################################
|
||||
# #
|
||||
# | | ==== === ==== ==== | | | | #
|
||||
# | | | | | | / | | | | #
|
||||
# |====| |=== === |=== / |====| ------- ------- #
|
||||
# | | | | \ | / | | | | #
|
||||
# | | ==== | \ ==== ==== | | | | #
|
||||
# #
|
||||
#######################################################################
|
||||
# Copyright (c) 1997-2008 Gerard Rio, gerard.rio@univ-ubs.fr #
|
||||
# All rights reserved. http://www-lg2m.univ-ubs.fr/~rio #
|
||||
# Certification IDDN.FR.010.0106078.000.R.P.2006.035.20600 #
|
||||
#######################################################################
|
||||
|
||||
#######################################################################
|
||||
# Fusion des noeuds voisins par rapport à une distance #
|
||||
#######################################################################
|
||||
|
||||
#---------------------------------------------------#
|
||||
# Definition de la dimension de travail (1, 2 ou 3) #
|
||||
#---------------------------------------------------#
|
||||
dimension 3
|
||||
|
||||
#------------------------------------------------------#
|
||||
# Definition du niveau de commentaires (entre 0 et 10) #
|
||||
#------------------------------------------------------#
|
||||
niveau_commentaire 3
|
||||
|
||||
TYPE_DE_CALCUL
|
||||
#----------------------------------------------------------#
|
||||
# Definition du type de calcul ou des utilitaires utilises #
|
||||
#----------------------------------------------------------#
|
||||
utilitaires avec plus fusion_de_noeuds
|
||||
|
||||
PARA_TYPE_DE_CALCUL
|
||||
#-------------------------------------#
|
||||
# Definition des parametres de calcul #
|
||||
#-------------------------------------#
|
||||
|
||||
|
||||
#-----------------------------------------------#
|
||||
# Importation et fusion des mailllages utilises #
|
||||
#-----------------------------------------------#
|
||||
< cube_soude.her
|
||||
< cube_soude.lis
|
||||
|
||||
#-------------------------------------#
|
||||
# Definition facultative de courbe 1D #
|
||||
#-------------------------------------#
|
||||
les_courbes_1D ------------
|
||||
|
||||
c_charge COURBEPOLYLINEAIRE_1_D
|
||||
Debut_des_coordonnees_des_points
|
||||
Coordonnee dim= 2 0. 0.
|
||||
Coordonnee dim= 2 1. 20.
|
||||
Fin_des_coordonnees_des_points
|
||||
|
||||
|
||||
|
||||
choix_materiaux
|
||||
#----------------------------------------------------------#
|
||||
# Definition des materiaux associes aux maillages utilises #
|
||||
#----------------------------------------------------------#
|
||||
# Elements | Materiau #
|
||||
#-----------------------#
|
||||
E_tout acier
|
||||
|
||||
materiaux ----------
|
||||
#-----------------------------#
|
||||
# Nom Materiau | Loi utilisee #
|
||||
#-----------------------------#
|
||||
acier ISOELAS # Loi lineaire elastique 3D
|
||||
|
||||
#------------------------------------#
|
||||
# Module Young (MPa) | Coeff Poisson #
|
||||
#------------------------------------#
|
||||
210000. 0.28
|
||||
|
||||
masse_volumique -----------
|
||||
E_tout 8e-09 # (T/mm^3)
|
||||
|
||||
|
||||
#-------------------------------------#
|
||||
# Definition des charges et bloquages #
|
||||
#-------------------------------------#
|
||||
charges ------------
|
||||
|
||||
#------------------------------------------------------#
|
||||
# Ref noeud | Type de charge | Valeurs (N) #
|
||||
#------------------------------------------------------#
|
||||
|
||||
blocages ------------
|
||||
#-----------------------#
|
||||
# Ref noeud | Bloquages #
|
||||
#-----------------------#
|
||||
N_to UX UY UZ
|
||||
|
||||
|
||||
controle ------------
|
||||
#----------------------------------#
|
||||
# Reglage des parametres de calcul #
|
||||
#----------------------------------#
|
||||
# PARAMETRE | VALEUR #
|
||||
#--------------------#
|
||||
DELTAtMAXI 1
|
||||
TEMPSFIN 1
|
||||
DELTAt 1
|
||||
ITERATIONS 12
|
||||
PRECISION 5e-3
|
||||
MAXINCRE 20000000
|
||||
SAUVEGARDE 0
|
||||
|
||||
|
||||
para_pilotage_equi_global ------------
|
||||
#------------------------------------#
|
||||
# PARAMETRE | VALEUR #
|
||||
#------------------------------------#
|
||||
FACTEUR_DIMINUTION 5
|
||||
FACTEUR_AUGMENTATION 5
|
||||
#NB_BONNE_CONVERGENCE 1000
|
||||
#INIT_COMP_TANGENT_SIMPLE -1
|
||||
#SUR_SOUS_RELAXATION 1.2
|
||||
NORME_MAXI_INCREMENT 0.5
|
||||
|
||||
NB_CYCLE_CONTROLE_RESIDU 4 #
|
||||
PLAGE_CONTROLE_RESIDU 1 # si au bout de 4 iterations, on a toujours pas de diminution du rÈsidue => divergence
|
||||
CAS_JACOBIEN_NEGATIF 1#2 # jacobien nÈgatif => divergence
|
||||
VAR_MAXI_JACOBIEN 4#1.5 # au dessus de 20% de variation on considËre qu'il y a divergence
|
||||
INIT_INCRE_AVEC_PAS_PREC 1
|
||||
|
||||
para_energie ------------
|
||||
#----------------------------#
|
||||
# PARAMETRE | VALEUR #
|
||||
#----------------------------#
|
||||
#NB_INCR_CAL_ENERG 1
|
||||
#AFFICHE_INCR_ENERGIE 1
|
||||
|
||||
para_affichage ------------
|
||||
#----------------------------------#
|
||||
# PARAMETRE | VALEUR #
|
||||
#----------------------------------#
|
||||
FREQUENCE_AFFICHAGE_INCREMENT 1
|
||||
FREQUENCE_AFFICHAGE_ITERATION 1
|
||||
FREQUENCE_SORTIE_FIL_DU_CALCUL 1
|
||||
|
||||
para_syteme_lineaire
|
||||
#------------------------#
|
||||
# PARAMETRE | VALEUR #
|
||||
#------------------------#
|
||||
TYPE_MATRICE BANDE_SYMETRIQUE_LAPACK
|
||||
TYPE_RESOLUTION GAUSS
|
||||
|
||||
resultats pas_de_sortie_finale_
|
||||
#---------------------------
|
||||
# PARAMETRE | VALEUR |
|
||||
#---------------------------
|
||||
COPIE 0
|
||||
|
||||
_fin_point_info_ ----------
|
|
@ -0,0 +1,236 @@
|
|||
#!/usr/bin/perl
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
###############################################################################################
|
||||
# Script pour une comparaison entre deux fichiers de même extension #
|
||||
# Auteur: Erwan KERGOURLAY #
|
||||
# Script qui compare un fichier de références avec le fichier résultat sortit par Herezh #
|
||||
###############################################################################################
|
||||
|
||||
|
||||
my $version = "1.";
|
||||
|
||||
#------------------- écriture de l'entete à l'écran -----------------#
|
||||
print ("\n");
|
||||
print ("\n" . '#############################################################################');
|
||||
print ("\n" . '# #');
|
||||
print ("\n" . '# comparaison.pl #');
|
||||
print ("\n" . '#############################################################################');
|
||||
print ("\n" . '# licence GPL, erwan.kergourlay@univ-ubs.fr #');
|
||||
print ("\n" . '# #');
|
||||
print ("\n" . '# version '."$version".' #');
|
||||
print ("\n" . '#############################################################################');
|
||||
print ("\n\n\n");
|
||||
#------------------- fin écriture de l'entete à l'écran -----------------#
|
||||
|
||||
my $HZ=$ARGV[0];
|
||||
|
||||
print("La version d'herezh testée est: $HZ \n");
|
||||
|
||||
#------------------- déclaration des variables -----------------#
|
||||
|
||||
my $valeur;
|
||||
|
||||
#**Déclaration des variables qui contiennent les fichiers de références**#
|
||||
#------------------------------------------------------------------------#
|
||||
my $fichier_her_ref = "cube_soude_nevez.her.ref1";
|
||||
my $fichier_lis_ref = "cube_soude_nevez.lis.ref1";
|
||||
#------------------------------------------------------------------------#
|
||||
|
||||
#**Déclaration des variables qui contiennent les fichiers résultats sortis par Herezh**#
|
||||
#------------------------------------------------------------------------#
|
||||
#**Avec vérification que le fichier existe, sinon une erreure est générée et la comparaison ne peut pas être faites**#
|
||||
#**Utilisation de l'opérateur de comparaison de chaînes de caractère**#
|
||||
#------------------------------------------------------------------------#
|
||||
my $fichier_her_test = "cube_soude_nevez.her";
|
||||
my $fichier_lis_test = "cube_soude_nevez.lis";
|
||||
|
||||
if( -e "$fichier_her_test" && -e "$fichier_lis_test") #commande -e permet de voir si le fichier existe
|
||||
{
|
||||
#print("Les fichiers .her et .lis ont été créés lors du test de la version d'Herezh \n");
|
||||
$valeur=0;
|
||||
}
|
||||
else
|
||||
{
|
||||
#print("Les fichiers .her et .lis n'ont pas été créés lors du test de la version d'Herezh \n");
|
||||
$valeur=1;
|
||||
}
|
||||
|
||||
#**Déclaration des fichiers temporaires*#
|
||||
#------------------------------------------------------------------------#
|
||||
my $fichier_temp_her_ref = "fichier_temp_her_ref.txt";
|
||||
my $fichier_temp_her_test = "fichier_temp_her_test.txt";
|
||||
|
||||
my $fichier_temp_lis_ref = "fichier_temp_lis_ref.txt";
|
||||
my $fichier_temp_lis_test = "fichier_temp_lis_test.txt";
|
||||
|
||||
#------------------- fin déclaration des variables -----------------#
|
||||
|
||||
|
||||
#------------------- programme de comparaison -----------------#
|
||||
|
||||
if($valeur==0)
|
||||
{
|
||||
#---On commence par faire une lecture du fichier .her de référence et le fichier .her de test---#
|
||||
#---On extrait de ces fichiers uniquement les parties données puis on va les comparer entre-elles par rapport à des fichiers temporaires---#
|
||||
open (HER_REF, "$fichier_her_ref");
|
||||
open (HER_TEST, "$fichier_her_test");
|
||||
|
||||
open (FICHIER_TEMP_HER_REF,">$fichier_temp_her_ref");
|
||||
open (FICHIER_TEMP_HER_TEST,">$fichier_temp_her_test");
|
||||
|
||||
while(<HER_REF>)
|
||||
{
|
||||
my $ligne_ref = $_; #on déclare une variable qui va sauvegarder la ligne en cours
|
||||
chomp($ligne_ref); #on retire à la fin de cette ligne, le retour à la ligne
|
||||
$ligne_ref=~ s/^[ \t]+//mg; #on supprimme toutes les combinaisons de tabulation et d'espace
|
||||
|
||||
#Si on n'a pas de '#' et 'noeuds' et 'elements', la condition est validée
|
||||
if(index($ligne_ref,'#') == -1 && index($ligne_ref,'noeuds') == -1 && index($ligne_ref,'elements') == -1)
|
||||
{
|
||||
my @tab_ref = split (/\s+/,$ligne_ref);
|
||||
|
||||
if(defined($tab_ref[0]))
|
||||
{
|
||||
print FICHIER_TEMP_HER_REF ("@tab_ref \n");
|
||||
}
|
||||
}
|
||||
}
|
||||
close FICHIER_TEMP_HER_REF;
|
||||
close HER_REF;
|
||||
|
||||
while(<HER_TEST>)
|
||||
{
|
||||
my $ligne_test = $_;
|
||||
chomp($ligne_test);
|
||||
$ligne_test=~ s/^[ \t]+//mg;
|
||||
|
||||
if(index($ligne_test,'#') == -1 && index($ligne_test,'noeuds') == -1 && index($ligne_test,'elements') == -1)
|
||||
{
|
||||
my @tab_test = split (/\s+/,$ligne_test);
|
||||
|
||||
if(defined($tab_test[0]))
|
||||
{
|
||||
print FICHIER_TEMP_HER_TEST ("@tab_test \n");
|
||||
}
|
||||
}
|
||||
}
|
||||
close FICHIER_TEMP_HER_TEST;
|
||||
close HER_TEST;
|
||||
|
||||
#---On commence par faire une lecture du fichier .lis de référence et le fichier .lis de test---#
|
||||
#---On extrait de ces fichiers uniquement les parties données puis on va les comparer entre-elles par rapport à des fichiers temporaires---#
|
||||
open (LIS_REF, "$fichier_lis_ref");
|
||||
open (LIS_TEST, "$fichier_lis_test");
|
||||
|
||||
open (FICHIER_TEMP_LIS_REF,">$fichier_temp_lis_ref");
|
||||
open (FICHIER_TEMP_LIS_TEST,">$fichier_temp_lis_test");
|
||||
|
||||
while(<LIS_REF>)
|
||||
{
|
||||
my $ligne_ref = $_; #on déclare une variable qui va sauvegarder la ligne en cours
|
||||
chomp($ligne_ref); #on retire à la fin de cette ligne, le retour à la ligne
|
||||
$ligne_ref=~ s/^[ \t]+//mg; #on supprimme toutes les combinaisons de tabulation et d'espace
|
||||
|
||||
#Si on n'a pas de '#' et 'noeuds' et 'elements', la condition est validée
|
||||
if(index($ligne_ref,'#') == -1)
|
||||
{
|
||||
my @tab_ref = split (/\s+/,$ligne_ref);
|
||||
|
||||
if(defined($tab_ref[0]))
|
||||
{
|
||||
print FICHIER_TEMP_LIS_REF ("@tab_ref \n");
|
||||
}
|
||||
}
|
||||
}
|
||||
close FICHIER_TEMP_LIS_REF;
|
||||
close LIS_REF;
|
||||
|
||||
while(<LIS_TEST>)
|
||||
{
|
||||
my $ligne_test = $_;
|
||||
chomp($ligne_test);
|
||||
$ligne_test=~ s/^[ \t]+//mg;
|
||||
|
||||
if(index($ligne_test,'#') == -1)
|
||||
{
|
||||
my @tab_test = split (/\s+/,$ligne_test);
|
||||
|
||||
if(defined($tab_test[0]))
|
||||
{
|
||||
print FICHIER_TEMP_LIS_TEST ("@tab_test \n");
|
||||
}
|
||||
}
|
||||
}
|
||||
close FICHIER_TEMP_LIS_TEST;
|
||||
close LIS_TEST;
|
||||
|
||||
#---On verifie si les deux fichiers .her sont identiques---#
|
||||
system ("cmp $fichier_temp_her_test $fichier_temp_her_ref");
|
||||
if ( $? == 0 )
|
||||
{
|
||||
print("Les deux fichiers .her sont identiques\n");
|
||||
$valeur=$valeur+2; #on ajoute 2 dans le cas où le fichier .her est correct
|
||||
}
|
||||
elsif ( $? != 0 )
|
||||
{
|
||||
print("Les deux fichiers .her sont différents\n");
|
||||
$valeur=$valeur+1; #on ajoute 1 dans le cas où le fichier .her est incorrect
|
||||
}
|
||||
|
||||
#---On verifie si les deux fichiers .lis sont identiques---#
|
||||
system ("cmp $fichier_temp_lis_test $fichier_temp_lis_ref");
|
||||
if ( $? == 0 )
|
||||
{
|
||||
print("Les deux fichiers .lis sont identiques\n");
|
||||
$valeur=$valeur+3; #on ajoute 3 dans le cas où le fichier .lis est correct
|
||||
}
|
||||
elsif ( $? != 0 )
|
||||
{
|
||||
print("Les deux fichiers .lis sont différents\n");
|
||||
$valeur=$valeur+1; #on ajoute 1 dans le cas où le fichier .lis est incorrect
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#------------------- Fin programme de comparaison -----------------#
|
||||
|
||||
|
||||
#------------------- Bilan comparaison fichier -----------------#
|
||||
#----Remarques----#
|
||||
# Si valeur=1, alors les nouveaux fichiers .her et .lis n'ont pas été créés.
|
||||
# Si valeur=2, alors le fichier .her et le fichier .lis sont incorrects.
|
||||
# Si valeur=3, alors le fichier .her est correct mais le fichier .lis est incorrect.
|
||||
# Si valeur=4, alors le fichier .her est incorrect mais le fichier .lis est correct.
|
||||
# Si valeur=5, alors les deux fichiers sont corrects
|
||||
#----Fin remarques----#
|
||||
if($valeur==1)
|
||||
{
|
||||
print("Les fichiers $fichier_her_test et $fichier_lis_test n'ont pas été créés avec la version d'herezh testée: $HZ\n");
|
||||
print ("resultat verification: ECHEC\n");
|
||||
}
|
||||
elsif($valeur==2)
|
||||
{
|
||||
print("Le fichier $fichier_her_test a bien été créé mais son contenu est différent du fichier $fichier_her_ref et le fichier $fichier_lis_test a bien été créé mais son contenu est différent du fichier $fichier_lis_ref\n");
|
||||
}
|
||||
elsif($valeur==3)
|
||||
{
|
||||
print("Le fichier $fichier_her_test a bien été créé et son contenu est similaire au fichier $fichier_her_ref mais le fichier $fichier_lis_test a bien été créé mais son contenu est différent du fichier $fichier_lis_ref\n");
|
||||
print ("resultat verification: ECHEC\n");
|
||||
}
|
||||
elsif($valeur==4)
|
||||
{
|
||||
print("Le fichier $fichier_her_test a bien été créé mais son contenu est différent du fichier $fichier_her_ref et le fichier $fichier_lis_test a bien été créé et son contenu est similaire au fichier $fichier_lis_ref\n");
|
||||
print ("resultat verification: ECHEC\n");
|
||||
}
|
||||
elsif($valeur==5)
|
||||
{
|
||||
print("Le fichier $fichier_her_test a bien été créé et son contenu est similaire au fichier $fichier_her_ref et le fichier $fichier_lis_test a bien été créé et son contenu est similaire au fichier $fichier_lis_ref\n");
|
||||
print ("resultat verification: OK\n");
|
||||
}
|
||||
#------------------- Fin bilan comparaison fichier -----------------#
|
||||
|
||||
#------------------- Ménage dans le répertoire -----------------#
|
||||
system ("rm -f $fichier_her_test $fichier_lis_test $fichier_temp_her_test $fichier_temp_her_ref $fichier_temp_lis_test $fichier_temp_lis_ref");
|
||||
|
Loading…
Reference in a new issue