【问题标题】:How do we load our symbolic expressions in the matlab?我们如何在 matlab 中加载我们的符号表达式?
【发布时间】:2011-03-16 19:53:23
【问题描述】:

假设我们有像 u1=1/24*h*sin(3*t)-1/24*h*sin(3*t)*k+1/24*h*sin(t)-1 这样的表达式/24*hksin(t)。 将其保存在 .mat 文件中后,我们如何将其加载到 matlab 中。我是 matlab 的新用户。 我们使用的是matlab 5.3版本的符号工具箱。使用char命令后我们可以保存 我们在 mat 文件或其他文件中的表达式。例如, fid=fopen('out.mat','r'); syms t k 类(t); u0=sin(t)+k*cos(t)^2; u0=char(u0); fprintf(fid,'u0=%s',u0); fclose(fid);

据我所知,这会将 u0 保存在文件 out.mat 或选择的任何名称中。如果您有更好的选择,请告诉我。 所以,现在我的问题是如何加载它或者我们将如何在其他文件中使用这个表达式。 抱歉没有提供有关问题的完整信息。我尝试了命令加载文件名,但它给出“文件无法打开”。我不知道。为什么?

【问题讨论】:

    标签: matlab


    【解决方案1】:

    将变量保存和加载到 .mat 文件的正确方法是使用函数 SAVELOAD。例如:

    syms t k                 %# Declare your symbolic variables
    u0 = sin(t)+k*cos(t)^2;  %# Make your symbolic equation
    save out.mat u0          %# Save u0 to out.mat
    

    然后您可以通过执行以下操作来加载变量u0

    load out.mat             %# Load u0 into your workspace
    

    如果您的文件名存储为字符串,您还可以使用SAVELOAD 的函数形式:

    save('out.mat','u0');  %# Save u0 to out.mat
    load('out.mat');       %# Load u0 into your workspace
    

    【讨论】:

      【解决方案2】:

      你的问题有点混乱,有点混乱。您如何将表达式保存在 mat 文件中?如何从 mat 文件加载的通常答案是简单地执行命令 load 'matfile.mat' 但这取决于首先正确保存了 mat 文件。

      您使用的是 Matlab 符号工具箱(或其他名称)吗?或者你只是想保存一个 Matlab 表达式?如果是后者,那么 m 文件可能比 mat 文件更好。

      请澄清您的问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-19
        • 1970-01-01
        • 2011-10-08
        • 1970-01-01
        • 1970-01-01
        • 2014-08-23
        相关资源
        最近更新 更多