登录论坛

查看完整版本 : Matlab中的未定义变量


poster
2019-12-10, 20:41
以下是我的MATLAB程序的基本框架。每个框都是一个类定义。

向下滚动以查看错误。 https://imgur.com/IpJBO.png 注意: 1.每个类都有一个自定义构造函数

错误

Undefined function or variable 'Troom'. Error in ==> wall>wall.wall at 31 function o = wall(Tr) Error in ==> mainfile at 5 w1 = wall(); 当我从另一个文件“ mainfile”创建Class wall对象时,就会出现这种情况




为什么会这样呢?
我在特定于Matlab的OOP概念上弄错了吗?
我该如何解决?
提前致谢!

PS: 代码

function o = wall() Tr = o.Troom*2; oN = round(1/o.dx) + 1; oT = Tr * ones(oN,1); o.Tinf = Tr; o.update_properties(); end 代码2

classdef wall properties dx = 0.01; dt = 0.4; L = 0.16; N; tlimit = 1505.2; sbc = 5.670400e-8 % The Stefan-Boltzmann Constant a; hi; % Surface Conductivity of Inner Surface bi; ho; % Surface Conductivity of Outer Surface bo; lamb; Troom = 298; % Room Temperature (K) Tinf; T; room = compartment(); conc = concrete(); fire = fireProperties(Troom); end

回答:

room = compartment(); conc = concrete(); fire = fireProperties(Troom); 是的,您的问题就在那里。 Troom不能在properties块的上下文中使用。将常量放入Troom或将其移入它们所属的构造函数中。



更多&回答... (https://stackoverflow.com/questions/2897225)