source: codes/icosagcm/trunk/src/icosa_gcm.f90 @ 97

Last change on this file since 97 was 97, checked in by ymipsl, 12 years ago

Put conforming IO for dcmip testcase

YM

File size: 1.8 KB
Line 
1PROGRAM ICOSA_GCM
2  USE icosa
3  USE timeloop_gcm_mod
4  USE disvert_mod
5  USE etat0_mod
6  USE wind_mod
7  USE mpipara
8  USE vertical_interp_mod
9  IMPLICIT NONE
10 
11  TYPE(t_field),POINTER :: sum_ne(:)
12  TYPE(t_field),POINTER :: sum_ne_glo(:)
13  REAL(rstd),POINTER :: pt_sum_ne(:)
14 
15  INTEGER :: ind,i,j,k,n
16  REAL(rstd) :: tot_sum=0
17  REAL(rstd) :: vect(3,6)
18  REAL(rstd) :: centr(3),dist
19 
20  CALL init_mpipara
21  CALL init_earth_const 
22  CALL init_grid_param
23  CALL compute_metric
24  CALL compute_domain
25  CALL init_transfert
26  CALL init_writefield
27!  CALL allocate_field(sum_ne,field_T,type_real)
28!  CALL allocate_field_glo(sum_ne_glo,field_T,type_real)
29
30! DO ind=1,ndomain
31!   CALL swap_dimensions(ind)
32!   pt_sum_ne=sum_ne(ind)
33!   DO j=jj_begin,jj_end
34!     DO i=ii_begin,ii_end   
35!       n=(j-1)*iim+i
36!       pt_sum_ne(n)=domloc_glo_ind(ind)
37!     ENDDO
38!   ENDDO
39! ENDDO
40
41! CALL WriteField("domain",sum_ne)
42! CALL WriteField_mpi("domain",sum_ne)
43! CALL transfert_request(sum_ne,req_i1)
44! CALL WriteField_mpi("domain",sum_ne)
45! CALL close_files
46! CALL finalize_mpipara
47! STOP
48 
49  CALL compute_geometry
50  CALL init_disvert 
51  CALL init_vertical_interp
52
53  CALL allocate_field(sum_ne,field_T,type_real)
54 
55
56  DO ind=1,ndomain
57     
58    pt_sum_ne=sum_ne(ind)
59     
60    CALL swap_dimensions(ind)
61    CALL swap_geometry(ind)
62   
63    DO j=jj_begin,jj_end
64      DO i=ii_begin,ii_end
65        n=(j-1)*iim+i
66        pt_sum_ne(n)=0
67        DO k=1,6
68          pt_sum_ne(n)=pt_sum_ne(n)+ne(n,k)
69        ENDDO
70        IF (domain(ind)%own(i,j)) tot_sum=tot_sum+Ai(n)
71      ENDDO
72    ENDDO
73  ENDDO
74
75
76 
77  PRINT *," Diff surf",1-tot_sum/(4*Pi*radius*radius)
78
79 
80  CALL WriteField("Ai",geom%Ai)
81!  CALL WriteField("sum_ne",sum_ne)
82  CALL write_apbp
83  CALL init_time
84  CALL timeloop
85
86  CALL close_files
87  CALL close_time_counter
88  CALL finalize_mpipara
89 
90END PROGRAM ICOSA_gcm 
Note: See TracBrowser for help on using the repository browser.