Oasis3 4.0.2
|
00001 SUBROUTINE dealloc 00002 ! 00003 !**** DEALLOC 00004 ! 00005 ! Purpose: 00006 ! Deallocate arrays defined in the modules 00007 ! 00008 ! Interface: 00009 ! none 00010 ! 00011 ! Method: 00012 ! Deallocation of arrays allocated in "inialloc". 00013 ! 00014 ! External: 00015 ! none 00016 ! 00017 ! Files: 00018 ! none 00019 ! 00020 ! References: 00021 ! 00022 ! History: 00023 ! -------- 00024 ! Version Programmer Date Description 00025 ! ----------------------------------------------------- 00026 ! 2.5 A.Caubel 2002/03/18 created 00027 ! 3.3 S. Mocavero(CMCC) 2002/03/18 Added deallocation 00028 ! of remapping weights 00029 ! 00030 !*----------------------------------------------------------------------- 00031 ! 00032 !** + DECLARATIONS 00033 ! 00034 !** ++ Use of modules 00035 ! 00036 USE mod_unit 00037 USE mod_parameter 00038 USE mod_printing 00039 ! 00040 !*----------------------------------------------------------------------- 00041 IF (nlogprt .GE. 2) THEN 00042 WRITE (UNIT = nulou,FMT = *) ' ' 00043 WRITE (UNIT = nulou,FMT = *) '**** * Entering ROUTINE dealloc' 00044 WRITE (UNIT = nulou,FMT = *) '*******************************' 00045 WRITE (UNIT = nulou,FMT = *) ' ' 00046 call flush(nulou) 00047 ENDIF 00048 ! 00049 IF (lg_oasis_field) THEN 00050 ! 00051 !** + Module anais 00052 ! 00053 CALL dealloc_anais 00054 ! 00055 !** + Module analysis 00056 ! 00057 CALL dealloc_analysis 00058 ! 00059 !** + Module coast 00060 ! 00061 CALL dealloc_coast 00062 ! 00063 !** + Module extrapol 00064 ! 00065 CALL dealloc_extrapol 00066 ! 00067 !* CMCC - deallocation of variables introduced 00068 ! for the use of remapping weights arrays 00069 !** + Module scrip 00070 ! 00071 CALL dealloc_scrip 00072 ! 00073 !** + Module memory 00074 ! 00075 CALL dealloc_memory 00076 ! 00077 !** + Module nproc 00078 ! 00079 CALL dealloc_nproc 00080 ! 00081 !** + Module parallel 00082 ! 00083 CALL dealloc_parallel 00084 ! 00085 !** + Module pipe 00086 ! 00087 #ifdef use_comm_PIPE 00088 CALL dealloc_pipe 00089 #endif 00090 ! 00091 !** + Module rainbow 00092 ! 00093 CALL dealloc_rainbow 00094 ! 00095 !** + Module sipc 00096 ! 00097 #ifdef use_comm_SIPC 00098 CALL dealloc_sipc 00099 #endif 00100 ! 00101 !** + Module mod_gsip 00102 ! 00103 #ifdef use_comm_GSIP 00104 CALL dealloc_gsip 00105 #endif 00106 ! 00107 !** + Module timestep 00108 ! 00109 CALL dealloc_timestep 00110 ! 00111 !** + Module unitncdf 00112 ! 00113 CALL dealloc_unitncdf 00114 00115 ENDIF 00116 ! 00117 !** + Module experiment 00118 ! 00119 CALL dealloc_experiment 00120 ! 00121 !** + Module string 00122 ! 00123 CALL dealloc_string 00124 ! 00125 IF (nlogprt .GE. 2) THEN 00126 WRITE (UNIT = nulou,FMT = *) ' ' 00127 WRITE (UNIT = nulou,FMT = *) '******* Leaving ROUTINE dealloc' 00128 WRITE (UNIT = nulou,FMT = *) '*******************************' 00129 WRITE (UNIT = nulou,FMT = *) ' ' 00130 call flush(nulou) 00131 ENDIF 00132 !*------------------------------------------------------------------------ 00133 ! 00134 END SUBROUTINE dealloc 00135 ! 00136 !*========================================================================