主要内容

f系数specifyCoefficients

本节描述如何编写的系数f在方程中

2 u t 2 + d u t · ( c u ) + 一个 u = f

或类似的方程。现在的问题是如何编写的系数f通过包含在PDE模型specifyCoefficients

N在方程的数目,看见吗使用PDE工具箱方程可以解决。给f是下面的:

  • 如果f是恒定的,给一个列向量N组件。例如,如果N= 3,f可能是:

    f = [3、4、10];
  • 如果f不是常数,给出一个函数处理。函数必须的形式

    fcoeffunction(位置、状态)

    solvepde通过了位置状态结构fcoeffunction。函数必须返回一个矩阵的大小N——- - - - - -Nr,在那里Nr点位置的数量吗solvepde传球。Nr等于的长度location.x或任何其他位置字段。这个函数应该评估f在这些点。

    传递系数specifyCoefficients一个函数处理,如

    specifyCoefficients(模型,“f”@fcoeffunction,)
    • 位置是一种结构与这些字段:

      • location.x

      • location.y

      • location.z

      • location.subdomain

      的字段x,y,z代表了x- - - - - -,y- - - - - -,z——的点的坐标函数计算系数值。的子域名字段表示的子域数字,目前仅适用于二维模型。位置字段是行向量。

    • 状态是一种结构与这些字段:

      • state.u

      • state.ux

      • state.uy

      • state.uz

      • state.time

      state.u字段表示解决方案的当前值u。的state.ux,state.uy,state.uz字段是解决方案的偏导数(∂的估计u/∂x,∂u/∂y,∂u/∂z)的对应点位置的结构。解决方案和梯度估计N——- - - - - -Nr矩阵。的state.time字段是一个标量代表时间时间模型。

例如,如果N= 3,f可能是:

函数f = fcoeffunction(位置、状态)N = 3;%的方程nr =长度(location.x);%的列数f = 0 (N, nr);f %分配现在% f的特定的函数形式:f(1) =位置。x -位置。y+state.u(1,:); f(2,:) = 1 + tanh(state.ux(1,:)) + tanh(state.uy(3,:)); f(3,:) = (5 + state.u(3,:)).*sqrt(location.x.^2 + location.y.^2);

这代表了系数函数

f = ( x y + u ( 1 ) 1 + 双曲正切 ( u ( 1 ) / x ) + 双曲正切 ( u ( 3 ) / y ) ( 5 + u ( 3 ) ) x 2 + y 2 ]

相关的话题