xref: /petsc/src/ts/tutorials/extchem.py (revision c4762a1b19cd2af06abeed90e8f9d34fb975dd94)
1*c4762a1bSJed Brown#!/usr/bin/env python
2*c4762a1bSJed Brown#
3*c4762a1bSJed Brown#    Reads in the output trajectory data from a run of extchem and
4*c4762a1bSJed Brown#  formats it for graphing
5*c4762a1bSJed Brown#
6*c4762a1bSJed Brown#  Make sure $PETSC_DIR/bin is in your PYTHONPATH
7*c4762a1bSJed Brown#
8*c4762a1bSJed Brownfrom __future__ import print_function
9*c4762a1bSJed Brownimport sys
10*c4762a1bSJed Brownimport PetscBinaryIOTrajectory
11*c4762a1bSJed Brown
12*c4762a1bSJed Brownif __name__ ==  '__main__':
13*c4762a1bSJed Brown  if len(sys.argv) > 1:
14*c4762a1bSJed Brown    directory = sys.argv[1]
15*c4762a1bSJed Brown  else:
16*c4762a1bSJed Brown    directory = 'Visualization-data'
17*c4762a1bSJed Brown  (t,v,names) = PetscBinaryIOTrajectory.ReadTrajectory(directory)
18*c4762a1bSJed Brown#  PetscBinaryIOTrajectory.PlotTrajectories(t,v,names,['Temp','CO','CO2','H2O','H2','O2','CH4','C2H2','N2'])
19*c4762a1bSJed Brown#
20*c4762a1bSJed Brown#  Code is currently hardwired to display certain species only, edit the list below to display the species you want displayed
21*c4762a1bSJed Brown#
22*c4762a1bSJed Brown  for i in range(0,len(t)-1):
23*c4762a1bSJed Brown    print(t[i],v[i][names.index('Temp')],v[i][names.index('CH4')],v[i][names.index('O2')],v[i][names.index('N2')],v[i][names.index('CO')],v[i][names.index('CO2')],v[i][names.index('O')],v[i][names.index('OH')],v[i][names.index('H2O')])
24*c4762a1bSJed Brown
25*c4762a1bSJed Brown
26