mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-26 21:25:36 -04:00
41 lines
1 KiB
Python
Executable file
41 lines
1 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
"""Convert HDF5 particle track to VTK poly data.
|
|
|
|
"""
|
|
|
|
import argparse
|
|
|
|
import openmc
|
|
import vtk
|
|
|
|
|
|
def _parse_args():
|
|
# Create argument parser.
|
|
parser = argparse.ArgumentParser(
|
|
description='Convert particle track file(s) to a .pvtp file.')
|
|
parser.add_argument('input', metavar='IN', type=str,
|
|
help='Input particle track data filename.')
|
|
parser.add_argument('-o', '--out', metavar='OUT', type=str, dest='out',
|
|
help='Output VTK poly data filename.')
|
|
|
|
# Parse and return commandline arguments.
|
|
return parser.parse_args()
|
|
|
|
|
|
def main():
|
|
# Parse commandline arguments.
|
|
args = _parse_args()
|
|
|
|
# Make sure that the output filename ends with '.pvtp'.
|
|
if not args.out:
|
|
args.out = 'tracks.pvtp'
|
|
elif not args.out.endswith('.pvtp'):
|
|
args.out += '.pvtp'
|
|
|
|
# Write coordinate values to points array.
|
|
track_file = openmc.Tracks(args.input)
|
|
track_file.write_to_vtk(args.out)
|
|
|
|
if __name__ == '__main__':
|
|
main()
|