24小时热门版块排行榜    

查看: 5137  |  回复: 16

b07988

金虫 (正式写手)

星期六可以休息

[求助] 能量源项中有温度对时间的微分,需要用uds吗? 已有1人参与

能量源项中有dT/dt,就是温度对时间的求导,请问是用
1.c_udsi_m1存储上一步时间步长的温度
2.采用define_uds_unsteady?
希望有好心人帮忙。
不胜感激!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

先做最重要的事情,再做次重要的事情
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

47425804

木虫 (正式写手)


★ ★
xiegangmai: 金币+2, 谢谢参与! 2012-05-17 22:59:44
引用回帖:
10楼: Originally posted by b07988 at 2012-05-17 16:45:53:
这个方法挺好的,只要一开始的用DEFINE_INIT,对
C_UDMI(c,t,0)=0.;
C_UDMI(c,t,1)=0.;
就可以了!
我试了下,没有什么问题。谢谢了!

我也用uds试了下,其实也没有什么问题。只要打开uds就可以了。:vi ...

用patch会比较方便,不用DEFINE_INIT。
而且,开始时候给0不是太合适,用个平均温度更好点。
不过也就三个时间步的事,影响很小。

不管UDM还是UDS,能用就是好东西,呵呵~~
11楼2012-05-17 17:26:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

b07988

金虫 (正式写手)

星期六可以休息

引用回帖:
2楼: Originally posted by ya634984094 at 2012-05-16 15:27:20:
可以用也可以不要用~用的话用C_UDSI_M1和C_UDSI俩个值之差除以时间就行,不用的话用C_UDMI保存温度,再求~

其实我两种都采用了,但不知道是自己程序出问题还是什么,就是没有效果。
以下是部分程序,希望你能给点意见:
CODE:
DEFINE_ADJUST(store_m1,domain)
{
        Thread *t;
        cell_t c;
        real haha=1.;
        domain =Get_Domain(1);
        thread_loop_c(t,domain)
        {
                begin_c_loop(c,t)
                {
                        C_UDSI_M1(c,t,0)=C_T_M1(c,t);
                }
                end_c_loop(c,t)
        }       
}
然后在define_source里面加入
dT=(C_T(c,t)-C_UDSI_M1(c,t,0))/RP_Get_Real("physical-time-step");

但是没有效果,请帮我看看。
先做最重要的事情,再做次重要的事情
3楼2012-05-16 18:43:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

ya634984094

铜虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
b07988: 金币+5, ★★★很有帮助, 谢谢参与 2012-05-16 18:28:33
xiegangmai: 金币+1, 谢谢应助! 2012-05-17 00:00:56
可以用也可以不要用~用的话用C_UDSI_M1和C_UDSI俩个值之差除以时间就行,不用的话用C_UDMI保存温度,再求~
2楼2012-05-16 15:27:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)


