How to Convert TMESH Data to Text Files in MCNP6 Using Python"

  • Thread starter Thread starter rai915
  • Start date Start date
  • Tags Tags
    Mcnp6 Python
Click For Summary
SUMMARY

This discussion focuses on converting TMESH data (MDATA) from MCNP6 into text files using Python. The user initially attempted to use GRIDCONV but found it unsuitable for automation. They also explored scipy.io.Fortrunfile but faced challenges with the output settings. Ultimately, they resolved their issue by utilizing the pexpect library to control GRIDCONV interactively, allowing for the conversion of unformatted binary data to text files.

PREREQUISITES
  • Familiarity with MCNP6 and its TMESH tally data
  • Understanding of Python programming, specifically with libraries like pexpect
  • Knowledge of binary file formats and data conversion techniques
  • Experience with command-line tools and automation in Linux
NEXT STEPS
  • Learn how to use pexpect for automating interactive command-line applications
  • Research MCNP6 TMESH tally data generation and its structure
  • Explore additional Python libraries for file conversion, such as numpy or pandas
  • Investigate the MCNPtools GitHub repository for plotting TMESH data
USEFUL FOR

Researchers and developers working with MCNP6 simulations, data analysts needing to convert binary data to text, and Python programmers interested in automating command-line tools.

rai915
Messages
3
Reaction score
2
I would like to analyse mdata of tmesh in MCNP6 by python, but I am struggling how to convert mdata (unformatted binary) to any text file in python.
I used GRIDCONV but it's not suitable for automations.

I also used scipy.io.Fortrunfile but could not convert the file because I was not sure fortrun setting for output, like endians.
 
Engineering news on Phys.org
Welcome to PF!

Are you also generating a mctal file and does this not have what you need as text when you do a tmesh?

If the data is right https://github.com/ipostuma/MCNPtools might help to plot what you want.
 
Alex A said:
Welcome to PF!

Are you also generating a mctal file and does this not have what you need as text when you do a tmesh?

If the data is right https://github.com/ipostuma/MCNPtools might help to plot what you want.
Thank you for the reply, but I want to have MDATA generated by tmesh option, not mctal.
MDATA is the tmesh tally data, with unformatted binary.
 
I'm assuming the reason you don't want to use gridconv is because it's interactive. What OS are you using?

For linux if you made a program that printed
Code:
y
mdatatext
and ran it with program.py | gridconv
That would take a binary format file called mdata and convert it to a text file called mdatatext
That is three enters, y(enter), mdatatext(enter), and two enters. This is for an older version but if it's changed I imagine it won't be much.

Patching the source would also work, if you don't have the source patching the binary will also work.
 
Thank you Alex, I solved it to control interactive GUIDCONV by pexpect:)
 
  • Like
Likes   Reactions: zhj2024 and Alex A

Similar threads

  • · Replies 24 ·
Replies
24
Views
6K
Replies
1
Views
2K
  • · Replies 4 ·
Replies
4
Views
3K
Replies
3
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 10 ·
Replies
10
Views
6K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 29 ·
Replies
29
Views
3K
  • · Replies 1 ·
Replies
1
Views
857
  • · Replies 14 ·
Replies
14
Views
4K