最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

COMSOL操作符和数学函数

来源:动视网 责编:小OO 时间:2025-10-04 18:32:01
文档

COMSOL操作符和数学函数

用的COMSOL操作符和数学函数算符d(f,x)f对x方向的微分1.使用d算符来计算一个变量对另一个变量的导数,如:d(T,x)指变量T对x求导,而d(u^2,u)=2*u等;2.如果模型中含有任何变量,建模中使用d算符会使模型变为非线性;3.在解的后处理上使用d算符,可以使用一些预置的变量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;4.pd算符与d算符类似,但对变量不使用链式法则;5.d(E,TIME)求解表达式E的时间导数;6.dtang算符可以计算表达式在边界
推荐度:
导读用的COMSOL操作符和数学函数算符d(f,x)f对x方向的微分1.使用d算符来计算一个变量对另一个变量的导数,如:d(T,x)指变量T对x求导,而d(u^2,u)=2*u等;2.如果模型中含有任何变量,建模中使用d算符会使模型变为非线性;3.在解的后处理上使用d算符,可以使用一些预置的变量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;4.pd算符与d算符类似,但对变量不使用链式法则;5.d(E,TIME)求解表达式E的时间导数;6.dtang算符可以计算表达式在边界
用的COMSOL操作符和数学函数

算符

d(f,x)f对x方向的微分

1.使用d算符来计算一个变量对另一个变量的导数,如:

d(T,x)指变量T对x求导,而d(u^2,u)=2*u等;

2.如果模型中含有任何变量,建模中使用d算符会

使模型变为非线性;

3.在解的后处理上使用d算符,可以使用一些预置的变

量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;

4. pd算符与d算符类似,但对变量不使用链式法则;

5. d(E,TIME)求解表达式E的时间导数;

6. dtang算符可以计算表达式在边界上的切向微分(d算

符无法计算),在求解域上使用dtang等价于d,dtang

只求解对坐标变量的微分,但需要注意的是并不是所

有的量都有切向微分。

pd(f,x)f对x方向的微分

pd和d的区别:

d(u+x,x)=ux+1,d(u,t)=ut,u和x,t等有关

pd(u+x,x)=1,pd(u,t)=0,u是的和x,t无关

dtang(f,x)边界上f对x的切向微分

在边界上d(u,x)不能定义,但是可以使用dtang(u,x),dtang

付出基本的微分法则,如乘积法则和链式法则,但是需要

指出的是,dtang(x,x)不一定等于1。

test(expr)试函数

用于方程弱形式的算符,test(F(u,∇u))等价于:

var(expr,fieldname1,变异算子fieldname2, ...)用于弱形式,它和test算符功能相同,但是仅用于某些特

定的场中;

如var(F(u,∇u, v,∇v),a),变量u是a场的变量,而v不是。

试函数之只作用于变量u。

nojac(expr)对Jacobian矩阵没有贡献

将表达式排除在Jacobian计算外,这对那些对Jacobian贡

献不大,但是计算消耗很大的变量是否有效;

k-e 湍流模型就是利用nojac算符来提高计算性能的例子。up(expr)上邻近估算表达式

up,down,mean算符只能用在边界上,对于一个表达式

或变量在边界处两边不连续,COMSOL通常显示边界的

平均值,使用up,down可计算某个方向上的值。

down(expr)下邻近估算表达式

mean(expr)邻近边界上的平均值

depends(expr)查看某个表达式是否依赖于求解结果

isdefined(variable)变量是否定义

dest(expr)在目标端计算积分耦合表达式

dest算符强制将source points上的表达式用在destination

points上。

例如:u/((dest(x)-x)^2+(dest(y)-y)^2)

if(cond,expr1,expr2)条件表达式

例如:if(x==0,1,sin(x)/x)

isinf(expr)表达式的值是否是无穷大

islinear(expr)解是否是线性函数

isnan(expr)表达式是否是非数

with调用某个解

例如with(3,u^2)指调用解3的u^2用于本次求解;

with只能用于解的后处理,不能用于建模;

at调用解的某个时间例如:at(12.5,u)

timeint表达式的时间积分

timeint(t1,t2,expr,tol,minlen),t1,t2需要是实数,expr是表

达式,tol是容差,默认大小为1e-8,minlen设置积分的

最短路径,它需要是正数,默认长度为1e-6。

timeint只能用于解的后处理,不能用于建模;

timeavg表达式的时间积分平均值

timeavg(t1,t2,expr,tol,minlen)

linpoint调用线性化点

lindev计算在线性化点的表达式

当解存储了一个线性化点,那么表达式在线性化点上先线

性化,然后用当前的解来计算;

特别的:当f线性依赖于解,那么lindev(f)=f,如果不依

赖则lindev(f)=0;

如果解没有线性化点,那么会报错;

lintotal调用线性化点的和和线性扰动

lintotalavg在各相中计算平均lintotal

lintotalrms在各相中计算lintotal的RMS

lintotalrms(f)=sqrt(lintotalavg(abs(f)^2))

lintotalpeak在各相中计算lintotal的最大值

linsol调用标准解,如linpoint或lintotal

linzero计算表达式的根

linper标记一个荷载项用于线性扰动求解器

ppr精确的派生修复

用polynomial-preserving recovery计算表达式中所有用

lagrange形函数差分的变量,如e=ux+vy

ppr(e^2)=(ppr(ux)+ppr(vy))^2

pprint在各求解域群中精确派生修复

