source: trunk/SOURCES/Recul_force_grounding_line/declar_toy_retreat.f90 @ 4

Last change on this file since 4 was 4, checked in by dumas, 10 years ago

initial import GRISLI trunk

File size: 6.6 KB
Line 
1module declar_toy_retreat
2
3use grisli_3D_toy
4use declar_io_ncdf_toy
5
6implicit none
7
8! utilise dans les calculs specifiques au recul force
9
10integer,parameter            :: nb_regions = 14   ! nombre de regions
11integer                      :: ijob              !< number of the job
12
13character(len=100) :: number_data_B_file          ! nombre de donnees socle dans la maille
14character(len=100) :: region_file                 ! regions pour les temps de demarrage
15character(len=100) :: file_exp                    ! nom du fichier experiences 
16real               :: retreat_1                   !< taux de retrait 1 si beta < beta_lim en km
17real               :: retreat_2                   !< taux de retrait 2 si beta > beta_lim
18real               :: beta_lim_ret                !< limite valeur beta
19real               :: alpha_lim_1                 !< limite mini de alpha (alpha < alpha_lim_1 -> retreat_1)
20real               :: alpha_lim_2                 !< limite maxi de alpha (alpha > alpha_lim_2 -> retreat_2)
21                                                  !< lineaire en alpha entre les deux. alpha = log10 (beta)
22real               :: bed_sigma_1                 !< pour le sigma du socle quand il y a des donnees
23real               :: bed_sigma_2                 !< pour le sigma du socle quand il n'y a pas de donnees
24
25
26integer, dimension(nx,ny)          :: map_region  !< regions
27real, dimension(nx,ny)             :: Bsoc_sigma  !< incertitude sur Bsoc : en entree nombre de points de mesure
28real, dimension(nx,ny)             :: B_test      !< pour le test sur la pente du socle
29real, dimension(nx,ny)             :: B_voisin    !< pour le test sur la pente du socle
30
31real,dimension(nx,ny)              :: delHdx_mx   !< variation d'epaisseur imposee venant de x
32real,dimension(nx,ny)              :: delHdy_my   !< variation d'epaisseur imposee venant de y
33real,dimension(nx,ny)              :: delHdx_SW   !< variation d'epaisseur imposee venant de diag SW-NE
34real,dimension(nx,ny)              :: delHdx_SE   !< variation d'epaisseur imposee venant de diag SE-NW (noeuds \)
35
36real,dimension(nx,ny)              :: delHdt      !< variation d'epaisseur totale
37real,dimension(nx,ny)              :: delHdt_sanity !< variation d'epaisseur maxi autorise par le sanity check
38real,dimension(nx,ny)              :: H_float     !< epaisseur de flottaison
39real,dimension(nx,ny)              :: H_float_test !< epaisseur de flottaison pour le socle test
40real,dimension(nx,ny)              :: time_float  !< temps auquel le noeud se met a flotter
41real,dimension(nx,ny)              :: coef_schoof !< coefficient du flux de schoof
42real,dimension(nx,ny)              :: ux_schoof   !< vitesse schoof sur les noeuds majeurs (fonction de Hfloat)
43real,dimension(nx,ny)              :: uy_schoof   !< vitesse schoof sur les noeuds majeurs (fonction de Hfloat)
44real,dimension(nx,ny)              :: bf_x_schoof ! rapport des contraintes longitudinales /unconfined
45real,dimension(nx,ny)              :: bf_y_schoof ! rapport des contraintes longitudinales /unconfined
46real,dimension(nx,ny)              :: tauf_schoof !< contrainte non confinee
47
48! modulation des temps de depart en fonction de l'ocean
49
50real,dimension(0:nb_regions)       :: time_region !< temps a partir duquel le recul est autorise par region
51                                                  !< la region 0 est l'ocean
52real,dimension(nx,ny)              :: time_dep    !< temps a partir duquel le recul est autorise (noeuds centres)
53real,dimension(nx,ny)              :: time_dep_mx !< temps a partir duquel le recul est autorise (noeuds >)
54real,dimension(nx,ny)              :: time_dep_my !< temps a partir duquel le recul est autorise (noeuds ^)
55real,dimension(nx,ny)              :: time_dep_SW !< temps a partir duquel le recul est autorise (noeuds /)
56real,dimension(nx,ny)              :: time_dep_SE !< temps a partir duquel le recul est autorise (noeuds \)
57
58
59!< position grounding line sur les mailles mineures
60
61real,dimension(nx,ny)              :: x_gl_mx     !< position sous maille de la grounding line selon x
62real,dimension(nx,ny)              :: y_gl_my     !< position sous maille de la grounding line selon y
63real,dimension(nx,ny)              :: SW_gl_m     !< position sous maille de la grounding line selon SW-NE (noeuds /)
64real,dimension(nx,ny)              :: SE_gl_m     !< position sous maille de la grounding line selon SE-NW (noeuds \)
65                           
66integer,dimension(nx,ny)           :: mk_traiter  !< masque des noeuds a traiter
67integer,dimension(nx,ny)           :: mk_traiter0 !< masque des noeuds a traiter initial
68integer,dimension(nx,ny)           :: mk_gr       !< masque des noeuds flottants
69
70! taux de retrait initial (fonction du beta)
71real,dimension(nx,ny)              :: retreat0_x  !< vitesse maxi autorisee selon x : valeur initiale
72real,dimension(nx,ny)              :: retreat0_y  !< vitesse maxi autorisee selon y : valeur initiale
73real,dimension(nx,ny)              :: retreat0_SW !< vitesse maxi autorisee / SW-NE : valeur initiale  (noeuds /)
74real,dimension(nx,ny)              :: retreat0_SE !< vitesse maxi autorisee \ SE-NW : valeur initiale  (noeuds \)
75
76! taux de retrait  fonction du temps
77real,dimension(nx,ny)              :: retreat_x   !< vitesse maxi autorisee selon x : module par le temps
78real,dimension(nx,ny)              :: retreat_y   !< vitesse maxi autorisee selon x : module par le temps
79real,dimension(nx,ny)              :: retreat_SW  !< vitesse maxi autorisee / SW-NE : valeur initiale  (noeuds /)
80real,dimension(nx,ny)              :: retreat_SE  !< vitesse maxi autorisee \ SE-NW : module par le temps  (noeuds \)
81
82
83
84! tableaux de travail toutes directions
85real,dimension(nx,ny)              :: travail_centre !< valeur sur les noeuds centres
86real,dimension(nx,ny)              :: travail_mx     !< valeur sur noeuds >
87real,dimension(nx,ny)              :: travail_my     !< valeur sur noeuds ^
88real,dimension(nx,ny)              :: travail_SW     !< valeur sur noeuds /
89real,dimension(nx,ny)              :: travail_SE     !< valeur sur noeuds \
90
91
92real,dimension(nx,ny)              :: epsmax         !< taux maxi de deformation
93
94! pour l'implementation
95real                               :: cst_schoof   ! constante qui entre dans le calcul du flux de Schoof
96real                               :: nschoof      ! exposant de la loi de deformation pour Schoof
97real                               :: mschoof      ! exposant de la loi de glissement pour Schoof
98real                               :: m1_schoof    ! 1/(mschoof+1)
99real                               :: exp_schoof   ! exposant de Hg dans le flux de Schoof.
100
101end module declar_toy_retreat
Note: See TracBrowser for help on using the repository browser.