- Timestamp:
- 03/13/19 16:02:44 (5 years ago)
- Location:
- codes/icosagcm/devel/src
- Files:
-
- 1 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/devel/src/base/grid_param.f90
r533 r813 2 2 INTEGER :: iim_glo=40 3 3 INTEGER :: jjm_glo 4 INTEGER,PARAMETER :: nb_face=10 5 INTEGER :: llm=19 4 INTEGER, PARAMETER :: nb_face=10 5 INTEGER, PARAMETER :: grid_unst=1, grid_ico = 2 6 INTEGER :: grid_type ! unstructured or icosahedral 7 INTEGER, BIND(C) :: llm=19 6 8 INTEGER :: nqtot ! number of tracers handled by advection scheme 7 INTEGER 9 INTEGER, BIND(C) :: nqdyn ! number of dynamical tracers : 1 if dry, more if moist 8 10 9 11 CONTAINS -
codes/icosagcm/devel/src/icosa_init.f90
r726 r813 22 22 USE diagflux_mod 23 23 USE profiling_mod 24 USE init_unstructured_mod, ONLY: init_grid_type 24 25 IMPLICIT NONE 25 26 26 27 CALL init_profiling 27 28 CALL init_mpipara 29 CALL init_grid_type 28 30 CALL trace_off 29 31 CALL xios_init … … 74 76 75 77 CONTAINS 76 78 77 79 SUBROUTINE check_total_area 78 80 IMPLICIT NONE -
codes/icosagcm/devel/src/parallel/domain.f90
r726 r813 579 579 CALL assign_domain_omp 580 580 !$OMP END PARALLEL 581 582 581 583 582 END SUBROUTINE assign_domain 584 583 … … 612 611 END SUBROUTINE assign_domain_omp 613 612 614 615 613 616 614 SUBROUTINE compute_domain 617 IMPLICIT NONE 618 CALL init_domain_param 619 CALL create_domain 620 CALL assign_cell 621 CALL compute_boundary 622 CALL set_neighbour_indice 623 CALL assign_domain 624 615 USE grid_param, ONLY : grid_type, grid_unst, grid_ico 616 IMPLICIT NONE 617 SELECT CASE(grid_type) 618 CASE(grid_unst) 619 ndomain=1 620 ALLOCATE(assigned_domain(1)) 621 assigned_domain=.TRUE. 622 CASE DEFAULT 623 CALL init_domain_param 624 CALL create_domain 625 CALL assign_cell 626 CALL compute_boundary 627 CALL set_neighbour_indice 628 CALL assign_domain 629 END SELECT 625 630 END SUBROUTINE compute_domain 626 631 627 632 END MODULE domain_mod 628 -
codes/icosagcm/devel/src/parallel/mpipara.F90
r726 r813 9 9 LOGICAL,SAVE :: using_mpi 10 10 LOGICAL,SAVE :: is_mpi_root 11 LOGICAL,SAVE :: is_mpi_master11 LOGICAL,SAVE, BIND(C) :: is_mpi_master=.TRUE. 12 12 INTEGER,SAVE :: mpi_master 13 13 -
codes/icosagcm/devel/src/unstructured/data_unstructured.F90
r802 r813 2 2 USE ISO_C_BINDING 3 3 USE OMP_LIB 4 USE mpipara, ONLY : is_mpi_master 5 USE grid_param, ONLY : llm, nqdyn 4 6 IMPLICIT NONE 5 7 SAVE 8 6 9 7 10 #include "unstructured.h90" … … 12 15 INDEX, BIND(C) :: caldyn_thermo=thermo_theta, caldyn_eta=eta_lag, & 13 16 caldyn_vert_variant=caldyn_vert_cons, nb_threads=0, nb_stage=0 14 LOGICAL(C_BOOL), BIND(C) :: hydrostatic=.TRUE., is_mpi_master=.TRUE.,debug_on=.FALSE.17 LOGICAL(C_BOOL), BIND(C) :: hydrostatic=.TRUE., debug_on=.FALSE. 15 18 LOGICAL(C_BOOL), BIND(C, NAME='debug_hevi_solver') :: debug_hevi_solver_=.TRUE. 16 19 … … 21 24 #endif 22 25 23 INDEX, BIND(C) :: llm, nqdyn,edge_num, primal_num, dual_num, &26 INDEX, BIND(C) :: edge_num, primal_num, dual_num, & 24 27 max_primal_deg, max_dual_deg, max_trisk_deg 25 28 INDEX, ALLOCATABLE :: & ! deg(ij) = nb of vertices = nb of edges of primal/dual cell ij
Note: See TracChangeset
for help on using the changeset viewer.