source: trunk/LMDZ.COMMON/libf/phy_common/write_field_phy.F90 @ 3553

Last change on this file since 3553 was 1543, checked in by emillour, 9 years ago

All models: Further adaptations to keep up with changes in LMDZ5 concerning
physics/dynamics separation:

  • dyn3d:
  • adapted gcm.F so that all physics initializations are now done in iniphysiq.
  • dyn3dpar:
  • adapted gcm.F so that all physics initializations are now done in iniphysiq.
  • updated calfis_p.F to follow up with changes.
  • copied over updated "bands.F90" from LMDZ5.
  • dynphy_lonlat:
  • calfis_p.F90, mod_interface_dyn_phys.F90, follow up of changes in phy_common/mod_* routines
  • phy_common:
  • added "geometry_mod.F90" to store information about the grid (replaces phy*/comgeomphy.F90) and give variables friendlier names: rlond => longitude , rlatd => latitude, airephy => cell_area, cuphy => dx , cvphy => dy
  • added "physics_distribution_mod.F90"
  • updated "mod_grid_phy_lmdz.F90", "mod_phys_lmdz_mpi_data.F90", "mod_phys_lmdz_para.F90", "mod_phys_lmdz_mpi_transfert.F90", "mod_grid_phy_lmdz.F90", "mod_phys_lmdz_omp_data.F90", "mod_phys_lmdz_omp_transfert.F90", "write_field_phy.F90" and "ioipsl_getin_p_mod.F90" to LMDZ5 versions.
  • phy[venus/titan/mars/std]:
  • removed "init_phys_lmdz.F90", "comgeomphy.F90"; adapted routines to use geometry_mod (longitude, latitude, cell_area, etc.)

EM

File size: 951 bytes
RevLine 
[892]1!
[1543]2! $Id: write_field_phy.F90 2342 2015-08-19 13:21:38Z emillour $
[892]3!
4MODULE write_field_phy
5
[1543]6  ! Dump a field on the global (nbp_lon by nbp_lat) physics grid
7 
[892]8  CONTAINS
9 
10    SUBROUTINE WriteField_phy(name,Field,ll)
[1543]11    USE mod_phys_lmdz_para, ONLY: klon_omp, is_mpi_root, &
12                                  Gather
13    USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat, klon_glo, &
14                                 Grid1Dto2D_glo
15    USE Write_Field, ONLY: WriteField
[892]16   
17    IMPLICIT NONE
18
[1543]19    CHARACTER(len=*),INTENT(IN) :: name
20    INTEGER,INTENT(IN) :: ll
21    REAL,INTENT(IN) :: Field(klon_omp,ll)
22
[892]23    real, dimension(klon_glo,ll):: New_Field
[1543]24    real, dimension(nbp_lon,nbp_lat,ll):: Field_2d
[892]25
26    CALL Gather(Field,New_Field)
27!$OMP MASTER
28    IF (is_mpi_root) THEN       
29      CALL Grid1Dto2D_glo(New_Field,Field_2D)
30      CALL WriteField(name,Field_2d)
31    ENDIF
32!$OMP END MASTER
33
34 
35   END SUBROUTINE WriteField_phy
36 
37 END MODULE write_field_phy
Note: See TracBrowser for help on using the repository browser.