用这些操作符来计算梯度计算中的离散误差

ux-pprint(ux)

reacf反应力和反应流的精确积分

用于表面积分,如在结构力学中,u,v与x,y位移有关,用reacf(u),reaf(v)计算x,y方向上的反应力;

reacf在弱贡献中无效;

adj(expr)用伴随灵敏度计算表达式

fsens(expr)用函数灵敏度计算表达式

sens(expr,i)用第二个参数向前灵敏度计算表达式

∂u/∂q=sens(u,q)

realdot(a,b)两个复数的点积

realdot(a,b), real(a*conj(b))

shapeorder(variable)差分一个变量使用的单元级数

prev(expr,i)在i步前计算表达式

向后Euler法:(u-prev(u,1))/timestep

bdf(expr,i)应用级数为i的向后差分公式

bdf(u,1) = (u-prev(u,1))/timestep

subst(expr, expr1_orig, , expr1_subst,...)用其他变量或表达式替换一个表达式subst(hmnf.nutildeinit,p,pin_stat)

circint(r,expr), circavg(r,expr), diskint(r,expr), diskavg(r,expr), sphint(r,expr), sphavg(r,expr), ballint(r,expr), ballavg(r,expr)计算在一个特殊的形状,曲率为r时的表达式积分或平均值

scope.ati(coordinate exprs,expr)计算表达式在i维下的表达式coordinate exprs值

root.mod1.at1(0,y,dom)在2D的一条边的点(0,y)上计算dom

数学函数abs绝对值abs(x)

acos反余弦acos(x) acosh反双曲余弦(in radians)acosh(x)

acot反余切(in radians)acot(x) acoth反双曲余切(in radians)acoth(x) acsc反余割(in radians)acsc(x) acsch反双曲余割(in radians)acsch(x)

arg相位角(in radians)arg(x)

asec反正割(in radians)asec(x) asech反双曲正割(in radians)asech(x)

asin反正弦(in radians)asin(x)

asinh反双曲正弦(in radians)asinh(x)

atan反正切(in radians)atan(x)

atan2四象限反正切(in radians)atan2(y,x) atanh反双曲正切(in radians)atanh(x) besselj一类Bessel函数besselj(a,x) bessely二类Bessel函数bessely(a,x) besseli一类改性Bessel函数besseli(a,x) besselk二类改性Bessel函数besselk(a,x) ceil上约数ceil(x)

conj复共轭conj(x)

cot余切cot(x)

coth双曲余切coth(x)

csc余割csc(x)

csch双曲余割csch(x)

eps相对精度eps

erf误差函数erf(x)

exp指数函数exp(x)

floor下约数floor(x) gamma Gamma函数gamma(x)

i,j虚数单位i

imag虚部imag(u)

inf无穷inf

log自然对数ln log(x)

log10对数,底数为10log10(x)

log2对数,底数为2log2(x)

max最大值max(a,b)

min最小值min(a,b)

mod取模mod(a,b) NaN,非数nan

pi Pi pi

psi Psi函数和它的衍生物psi(x,k) range建立一个数列range(a,step,b)real实部real(u)

round四舍五入round(x)

sec正割sec(x)

sech双曲正割sech(x)

sign符号函数sign(u)

sin正弦sin(x)

sinh双曲正弦sinh(x)

sqrt根号sqrt(x)

tan正切tan(x)

tanh双曲正切tanh(x)

预置的变量

Time t

Frequency freq

Eigenvalues lambda

Position x, y, z, r, X, Y, Z, R

Edge/surface parameters s, s1, s2

Edge/surface normals n, nx, ny, nz, nr

Edge tangents tx, ty, tz, tr

Surface tangents t1x, t1y, t1z, t2x, t2y, t2z

Edge/surface upward normals un, unx, uny, unz,参考方向的左边Edge/surface downward normals dn, dnx, dny, dnz,参考方向的右边Numerical constants eps, i, j, pi

Mesh information h, dom, meshtype, meshelement, dvol, qual,

reldetjac, reldetjacmin

range函数的用法

range( a,(b-a)/(n-1),b)

10^range(-3,3) 产生:10-3, 10-2, …, 103

1^range(1,10) 产生10个1

其他的平滑函数

flsmhs y=flsmhs(x,scale)

在阶跃的两端都存在连续过冲的平滑Heaviside函数。

在-scale < x < scale处,flsmhs和flsmsign为7阶多项式,因此它的

2阶导数仍然连续;它满足理想Heaviside函数,因此存在一定量的

过冲。

flsmsign y = flsmsign(x,scale)

近似于符号函数y=sign(x)在-scale < x < scale处平滑过渡

flc1hs不含过冲的一阶连续导数的平滑Heaviside函数,导数fldc1hs

flc2hs不含过冲的二阶连续导数的平滑Heaviside函数,导数fldc2hs

文档

COMSOL操作符和数学函数

用的COMSOL操作符和数学函数算符d(f,x)f对x方向的微分1.使用d算符来计算一个变量对另一个变量的导数,如:d(T,x)指变量T对x求导,而d(u^2,u)=2*u等;2.如果模型中含有任何变量,建模中使用d算符会使模型变为非线性;3.在解的后处理上使用d算符,可以使用一些预置的变量,如:uxx,d(ux,x),d(d(u,x),x)都是等效的;4.pd算符与d算符类似,但对变量不使用链式法则;5.d(E,TIME)求解表达式E的时间导数;6.dtang算符可以计算表达式在边界
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top