Reading txt file by character number defined columns
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Hi guys, I am trying to read in data from a GRO file where the data is organized into columns that are defined by character numbers. For example, on any given row, characters 1-5 will have one type of data, 6-8 will have a different piece of data, and so on.
What's the best function to use read this file into an array?
Thanks! Nikolay
0 Kommentare
Antworten (1)
per isakson
am 10 Mai 2013
The gro file format is described at Gromacs. There is no best way to read gro-files with Matlab - I think. One way is:
fid = fopen( 'cssm.txt' );
rw1 = fgetl( fid );
rw2 = fgetl( fid );
N = str2double( rw2 );
ca1 = textscan ...
( fid, '%5d%-5s%5s%5d%8.3f%8.3f%8.3f%8.4f%8.4f%8.4f', N, 'Delimiter', '' );
ca2 = textscan( fid, '%f%f%f' );
fclose( fid );
where cssm.txt contains
MD of 2 waters, t= 0.0
6
1WATER OW1 1 0.126 1.624 1.679 0.1227 -0.0580 0.0434
1WATER HW2 2 0.190 1.661 1.747 0.8085 0.3191 -0.7791
1WATER HW3 3 0.177 1.568 1.613 -0.9045 -2.6469 1.3180
2WATER OW1 4 1.275 0.053 0.622 0.2519 0.3140 -0.1734
2WATER HW2 5 1.337 0.002 0.680 -1.0641 -1.1349 0.0257
2WATER HW3 6 1.326 0.120 0.568 1.9427 -0.8216 -0.0244
1.82060 1.82060 1.82060
0 Kommentare
Siehe auch
Kategorien
Mehr zu Large Files and Big Data finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!