*IF DEF,CONTROL INITMOS1.2
*IF DEF,ATMOS GSH1F403.21
C ******************************COPYRIGHT****************************** GTS2F400.4807
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.4808
C GTS2F400.4809
C Use, duplication or disclosure of this code is subject to the GTS2F400.4810
C restrictions as set forth in the contract. GTS2F400.4811
C GTS2F400.4812
C Meteorological Office GTS2F400.4813
C London Road GTS2F400.4814
C BRACKNELL GTS2F400.4815
C Berkshire UK GTS2F400.4816
C RG12 2SZ GTS2F400.4817
C GTS2F400.4818
C If no contract has been raised with this copy of the code, the use, GTS2F400.4819
C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.4820
C to do so must first be obtained in writing from the Head of Numerical GTS2F400.4821
C Modelling at the above address. GTS2F400.4822
C ******************************COPYRIGHT****************************** GTS2F400.4823
C GTS2F400.4824
CLL Subroutine INITMOS ------------------------------------------------ INITMOS1.4
CLL INITMOS1.5
CLL Purpose: Control routine for initialisation of MOS grid information. INITMOS1.6
CLL Called from model initialisation routine INITIAL. INITMOS1.7
CLL INITMOS1.8
CLL Version 1 Author: T.Johns INITMOS1.9
CLL INITMOS1.10
CLL Model Modification history from model version 3.0: INITMOS1.11
CLL version date INITMOS1.12
CLL 3.2 13/07/93 Changed CHARACTER*(*) to CHARACTER*(80) for TS150793.90
CLL portability. Author Tracey Smith. TS150793.91
CLL 3.2 13/04/93 Dynamic allocation of main arrays. R T H Barnes. @DYALLOC.2041
! 4.2 10/01/97 For MPP runs, skip call to MOSGRID and initialise GDR1F402.1
! MOS_OUTPUT_LENGTH. Problem to be addressed at 4.3. GDR1F402.2
! D.Robinson GDR1F402.3
!LL 4.3 25/02/97 Modset GDR1F402 removed, MPP MOS code now operative GPB0F403.17
!LL Supply global sizes to MOS_GRID P.Burton GPB0F403.18
CLL INITMOS1.13
CLL Programming standard : UM Doc Paper no 3 INITMOS1.14
CLL INITMOS1.15
CLL Logical components covered : C4 INITMOS1.16
CLL INITMOS1.17
CLL Project task : C4 INITMOS1.18
CLL INITMOS1.19
CLL External documentation : UMDP no C4 INITMOS1.20
CLL INITMOS1.21
CL* Interface and arguments -------------------------------------------- INITMOS1.22
C INITMOS1.23
SUBROUTINE INITMOS( 1,1@DYALLOC.2042
*CALL ARGSIZE
@DYALLOC.2043
*CALL ARGDUMA
@DYALLOC.2044
*CALL ARGSTS
@DYALLOC.2045
*CALL ARGCONA
@DYALLOC.2046
& ICODE,CMESSAGE) @DYALLOC.2047
C INITMOS1.25
IMPLICIT NONE INITMOS1.26
C INITMOS1.27
*CALL CMAXSIZE
@DYALLOC.2048
*CALL CSUBMODL
GSS1F305.930
*CALL TYPSIZE
@DYALLOC.2049
*CALL TYPDUMA
@DYALLOC.2050
*CALL TYPSTS
@DYALLOC.2051
*CALL TYPCONA
@DYALLOC.2052
@DYALLOC.2053
INTEGER INITMOS1.28
& ICODE !OUT RETURN CODE INITMOS1.29
CHARACTER*80 TS150793.92
& CMESSAGE !OUT ANY ERROR MESSAGE PASSED BACK INITMOS1.31
C*--------------------------------------------------------------------- INITMOS1.32
C Common blocks and PARAMETERs INITMOS1.33
C INITMOS1.34
*IF DEF,MPP GPB0F403.19
*CALL PARVARS
GPB0F403.20
*ENDIF GPB0F403.21
C INITMOS1.38
C Subroutines called INITMOS1.39
C INITMOS1.40
EXTERNAL MOSGRID INITMOS1.41
C INITMOS1.42
C Local variables. INITMOS1.43
C INITMOS1.44
LOGICAL GLOBAL ! TRUE if global model INITMOS1.45
CL INITMOS1.46
CL Set up indicator for GLOBAL model from dump header information INITMOS1.47
CL NB: ELF is already set in INITDUMP. INITMOS1.48
CL INITMOS1.49
GLOBAL=(A_FIXHD(4).EQ.0) INITMOS1.50
CL INITMOS1.51
CL Set up masking array for MOS OUTPUT Ie MOS_OUTPUT INITMOS1.52
CL INITMOS1.53
CALL MOSGRID
(GLOBAL,ELF,A_REALHD(5),A_REALHD(6),-A_REALHD(2), INITMOS1.54
* A_REALHD(1),A_REALHD(3),A_REALHD(4), INITMOS1.55
*IF -DEF,MPP GPB0F403.22
* P_ROWS,ROW_LENGTH, INITMOS1.56
*ELSE GPB0F403.23
& glsize(2),glsize(1), GPB0F403.24
*ENDIF GPB0F403.25
* MOS_MASK,MOS_OUTPUT_LENGTH,ICODE,CMESSAGE) INITMOS1.57
INITMOS1.58
WRITE(6,*)'INITMOS : MOS_OUTPUT_LENGTH = ',MOS_OUTPUT_LENGTH GIE0F403.328
INITMOS1.60
RETURN INITMOS1.61
END INITMOS1.62
*ENDIF INITMOS1.63
*ENDIF INITMOS1.64