从python中生成的符号公式在matlab中读取后如何实现赋值,以下代码将有效实现该方法。
1.读取文件
借助matlab主页的导入数据将txt文件导入。并生成导入函数。然后在通过table2array函数将table类型的文本函数转化为string类型的函数,借助strrep将变量替换成实际变量,再利用eval函数将字符串当作指令里运行,在利用subs函数对实际变量赋值,再次调用eval函数实现变量求解。
syms %%声明实际变量名称否则在R=eval(T)无法运行
T=funimport('filename.txt',dataLines); %读取文件
T=table2array(T); %转化为string格式
T=strrep(T,'被替换变量名称','实际变量名称'); %替换变量名称
R=eval(T); %将字符串当指令运行
u=subs(R,actual_variable_name,variable); %将变量赋值
s=eavl; %实际值
2.循环读取字符数字名称的double等
如读取R1=1;R2=2;R3=3;R4=4;
for i=1:n
varname=sym(['字母',num2str(i)]);%生成名称 如R1,R2,R3,R4,R5
r=eval(varname); %存放名称对应的变量值
end