2014-11-19 10 views
0

У меня есть следующий код в MATLAB:MATLAB сохранить переменные в текстовые файлы в формате «» -ASCII

clear;clc; 
k=load('OUTPUT_sub_1_stiffness.txt'); 
m=load('OUTPUT_sub_1_mass.txt'); 
[v_default,d_default]=eig(k,m); 
v_kai=load('Eigenvector.txt'); 
d_kai=load('Eigenvalue.txt'); 
[v_qz,d_qz]=eig(k,m,'qz'); 
[v_chol,d_chol]=eig(k,m,'chol'); 
save('v_default.txt','v_default','-ascii'); 
save('d_default.txt','d_default','-ascii'); 
save('v_kai.txt','v_kai','-ascii'); 
save('d_kai.txt','d_kai','-ascii'); 
save('v_qz.txt','v_qz','-ascii'); 
save('d_qz.txt','d_qz','-ascii'); 
save('v_chol.txt','v_chol','-ascii'); 
save('d_chol.txt','d_chol','-ascii'); 

Все переменной, которые начинаются с v как v_qz сохраняются корректно в виде текстовых файлов, как показано ниже:

enter image description here

Однако, к моему удивлению, все переменная, которые начинаются с d как d_qz не могут быть сохранены правильно, как показано ниже:

enter image description here

Интересно, если кто-нибудь знает, почему.

ответ

0

Я понял это: просто добавили эту опцию '-double' и он получил исправлен, как показано ниже:

save('v_default.txt','v_default','-ascii','-double'); 
save('d_default.txt','d_default','-ascii','-double'); 
save('v_kai.txt','v_kai','-ascii','-double'); 
save('d_kai.txt','d_kai','-ascii','-double'); 
save('v_qz.txt','v_qz','-ascii','-double'); 
save('d_qz.txt','d_qz','-ascii','-double'); 
save('v_chol.txt','v_chol','-ascii','-double'); 
save('d_chol.txt','d_chol','-ascii','-double'); 
1

Существуют ли файлы до их сохранения?

И каков формат переменной, которую вы пишете?

+0

Я добавил ' '-double'' опцию, чтобы сохранить команду и он получил исправлен! – user3405291