★ ★
xiegangmai: 金币+2, 鼓励讨论交流! 2012-05-17 00:01:09
DEFINE_ADJUST里面保存温度那一步,换成下面这样试试:
C_UDMI(c,t,0)=C_T(c,t);
DEFINE_SOURCE里的自然就变成:
dT=(C_T(c,t)-C_UDMI(c,t,0))/RP_Get_Real("physical-time-step";
我觉得用UDM比用UDS好理解。

» 本帖已获得的红花(最新10朵)

4楼2012-05-16 22:15:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

030301029

捐助贵宾 (正式写手)

【答案】应助回帖

★ ★ ★ ★
感谢参与,应助指数 +1
xiegangmai: 金币+1, 谢谢参与! 2012-05-17 00:01:19
b07988: 金币+3, 有帮助, 用udm未果,所以才用uds。udm个数已经打开,梯度保存也打开了。 2012-05-17 09:37:01
4楼正解。
简单的一个,干嘛要用uds?直接用udm就可以了。
5楼2012-05-16 22:33:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

b07988

金虫 (正式写手)

星期六可以休息

送鲜花一朵
引用回帖:
4楼: Originally posted by 47425804 at 2012-05-16 22:15:38:
DEFINE_ADJUST里面保存温度那一步,换成下面这样试试:
C_UDMI(c,t,0)=C_T(c,t);
DEFINE_SOURCE里的自然就变成:
dT=(C_T(c,t)-C_UDMI(c,t,0))/RP_Get_Real("physical-time-step";
我觉得用UDM比用 ...

按你的思路dT会恒等于0.
应该是C_UDMI(c,t,0)=C_T_M1(c,t);吧。但是M1的话这样的话会直接报错。
所以我用了C_UDSI_M1(c,t,0)
先做最重要的事情,再做次重要的事情
6楼2012-05-17 09:24:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

47425804

木虫 (正式写手)


★ ★ ★
xiegangmai: 金币+3, 谢谢参与! 2012-05-17 23:09:28
引用回帖:
6楼: Originally posted by b07988 at 2012-05-17 09:24:09:
按你的思路dT会恒等于0.
应该是C_UDMI(c,t,0)=C_T_M1(c,t);吧。但是M1的话这样的话会直接报错。
所以我用了C_UDSI_M1(c,t,0)

恩,你说的没错,这样确实会恒等于0。
但是C_T_M1(c,t)是没用的。
等于零是因为计算源项的时候温度还没有更新,所以两个温度值是相等的。
这个时候其实是需要两个UDM,分别保存上一步和再上一步的温度。
而且可以考虑全部在源项里完成,不用Adjust宏:
source=(C_UDMI(c,t,1)-C_UDMI(c,t,0))/TIME_STEP;
C_UDMI(c,t,0)=C_UDMI(c,t,1);
C_UDMI(c,t,1)=C_T(c,t);
return source;
当然,在刚开始计算的时候要注意下UDM的初始问题,防止出错。
从第三个时间步开始,就是正常的了。

» 本帖已获得的红花(最新10朵)

7楼2012-05-17 11:48:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hhucy

实习版主 (著名写手)

DOE锅炉工

uds可以使用的吧
人生那么多不确定,你怕什么
8楼2012-05-17 14:53:49
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

b07988

金虫 (正式写手)

星期六可以休息

引用回帖:
8楼: Originally posted by hhucy at 2012-05-17 14:53:49:
uds可以使用的吧

嗯,uds可以的。
先做最重要的事情,再做次重要的事情
9楼2012-05-17 16:33:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

b07988

金虫 (正式写手)

星期六可以休息

送鲜花一朵
引用回帖:
7楼: Originally posted by 47425804 at 2012-05-17 11:48:27:
恩,你说的没错,这样确实会恒等于0。
但是C_T_M1(c,t)是没用的。
等于零是因为计算源项的时候温度还没有更新,所以两个温度值是相等的。
这个时候其实是需要两个UDM,分别保存上一步和再上一步的温度。
而且 ...

这个方法挺好的,只要一开始的用DEFINE_INIT,对
C_UDMI(c,t,0)=0.;
C_UDMI(c,t,1)=0.;
就可以了!
我试了下,没有什么问题。谢谢了!

我也用uds试了下,其实也没有什么问题。只要打开uds就可以了。
先做最重要的事情,再做次重要的事情
10楼2012-05-17 16:45:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 b07988 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085601专硕,总分342求调剂,地区不限 +3 share_joy 2026-03-16 3/150 2026-03-17 13:41 by houyaoxu
[考研] 268求调剂 +7 一定有学上- 2026-03-14 8/400 2026-03-17 13:10 by zz820
[考博] 26申博 +4 八旬速览 2026-03-16 4/200 2026-03-17 13:00 by 轻松不少随
[考研] 一志愿南京大学,080500材料科学与工程,调剂 +4 Jy? 2026-03-16 4/200 2026-03-17 11:02 by gaoqiong
[考研] 302求调剂 +4 小贾同学123 2026-03-15 8/400 2026-03-17 10:33 by 小贾同学123
[考研] 一志愿苏州大学材料工程(085601)专硕有科研经历三项国奖两个实用型专利一项省级立项 +5 大火山小火山 2026-03-16 7/350 2026-03-17 10:26 by peike
[考研] 267一志愿南京工业大学0817化工求调剂 +6 SUICHILD 2026-03-12 6/300 2026-03-17 09:24 by 雾散后相遇lc
[考研] 化学工程321分求调剂 +10 大米饭! 2026-03-15 13/650 2026-03-17 06:57 by laoshidan
[考研] 304求调剂 +4 ahbd 2026-03-14 4/200 2026-03-16 16:48 by 我的船我的海
[考研] 0703化学调剂 +6 妮妮ninicgb 2026-03-15 9/450 2026-03-16 16:40 by houyaoxu
[考研] 311求调剂 +5 26研0 2026-03-15 5/250 2026-03-16 16:21 by a不易
[考研] 070303一志愿西北大学学硕310找调剂 +5 d如愿上岸 2026-03-12 8/400 2026-03-16 15:19 by peike
[考研] 070305求调剂 +3 mlpqaz03 2026-03-14 4/200 2026-03-15 11:04 by peike
[考研] 341求调剂 +4 番茄头--- 2026-03-10 4/200 2026-03-13 23:12 by JourneyLucky
[考研] 一志愿西南交大,材料专硕317求调剂 +5 lx8568 2026-03-11 5/250 2026-03-13 21:43 by peike
[考研] (081700)化学工程与技术-298分求调剂 +12 11啦啦啦 2026-03-11 35/1750 2026-03-13 21:25 by JourneyLucky
[考研] 315求调剂 +9 小羊小羊_ 2026-03-11 10/500 2026-03-13 21:13 by SXNU李老师
[考研] 296求调剂 +3 大口吃饭 身体健 2026-03-13 3/150 2026-03-13 10:31 by 学员8dgXkO
[考研] 270求调剂 085600材料与化工专硕 +3 YXCT 2026-03-11 3/150 2026-03-13 10:13 by houyaoxu
[考博] 26读博 +4 Rui135246 2026-03-12 10/500 2026-03-13 07:15 by gaobiao
信息提示
请填处理意见