Changeset 4619 for LMDZ6/trunk/libf/misc


Ignore:
Timestamp:
Jul 10, 2023, 1:40:39 AM (12 months ago)
Author:
yann meurdesoif
Message:

Suppress usage of preprocessing key CPP_XIOS.
Wrapper file is used to suppress XIOS symbol when xios is not linked and not used (-io ioipsl)
The CPP_XIOS key is replaced in model by "using_xios" boolean variable to switch between IOIPSL or XIOS output.

YM

Location:
LMDZ6/trunk/libf/misc
Files:
1 added
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/misc/wxios.F90

    r4608 r4619  
    11! $Id$
    2 #ifdef CPP_XIOS
     2
    33MODULE wxios
    4     USE xios
    5     USE iaxis
    6     USE iaxis_attr
    7     USE icontext_attr
    8     USE idate
    9     USE idomain_attr
    10     USE ifield_attr
    11     USE ifile_attr
    12     USE ixml_tree
     4    USE lmdz_xios
    135
    146    !Variables disponibles pendant toute l'execution du programme:
     
    411403       
    412404        !On récupère le handle:
    413         CALL xios_get_domain_handle(dom_id, dom)
     405        CALL xios_get_handle(dom_id, dom)
    414406       
    415407        !On parametrise le domaine:
    416         CALL xios_set_domain_attr_hdl(dom, ni_glo=nbp_lon, ibegin=0, ni=nbp_lon, type="rectilinear")
    417         CALL xios_set_domain_attr_hdl(dom, nj_glo=nbp_lat, jbegin=jj_begin-1, nj=jj_nb, data_dim=2)
    418         CALL xios_set_domain_attr_hdl(dom, lonvalue_1d=io_lon(1:nbp_lon), latvalue_1d=io_lat(jj_begin:jj_end))
     408        CALL xios_set_attr(dom, ni_glo=nbp_lon, ibegin=0, ni=nbp_lon, type="rectilinear")
     409        CALL xios_set_attr(dom, nj_glo=nbp_lat, jbegin=jj_begin-1, nj=jj_nb, data_dim=2)
     410        CALL xios_set_attr(dom, lonvalue_1d=io_lon(1:nbp_lon), latvalue_1d=io_lat(jj_begin:jj_end))
    419411        CALL xios_set_domain_attr("dom_out", domain_ref=dom_id)
    420412
     
    438430              WRITE(lunout,*) "wxios_domain_param: mpirank=",mpi_rank," mask(:,jj_nb)=",mask(:,jj_nb)
    439431            ENDIF
    440             CALL xios_set_domain_attr_hdl(dom, mask_2d=mask)
    441         END IF
    442 
    443          CALL xios_is_defined_domain_attr_hdl(dom,ni_glo=boool)
     432            CALL xios_set_attr(dom, mask_2d=mask)
     433        END IF
     434
     435         CALL xios_is_defined_attr(dom,ni_glo=boool)
    444436        !Vérification:
    445437        IF (xios_is_valid_domain(dom_id)) THEN
     
    480472
    481473!$OMP MASTER
    482         CALL xios_get_domain_handle(dom_id, dom)
     474        CALL xios_get_handle(dom_id, dom)
    483475       
    484476        !On parametrise le domaine:
     
    580572        IF (.NOT.xios_is_valid_file(fname)) THEN
    581573            !On créé le noeud:
    582             CALL xios_get_filegroup_handle("defile", x_fg)
    583             CALL xios_add_file(x_fg, x_file, fname)
     574            CALL xios_get_handle("defile", x_fg)
     575            CALL xios_add_child(x_fg, x_file, fname)
    584576       
    585577            !On reformate la fréquence:
     
    587579       
    588580            !On configure:
    589             CALL xios_set_file_attr_hdl(x_file, name="X"//fname,&
     581            CALL xios_set_attr(x_file, name="X"//fname,&
    590582                output_freq=nffreq, output_level=flvl, enabled=.TRUE.)
    591583       
     
    636628       
    637629        !On ajoute le champ:
    638         CALL xios_add_field(fieldgroup, field, fieldname)
     630        CALL xios_add_child(fieldgroup, field, fieldname)
    639631        !IF (prt_level >= 10) WRITE(lunout,*) "wxios_add_field: ",fieldname,fieldgroup, fieldlongname, fieldunit
    640632       
    641633        !On rentre ses paramètres:
    642         CALL xios_set_field_attr_hdl(field, standard_name=fieldlongname, unit=newunit, default_value=def)
     634        CALL xios_set_attr(field, standard_name=fieldlongname, unit=newunit, default_value=def)
    643635        IF (prt_level >= 10) WRITE(lunout,*) "wxios_add_field: Field ",trim(fieldname), "cree:"
    644636        IF (prt_level >= 10) WRITE(lunout,*) "wxios_add_field: long_name=",trim(fieldlongname),"; unit=",trim(newunit),";  default_value=",nf90_fill_real
     
    691683        !On selectionne le bon groupe de champs:
    692684        IF (fdim.EQ.2) THEN
    693           CALL xios_get_fieldgroup_handle("fields_2D", fieldgroup)
     685          CALL xios_get_handle("fields_2D", fieldgroup)
    694686        ELSE
    695           CALL xios_get_fieldgroup_handle("fields_3D", fieldgroup)
     687          CALL xios_get_handle("fields_3D", fieldgroup)
    696688        ENDIF
    697689       
     
    722714            !Champ existe déjà, mais pas XML, alors on l'ajoute
    723715            !On ajoute le champ:
    724             CALL xios_get_file_handle(fname, f)
    725             CALL xios_add_fieldtofile(f, field)
     716            CALL xios_get_handle(fname, f)
     717            CALL xios_add_child(f, field)
    726718           
    727719           
    728720            !L'operation, sa frequence:
    729721            freq_op%timestep=1
    730             CALL xios_set_field_attr_hdl(field, field_ref=fieldname, operation=TRIM(ADJUSTL(operation)), freq_op=freq_op, prec=4)
     722            CALL xios_set_attr(field, field_ref=fieldname, operation=TRIM(ADJUSTL(operation)), freq_op=freq_op, prec=4)
    731723
    732724           
    733725            !On rentre ses paramètres:
    734             CALL xios_set_field_attr_hdl(field, level=field_level, enabled=.TRUE.)
     726            CALL xios_set_attr(field, level=field_level, enabled=.TRUE.)
    735727           
    736728            IF (fdim.EQ.2) THEN
     
    744736                !Si 3D :
    745737                !On ajoute l'axe vertical qui va bien:
    746                 CALL xios_set_field_attr_hdl(field, axis_ref=TRIM(ADJUSTL(axis_id)))
     738                CALL xios_set_attr(field, axis_ref=TRIM(ADJUSTL(axis_id)))
    747739               
    748740                IF (prt_level >= 10) THEN
     
    792784     END SUBROUTINE wxios_close
    793785END MODULE wxios
    794 #endif
     786
Note: See TracChangeset for help on using the changeset viewer.