| 1 | |
|---|
| 2 | ! $Header$ |
|---|
| 3 | |
|---|
| 4 | SUBROUTINE printflag(tabcntr0, radpas, ok_journe, ok_instan, ok_region) |
|---|
| 5 | ! Auteur : P. Le Van |
|---|
| 6 | |
|---|
| 7 | USE lmdz_clesphys |
|---|
| 8 | |
|---|
| 9 | IMPLICIT NONE |
|---|
| 10 | |
|---|
| 11 | REAL tabcntr0(100) |
|---|
| 12 | LOGICAL cycle_diurn0, soil_model0, new_oliq0, ok_orodr0 |
|---|
| 13 | LOGICAL ok_orolf0, ok_limitvr0 |
|---|
| 14 | LOGICAL ok_journe, ok_instan, ok_region |
|---|
| 15 | INTEGER radpas, radpas0 |
|---|
| 16 | |
|---|
| 17 | PRINT 100 |
|---|
| 18 | PRINT *, ' ******************************************************* & |
|---|
| 19 | |
|---|
| 20 | ************' |
|---|
| 21 | PRINT *, ' ******** Choix des principales cles de la physique & |
|---|
| 22 | |
|---|
| 23 | *********' |
|---|
| 24 | PRINT *, ' ******************************************************* & |
|---|
| 25 | |
|---|
| 26 | ************' |
|---|
| 27 | PRINT 100 |
|---|
| 28 | PRINT 10, iflag_cycle_diurne>=1, soil_model |
|---|
| 29 | PRINT 100 |
|---|
| 30 | |
|---|
| 31 | IF (iflag_con==1) THEN |
|---|
| 32 | PRINT *, ' ***** Shema convection LMD & |
|---|
| 33 | |
|---|
| 34 | ******' |
|---|
| 35 | ELSE IF (iflag_con==2) THEN |
|---|
| 36 | PRINT *, ' ***** Shema convection Tiedtke & |
|---|
| 37 | |
|---|
| 38 | ******' |
|---|
| 39 | ELSE IF (iflag_con>=3) THEN |
|---|
| 40 | PRINT *, ' ***** Shema convection Emanuel & |
|---|
| 41 | |
|---|
| 42 | ******' |
|---|
| 43 | END IF |
|---|
| 44 | PRINT 100 |
|---|
| 45 | |
|---|
| 46 | PRINT 11, new_oliq, ok_orodr, ok_orolf |
|---|
| 47 | PRINT 100 |
|---|
| 48 | |
|---|
| 49 | PRINT 7, ok_limitvrai |
|---|
| 50 | PRINT 100 |
|---|
| 51 | |
|---|
| 52 | PRINT 12, nbapp_rad |
|---|
| 53 | PRINT 100 |
|---|
| 54 | |
|---|
| 55 | PRINT 8, radpas |
|---|
| 56 | PRINT 100 |
|---|
| 57 | |
|---|
| 58 | PRINT 4, ok_journe, ok_instan, ok_region |
|---|
| 59 | PRINT 100 |
|---|
| 60 | PRINT 100 |
|---|
| 61 | |
|---|
| 62 | |
|---|
| 63 | cycle_diurn0 = .FALSE. |
|---|
| 64 | soil_model0 = .FALSE. |
|---|
| 65 | new_oliq0 = .FALSE. |
|---|
| 66 | ok_orodr0 = .FALSE. |
|---|
| 67 | ok_orolf0 = .FALSE. |
|---|
| 68 | ok_limitvr0 = .FALSE. |
|---|
| 69 | |
|---|
| 70 | IF (tabcntr0(7)==1.) cycle_diurn0 = .TRUE. |
|---|
| 71 | IF (tabcntr0(8)==1.) soil_model0 = .TRUE. |
|---|
| 72 | IF (tabcntr0(9)==1.) new_oliq0 = .TRUE. |
|---|
| 73 | IF (tabcntr0(10)==1.) ok_orodr0 = .TRUE. |
|---|
| 74 | IF (tabcntr0(11)==1.) ok_orolf0 = .TRUE. |
|---|
| 75 | IF (tabcntr0(12)==1.) ok_limitvr0 = .TRUE. |
|---|
| 76 | |
|---|
| 77 | PRINT *, ' $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ & |
|---|
| 78 | |
|---|
| 79 | $$$$$$$$$$$$$' |
|---|
| 80 | PRINT 100 |
|---|
| 81 | |
|---|
| 82 | IF (int(tabcntr0(5))/=iflag_con) THEN |
|---|
| 83 | PRINT 20, int(tabcntr0(5)), iflag_con |
|---|
| 84 | PRINT 100 |
|---|
| 85 | END IF |
|---|
| 86 | |
|---|
| 87 | IF (int(tabcntr0(6))/=nbapp_rad) THEN |
|---|
| 88 | PRINT 21, int(tabcntr0(6)), nbapp_rad |
|---|
| 89 | ! radpas0 = NINT( 86400./tabcntr0(1)/INT( tabcntr0(6) ) ) |
|---|
| 90 | PRINT 100 |
|---|
| 91 | ! PRINT 22, radpas0, radpas |
|---|
| 92 | PRINT 100 |
|---|
| 93 | END IF |
|---|
| 94 | |
|---|
| 95 | IF (cycle_diurn0 .AND. .NOT. (iflag_cycle_diurne>=1) .OR. .NOT. cycle_diurn0 .AND. & |
|---|
| 96 | (iflag_cycle_diurne>=1) ) THEN |
|---|
| 97 | PRINT 13, cycle_diurn0, iflag_cycle_diurne |
|---|
| 98 | PRINT 100 |
|---|
| 99 | END IF |
|---|
| 100 | |
|---|
| 101 | IF (soil_model0 .AND. .NOT. soil_model .OR. .NOT. soil_model0 .AND. & |
|---|
| 102 | soil_model) THEN |
|---|
| 103 | PRINT 14, soil_model0, soil_model |
|---|
| 104 | PRINT 100 |
|---|
| 105 | END IF |
|---|
| 106 | |
|---|
| 107 | IF (new_oliq0 .AND. .NOT. new_oliq .OR. .NOT. new_oliq0 .AND. new_oliq) & |
|---|
| 108 | THEN |
|---|
| 109 | PRINT 16, new_oliq0, new_oliq |
|---|
| 110 | PRINT 100 |
|---|
| 111 | END IF |
|---|
| 112 | |
|---|
| 113 | IF (ok_orodr0 .AND. .NOT. ok_orodr .OR. .NOT. ok_orodr0 .AND. ok_orodr) & |
|---|
| 114 | THEN |
|---|
| 115 | PRINT 15, ok_orodr0, ok_orodr |
|---|
| 116 | PRINT 100 |
|---|
| 117 | END IF |
|---|
| 118 | |
|---|
| 119 | IF (ok_orolf0 .AND. .NOT. ok_orolf .OR. .NOT. ok_orolf0 .AND. ok_orolf) & |
|---|
| 120 | THEN |
|---|
| 121 | PRINT 17, ok_orolf0, ok_orolf |
|---|
| 122 | PRINT 100 |
|---|
| 123 | END IF |
|---|
| 124 | |
|---|
| 125 | IF (ok_limitvr0 .AND. .NOT. ok_limitvrai .OR. .NOT. ok_limitvr0 .AND. & |
|---|
| 126 | ok_limitvrai) THEN |
|---|
| 127 | PRINT 18, ok_limitvr0, ok_limitvrai |
|---|
| 128 | PRINT 100 |
|---|
| 129 | END IF |
|---|
| 130 | |
|---|
| 131 | PRINT 100 |
|---|
| 132 | PRINT *, ' ******************************************************* & |
|---|
| 133 | |
|---|
| 134 | ************' |
|---|
| 135 | PRINT 100 |
|---|
| 136 | |
|---|
| 137 | 4 FORMAT (2X, 5('*'), ' ok_journe= ', L3, 3X, ',ok_instan = ', L3, 3X, & |
|---|
| 138 | ',ok_region = ', L3, 3X, 5('*')) |
|---|
| 139 | |
|---|
| 140 | 7 FORMAT (2X, 5('*'), 15X, ' ok_limitvrai = ', L3, 16X, 5('*')) |
|---|
| 141 | |
|---|
| 142 | 8 FORMAT (2X, '***** radpas = ', I4, 6X, & |
|---|
| 143 | ' *****') |
|---|
| 144 | |
|---|
| 145 | 10 FORMAT (2X, 5('*'), ' Cycle_diurne = ', L3, 4X, ', Soil_model = ', L3, & |
|---|
| 146 | 12X, 6('*')) |
|---|
| 147 | |
|---|
| 148 | |
|---|
| 149 | 11 FORMAT (2X, 5('*'), ' new_oliq = ', L3, 3X, ', Ok_orodr = ', L3, 3X, & |
|---|
| 150 | ', Ok_orolf = ', L3, 3X, 5('*')) |
|---|
| 151 | |
|---|
| 152 | |
|---|
| 153 | 12 FORMAT (2X, '***** Nb d appels /jour des routines de rayonn. = ', I4, 6X, & |
|---|
| 154 | ' *****') |
|---|
| 155 | |
|---|
| 156 | 13 FORMAT (2X, '$$$$$$$$ Attention !! cycle_diurne different sur', /1X, & |
|---|
| 157 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 158 | |
|---|
| 159 | 14 FORMAT (2X, '$$$$$$$$ Attention !! soil_model different sur', /1X, & |
|---|
| 160 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 161 | |
|---|
| 162 | 15 FORMAT (2X, '$$$$$$$$ Attention !! ok_orodr different sur', /1X, & |
|---|
| 163 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 164 | |
|---|
| 165 | 16 FORMAT (2X, '$$$$$$$$ Attention !! new_oliq different sur', /1X, & |
|---|
| 166 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 167 | |
|---|
| 168 | 17 FORMAT (2X, '$$$$$$$$ Attention !! ok_orolf different sur', /1X, & |
|---|
| 169 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 170 | |
|---|
| 171 | 18 FORMAT (2X, '$$$$$$$$ Attention !! ok_limitvrai different sur', /1X, & |
|---|
| 172 | 10X, ' startphy = ', L3, 2X, ' et run.def = ', L3) |
|---|
| 173 | |
|---|
| 174 | 20 FORMAT (/2X, '$$$$$$$$ Attention !! iflag_con different sur', /1X, & |
|---|
| 175 | 10X, ' startphy = ', I3, 2X, ' et run.def = ', I3) |
|---|
| 176 | |
|---|
| 177 | 21 FORMAT (2X, '$$$$$$$$ Attention !! nbapp_rad different sur', /1X, & |
|---|
| 178 | 10X, ' startphy = ', I3, 2X, ' et run.def = ', I3) |
|---|
| 179 | |
|---|
| 180 | 22 FORMAT (2X, '$$$$$$$$ Attention !! radpas different sur', /1X, & |
|---|
| 181 | 10X, ' startphy = ', I3, 2X, ' et run.def = ', I3) |
|---|
| 182 | |
|---|
| 183 | 100 FORMAT (/) |
|---|
| 184 | |
|---|
| 185 | |
|---|
| 186 | END SUBROUTINE printflag |
|---|