<?xml version="1.0"?>
<adios-config host-language="C">
  <adios-group name="genarray" coordination-communicator="group_comm" time-index="steps">
    <var name="gndx" path="/dimensions" type="integer"/>
    <var name="gndy" path="/dimensions" type="integer"/>
    <var name="gndz" path="/dimensions" type="integer"/>

    <var name="nproc" path="/info" type="integer"/>
    <attribute name="description" path="/info/nproc" value="Number of writers"/>
    <var name="npx" path="/info" type="integer"/>
    <attribute name="description" path="/info/npx" value="Number of processors in x dimension"/>
    <var name="npy" path="/info" type="integer"/>
    <attribute name="description" path="/info/npy" value="Number of processors in y dimension"/>
    <var name="npz" path="/info" type="integer"/>
    <attribute name="description" path="/info/npz" value="Number of processors in z dimension"/>


    <!-- Auxiliary variables for global array indexing -->
    <var name="offx" path="/aux" type="integer"/>
    <var name="offy" path="/aux" type="integer"/>
    <var name="offz" path="/aux" type="integer"/>
    <var name="ndx" path="/aux" type="integer"/>
    <var name="ndy" path="/aux" type="integer"/>
    <var name="ndz" path="/aux" type="integer"/>

    <!-- 3D array written by genarray with 1 timesteps -->
    <global-bounds dimensions="gndx,gndy,gndz" offsets="offx,offy,offz">
        <var name="var1" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var2" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var3" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var4" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var5" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var6" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var7" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var8" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
        <var name="var9" gwrite="double_xyz" gread="double_xyz" path="/var" type="real*8" dimensions="ndx,ndy,ndz,steps"/>
    </global-bounds>
    <attribute name="description" path="/var/double_xyz"
               value="3D array with 3D decomposition"/>


  </adios-group>

  <method group="genarray" method="POSIX"/>

  <buffer size-MB="256" allocate-time="now"/>

</adios-config>
