Main Content

laplacian

シンボリックな場のラプラシアン

説明

l = laplacian(f,v) は、直交座標のベクトル v について、シンボリックな場 fラプラシアンを返します。f が配列の場合、関数は f の各要素のラプラシアンを計算し、f と同じサイズの出力 l を返します。

l = laplacian(f) は、シンボリックな場 f のシンボリック変数から作成された既定のベクトルについて、f のラプラシアンを返します。

すべて折りたたむ

スカラー場 f(x,y,z)=sin(x)+y2+z3 のシンボリック関数を作成します。ベクトル (x,y,z) についてこの関数のラプラシアンを計算します。

syms x y z
f(x,y,z) = sin(x) + y^2 + z^3;
v = [x y z];
lf = laplacian(f,v)
lf(x, y, z) = 6z-sin(x)+2

別のスカラー場 g(x,y,z)=x2y+z を作成します。微分するベクトルを指定せずにラプラシアンを求めます。g はシンボリック スカラー変数の関数であるため、laplaciansymvar(g) で定義されている既定の変数について g のラプラシアンを求めます。

g(x,y,z) = x^2*y + z;
lg = laplacian(g)
lg(x, y, z) = 2y

R2023a 以降

シンボリックなベクトル場 F=[sin(x)+y2+z3x2y+z2] を作成します。(x,y,z) について、このベクトル場のラプラシアンを求めます。

syms x y z
F = [sin(x) + y^2 + z^3; x^2*y + z];
v = [x y z];
l = laplacian(F,v)
l = 

(6z-sin(x)+22y)

R2023a 以降

シンボリック行列変数 X として 3 行 1 列のベクトルを作成します。X の既存の定義を維持したまま、X の関数であるスカラー場をシンボリック行列関数 ψ(X) として作成します。

syms X [3 1] matrix
syms psi(X) [1 1] matrix keepargs

ψ(X) の勾配の発散が ψ(X) のラプラシアン、つまり XX ψ(X)=ΔXψ(X) に等しいことを示します。

divOfGradPsi = divergence(gradient(psi,X),X)
divOfGradPsi(X) = ΔX ψ(X)
lapPsi = laplacian(psi,X)
lapPsi(X) = ΔX ψ(X)

X の関数であるベクトル場をシンボリック行列関数 A(X) として作成します。

syms A(X) [3 1] matrix keepargs

A(X) の発散の勾配から A(X) の回転の回転を引いたものが A(X) のラプラシアン、つまり XXA(X)-X×X×A(X)=ΔXA(X) に等しいことを示します。

identityA = gradient(divergence(A,X),X) - curl(curl(A,X),X)
identityA(X) = ΔX A(X)

入力引数

すべて折りたたむ

シンボリックな場。シンボリック式、シンボリック関数、シンボリック行列変数、またはシンボリック行列関数として指定します。入力する場は、スカラー、ベクトル、行列、または多次元配列にすることができ、入力の各要素に対してラプラシアンが計算されます。

  • f がシンボリック スカラー変数の関数であり、fsym 型または symfun 型である場合、ベクトル vsym 型または symfun 型でなければならない。

  • f がシンボリック行列変数の関数であり、fsymmatrix 型または symfunmatrix 型である場合、ベクトル vsymmatrix 型または symfunmatrix 型でなければならない。

データ型: sym | symfun | symmatrix | symfunmatrix

ラプラシアンを求める対象のベクトル。シンボリック スカラー変数のベクトル、シンボリック関数、シンボリック行列変数、またはシンボリック行列関数として指定します。

  • v を指定せず、f がシンボリック スカラー変数の関数である場合、既定では、laplaciansymvar(f) で定義された変数の順序で、f のシンボリック スカラー変数からベクトル v を構成する。

  • vsymmatrix 型のシンボリック行列変数である場合、v1N 列または N1 列のサイズでなければならない。

  • v がスカラーの場合、laplacian(f,v) = diff(f,2,v) となる。

データ型: sym | symfun | symmatrix | symfunmatrix

制限

  • 現在、Symbolic Math Toolbox™ は、シンボリック行列変数の関数 dot または関数 cross と、symmatrix 型および symfunmatrix 型の関数をサポートしていません。ベクトル微積分の恒等式がドット積またはクロス積を含む場合、ツールボックスは代わりに他のサポートされている関数でそれらの恒等式を表示します。シンボリック行列の変数と関数をサポートするすべての関数のリストを表示するには、コマンド methods symmatrixmethods symfunmatrix を使用します。

  • シンボリックな場 f の入力データ型が symmatrix または symfunmatrix の場合、laplacianf の偏導関数を評価しません。代わりに、シンボリック演算と式の並べ替え用に未評価の式を返します。

詳細

すべて折りたたむ

ラプラシアン

ベクトル x = (x1,...,xn) に関するスカラー場 f のラプラシアン (ラプラスの微分演算子) は、x1,...,xn に関する f の 2 階微分の和になります。

Δxf=i=1n2fxi2

f がベクトル場またはテンソル場 (多次元配列) である場合、ラプラシアン演算子は f の各要素に適用されます。

代替方法

スカラー関数または関数式のラプラシアンは、その関数または式の勾配の発散です。

Δf=(f)

シンボリックなスカラー場 f について、関数 divergence と関数 gradient を使用してラプラシアンを計算することもできます。

syms f(x,y)
divergence(gradient(f(x,y)),[x y])

バージョン履歴

R2012a で導入

すべて展開する