Back to OASIS4 home

Common global arrays (defined in oasis4/lib/common_oa4/src/psmile_common.F90 and psmile_smioc.F90)

Appl 
: of type Application (type defined in psmile_common)
Used by Driver as Appl%name = 'driver'
Used by psmile to define all the different applications

iga_comp_id_doc_XML (ig_nb_tot_comps) : integer, handle to open XML document (SMIOC) files
Allocation in prismdrv_init_smioc_struct : ALLOCATE( iga_comp_id_doc_XML(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_id_doc_XML(1), stat=id_err )

iga_comp_nb_grids(ig_nb_tot_comps) : integer, total number of grids (XML + Userdef for UD transients)
Allocation in prismdrv_init_smioc_struct :  ALLOCATE( iga_comp_nb_grids(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_nb_grids(1), stat=id_err )

iga_xml_comp_nb_grids(ig_nb_tot_comps) : integer, global counter for first pass
Allocation in prismdrv_init_smioc_struct :  ALLOCATE( iga_xml_comp_nb_grids(ig_nb_tot_comps), stat=id_err )

iga_comp_nb_transi(ig_nb_tot_comps), stat=id_err ) : integer, number of transients
Allocation in prismdrv_init_smioc_struct :  ALLOCATE( iga_comp_nb_transi(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_nb_transi(1), stat=id_err )

iga_comp_nb_persis(ig_nb_tot_comps), stat=id_err ) : integer, number of persi necessary ????
Allocation in prismdrv_init_smioc_struct :  ALLOCATE( iga_comp_nb_persis(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_nb_persis(1), stat=id_err )

iga_xml_comp_nb_transi(ig_nb_tot_comps) : integer, global counter for first pass
Allocation in prismdrv_init_smioc_struct :  ALLOCATE( iga_xml_comp_nb_transi(ig_nb_tot_comps), stat=id_err )

iga_comp_nb_udef(ig_nb_tot_comps) : integer, transients "user-defined-interpolation" per component
Allocation in prismdrv_init_smioc_struct : ALLOCATE( iga_comp_nb_udef(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_nb_udef(1), stat=id_err )

iga_comp_nb_unitsets(ig_nb_tot_comps) : integer, Fortran Units sets
Allocation in prismdrv_init_smioc_struct : ALLOCATE( iga_comp_nb_unitsets(ig_nb_tot_comps), stat=id_err )
Allocation in psmile_smioc_init : ALLOCATE( iga_comp_nb_unitsets(1), stat=id_err )

iga_comp_nb_stand_name(ig_nb_tot_transi) : integer, number of standard names per transients
Allocation in prismdrv_get_udef_transients : ALLOCATE (iga_comp_nb_stand_name(ig_nb_tot_transi), stat=id_err) / DEALLOCATE ( iga_comp_nb_stand_name, stat=id_err)
Allocation in psmile_smioc_init : ALLOCATE (iga_comp_nb_stand_name(iga_comp_nb_transi(1)), stat=id_err)

iga_comp_nb_transi_in(ig_nb_tot_transi) : integer, number of input transients
Allocation in prismdrv_get_udef_transients : ALLOCATE (iga_comp_nb_transi_in(ig_nb_tot_transi), stat=id_err) / DEALLOCATE (iga_comp_nb_transi_in, stat=id_err)
Allocation in psmile_smioc_init : ALLOCATE (iga_comp_nb_transi_in(iga_comp_nb_transi(1)), stat=id_err)

iga_comp_nb_transi_out(ig_nb_tot_transi) : integer, number of output transients
Allocation in prismdrv_get_udef_transients : ALLOCATE (iga_comp_nb_transi_out(ig_nb_tot_transi), stat=id_err) / DEALLOCATE (iga_comp_nb_transi_out, stat=id_err)
Allocation in psmile_smioc_init : ALLOCATE (iga_comp_nb_transi_out(iga_comp_nb_transi(1)), stat=id_err)

iga_smioc_unitsets (ig_nb_tot_unitsets, 3) : integer
Allocation in prismdrv_init_smioc_struct : ALLOCATE ( iga_smioc_unitsets (ig_nb_tot_unitsets, 3), stat=id_err )

sga_comp_udef_idx(ig_nb_tot_comps) : of type PSMILe_comp_udef (type defined in psmile_smioc), global structures for infos on "user_defined_interpolation" transients
Allocation in prismdrv_init_smioc_struct : ALLOCATE( sga_comp_udef_idx(ig_nb_tot_comps), stat=id_err )

sga_xml_smioc_transi (ig_nb_tot_transi) : of type transient (type defined in psmile_smioc),
Allocation in prismdrv_get_udef_transients : ALLOCATE ( sga_xml_smioc_transi (ig_nb_tot_transi), stat=id_err )

sga_smioc_comp (number_of_comps_allocated) : of type smioc_comp (type defined in psmile_smioc), contains all the infos about each component
Allocation in prismdrv_init_smioc_struct : ALLOCATE(sga_smioc_comp(1), stat=id_err )
Allocation in  psmile_smioc_init :    IF ( .not. ASSOCIATED(sga_smioc_comp) ) then
                                                            ALLOCATE(sga_smioc_comp(Number_of_Comps_allocated), stat=id_err )
                                                             the structure will be filled up in psmile_smioc_init

sga_smioc_grids (iga_comp_nb_grids(ig_nb_tot_grids)) : substructure, of type smioc_grid (type defined in psmile_smioc), contains info about the grids
Allocation in prismdrv_init_smioc_struct : ALLOCATE ( sga_smioc_grids (ig_nb_tot_grids), stat=id_err )
Allocation in  psmile_smioc_init :  ALLOCATE ( sga_smioc_comp(il_comp_id)%sga_smioc_grids (iga_comp_nb_grids(1)), stat=id_err )

sga_smioc_transi (iga_comp_nb_transi(ig_nb_tot_transi)) : substructure, of type transient (type defined in psmile_smioc), manage fields exchanged between the comp
Allocation in prismdrv_init_smioc_struct : ALLOCATE ( sga_smioc_transi (ig_nb_tot_transi), stat=id_err )
Allocation in  psmile_smioc_init : ALLOCATE ( sga_smioc_comp(il_comp_id)%sga_smioc_transi (iga_comp_nb_transi(1)), stat=id_err ) + initialisation

sga_smioc_persis (iga_comp_nb_persis)  : substructure, of type persistent (type defined in psmile_smioc)
Allocation in prismdrv_init_smioc_struct : ALLOCATE ( sga_smioc_persis (ig_nb_tot_persis), stat=id_err )
Allocation in  psmile_smioc_init : ALLOCATE ( sga_smioc_comp(il_comp_id)%sga_smioc_persis (iga_comp_nb_persis(1)) , stat=id_err) + initialisation