/*--------------------------------*- C++ -*----------------------------------*\
  =========                 |
  \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
   \\    /   O peration     | Website:  https://openfoam.org
    \\  /    A nd           | Version:  7
     \\/     M anipulation  |
\*---------------------------------------------------------------------------*/
FoamFile {
  version     2.0;
  format      ascii;
  class       dictionary;
  location    "system";
  object      controlDict;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

application     dsmcFoam;

startFrom       startTime;

startTime       0;

stopAt          endTime;

endTime         2.0e-4;

deltaT          2e-9;

writeControl    runTime;

writeInterval   1e-5;

purgeWrite      0;

writeFormat     ascii;

writePrecision  10;

writeCompression off;

timeFormat      general;

timePrecision   6;

runTimeModifiable true;

adjustTimeStep  no;

functions {
  fieldAverage1
  {
    type               fieldAverage;
    libs               ("libfieldFunctionObjects.so");
    writeControl       writeTime;
    restartOnRestart   true;
    restartTime        0.00012;

    fields
    (
        rhoN
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    rhoM
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    dsmcRhoN
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    momentum
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    linearKE
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    internalE
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    iDof
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    q
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    fD
    {
      mean        on;
      prime2Mean  off;
      base        time;
    }
    );
  }

  dsmcFields1
  {
    type            dsmcFields;
    libs            ("liblagrangianFunctionObjects.so");
    writeControl    writeTime;
  }

  writeCellVolumes1
  {
    type           writeCellVolumes;
    libs           ("libfieldFunctionObjects.so");
    writeControl   writeTime;
  }

}

// ************************************************************************* //
