| 查看: 3295 | 回复: 8 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
Comsol自定义场变量,只要曾经温度T>Ts,对应场变量元素为1,一旦为1,则永久保持 已有3人参与
|
|||
|
问题:comsol能否自定义一个场变量,来标记每个网格点温度T曾经是否大于Ts,一旦某个网格点温度曾经大于Ts,该网格状态量为1,即便温度降下来了,状态量不变。 这个问题非常具有代表性,其归根结底是要定义场变量f(x,y,z,t),这个场变量依附于每一个网格,可以初始化,可被用户自定义操作。我目前发现,comsol并不能不依附任何物理场模块自定义这样的变量,退而求其次的做法是采用comsol的数学模块里的域偏微分/域常微分方程/不可逆转变/生物传热模块,这些做法逻辑是能行得通,但是求解非常不准确。采用偏微分或者常微分模块,无论是通过系数将模块数学方程u=f,还是du/dt=f这么简单的方式,其中f通过逻辑控制,即便这样,我发现comsol求解出来的u误差很大,连u=f,这里置f=1或者0,都不能严格控制计算的u=1或者0;du/dt=f的方式求解的误差更离谱,我一直定义f为正,但是u求解出来的还有一点点负值,这样就无法通过u来判断它曾经的状态。不可逆转变/生物传热一样有这样的问题,我觉得这个东西应该很简单,而且计算也不困难,不知道大家有没有什么好的方案。 还要说的是,Matlab函数我也试过,本来想把这样的状态量在matlab里定义为全局场变量,但是发现comsol送过来的网格坐标是分批的,打个比方,模型有50万网格,comsol会分好几拨送过来,也就是Matlab函数在一次时间迭代开始前会被调用好几次,而且送过来的网格批次的先后顺序也不得而知,这就无法对齐场变量元素的位置。 |
» 猜你喜欢
课题组招2027级博士 上海工程技术大学 激光智能制造方向
已经有4人回复
现代”学阀”该如何界定
已经有8人回复
上海工程技术大学 激光智能制造课题组 2027级博士研究生招生
已经有3人回复
实名举报:华南理工大学物理与光电学院副院长李志远婚内两次出轨女学生(博士)
已经有16人回复
上海工程技术大学激光智能制造课题组|2027级博士研究生招生公告
已经有11人回复
上海工程技术大学激光智能制造课题组招收博士研究生
已经有10人回复
申博发邮件
已经有11人回复
各位大神,目前国内有哪些比较好用的逆合成软件?
已经有12人回复
我的奶奶
已经有3人回复
国社科系统bug了,是不是要放榜了?
已经有9人回复
6楼2018-11-15 11:10:40
landl3017
新虫 (著名写手)
- 应助: 0 (幼儿园)
- 金币: 5019.9
- 散金: 1317
- 红花: 20
- 帖子: 1489
- 在线: 154.2小时
- 虫号: 3584852
- 注册: 2014-12-09
- 性别: GG
- 专业: 动力学与控制
2楼2018-11-13 15:44:04
3楼2018-11-13 17:56:14
landl3017
新虫 (著名写手)
- 应助: 0 (幼儿园)
- 金币: 5019.9
- 散金: 1317
- 红花: 20
- 帖子: 1489
- 在线: 154.2小时
- 虫号: 3584852
- 注册: 2014-12-09
- 性别: GG
- 专业: 动力学与控制
4楼2018-11-13 19:35:35










回复此楼