source: trunk/SOURCES/Ant15_CISM_files/lect-Ant_clim_CISM_15_dat.f90 @ 23

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

initial import GRISLI trunk

File size: 2.0 KB
Line 
1!> \file lect-Ant_clim_CISM_15_dat.f90
2!!Module pour la lecture du climat
3!<
4
5!> \namespace lect_clim_act_ant_15
6!! Module pour la lecture du climat
7!! \author ...
8!! \date ...
9!! @note Used module
10!! @note   - use module3D_phy
11!! @note   - use ablation_ann
12!<
13module lect_clim_act_ant_15
14
15  use module3D_phy
16  use ablation_ann                     ! le module pdd base sur Tann et Tjuly
17  use interface_input
18  character(len=100) :: precip_file      !< precipitations
19
20contains
21
22  subroutine input_climat_ref()
23
24    namelist/climat_CISM_15/precip_file
25
26428 format(A)
27    rewind(num_param)                     ! pour revenir au debut du fichier param_list.dat
28    read(num_param,climat_CISM_15)
29
30    write(num_rep_42,428)'!___________________________________________________________' 
31    write(num_rep_42,428)'!  module  lect_topo_ant_CISM      '
32    write(num_rep_42,climat_CISM_15)
33    write(num_rep_42,428)'!___________________________________________________________' 
34
35
36    precip_file  = trim(dirnameinp)//trim(precip_file)
37
38
39    call lect_input(3,'precip',1,precip,precip_file,trim(dirnameinp)//trim(runname)//'.nc') 
40    !call lect_datfile(nx,ny,precip,1,precip_file)                  ! precipitation
41
42    precip(:,:)=precip(:,:)/0.91
43    acc(:,:)=precip(:,:)
44
45
46    !    temperature en surface :
47    !    parametrisation de Fortuin pour la temperature annuelle.
48    do j=1,ny
49       do i=1,nx
50
51          if (s0(i,j).le.200.) then   ! shelfs
52             tann(i,j)=49.642-0.943*abs(ylat(i,j))
53          else if ((s0(i,j).gt.200.).and.(s0(i,j).lt.1500.)) then ! pente
54             tann(i,j)=36.689-0.005102*s0(i,j)-0.725*abs(ylat(i,j))
55          else if (s0(i,j).ge.1500.) then        ! plateau
56             tann(i,j)=7.405-0.014285*s0(i,j)-0.180*abs(ylat(i,j))
57          endif
58
59          ta0(i,j)=tann(i,j)
60
61          !           pour la temperature d'ete, idem parametrisation huybrechts
62          tjuly(i,j)=tann(i,j)-17.65+0.00222*s0(i,j)&
63               +0.40802*abs(ylat(i,j))
64       end do
65    end do
66
67  end subroutine input_climat_ref
68
69end module  lect_clim_act_ant_15
Note: See TracBrowser for help on using the repository browser.