【问题标题】:MATLAB save variables to text files with '-ascii' formatMATLAB 将变量保存到具有“-ascii”格式的文本文件中
【发布时间】:2015-01-16 09:44:45
【问题描述】:

我在 MATLAB 中有以下代码:

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,都正确保存为文本文件,如下所示:

然而,令我惊讶的是,所有以d开头的变量,比如d_qz,都无法正确保存,如下图:

不知道有没有人知道原因。

【问题讨论】:

    标签: matlab save ascii eigen eigenvector


    【解决方案1】:

    文件在您保存之前是否存在?

    你写的变量的格式是什么?

    【讨论】:

    • 我添加了'-double' 选项来保存命令,它得到了纠正!
    【解决方案2】:

    我想通了:刚刚添加了这个选项'-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');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-24
      • 2020-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-18
      相关资源
      最近更新 更多