| 查看: 1015 | 回复: 3 | ||
[求助]
修改边界剪切力为速度的二阶导数出现segmemtation fault
|
|
我想将我的边界层剪切力修改为t=d2u/dx2,u为边界层上一点的速度,x为切向方向。就是将剪切力设定为速度在切向方向的二阶导但是在直接使用C_UDSI_G这个宏的时候会出现segmentation fault。下面是我的代码: # include "udf.h" # define domain_ID 2 DEFINE_ADJUST(adjust_gradient, domain) { Thread *t; cell_t c; face_t f; domain = Get_Domain(domain_ID); /* Fill UDS with the variable. */ thread_loop_c(t,domain) begin_c_loop (c,t) { C_UDSI(c,t,0) = C_DUDX(c,t); } end_c_loop (c,t) } DEFINE_ON_DEMAND(store_gradient) { Domain *domain; face_t f; cell_t c; Thread *t; domain=Get_Domain(1); /* Fill the UDM with magnitude of gradient. */ thread_loop_c(t,domain) begin_c_loop (c,t) { C_UDMI(c,t,0) = C_UDSI_G(c,t,0)[0]; } end_c_loop (c,t) } DEFINE_PROFILE(shear_stressx, t,position) { face_t f; cell_t c0; real xw[ND_ND],xc[ND_ND],taux; real a = 0.00012; Thread *t0= t->t0; begin_f_loop(f,t) { c0= F_C0(f,t); F_CENTROID(xw,f,t); C_CENTROID(xc,c0,t0); taux=-a*C_UDMI(c0,t0,0); F_PROFILE(f,t,position) = taux; } end_f_loop(f,t) } 在execute on demand 的时候就会出现SEGMENTATION 错误,但是如果将C_UDMI(c,t,0) = C_UDSI_G(c,t,0)[0];改成C_UDMI(c,t,0) =NV_MAG(C_UDSI_G(c,t,0))算的话,又会使剪切力直接为零,球球各位大佬帮帮忙,感激不尽。 |
» 猜你喜欢
[调剂信息]211智能人工感知方向国家青年特聘专家课题组招收调剂研究生
已经有0人回复
[调剂信息]211智能人工感知方向国家青年特聘专家课题组招收调剂研究生
已经有0人回复
物理学I论文润色/翻译怎么收费?
已经有182人回复
0702一志愿吉大B区求调剂 本科期间发表一篇Sci
已经有2人回复
070200求调剂,一志愿某211,288分
已经有18人回复
法国博士后职位
已经有0人回复
重庆交大26年硕士生招生拟调剂通知已出!欢迎加入机器视觉与3D光学成像课题组。
已经有0人回复
广州大学光电信息工程专业调剂,招收物理学专业学生
已经有1人回复
0702一志愿吉大B区求调剂 本科期间发表一篇Sci
已经有0人回复
2楼2018-05-28 09:02:45
星星在我家门
木虫 (著名写手)
热爱互联网
- 应助: 21 (小学生)
- 金币: 2024.1
- 散金: 1232
- 红花: 8
- 沙发: 1
- 帖子: 1070
- 在线: 173.8小时
- 虫号: 3229413
- 注册: 2014-05-23
- 专业: 传递过程

3楼2018-06-14 18:46:42
4楼2018-09-29 20:49:50














回复此楼