Changeset 1463


Ignore:
Timestamp:
03/26/18 17:15:45 (2 years ago)
Author:
yushan
Message:

test_remap modified to follow trunk. memory free issue in mapper.cpp solved by changing tags. Yet need to know why.

Location:
XIOS/dev/branch_openmp
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_openmp/bld.cfg

    r1350 r1463  
    4040#bld::target test_omp.exe  
    4141bld::target test_complete_omp.exe  
    42 #bld::target test_remap.exe  
     42bld::target test_remap.exe  
    4343bld::target test_remap_ref.exe  
    4444bld::target test_remap_omp.exe  
  • XIOS/dev/branch_openmp/extern/remap/src/mapper.cpp

    r1460 r1463  
    311311                        MPI_Issend(sendValue[rank],  nbRecvElement[rank], MPI_DOUBLE, rank, 0, communicator, &sendRequest[nbSendRequest]); 
    312312                        nbSendRequest++; 
    313                         MPI_Issend(sendArea[rank],  nbRecvElement[rank], MPI_DOUBLE, rank, 0, communicator, &sendRequest[nbSendRequest]); 
     313                        MPI_Issend(sendArea[rank],  nbRecvElement[rank], MPI_DOUBLE, rank, 1, communicator, &sendRequest[nbSendRequest]); 
    314314                        nbSendRequest++; 
    315315                        if (order == 2) 
    316316                        { 
    317317                                MPI_Issend(sendGrad[rank], 3*nbRecvElement[rank]*(NMAX+1), 
    318                                                                 MPI_DOUBLE, rank, 0, communicator, &sendRequest[nbSendRequest]); 
     318                                                                MPI_DOUBLE, rank, 2, communicator, &sendRequest[nbSendRequest]); 
    319319                                nbSendRequest++; 
    320                                 MPI_Issend(sendNeighIds[rank], 4*nbRecvElement[rank]*(NMAX+1), MPI_INT, rank, 0, communicator, &sendRequest[nbSendRequest]); 
     320                                MPI_Issend(sendNeighIds[rank], 4*nbRecvElement[rank]*(NMAX+1), MPI_INT, rank, 3, communicator, &sendRequest[nbSendRequest]); 
    321321//ym  --> attention taille GloId 
    322322                                nbSendRequest++; 
     
    324324                        else 
    325325                        { 
    326                                 MPI_Issend(sendNeighIds[rank], 4*nbRecvElement[rank], MPI_INT, rank, 0, communicator, &sendRequest[nbSendRequest]); 
     326                                MPI_Issend(sendNeighIds[rank], 4*nbRecvElement[rank], MPI_INT, rank, 4, communicator, &sendRequest[nbSendRequest]); 
    327327//ym  --> attention taille GloId 
    328328                                nbSendRequest++; 
     
    333333                        MPI_Irecv(recvValue[rank],  nbSendElement[rank], MPI_DOUBLE, rank, 0, communicator, &recvRequest[nbRecvRequest]); 
    334334                        nbRecvRequest++; 
    335                         MPI_Irecv(recvArea[rank],  nbSendElement[rank], MPI_DOUBLE, rank, 0, communicator, &recvRequest[nbRecvRequest]); 
     335                        MPI_Irecv(recvArea[rank],  nbSendElement[rank], MPI_DOUBLE, rank, 1, communicator, &recvRequest[nbRecvRequest]); 
    336336                        nbRecvRequest++; 
    337337                        if (order == 2) 
    338338                        { 
    339339                                MPI_Irecv(recvGrad[rank], 3*nbSendElement[rank]*(NMAX+1), 
    340                                                 MPI_DOUBLE, rank, 0, communicator, &recvRequest[nbRecvRequest]); 
     340                                                MPI_DOUBLE, rank, 2, communicator, &recvRequest[nbRecvRequest]); 
    341341                                nbRecvRequest++; 
    342                                 MPI_Irecv(recvNeighIds[rank], 4*nbSendElement[rank]*(NMAX+1), MPI_INT, rank, 0, communicator, &recvRequest[nbRecvRequest]); 
     342                                MPI_Irecv(recvNeighIds[rank], 4*nbSendElement[rank]*(NMAX+1), MPI_INT, rank, 3, communicator, &recvRequest[nbRecvRequest]); 
    343343//ym  --> attention taille GloId 
    344344                                nbRecvRequest++; 
     
    346346                        else 
    347347                        { 
    348                                 MPI_Irecv(recvNeighIds[rank], 4*nbSendElement[rank], MPI_INT, rank, 0, communicator, &recvRequest[nbRecvRequest]); 
     348                                MPI_Irecv(recvNeighIds[rank], 4*nbSendElement[rank], MPI_INT, rank, 4, communicator, &recvRequest[nbRecvRequest]); 
    349349//ym  --> attention taille GloId 
    350350                                nbRecvRequest++; 
     
    415415                } 
    416416        } 
     417         
     418        MPI_Barrier(communicator); 
    417419 
    418420        /* free all memory allocated in this function */ 
  • XIOS/dev/branch_openmp/inputs/REMAP/iodef.xml

    r1339 r1463  
    55   <calendar type="Gregorian" start_date="2012-03-01 15:00:00" time_origin="2012-02-28 15:00:00 + 1d" /> 
    66   <field_definition level="1" > 
    7     <field_group id="fields_src" operation="instant" detect_missing_value=".false."> 
    8        <field id="src_field_2D" domain_ref="src_domain" /> 
    9        <field id="src_field_2D_clone" domain_ref="src_domain_clone" /> 
    10        <field id="src_field_3D" domain_ref="src_domain" axis_ref="src_axis"  /> 
    11        <field id="src_field_3D_clone" grid_ref="src_grid_3D"   />        
    12        <field id="src_field_3D_pression" grid_ref="src_grid_3D"  /> 
    13        <field id="src_field_4D" grid_ref="src_grid_4D"  />        
     7    <field_group id="fields_src" operation="instant"> 
     8       <field id="src_field_2D" domain_ref="src_domain"/> 
     9       <field id="src_field_2D_clone" domain_ref="src_domain_clone"/> 
     10       <field id="src_field_3D" domain_ref="src_domain" axis_ref="src_axis"/>        
     11       <field id="src_field_3D_pression" grid_ref="src_grid_3D"/> 
     12       <field id="src_field_4D" grid_ref="grid_4D"/>        
    1413    </field_group> 
    1514    <field_group  id="fields_dst"> 
    1615      <field id="dst_field_2D" field_ref="src_field_2D" domain_ref="dst_domain"/> 
    1716      <field id="dst_field_2D_regular_pole" field_ref="src_field_2D" domain_ref="dst_domain_regular_pole"/> 
    18       <field id="dst_field_2D_clone" field_ref="src_field_2D_clone" domain_ref="dst_domain_regular_pole"  expr="@this" operation="average" /> 
    19       <field id="dst_field_2D_extract" field_ref="src_field_3D_clone" grid_ref="dst_grid_2D_extract"/> 
    2017      <field id="dst_field_3D" field_ref="src_field_3D" grid_ref="dst_grid_3D"/> 
    2118      <field id="dst_field_3D_interp" field_ref="src_field_3D" axis_ref="dst_axis"/>        
    22       <field id="dst_field_4D_extract" field_ref="src_field_4D" grid_ref="dst_grid_4D_extract"/>  
     19      <field id="dst_field_4D_extract" field_ref="src_field_4D" grid_ref="grid_4D_extract"/>       
     20      <field id="dst_field_2D_clone" field_ref="src_field_2D_clone" domain_ref="dst_domain"/> 
    2321    </field_group> 
    24     <field_group id="read_fields" operation="instant"> 
    25       <field id="tmp_field_0" domain_ref="src_domain_regular_read"/>       
     22    <field_group id="read_fields" operation="instant" enabled="FALSE"> 
     23      <field id="tmp_field_0" domain_ref="src_domain_regular_read" enabled="true"/> 
     24      <field id="tmp_field_clone" field_ref="tmp_field_0"/> 
    2625      <field id="tmp_field_1" grid_ref="src_grid_curvilinear_read" /> 
    2726      <field id="tmp_field_2" grid_ref="src_grid_unstructured_read" /> 
    28       <field id="tmp_field_clone" field_ref="tmp_field_0"/> 
    2927      <field id="dst_field_regular" field_ref="tmp_field_2" grid_ref="dst_grid_regular"/>       
    3028      <field id="dst_field_regular_pole_0" field_ref="tmp_field_0" domain_ref="dst_domain_regular_pole"/> 
     
    3432 
    3533   <file_definition type="one_file" par_access="collective" output_freq="1ts" output_level="10" enabled=".TRUE."> 
    36        
    37       <file_group id="read_then_write_files" enabled=".TRUE."> 
    38        <file id="output_regular_pole" name="output_dst_regular" enabled=".TRUE."  > 
    39           <field field_ref="tmp_field_0" name="field_regular_0" enabled=".TRUE."/> 
    40           <field field_ref="dst_field_regular" name="field_regular" enabled=".TRUE."/> 
    41           <field field_ref="dst_field_regular_pole_0" name="field_regular_pole_0" enabled=".TRUE." /> 
    42           <field field_ref="dst_field_regular_pole_1" name="field_regular_pole_1" enabled=".TRUE." /> 
    43        </file> 
    44        <file id="output_dst_curvilinear" name="output_dst_curvilinear" enabled=".TRUE." > 
    45           <field field_ref="tmp_field_1" operation="instant"/> 
    46        </file> 
    47        <file id="output_dst_unstructured" name="output_dst_unstructured" enabled=".TRUE." > 
    48           <field field_ref="tmp_field_2" operation="instant"/> 
    49        </file> 
    50      </file_group> 
    51  
    5234      <file_group id="write_files" > 
    53         <file id="output_2D" name="output_2D" output_freq="1ts" enabled=".TRUE."> 
    54           <field field_ref="src_field_2D" name="field_src" enabled=".TRUE."/> 
    55           <field field_ref="src_field_2D_clone" name="field_src_clone" default_value="100000" enabled=".TRUE."/> 
    56           <field field_ref="src_field_2D" name="field_dst_regular_0"  domain_ref="dst_domain_regular_pole" enabled=".TRUE."/> 
    57           <field field_ref="dst_field_2D" name="field_dst_regular_1" enabled=".TRUE." /> 
    58           <field field_ref="dst_field_2D_regular_pole" name="field_dst_regular_2" enabled=".TRUE."/> 
    59           <field field_ref="dst_field_2D_clone" name="field_dst_regular_3" detect_missing_value=".false." default_value="100000" enabled=".FALSE."/> 
    60           <field field_ref="dst_field_2D_extract" name="field_dst_regular_4" enabled=".TRUE."/> 
     35        <file id="output_2D" name="output_2D" > 
     36          <field field_ref="src_field_2D" name="field_src" /> 
     37          <field field_ref="src_field_2D" name="field_dst_regular_0"  domain_ref="dst_domain_regular_pole" default_value="10.e+5"/> 
     38          <field field_ref="dst_field_2D" name="field_dst_regular_1" /> 
     39          <field field_ref="dst_field_2D_regular_pole" name="field_dst_regular_2" /> 
     40          <field field_ref="dst_field_2D_clone" name="field_dst_regular_3" /> 
    6141        </file>  
    62        <file id="output_3D" name="output_3D" enabled=".TRUE."> 
     42       <file id="output_3D" name="output_3D" > 
    6343          <field field_ref="src_field_3D" name="field_src" /> 
    6444          <field field_ref="src_field_3D_pression" name="field" /> 
    6545          <field field_ref="dst_field_3D_interp" name="field_dst_interp_domain" /> 
    66           <field field_ref="dst_field_3D_interp" name="field_dst_interp_domain_axis" domain_ref="dst_domain_regular_pole" enabled=".TRUE."/>   
     46          <field field_ref="dst_field_3D_interp" name="field_dst_interp_domain_axis" domain_ref="dst_domain_regular_pole"/>   
    6747       </file> 
    68        <file id="output_4D" name="output_4D" enabled=".TRUE."> 
     48       <file id="output_4D" name="output_4D" > 
    6949          <field field_ref="src_field_4D" name="field_4D" /> 
    70           <field field_ref="dst_field_4D_extract" name="field_4D_extract" enabled=".TRUE."/> 
     50          <field field_ref="dst_field_4D_extract" name="field_4D_extract" /> 
    7151        </file> 
    7252     </file_group> 
    73      <file_group id="read_files" enabled=".TRUE." > 
     53     <file_group id="read_files" > 
    7454       <file id="output_src_regular" name="output_src_regular" mode="read" > 
    7555          <field id="src_field_regular" name="field" grid_ref="src_grid_regular_read" operation="instant"/> 
    7656       </file> 
    77        <file id="output_src_curvilinear" name="output_src_curvilinear" mode="read" > 
     57<!--        <file id="output_src_curvilinear" name="output_src_curvilinear" mode="read" > 
    7858          <field id="src_field_curvilinear" name="field_A" grid_ref="src_grid_curvilinear_read" operation="instant"/> 
    7959       </file> 
    8060       <file id="output_src_unstructured" name="output_src_unstructured" mode="read" > 
    8161          <field id="src_field_unstructured" name="field" grid_ref="src_grid_unstructured_read" operation="instant"/> 
     62       </file> --> 
     63      </file_group> 
     64     <file_group id="read_then_write_files" enabled=".FALSE."> 
     65<!--        <file id="output_regular_pole" name="output_dst_regular" > 
     66          <field field_ref="dst_field_regular" name="field_regular" /> 
     67          <field field_ref="dst_field_regular_pole_0" name="field_regular_pole_0" /> 
     68          <field field_ref="dst_field_regular_pole_1" name="field_regular_pole_1" /> 
    8269       </file> 
    83       </file_group> 
    84       
     70       <file id="output_dst_curvilinear" name="output_dst_curvilinear"> 
     71          <field field_ref="tmp_field_1" operation="instant"/> 
     72       </file> 
     73       <file id="output_dst_unstructured" name="output_dst_unstructured" > 
     74          <field field_ref="tmp_field_2" operation="instant"/> 
     75       </file> --> 
     76     </file_group> 
    8577   </file_definition> 
    86  
    87    <scalar_definition> 
    88     <scalar_group id="scalar_src"> 
    89     </scalar_group> 
    90     <scalar_group id="scalar_dst"> 
    91      <scalar id="scalar_extract"> 
    92        <reduce_axis operation="sum"/> 
    93      </scalar> 
    94     </scalar_group> 
    95    </scalar_definition> 
    9678 
    9779   <axis_definition> 
     
    9981      <axis id="src_axis" positive="down" /> 
    10082      <axis id="nq" positive="down" /> 
    101       <axis id="src_axis_curvilinear_read" positive="down" /> 
     83      <axis id="src_axis_curvilinear_read" /> 
    10284    </axis_group> 
    10385    <axis_group id="axis_dst"> 
     
    118100      </domain> 
    119101      <domain id="src_domain_unstructured_read" type="unstructured"> 
    120         <generate_rectilinear_domain/> 
    121102      </domain> 
    122103    </domain_group> 
     
    128109    <domain_group id="domain_dst"> 
    129110     <domain id="dst_domain"> 
    130        <interpolate_domain write_weight="false" /> 
     111       <interpolate_domain/> 
    131112     </domain> 
    132113     <domain id="dst_domain_regular_pole" ni_glo="90" nj_glo="45" type="rectilinear"> 
    133114       <generate_rectilinear_domain id="domain_regular_pole"/> 
    134        <interpolate_domain write_weight="false" order="1" renormalize="true"/>        
    135        <!-- <zoom_domain ibegin="0" ni="45" jbegin="0" nj="45" /> --> 
     115       <interpolate_domain/>        
     116       <zoom_domain ibegin="0" ni="45" jbegin="0" nj="45" /> 
    136117     </domain> 
    137118     <domain id="dst_domain_regular" ni_glo="90" nj_glo="45" type="rectilinear"> 
     
    161142        <axis axis_ref="src_axis"/> 
    162143      </grid> 
    163       <grid id="src_grid_4D"> 
     144      <grid id="grid_4D"> 
    164145        <domain domain_ref="src_domain"/> 
    165146        <axis axis_ref="src_axis"/> 
     
    172153        <domain domain_ref="dst_domain_regular"/> 
    173154      </grid> 
    174       <grid id="dst_grid_2D_extract"> 
    175         <domain domain_ref="dst_domain_regular"/> 
    176         <scalar >           
    177           <reduce_axis operation="min"/> 
    178           <!-- <extract_axis position="2"/> --> 
    179         </scalar> 
    180       </grid> 
    181155      <grid id="dst_grid_3D"> 
    182156        <domain domain_ref="src_domain"/> 
    183157        <axis axis_ref="dst_axis"/> 
    184158      </grid> 
    185       <grid id="dst_grid_4D_extract"> 
     159      <grid id="grid_4D_extract"> 
    186160        <domain domain_ref="dst_domain_regular_pole"/>       
    187161        <axis axis_ref="src_axis"/>         
    188162        <scalar > 
    189           <!-- <extract_axis position="1"/> --> 
    190           <reduce_axis operation="sum"/> 
     163          <extract_axis position="1"/> 
    191164        </scalar>       
    192165      </grid> 
     
    197170  <context id="xios"> 
    198171      <variable_definition> 
     172         <variable_group id="server"> 
     173            <variable id="using_server2" type="bool">false</variable> 
     174            <variable id="ratio_server2" type="int">50</variable> 
     175         </variable_group> 
     176 
    199177        <variable_group id="buffer"> 
    200178            <variable id="optimal_buffer_size" type="string">performance</variable> 
     
    212190 
    213191</simulation> 
     192 
  • XIOS/dev/branch_openmp/inputs/Unstruct/iodef.xml

    r1220 r1463  
    99     <field id="field_B_srf"  operation="average" freq_op="3600s" grid_ref="grid_A"/> 
    1010     <field id="field_A_expand"  operation="average" grid_ref="grid_dst" field_ref="field_A_srf"/> 
     11 
     12   <!--  <field id="tmp_field_0" domain_ref="src_domain_regular_read"/>       
     13     <field id="tmp_field_1" grid_ref="src_grid_curvilinear_read" /> 
     14     <field id="tmp_field_2" grid_ref="src_grid_unstructured_read" /> --> 
     15 
    1116   </field_definition> 
    1217 
     
    1823        <field field_ref="field_A_srf" name="field_rect2" grid_ref="grid_rect2" enabled=".TRUE." /> 
    1924        <field field_ref="field_A_srf" name="field_rect3" grid_ref="grid_rect3" enabled=".TRUE."/> 
    20       <!--  <field field_ref="field_A_srf" name="field_curv" grid_ref="grid_curv"/> --> 
     25      <!--  <field field_ref="tmp_field_0" name="field_regular_0" enabled=".TRUE."/> --> 
     26    <!--    <field field_ref="tmp_field_1" operation="instant"/> --> 
     27  <!--        <field field_ref="tmp_field_2" operation="instant"/> --> 
    2128     </file> 
    2229 
    23      <!-- <file id="output_src_curvilinear" name="output_src_curvilinear" mode="read" > 
    24        <field id="src_field_curvilinear" name="field_A" grid_ref="src_grid_curvilinear_read" operation="instant"/> 
    25      </file> -->  
     30    <!-- <file_group id="read_files" enabled=".TRUE." > 
     31       <file id="output_src_regular" name="output_src_regular" mode="read" > 
     32          <field id="src_field_regular" name="field" grid_ref="src_grid_regular_read" operation="instant"/> 
     33       </file> 
     34       <file id="output_src_curvilinear" name="output_src_curvilinear" mode="read" > 
     35          <field id="src_field_curvilinear" name="field_A" grid_ref="src_grid_curvilinear_read" operation="instant"/> 
     36       </file> 
     37       <file id="output_src_unstructured" name="output_src_unstructured" mode="read" > 
     38          <field id="src_field_unstructured" name="field" grid_ref="src_grid_unstructured_read" operation="instant"/> 
     39       </file> 
     40     </file_group> 
     41--> 
    2642  
    2743   </file_definition> 
     
    2945   <axis_definition> 
    3046     <axis id="axis_srf" positive="up"/> 
    31       <axis id="src_axis_curvilinear_read" positive="down" /> 
     47     <axis id="src_axis_curvilinear_read" positive="down" /> 
    3248   </axis_definition> 
    3349 
     
    5369       <generate_rectilinear_domain id="domain_regular_pole3"/> 
    5470       <interpolate_domain write_weight="false" order="1" renormalize="true"/>        
    55        <zoom_domain ibegin="0" ni="40" jbegin="0" nj="40" />  
     71       <zoom_domain ibegin="0" ni="30" jbegin="0" nj="30" />  
    5672     </domain> 
    5773 
    58  
    59      <domain id="src_domain_curvilinear_read" type="curvilinear"> 
     74    <domain_group id="read_domains"> 
     75      <domain id="src_domain_regular_read" type="rectilinear"> 
    6076        <generate_rectilinear_domain /> 
    61      </domain> 
     77      </domain> 
     78      <domain id="src_domain_curvilinear_read" type="curvilinear"> 
     79        <generate_rectilinear_domain /> 
     80      </domain> 
     81      <domain id="src_domain_unstructured_read" type="unstructured"> 
     82        <generate_rectilinear_domain/> 
     83      </domain> 
     84    </domain_group> 
    6285 
    6386   </domain_definition> 
     
    90113 
    91114 
    92      <grid id="grid_curv"> 
    93        <domain id="src_domain_curvilinear_read" /> 
    94        <axis axis_ref="axis_srf" /> 
    95      </grid> 
    96  
    97      <grid id="src_grid_curvilinear_read"> 
    98         <domain id="src_domain_curvilinear_read"/> 
     115     <grid_group id="read_grids"> 
     116      <grid id="src_grid_regular_read"> 
     117        <domain domain_ref="src_domain_regular_read"/> 
     118      </grid> 
     119      <grid id="src_grid_curvilinear_read"> 
     120        <domain domain_ref="src_domain_curvilinear_read"/> 
    99121        <axis axis_ref="src_axis_curvilinear_read" /> 
    100      </grid>  
     122      </grid> 
     123      <grid id="src_grid_unstructured_read"> 
     124        <domain domain_ref="src_domain_unstructured_read"/> 
     125      </grid> 
     126    </grid_group>  
    101127 
    102128   </grid_definition> 
  • XIOS/dev/branch_openmp/src/io/inetcdf4.cpp

    r1462 r1463  
    494494  } 
    495495 
    496  
     496/* 
    497497  bool CINetCDF4::isRectilinear(const StdString& name, const CVarPath* const path) 
    498498  { 
     
    513513    return true; 
    514514  } 
    515  
    516 /* 
    517   bool CINetCDF4::isRectilinear_1459(const StdString& name, const CVarPath* const path) 
     515*/ 
     516 
     517  bool CINetCDF4::isRectilinear(const StdString& name, const CVarPath* const path) 
    518518  { 
    519519    std::list<StdString> varCoords = this->getCoordinatesIdList(name, path); 
     
    557557    return (varDims1D.size() == 2); 
    558558  } 
    559 */ 
     559 
    560560 
    561561  bool CINetCDF4::isCurvilinear(const StdString& name, const CVarPath* const path) 
  • XIOS/dev/branch_openmp/src/test/test_remap_omp.f90

    r1338 r1463  
    206206                            bounds_lon_1D=dst_boundslon, bounds_lat_1D=dst_boundslat, nvertex=dst_nvertex) 
    207207 
    208   CALL xios_set_domain_attr("src_domain_unstructured_read", ni_glo=src_ni_glo, ibegin=src_ibegin, ni=src_ni, type="unstructured") 
    209   CALL xios_set_domain_attr("src_domain_unstructured_read", lonvalue_1D=src_lon_tmp, latvalue_1D=src_lat_tmp, & 
    210                             bounds_lon_1D=src_boundslon, bounds_lat_1D=src_boundslat, nvertex=src_nvertex) 
     208  !CALL xios_set_domain_attr("src_domain_unstructured_read", ni_glo=src_ni_glo, ibegin=src_ibegin, ni=src_ni, type="unstructured") 
     209  !CALL xios_set_domain_attr("src_domain_unstructured_read", lonvalue_1D=src_lon_tmp, latvalue_1D=src_lat_tmp, & 
     210  !                          bounds_lon_1D=src_boundslon, bounds_lat_1D=src_boundslat, nvertex=src_nvertex) 
    211211 
    212212 
     
    220220  ALLOCATE(tmp_field_0(src_tmp_ni*src_tmp_nj)) 
    221221 
    222   CALL xios_get_axis_attr("src_axis_curvilinear_read", n=src_tmp_n) 
    223   CALL xios_get_domain_attr("src_domain_curvilinear_read", ni=src_tmp_ni, nj=src_tmp_nj) 
    224   ALLOCATE(tmp_field_1(src_tmp_ni*src_tmp_nj*src_tmp_n)) 
    225  
    226   CALL xios_get_domain_attr("src_domain_unstructured_read", ni=src_tmp_ni, nj=src_tmp_nj) 
    227   ALLOCATE(tmp_field_2(src_tmp_ni*src_tmp_nj)) 
    228    
    229   CALL xios_recv_field("src_field_regular", tmp_field_0) 
    230   CALL xios_recv_field("src_field_curvilinear", tmp_field_1) 
    231   CALL xios_recv_field("src_field_unstructured", tmp_field_2) 
    232  
    233   DO ts=1,10 
     222  !CALL xios_get_axis_attr("src_axis_curvilinear_read", n=src_tmp_n) 
     223  !CALL xios_get_domain_attr("src_domain_curvilinear_read", ni=src_tmp_ni, nj=src_tmp_nj) 
     224  !ALLOCATE(tmp_field_1(src_tmp_ni*src_tmp_nj*src_tmp_n)) 
     225 
     226  !CALL xios_get_domain_attr("src_domain_unstructured_read", ni=src_tmp_ni, nj=src_tmp_nj) 
     227  !ALLOCATE(tmp_field_2(src_tmp_ni*src_tmp_nj)) 
     228   
     229  DO ts=1,1 
     230    CALL xios_recv_field("src_field_regular", tmp_field_0) 
     231    !CALL xios_recv_field("src_field_curvilinear", tmp_field_1) 
     232    !CALL xios_recv_field("src_field_unstructured", tmp_field_2) 
    234233    CALL xios_update_calendar(ts) 
     234     
     235    !DO i=1,src_ni 
     236    !  src_field_2D_clone(i) = src_field_2D(i) 
     237    !  IF ((23.5 * ts < src_lat(i)) .AND. (src_lat(i) < 65.5 *ts) .AND. (0 < src_lon(i)) .AND. (src_lon(i) < 30*ts)) THEN       
     238    !    src_field_2D_clone(i) = missing_value     
     239    !  ENDIF 
     240    !ENDDO 
     241 
    235242    CALL xios_send_field("src_field_2D",src_field_2D) 
    236      
    237     DO i=1,src_ni 
    238       src_field_2D_clone(i) = src_field_2D(i) 
    239       IF ((23.5 * ts < src_lat(i)) .AND. (src_lat(i) < 65.5 *ts) .AND. (0 < src_lon(i)) .AND. (src_lon(i) < 30*ts)) THEN       
    240         src_field_2D_clone(i) = missing_value     
    241       ENDIF 
    242     ENDDO 
    243  
    244     CALL xios_send_field("src_field_2D_clone",src_field_2D_clone) 
     243    CALL xios_send_field("src_field_2D_clone",src_field_2D) 
    245244    CALL xios_send_field("src_field_3D",src_field_3D) 
    246     CALL xios_send_field("src_field_3D_clone",src_field_3D) 
    247     CALL xios_send_field("src_field_4D",src_field_4D) 
    248     CALL xios_send_field("src_field_3D_pression",src_field_pression) 
     245    !CALL xios_send_field("src_field_4D",src_field_4D) 
     246    !CALL xios_send_field("src_field_3D_pression",src_field_pression) 
    249247    CALL xios_send_field("tmp_field_0",tmp_field_0) 
    250     CALL xios_send_field("tmp_field_1",tmp_field_1) 
    251     CALL xios_send_field("tmp_field_2",tmp_field_2) 
     248    !CALL xios_send_field("tmp_field_1",tmp_field_1) 
     249    !CALL xios_send_field("tmp_field_2",tmp_field_2) 
    252250    CALL wait_us(5000) ; 
    253251   ENDDO 
     
    257255  DEALLOCATE(src_lon, src_lat, src_boundslon,src_boundslat, src_field_2D) 
    258256  DEALLOCATE(dst_lon, dst_lat, dst_boundslon,dst_boundslat) 
    259   DEALLOCATE(tmp_field_0, tmp_field_1, tmp_field_2) 
    260  
     257  DEALLOCATE(tmp_field_0) 
     258  !DEALLOCATE(tmp_field_1) 
     259  !DEALLOCATE(tmp_field_2) 
     260   
    261261  CALL xios_finalize() 
    262262   
Note: See TracChangeset for help on using the changeset viewer.