1 | !> \file no_lakes.f90 |
---|
2 | !! This module is to choosen when no spinup is needed |
---|
3 | !< |
---|
4 | |
---|
5 | !> \namespace no_lakes |
---|
6 | !! This module is to choosen when no spinup is needed |
---|
7 | !! \author ... |
---|
8 | !! \date ... |
---|
9 | !! @note used modules |
---|
10 | !! @note - use module3D_phy |
---|
11 | !< |
---|
12 | |
---|
13 | |
---|
14 | module no_spinup |
---|
15 | |
---|
16 | |
---|
17 | contains |
---|
18 | !------------------------------------------------------------------------------------- |
---|
19 | !> SUBROUTINE: init_spinup |
---|
20 | !! Routine permettant d'initialiser les spinup |
---|
21 | !> |
---|
22 | subroutine init_spinup |
---|
23 | |
---|
24 | use module3d_phy |
---|
25 | implicit none |
---|
26 | |
---|
27 | namelist/spinup/ispinup |
---|
28 | |
---|
29 | ! put here which type of spinup |
---|
30 | ! ispinup = 0 ! run standard |
---|
31 | ! ispinup = 1 ! ispinup = 1 -> saute icethick3, diagnoshelf, |
---|
32 | ! diffusiv, isostasie pour equilibre temperature |
---|
33 | ! en prenant les vitesses calculees aux premiers |
---|
34 | ! pas de temps |
---|
35 | ! ispinup = 2 ! ispinup = 2 -> fait la conservation |
---|
36 | ! ! de la masse avec les vitesses de bilan |
---|
37 | ! ispinup = 3 ! fait le calcul des temperatures |
---|
38 | ! ! avec les vitesses de bilan |
---|
39 | |
---|
40 | |
---|
41 | |
---|
42 | ! lecture des parametres |
---|
43 | |
---|
44 | rewind(num_param) ! pour revenir au debut du fichier param_list.dat |
---|
45 | read(num_param,spinup) |
---|
46 | |
---|
47 | write(num_rep_42,*)'!___________________________________________________________' |
---|
48 | write(num_rep_42,*)'! spinup module no_spinup ' |
---|
49 | write(num_rep_42,spinup) ! pour ecrire les parametres lus |
---|
50 | write(num_rep_42,*) |
---|
51 | write(num_rep_42,*) |
---|
52 | write(num_rep_42,*)'! ispinup = 0 run standard' |
---|
53 | write(num_rep_42,*)'! ispinup = 1 equilibre temperature avec vitesses grisli ' |
---|
54 | write(num_rep_42,*)'! ispinup = 2 conservation de la masse avec vitesses bilan ' |
---|
55 | write(num_rep_42,*)'! ispinup = 3 equilibre temperature avec vitesses bilan' |
---|
56 | write(num_rep_42,*) |
---|
57 | |
---|
58 | |
---|
59 | if (ispinup.ge.2) then |
---|
60 | write(6,*)' ispinup > 1 must be called with module spinu_vitbil ' |
---|
61 | write(6,*) 'and dragging modules must be removed (see module_choix)' |
---|
62 | stop |
---|
63 | endif |
---|
64 | |
---|
65 | |
---|
66 | if (itracebug.eq.1) call tracebug(' fin routine init_spinup de no_spinup') |
---|
67 | |
---|
68 | end subroutine init_spinup |
---|
69 | !------------------------------------------------------------------------------------- |
---|
70 | subroutine force_balance_vel |
---|
71 | |
---|
72 | if (itracebug.eq.1) call tracebug(' Subroutine force_balance_vel dans no_spinup') |
---|
73 | |
---|
74 | end subroutine force_balance_vel |
---|
75 | !------------------------------------------------------------------------------------- |
---|
76 | subroutine limit_coef_vitbil |
---|
77 | |
---|
78 | if (itracebug.eq.1) call tracebug(' Subroutine limit_coef_vitbil dans no_spinup') |
---|
79 | |
---|
80 | end subroutine limit_coef_vitbil |
---|
81 | !------------------------------------------------------------------------------------- |
---|
82 | subroutine calc_coef_vitbil |
---|
83 | |
---|
84 | if (itracebug.eq.1) call tracebug(' Subroutine limit_coef_vitbil dans no_spinup') |
---|
85 | |
---|
86 | end subroutine calc_coef_vitbil |
---|
87 | !------------------------------------------------------------------------------------- |
---|
88 | |
---|
89 | |
---|
90 | end module no_spinup |
---|