How to open Tonatiuh output .DAT files in MATLAB?
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi, I have output files from Tonatiuh ray-tracing software but I am unable to open this file in any other software. I was wondering if there is any way to open it in MATLAB so that I can perform the analysis that I need.
Any help would be appreciate in this regard. This is a binary output file with a .DAT extension. I am unable to uplaod the file here so I am attaching a One-Drive link if anybody wants to have a look.
2 Commenti
Image Analyst
il 27 Gen 2024
You have to know the format of the file. Do you know that? Otherwise it'll just be a big long string of bytes with no meaning behind them.
Risposta accettata
Walter Roberson
il 27 Gen 2024
The binary format used to store the values is Real64 with big-endian byte ordering. The
first value stored in the file is the power per photon in watts (W). This real value
is then followed by seven-tuples of real values, one per photon . Every seven-tuple
holds the following values in the specific order given: * PhotonID * x-coordinate *
y-coordinate * z-coordinate * surface side ( 0 if is back side , 1 if is front side ) *
Previous PhotonID (0 if the photon is the first of a given ray) * Next PhotonID (0 is
the photon is the last of a given ray)
So you would fopen() the file with 'ieee-be' and you would fread() '*double* with size [7 inf] . The result would store tuples running down columns.
16 Commenti
Più risposte (1)
Benjamin Thompson
il 27 Gen 2024
fid = fopen('yourfilename.dat', 'r');
A = fread(fid, 'uint8=>uint8');
fclose(fid);
Then the data is in A as bytes. If you know more about the file format you can change the arguments to fread in order to make the result in A easier to use.
doc fread
Vedere anche
Categorie
Scopri di più su Data Import and Analysis in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!