Changeset 467 for branches/GRISLIv3/SOURCES/3D-physique-gen_mod.f90
- Timestamp:
- 01/26/24 16:49:00 (4 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/GRISLIv3/SOURCES/3D-physique-gen_mod.f90
r465 r467 63 63 real :: V_limit !< vitesse maxi (limitateur de flux pour conserv masse) 64 64 real :: betamax !< (Pa) frottement maxi sous les streams 65 real :: pvimin !< valeur de pvi pour les noeuds fictifs66 65 67 66 … … 77 76 78 77 integer,dimension(nx,ny) :: FRONT !< point d'un shelf situe sur le front 79 integer,dimension(nx,ny) :: FRONTFACEX!< type de front sur les faces x80 integer,dimension(nx,ny) :: FRONTFACEY!< type de front sur les faces y81 78 integer,dimension(nx,ny) :: gr_line_schoof ! points ou on impose le flux de schoof (pour sorties) 82 79 integer,dimension(nx,ny) :: gr_line !< points grounding line pour les sorties … … 88 85 integer,dimension(nx,ny) :: Mk_init !< initial mask (with islands, outcrops, ... 89 86 integer,dimension(nx,ny) :: MK !< masks (ice sheet, max, above water, below water, 1) 90 integer,dimension(nx,ny) :: MNEG !< masks (ice sheet, max, above water, below water, 1)91 87 integer,dimension(nx,ny) :: IBASE !< type de base (froide, temperee) 92 88 … … 95 91 real,dimension(nx,ny) :: ABLBORD !< Ablation dans les zones non englacees 96 92 real,dimension(nx,ny) :: ablbord_dtt !< Ablation sur le bord de la calotte (flux de glace inférieur à ablation sur le bord) sur dtt 97 real,dimension(nx,ny) :: ACQUA !< Surface des surfaces en eau98 93 double precision,dimension(nx,ny) :: B !< Altitude de la base de la glace 'o' 99 94 real,dimension(nx,ny) :: BDOT !< derivee de B / t 100 real,dimension(nx,ny) :: B1 !<101 95 double precision,dimension(nx,ny) :: BSOC0 !< ice free bedrock 102 real,dimension(nx,ny) :: betamx !< coefficient beta du frottement basal 103 ! betamx=cf*neffmx et tobmx=betamx*uxbar 104 real,dimension(nx,ny) :: betamy !< coefficient beta du frottement basal 105 ! betamy=cf*neffmy et tobmy=betamy*uybar 106 !hassine 96 real,dimension(nx,ny) :: betamx !< coefficient beta du frottement basal, betamx=cf*neffmx et tobmx=betamx*uxbar 97 real,dimension(nx,ny) :: betamy !< coefficient beta du frottement basal, betamy=cf*neffmy et tobmy=betamy*uybar 107 98 real, dimension(nx,ny) :: beta_centre !< beta on major node (average) 108 99 real, dimension(nx,ny) :: betamax_2d !< (Pa) frottement maxi sous les streams … … 116 107 real,dimension(nx,ny) :: CALV !< calving 117 108 118 !real,dimension(:,:,:),allocatable :: DDX ! pour le calcul de UX119 !real,dimension(:,:,:),allocatable :: DDY ! pour le calcul de UY120 109 real,dimension(nx,ny) :: DDBX !< UBX/(-SDX) '>' 121 110 real,dimension(nx,ny) :: DDBY !< UBY/(-SDY) '^' … … 123 112 real,dimension(nx,ny) :: Diffmy !< partie diffusive en y 124 113 125 !REAL,dimension(nx,ny) :: DPHIX !< ROG*HMX**2 '>'126 !REAL,dimension(nx,ny) :: DPHIY !< ROG*HMY**2 '^'127 114 real,dimension(nx,ny) :: DHDT !< derive lagrangienne de l'epaisseur 'o' 128 real,dimension(nx,ny) :: DIF1 !< UZR(I,J,1)-BM(I,J)129 real,dimension(nx,ny) :: DIF2 !< UZR(I,J,1)-BMELT(I,J)130 real,dimension(nx,ny) :: DIFT !< pour sorties eismint131 real,dimension(nx,ny) :: DIVU !< divergence de UH132 ! real,dimension(nx,ny) :: DISTCENT !133 real,dimension(nx,ny) :: ELA !< Equilibrium line altitude, for mass balance134 115 real,dimension(nx,ny) :: epsxx !< vitesse de deformation selon x 135 116 real,dimension(nx,ny) :: epsyy !< vitesse de deformation selon y … … 141 122 real,dimension(nx,ny) :: FROTMY !< 142 123 real,dimension(nx,ny) :: GHF !< geothermal heat flux J/m2/a 'o' 143 real,dimension(nx,ny) :: GHF0 !< geothermal heat flux J/m2/a 'o'144 124 double precision,dimension(nx,ny) :: H !< ice thickness 'o' 145 125 double precision,dimension(nx,ny) :: H0 !< initial ice thickness, must be initialized before init_iso … … 148 128 real,dimension(nx,ny) :: Hp !< H value if prescribed 149 129 real,dimension(nx,ny) :: Hp0 !< H value if prescribed (reference value) 150 ! real,dimension(nx,ny) :: Delta_H !< Delta_H value if prescribed151 ! integer,dimension(nx,ny) :: i_delta_H !< 1 if Delta_H is prescribed on this node, else 0152 130 integer,dimension(nx,ny) :: i_Hp !< 1 if H is prescribed on this node, else 0 153 131 integer,dimension(nx,ny) :: i_Hp0 !< i_hp mask reference value does not change with time 154 132 integer, dimension(nx,ny) :: imx_diag !< masque pour eq elliptique 155 133 integer, dimension(nx,ny) :: imy_diag !< masque pour eq elliptique 156 integer,dimension(nx,ny) :: MK_gl0 !< mask grounding line initial157 integer,dimension(nx,ny) :: MK_flot0 !< mask float initial158 159 134 160 135 double precision,dimension(nx,ny) :: HDOT !< ice thickness derivee / t 161 136 real,dimension(nx,ny) :: HDOTWATER 162 real,dimension(nx,ny) :: H1 !<163 137 real,dimension(nx,ny) :: HMX !< ice thickness moy selon x '>' 164 138 real,dimension(nx,ny) :: HMY !< ice thickness moy selon y '^' 165 real,dimension(nx,ny) :: HDOTPREC !< 166 real,dimension(nx,ny) :: HDOTRAP !< 167 168 real,dimension(nx,ny) :: KOND !< basale hydro. conductivity 'o' 169 real,dimension(nx,ny) :: PDD !< Positive degree day 170 real,dimension(nx,ny) :: PRECIP !< precipitation 171 real,dimension(nx,ny) :: PRECIP0 !< initial precipitation (used in 'heminord') 139 172 140 real,dimension(nx,ny) :: PHID !< flux de chaleur lie a la deformation et glissement basal 173 real,dimension(nx,ny) :: PWATER !< basal water pressure174 real,dimension(nx,ny) :: pgx,pgy !< hydro. potential gradient / x '>' and / y '^'175 real,dimension(nx,ny) :: phiWx,phiWy !< flux d'eau sous glaciaire / x '>' and / y '^'176 141 real,dimension(nx,ny) :: NEFFMX !< pression effective '>' 177 142 real,dimension(nx,ny) :: NEFFMY !< pression effective '^' 178 143 real,dimension(nx,ny) :: TOBMX !< cisaillement basal '>' 179 144 real,dimension(nx,ny) :: TOBMY !< cisaillement basal '^' 180 real,dimension(nx,ny) :: SW !< for bedrock isostasy181 145 double precision,dimension(nx,ny) :: S !< altitude of ice sheet surface 182 146 real,dimension(nx,ny) :: sealevel_2d !< local sea surface elevation … … 184 148 real,dimension(nx,ny) :: SDX !< slope derivee / x '>' 185 149 real,dimension(nx,ny) :: SDY !< slope derivee / y '^' 186 real,dimension(nx,ny) :: SDXMY !< slope selon x moy selon y '^' remplace SDMX187 real,dimension(nx,ny) :: SDYMX !< slope selon y moy selon x '>' remplace SDMY188 150 real,dimension(nx,ny) :: SLOPE2mx !< = Sdx**2 + Sdymx**2 '>' 189 151 real,dimension(nx,ny) :: SLOPE2my !< = Sdy**2 + Sdxmy**2 '^' … … 193 155 real,dimension(nx,ny) :: TANN !< Ground air temperature annual 194 156 real,dimension(nx,ny,12) :: Tmois !< Ground air temperature monthly 195 real,dimension(nx,ny) :: TSHELF !< temperature des shelfs pour viscosite196 real,dimension(nx,ny) :: TJ0 !< initial air temperature at sea level July197 ! real,dimension(nx,ny) :: TA0 !< initial air temperature at sea level annual198 157 real,dimension(nx,ny) :: TAUB !< basal shear stress (for output) 199 158 real,dimension(nx,ny) :: TAUSHELF !< effective stress in ice shelves (vertical av.) 200 159 real,dimension(nx,ny) :: TS !< surface ice temperature 'o' 201 160 real,dimension(nx,ny) :: TB !< basal ice temperature 'o' 202 real,dimension(nx,ny) :: TG !< degrees above melting point at the base203 161 real,dimension(nx,ny) :: TBDOT !< variation in time of basal temperature 204 162 real,dimension(nx,ny) :: UZK !< vertical velocity at the ice surface (kinematic boundary) … … 212 170 real,dimension(nx,ny) :: UBY !< basal sliding '^' 213 171 real,dimension(nx,ny) :: UZSDOT !< variation in time of surface vertical velocity 214 real,dimension(nx,ny) :: UX1 !<215 real,dimension(nx,ny) :: UY1 !<216 real,dimension(nx,ny) :: VBAR !< depth averaged velocity magnitude (for output)217 !!!!!!!real,dimension(nx,ny) :: VSDOT ! variation in time of surface velocity magnitude218 real,dimension(nx,ny) :: W0 !< enfoncement du socle a l'equilibre isostatique219 real,dimension(nx,ny) :: W1 !< enfoncement du socle courant220 172 real,dimension(nx,ny) :: XLONG !< longitude 221 173 real,dimension(nx,ny) :: YLAT !< latitude 222 174 real,dimension(nx,ny) :: xcc ! grille Xkm 223 175 real,dimension(nx,ny) :: ycc ! grille Ykm 224 ! real,dimension(nx,ny) :: ZS !< surface topography above sea level225 real,dimension(nx,ny) :: ETABAR !<226 176 real,dimension(nx,ny) :: BSOC !< altitude (ou bathymetrie) du socle 'o' 227 177 real,dimension(nx,ny) :: PVI !< viscosite ice shelf 228 178 real,dimension(nx,ny) :: PVM !< viscosite ice shelf 229 real,dimension(nx,ny) :: ramollo !< pour ramollir les ice shelves230 179 real,dimension(nx,ny) :: Abar !< coefficient de Glen integre 231 real,dimension(nx,ny) :: Uiter_centre !< pour iterations equation diagnostique232 real,dimension(nx,ny) :: tabtest !< tableau de travail233 180 234 181 … … 241 188 integer,dimension(nx,ny) :: mstream_my !< masque stream selon y 242 189 integer,dimension(nx,ny) :: mstream !< masque stream sur les noeuds majeurs 243 real,dimension(nx,ny) :: socle_cry !< courbure du socle, negatif -> vallees244 190 real,dimension(nx,ny) :: drag_mx !< coefficient pour tenir compte de variations 245 191 real,dimension(nx,ny) :: drag_my !< geographiques eventuelles dans le basal drag 246 192 247 integer,dimension(nx,ny) :: mslid_mx !< masque glissement selon x248 integer,dimension(nx,ny) :: mslid_my !< masque glissement selon y249 real,dimension(nx,ny) :: slid_mx !< coefficient pour tenir compte de variations250 real,dimension(nx,ny) :: slid_my !< geographiques eventuelles dans le glissement251 252 253 254 !REAL,dimension(-NL:NL,-NL:NL) :: WE ! enfoncement du socle autour d'une charge unitaire255 256 257 258 193 ! ********** common des tableaux a 3 dimensions ***** 259 !real,dimension(:,:,:,:),allocatable :: BTT !< deformation parameter for flow law 260 261 !real,dimension(:,:,:,:),allocatable :: SA ! effet temperature sur la deformation (loi n=3) 262 !real,dimension(:,:,:,:),allocatable :: S2A ! effet integre sur l'epaisseur temperature sur la deformation (loi n=3) 263 !real,dimension(:,:,:,:),allocatable :: SA_mx ! effet temperature sur la deformation (loi n=3) 264 !real,dimension(:,:,:,:),allocatable :: S2A_mx ! effet integre sur l'epaisseur temperature sur la deformation (loi n=3) 265 266 !real,dimension(:,:,:,:),allocatable :: SA_my ! effet temperature sur la deformation (loi n=3) 267 !real,dimension(:,:,:,:),allocatable :: S2A_my ! effet integre sur l'epaisseur temperature sur la deformation (loi n=3) 194 268 195 real,dimension(nx,ny,nz) :: SUX !< 269 196 real,dimension(nx,ny,nz) :: SUY !< … … 299 226 ! ===================== Booleens ======================================== 300 227 logical :: SHELFY !< 301 logical :: BOOST !<302 228 logical :: MARINE !< 303 logical :: appel_new_flot !< pour appeler la routine new_flot304 229 305 230 logical,dimension(nx,ny) :: FLOT !< vrai si flottant (test d'archimede) 'o' … … 308 233 logical,dimension(nx,ny) :: FRONT_RESC!< comme front (mais boolean) pour remplimat rescue 309 234 logical,dimension(nx,ny) :: FBM !< 310 logical,dimension(nx,ny) :: OKUMAT !<311 logical,dimension(nx,ny) :: OKVMAT !<312 logical,dimension(nx,ny) :: GRZONE !<313 235 logical,dimension(nx,ny) :: GZMX !< point stream ">" 314 236 logical,dimension(nx,ny) :: GZMY !< point stream "^" … … 317 239 logical,dimension(nx,ny) :: ILEMX !< points ile ">" 318 240 logical,dimension(nx,ny) :: ILEMY !< points ile "^" 319 logical,dimension(nx,ny) :: cotemx !< points cotiers ">"320 logical,dimension(nx,ny) :: cotemy !< points cotiers "^"321 241 logical,dimension(nx,ny) :: fleuvemx !< actual grounded stream 322 242 logical,dimension(nx,ny) :: fleuvemy !< actual grounded stream 323 logical,dimension(nx,ny) :: isolx !< designe un point sans voisin sur ses faces x324 logical,dimension(nx,ny) :: isoly !< designe un point sans voisin sur ses faces y325 logical,dimension(nx,ny) :: new_flot_point !< pour signaler les points qui se mettent a flotter entre 2 pas de temps dtt326 logical,dimension(nx,ny) :: new_flotmx !< pour signaler les points qui deviennent flottantmx entre 2 dtt327 logical,dimension(nx,ny) :: new_flotmy !< pour signaler les points qui deviennent flottantmy entre 2 dtt328 243 logical,dimension(nx,ny) :: flot_marais !< afq -- vrai si flottant et coince entre points poses 'o' 329 244 logical,dimension(nx,ny) :: iceberg !< point iceberg … … 359 274 integer :: num_file4 = 995 !< Id of 360 275 integer :: num_coor = 2004 !< Id of coord-Ant-40km 361 ! integer :: num_tracebug !< numero de l'unite itracebug362 276 363 277 ! Variables communes au main et aux subroutines du step 364 logical :: base_froide365 logical :: base_temp366 278 real :: timemax 367 279
Note: See TracChangeset
for help on using the changeset viewer.