Changeset 4640 for LMDZ6/trunk/libf/phylmd/oasis.F90
- Timestamp:
- Jul 24, 2023, 4:50:57 PM (15 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ6/trunk/libf/phylmd/oasis.F90
r4619 r4640 24 24 USE mod_prism_get_proto 25 25 USE mod_prism_put_proto 26 #endif27 #ifdef CPP_CPLOCNINCA28 USE incaoasis, ONLY : inforcv29 26 #endif 30 27 #endif … … 77 74 INTEGER, PARAMETER :: idr_curenz = 7 78 75 INTEGER, PARAMETER :: idr_oceco2 = 8 79 76 ! bulk salinity of the surface layer of the ocean, in ppt 80 77 INTEGER, PARAMETER :: idr_sss = 9 81 ! bulk salinity of the surface layer of the ocean, in ppt 82 83 INTEGER, PARAMETER :: maxrecv = 9 ! Maximum number of fields to receive 84 85 #ifdef CPP_CPLOCNINCA 86 INTEGER, PARAMETER :: idr_ocedms = 1 87 INTEGER, PARAMETER :: maxrcv = 1 88 #endif 78 INTEGER, PARAMETER :: idr_ocedms = 10 79 80 INTEGER, PARAMETER :: maxrecv = 10 ! Maximum number of fields to receive 81 INTEGER, PARAMETER :: maxrecv_phys = 9 ! Maximum number of fields to receive in physiq (without fields received in INCA model ) 82 ! will be changed in next version - INCA fields will be received in LMDZ (like for ORCHIDEE fields) 83 ! and then send by routine in INCA model 84 89 85 90 86 TYPE, PUBLIC :: FLD_CPL ! Type for coupling field information … … 118 114 USE carbon_cycle_mod, ONLY : carbon_cycle_cpl 119 115 USE wxios, ONLY : wxios_context_init 116 USE chemistry_cycle_mod, ONLY : dms_cycle_cpl 120 117 USE lmdz_xios 121 118 USE print_control_mod, ONLY: lunout … … 265 262 inforecv(idr_oceco2)%action = .TRUE. ; inforecv(idr_oceco2)%name = 'SICO2FLX' 266 263 ENDIF 267 #ifdef CPP_CPLOCNINCA 268 inforcv(idr_ocedms)%action = .TRUE. ; inforcv(idr_ocedms)%name = 'SIDMSFLX' 269 #endif 264 IF (dms_cycle_cpl) THEN 265 inforecv(idr_ocedms)%action = .TRUE. ; inforecv(idr_ocedms)%name = 'SIDMSFLX' 266 ENDIF 267 270 268 271 269 !************************************************************************************ … … 353 351 END DO 354 352 355 ! Now, if also coupling CPL with INCA, initialize here fields to be exchanged. 356 #ifdef CPP_CPLOCNINCA 357 DO jf=1,maxrcv 358 IF (inforcv(jf)%action) THEN 359 CALL prism_def_var_proto(inforcv(jf)%nid, inforcv(jf)%name, il_part_id, & 360 il_var_nodims, PRISM_In, il_var_actual_shape, il_var_type, & 361 ierror) 362 IF (ierror .NE. PRISM_Ok) THEN 363 WRITE(lunout,*) 'inicma : Problem with prism_def_var_proto for field : ',& 364 inforcv(jf)%name 365 abort_message=' Problem in call to prism_def_var_proto for fields to receive' 366 CALL abort_physic(modname,abort_message,1) 367 ENDIF 368 ENDIF 369 END DO 353 354 #ifdef INCA 355 IF (dms_cycle_cpl) THEN 356 CALL init_inca_oasis(inforecv(idr_ocedms)) 357 ENDIF 370 358 #endif 371 359 … … 424 412 ! Output arguments 425 413 !************************************************************************************ 426 REAL, DIMENSION(nbp_lon, jj_nb,maxrecv ), INTENT(OUT) :: tab_get414 REAL, DIMENSION(nbp_lon, jj_nb,maxrecv_phys), INTENT(OUT) :: tab_get 427 415 428 416 ! Local variables … … 446 434 ENDIF 447 435 448 DO i = 1, maxrecv 436 DO i = 1, maxrecv_phys 449 437 IF (inforecv(i)%action .AND. inforecv(i)%nid .NE. -1) THEN 450 438 field(:) = -99999.
Note: See TracChangeset
for help on using the changeset viewer.