Utility/Data Access SubroutineDATOUT is a utility subroutine that creates all requested output files after a simulation is performed by ANALYS. The specific files that are generated depend on the options chosen in the ResOutput command in the MotionSolve XML input file.


Fortran Calling Syntax
C/C++ Calling Syntax
c_datout (int* istat);
Python Calling Syntax
istat = py_datout()
MATLAB Calling Syntax
istat = m_datout()


A flag that returns the status of the call to DATOUT. istat can have the following values:
  • 0 = Success


def consub (par, npar):

    #Purpose of the CONSUB
    #This CONSUB performs 2 simulations:
    #   1. gravity = 1g     (surface of Earth)
    #   2. gravity = 0.38g  (surface of Mars)

    # Behavior on Earth
    istat = py_datout()
    status = py_analys ("TRANSIENT", "Simulation on Earth", 0.0, 1.0, 1)

    # Behavior on Mars
    command = "ACCGRAV/IGRAV=0, JGRAV=0, KGRAV=-3.72742"
    istat = py_modify (command)
    istat = py_datout()
    status = py_analys ("TRANSIENT", "Simulation on Mars", 1.0, 2.0, 1)

    return status


  1. DATOUT may only be called from a CONSUB.
  2. When coupled with other functions that allow you to modify the model and perform analyses, this is an extremely powerful capability to create higher level analysis functions.
  3. DATOUT should be invoked before an analysis is performed.
  4. Avoid two successive calls to DATOUT without an intervening call to ANALYS. You will obtain duplicate output if you do so.