Extract Text From Nastran f06 file
7 views (last 30 days)
Show older comments
Hi all,
I am looking to extract specific data from a Nastran f06 file (it opens as a text file in Notepad++).
What I want to do:
1- Locate the title "MODAL PARTICIPATION FACTORS" (here in the example it is at lign 37, but will vary depending on the analysis... therefore why I want to locate the title).
2- Locate the end of the table. It ends with a blank entry followed by a "Total" header. (here in the example at lign 254)
3- Extract all the data into one matrix. It starts 5 entry lines after the "Participation Factors" title, this is a fixed feature in all .f06 analysis. So here it would be a 211x8 type of matrix. The columns being "Mode N°" "Frequency" "T1" .. to .."R3"
Would you guys have any idea how to do this? Thanks in advance. I attach the file to this post.
Nicolas
0 Comments
Accepted Answer
KSSV
on 16 Nov 2017
fid = fopen('NASTRAN_file.txt') ;
S = textscan(fid,'%s','delimiter','\n') ;
S = S{1} ;
fclose(fid) ;
str1 = 'MODAL PARTICIPATION FACTORS' ;
str2 = 'TOTAL' ;
idx1 = find(contains(S,str1))
idx2 = find(contains(S,str2))
6 Comments
KSSV
on 17 Nov 2017
fid = fopen('NASTRAN_file.txt','r') ;
tline = fgetl(fid);
iwant = zeros([],8) ;
count = 0 ;
while ischar(tline)
tline = fgetl(fid);
if ~isempty(str2num(tline))
count = count+1 ;
iwant(count,:) = str2num(tline) ;
end
if contains(tline,'TOTAL')
break
end
end
fclose(fid) ;
More Answers (0)
See Also
Categories
Find more on Text Data Preparation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!