石井俊全著「一般相対性理論を一歩一歩数式で理解する」ベレ出版の第1章をSymPyでできるか試してみました。
以後CordSys3Dを使うことにします。
reset
from sympy import *
from sympy.vector import CoordSys3D,gradient,divergence,curl
init_printing()
f,A_x,A_y,A_z=symbols('f,A_x:z')
R=CoordSys3D('R')
F=f(R.x,R.y,R.z)
A=A_x(R.x,R.y,R.z)*R.i+A_y(R.x,R.y,R.z)*R.j+A_z(R.x,R.y,R.z)*R.k
(F,A)
$\mathbf{A}$は$\mathbf{\hat{i}_{R}}$,$\mathbf{\hat{j}_{R}}$,$\mathbf{\hat{k}_{R}}$のベクトル表現になっています。行列にしてみます
Matrix([A.coeff(R.i),A.coeff(R.j),A.coeff(R.k)])
公式 $\nabla{}\dot{}\left(f(\boldsymbol{x})\boldsymbol{A}(\boldsymbol{x})\right)= f(\boldsymbol{x})\nabla{}\dot{}\boldsymbol{A}(\boldsymbol{x})+\nabla{}f(\boldsymbol{x})\dot{}\boldsymbol{A}(\boldsymbol{x})$
fA=F*A
fA
左辺 $\nabla{}\dot{}\left(f(\boldsymbol{x})\boldsymbol{A}(\boldsymbol{x})\right)$
eq1=divergence(fA)
eq1
str='\\nabla{}\\dot{}\\left(f(\\boldsymbol{x})\\boldsymbol{A}(\\boldsymbol{x})\\right)='+latex(eq1)
str=str.replace('{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','')
str=str.replace('frac','cfrac')
print(str)
$\nabla{}\dot{}\left(f(\boldsymbol{x})\boldsymbol{A}(\boldsymbol{x})\right)=\operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} f + \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} f + \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} f + f \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{x}} + f \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{y}} + f \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{z}} $
replaceが沢山あると可読性が低下するので関数を作成し、まとめることにします。
def replaces(str,word1s,word2s):
for (word1,word2) in zip (word1s,word2s):
str=str.replace(word1,word2)
return str
str='\\nabla{}\\dot{}\\left(f(\\boldsymbol{x})\\boldsymbol{A}(\\boldsymbol{x})\\right)='+latex(eq1)
word1s=['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','frac']
word2s=['','cfrac']
str=replaces(str,word1s,word2s)
print(str)
$ \nabla{}\dot{}\left(f(\boldsymbol{x})\boldsymbol{A}(\boldsymbol{x})\right)=\operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} f + \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} f + \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} f + f \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{x}} + f \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{y}} + f \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{z}} $
右辺 $f(\boldsymbol{x})\nabla{}\dot{}\boldsymbol{A}(\boldsymbol{x})+\nabla{}f(\boldsymbol{x})\dot{}\boldsymbol{A}(\boldsymbol{x})$
eq2=f(R.x,R.y,R.z)*divergence(A)+gradient(f(R.x,R.y,R.z)).dot(A)
eq2=expand(eq2)
eq2
$\xi_2$などを消去し整理します。先ほどの関数replacesを少し改造します。
def replaces(str,word1s,word2s):
for (word1,word2) in zip (word1s,word2s):
if 'xi' in word1: # \xiとするとcodec errorとなる
str=str.replace(word1,word2,3)
else:
str=str.replace(word1,word2)
return str
str='f(\\boldsymbol{x})\\nabla{}\\dot{}\\boldsymbol{A}(\\boldsymbol{x})+\\nabla{}f(\\boldsymbol{x})\\dot{}\\boldsymbol{A}(\\boldsymbol{x})='
str=str+latex(eq2)
word1=['\\xi_{2}','\\xi_{2}','\\xi_{2}','\\xi_{2}','\\xi_{2}','\\xi_{2}']
word2=['\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}','\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}']
word1.extend(['\\mathbf{{x}_{R}}=\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}=\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}=\\mathbf{{z}_{R}}'])
word2.extend(['','',''])
word1.extend(['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','\\left.','\\right|_{\\substack{ }}','frac'])
word2.extend(['','','','cfrac'])
str=replaces(str,word1,word2)
print(str)
$f(\boldsymbol{x})\nabla{}\dot{}\boldsymbol{A}(\boldsymbol{x})+\nabla{}f(\boldsymbol{x})\dot{}\boldsymbol{A}(\boldsymbol{x})=\operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} f + \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} f + \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} f + f \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{x}} + f \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{y}} + f \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{z}} $
残念ながら$\xi_2$が残っていると左右の式は異なると表示されてしまいます。
eq1==eq2
公式 $\nabla{}\times{}(\nabla{}\times{}\boldsymbol{A}(\boldsymbol{x}))=
\nabla{}(\nabla{}\dot{}\boldsymbol{A}(\boldsymbol{x}))-
\Delta{}\boldsymbol{A}(\boldsymbol{x})$
なお$\Delta{}\boldsymbol{A}(\boldsymbol{x})=\left(\Delta{}A_x(\boldsymbol{x}),\Delta{}A_y(\boldsymbol{x}),\Delta{}A_z(\boldsymbol{x})\right)$
左辺 $\nabla{}\times{}(\nabla{}\times{}\boldsymbol{A}(\boldsymbol{x}))$
eq1=curl(curl(A))
eq1
整理します
str='\\nabla{}\\times{}(\\nabla{}\\times{}\\boldsymbol{A}(\\boldsymbol{x}))='+latex(eq1)
word1s=['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','frac','(',')']
word2s=['','cfrac','\\left(','\\right)']
str=replaces(str,word1s,word2s)
print(str)
$\nabla{}\times{}\left(\nabla{}\times{}\boldsymbol{A}\left(\boldsymbol{x}\right)\right)=\left(- \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{x}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{z}}\right)\mathbf{\hat{i}_{R}} + \left(\cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{x}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{z}}\right)\mathbf{\hat{j}_{R}} + \left(\cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{z}}\right)\mathbf{\hat{k}_{R}} $
右辺 $\nabla{}(\nabla{}\dot{}\boldsymbol{A}(\boldsymbol{x}))-\Delta{}\boldsymbol{A}(\boldsymbol{x})$
eq2=gradient(divergence(A))-divergence(gradient(A_x(R.x,R.y,R.z)))*R.i
eq2=eq2-divergence(gradient(A_y(R.x,R.y,R.z)))*R.j-divergence(gradient(A_z(R.x,R.y,R.z)))*R.k
eq2
str='\\nabla{}(\\nabla{}\\dot{}\\boldsymbol{A}(\\boldsymbol{x}))-\\Delta{}\\boldsymbol{A}(\\boldsymbol{x})='+latex(eq2)
word1s=['\\xi_{2}','\\xi_{2}','\\xi_{2}']
word2s=['\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}']
word1s=word1s+word1s+word1s
word2s=word2s+word2s+word2s
word1s.extend(['\\mathbf{{x}_{R}}=\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}=\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}=\\mathbf{{z}_{R}}'])
word2s.extend(['','',''])
word1s.extend(['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','\\left.','\\right|_{\\substack{ }}','frac'])
word2s.extend(['','','','cfrac'])
word1s.extend(['(',')'])
word2s.extend(['\\left(','\\right)'])
str=replaces(str,word1s,word2s)
print(str)
$\nabla{}\left(\nabla{}\dot{}\boldsymbol{A}\left(\boldsymbol{x}\right)\right)-\Delta{}\boldsymbol{A}\left(\boldsymbol{x}\right)=\left(\cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{x}} - \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{x}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{x}} \right)\mathbf{\hat{i}_{R}} + \left(\cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{y}} \right)\mathbf{\hat{j}_{R}} + \left(\cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}^{2}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}^{2}} \operatorname{A_{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}^{2}} \operatorname{A_{z}} \right)\mathbf{\hat{k}_{R}} $
ここから先は自動的には計算してくれません。
$=$
$
\left(\cfrac{\partial^{2}}{\partial \mathbf{{y}{R}}\partial \mathbf{{x}{R}}} \operatorname{A{y}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}{R}}\partial \mathbf{{x}{R}}} \operatorname{A{z}} - \cfrac{\partial^{2}}{\partial \mathbf{{y}{R}}^{2}} \operatorname{A{x}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}{R}}^{2}} \operatorname{A{x}} \right)\mathbf{\hat{i}_{R}}
ここで $\cfrac{\partial^2 f}{\partial{x}\partial{y}}=\cfrac{\partial^2 f}{\partial{y}\partial{x}}$、 具体的には $\cfrac{\partial^2 A_y}{\partial{}\mathbf{y_R}\partial{}\mathbf{x_R}}= \cfrac{\partial^2 A_y}{\partial{}\mathbf{x_R}\partial{}\mathbf{y_R}}$、 などと仮定すると左辺=右辺となります。
公式 $\nabla{}\dot{}(\boldsymbol{A}(\boldsymbol{x})\times{}\boldsymbol{B}(\boldsymbol{x}))= \boldsymbol{B}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{A}(\boldsymbol{x}))- \boldsymbol{A}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{B}(\boldsymbol{x})) $
B_x,B_y,B_z=symbols('B_x:z')
B=B_x(R.x,R.y,R.z)*R.i+B_y(R.x,R.y,R.z)*R.j+B_z(R.x,R.y,R.z)*R.k
B
左辺 $\nabla{}\dot{}(\boldsymbol{A}(\boldsymbol{x})\times{}\boldsymbol{B}(\boldsymbol{x}))$
eq1=divergence(A.cross(B))
eq1
str='\\nabla{}\\dot{}(\\boldsymbol{A}(\\boldsymbol{x})\\times{}\\boldsymbol{B}(\\boldsymbol{x}))='+latex(eq1)
word1s=['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','frac']
word2s=['','cfrac']
str=replaces(str,word1s,word2s)
print(str)
$\nabla{}\dot{}(\boldsymbol{A}(\boldsymbol{x})\times{}\boldsymbol{B}(\boldsymbol{x}))=\operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{B_{y}} - \operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{B_{z}} - \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{B_{x}} + \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{B_{z}} + \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{B_{x}} - \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{B_{y}} - \operatorname{B_{x}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{y}} + \operatorname{B_{x}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{z}} + \operatorname{B_{y}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{x}} - \operatorname{B_{y}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{z}} - \operatorname{B_{z}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{x}} + \operatorname{B_{z}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{y}} $
右辺 $\boldsymbol{B}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{A}(\boldsymbol{x}))- \boldsymbol{A}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{B}(\boldsymbol{x}))$
eq2=B.dot(curl(A))-A.dot(curl(B))
eq2=expand(eq2)
eq2
str='\\boldsymbol{B}(\\boldsymbol{x})\\dot{}(\\nabla{}\\times{}\\boldsymbol{A}(\\boldsymbol{x}))-\\boldsymbol{A}(\\boldsymbol{x})\\dot{}(\\nabla{}\\times{}\\boldsymbol{B}(\\boldsymbol{x}))='
str=str+latex(eq2)
word1s=['\\xi_{2}','\\xi_{2}','\\xi_{2}']
word2s=['\\mathbf{{z}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}']
word1s.extend(['\\xi_{2}','\\xi_{2}','\\xi_{2}'])
word2s.extend(['\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{x}_{R}}'])
word1s.extend(['\\xi_{2}','\\xi_{2}','\\xi_{2}'])
word2s.extend(['\\mathbf{{z}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}'])
word1s.extend(['\\xi_{2}','\\xi_{2}','\\xi_{2}'])
word2s.extend(['\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}','\\mathbf{{x}_{R}}'])
word1s.extend(['\\mathbf{{x}_{R}}=\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}=\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}=\\mathbf{{z}_{R}}'])
word2s.extend(['','',''])
word1s.extend(['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}'])
word2s.extend([''])
word1s.extend(['\\left.','\\right|_{\\substack{ }}','frac'])
word2s.extend(['','','cfrac'])
str=replaces(str,word1s,word2s)
print(str)
$\boldsymbol{B}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{A}(\boldsymbol{x}))-\boldsymbol{A}(\boldsymbol{x})\dot{}(\nabla{}\times{}\boldsymbol{B}(\boldsymbol{x}))=\operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{B_{y}} - \operatorname{A_{x}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{B_{z}} - \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{B_{x}} + \operatorname{A_{y}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{B_{z}} + \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{B_{x}} - \operatorname{A_{z}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{B_{y}} - \operatorname{B_{x}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{y}} + \operatorname{B_{x}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{z}} + \operatorname{B_{y}} \cfrac{\partial}{\partial \mathbf{{z}_{R}}} \operatorname{A_{x}} - \operatorname{B_{y}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{z}} - \operatorname{B_{z}} \cfrac{\partial}{\partial \mathbf{{y}_{R}}} \operatorname{A_{x}} + \operatorname{B_{z}} \cfrac{\partial}{\partial \mathbf{{x}_{R}}} \operatorname{A_{y}} $
公式 $\nabla{}\times{}(\nabla{}f(\boldsymbol{x}))=\boldsymbol{0}$
eq=curl(gradient(f(R.x,R.y,R.z)))
eq
str='\\nabla{}\\times{}(\\nabla{}f(\\boldsymbol{x}))='+latex(eq)
# str=latex(eq)
word1s=['\\xi_{2}','\\xi_{2}','\\xi_{2}']
word2s=['\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}','\\mathbf{{x}_{R}}']
word1s=word1s+word1s
word2s.extend(['\\mathbf{{z}_{R}}','\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}'])
word1s.extend(['\\mathbf{{x}_{R}}=\\mathbf{{x}_{R}}','\\mathbf{{y}_{R}}=\\mathbf{{y}_{R}}','\\mathbf{{z}_{R}}=\\mathbf{{z}_{R}}'])
word2s.extend(['','',''])
word1s.extend(['{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','\\left.','\\right|_{\\substack{ }}','frac'])
word2s.extend(['','','','cfrac'])
str=replaces(str,word1s,word2s)
str=str.replace('(','\\left(').replace(')','\\right)')
print(str)
$\nabla{}\times{}\left(\nabla{}f\left(\boldsymbol{x}\right)\right)=\left( \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{y}_{R}}} f - \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{z}_{R}}} f \right)\mathbf{\hat{i}_{R}} + \left(- \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{x}_{R}}} f + \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{z}_{R}}} f \right)\mathbf{\hat{j}_{R}} + \left( \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{x}_{R}}} f - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{y}_{R}}} f \right)\mathbf{\hat{k}_{R}} $
ここで
$\cfrac{\partial^2 f}{\partial{x}\partial{y}}=\cfrac{\partial^2 f}{\partial{y}\partial{x}}$
とすると
$=0\mathbf{\hat{i}_{R}}+0\mathbf{\hat{j}_{R}}+0\mathbf{\hat{k}_{R}}
=\mathbf{0}$
公式 $\nabla{}\dot{}(\nabla\times{\boldsymbol{A}(\boldsymbol{x})})=0$
eq=divergence(curl(A))
eq
str='\\nabla{}\\dot{}(\\nabla\\times{\\boldsymbol{A}(\\boldsymbol{x})})='+latex(eq)
str=str.replace('{\\left (\\mathbf{{x}_{R}},\\mathbf{{y}_{R}},\\mathbf{{z}_{R}} \\right )}','')
str=str.replace('frac','cfrac')
print(str)
$ \nabla{}\dot{}(\nabla\times{\boldsymbol{A}(\boldsymbol{x})})=- \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{x}} + \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{z}_{R}}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{z}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{y}} - \cfrac{\partial^{2}}{\partial \mathbf{{x}_{R}}\partial \mathbf{{y}_{R}}} \operatorname{A_{z}} + \cfrac{\partial^{2}}{\partial \mathbf{{y}_{R}}\partial \mathbf{{x}_{R}}} \operatorname{A_{z}} $ $ =0 $
ベクトル場$\boldsymbol{A}(\boldsymbol{x})$が直方体の領域$R$全体で、$\nabla\times\boldsymbol{A}(\boldsymbol{x})=0$となるとき、スカラー場$f(\boldsymbol{x})$が存在して、$\boldsymbol{A}(\boldsymbol{x})=-\nabla{}f(\boldsymbol{x})$と表される。$f(\boldsymbol{x})$をスカラーポテンシャルという。
ベクトル場$\boldsymbol{A}(\boldsymbol{x})$が、直方体の領域$R$で、$\nabla{}\boldsymbol{A}(\boldsymbol{x})=0$を満たすとき、ベクトル場$\boldsymbol{B(\boldsymbol{x})}$が存在して、$\boldsymbol{A(\boldsymbol{x})}=\nabla\times\boldsymbol{B}(\boldsymbol{x})$と表せる。 $\boldsymbol{B}(\boldsymbol{x})$をベクトルポテンシャルという。
$\displaystyle \int_a^b f(x(s),y(s))ds=\int_\alpha^\beta f(x(t),y(t))\cfrac{ds}{dt}dt=\int_\alpha^\beta f(x(t),y(t))\sqrt{\left(\cfrac{dx}{dt}\right)^2+\left(\cfrac{dy}{dt}\right)^2}dt$
reset
from sympy import *
init_printing()
x,y,t=symbols('x,y,t')
$f(x,y)=x^2y$の線積分。
$C_1: (t,2-t)$, $(0\leqq{}t\leqq{}2)$
$C_2: (2\sin\theta,2\cos\theta)$, $\left(0\leqq \theta \leqq \cfrac{\pi}{2}\right)$
線積分は
(1)integrateとsqrtを組み合わせる方法と(2)line_integrateを使う方法があります。
$\displaystyle\int_C f(x,y)ds=\int_0^{2}f(x(t),y(t))\cfrac{ds}{dt}dt
=\int_0^2 t^2 (2-t)\sqrt{\left(\cfrac{dx}{dt}\right)^2+\left(\cfrac{dy}{dt}\right)^2}dt$
\intで$\int$、\displaystyle\intで$\displaystyle\int$になります。
C=[t,2-t]
f=C[0]**2*C[1]
eq=integrate(f*sqrt(diff(C[0],t)**2+diff(C[1],t)**2),[t,0,2]) # **0.5だと少数表現となる
(C,f,eq)
C=Curve([t,2-t],(t,0,2))
eq=line_integrate(x**2*y,C,[x,y])
(C,eq)
$\displaystyle\int_C f(x,y)ds=\int_0^{\frac{\pi}{2}}f(x(\theta),y(\theta))\cfrac{ds}{d\theta}d\theta =\int_0^{\frac{\pi}{2}} (2\sin\theta)^2 (2\cos\theta)\sqrt{\left(\cfrac{dx}{d\theta}\right)^2+\left(\cfrac{dy}{d\theta}\right)^2}d\theta$
θ=symbols('θ')
C=[2*sin(θ),2*cos(θ)]
f=C[0]**2*C[1]
integrate(f*sqrt(diff(C[0],θ)**2+diff(C[1],θ)**2),[θ,0,pi/2])
C=Curve([2*sin(θ),2*cos(θ)],(θ,0,pi/2))
line_integrate(x**2*y,C,[x,y])
曲線$C$がパラメータ$t$で$(x(t),y(t),z(t))$, $(\alpha\leqq t \leqq \beta)$、
ベクトル場$\boldsymbol{F}$が$\boldsymbol{F}=(F_x(x,y,z),F_y(x,y,z),F_z(x,y,z)$のとき
$\boldsymbol{F}$の$C$に沿った線積分$\displaystyle \int_c\boldsymbol{F}\dot{}d\boldsymbol{r}$は
$=\displaystyle \int_a^b\left( F_x(x(t),y(t),z(t)) \cfrac{dx}{dt}+ F_y(x(t),y(t),z(t)) \cfrac{dy}{dt}+
F_z(x(t),y(t),z(t)) \cfrac{dz}{dt}\right)dt \\=
\displaystyle \int_{x(\alpha)}^{x(\beta)}F_x(x,y,z)dx+\int_{y(\alpha)}^{y(\beta)}F_y(x,y,z)dy+\int_{z(\alpha)}^{z(\beta)}F_z(x,y,z)dz
$
reset
from sympy import *
init_printing()
x,y,t=symbols('x,y,t')
ベクトル場$\boldsymbol{F}(x,y)=(x+1,xy)$、$C:(t^2,t)$, $0\leqq{}t\leqq{}2)$に沿って線積分
$\displaystyle\int_C \boldsymbol{F}(\boldsymbol{r}(t))\dot{}d\boldsymbol{r}(t)$
$=\displaystyle\int_0^2\boldsymbol{F}(t^2,t)\dot{}\cfrac{d\boldsymbol{r}(t)}{dt}dt$
$=\displaystyle\int_0^2 (t^2+1,t^3)\dot{}(2t,1)dt$
# tで積分する場合
C=Matrix([t**2,t])
F=Matrix([C[0]+1,C[0]*C[1]])
integrate(F.dot(diff(C,t)),(t,0,2))# スカラー場のルートがベクトル場ではベクトルの内積になった
置換積分するのは・・・とりあえず手作業でします。
$\displaystyle\int_C \boldsymbol{F}(\boldsymbol{r}(t))\dot{}d\boldsymbol{r}(t)$
$=\displaystyle\int_{x(1)}^{x(2)}F_xdx+\int_{y(1)}^{y(2)}F_ydy$
$=\displaystyle\int_0^4(x+1)dx+\int_0^2xydy$
$=\displaystyle\int_0^4(x+1)dx+\int_0^2y^3dy$
# x,yで積分する場合
integrate(x+1,(x,0,4))+integrate(y**3,(y,0,2))
$\boldsymbol{F}(x,y)=(x^2,x+y)$,$\boldsymbol{G}(x,y)=(2xy,x^2)$の2つのベクトル場に対し
$C_1:(2t,4t)$ $(0\leq t \leq 1)$
$C_2:(t,t^2)$ $(0\leq t \leq 2)$
のそれぞれに沿って線積分
# tで積分する場合
C1=Matrix([2*t,4*t])
C2=Matrix([t,t**2])
F=Matrix([C1[0]**2,C1[0]+C1[1]])
G=Matrix([2*C1[0]*C1[1],C1[0]**2])
eq1=integrate(F.dot(diff(C1,t)),(t,0,1))
eq2=integrate(G.dot(diff(C1,t)),(t,0,1))
F=Matrix([C2[0]**2,C2[0]+C2[1]])
G=Matrix([2*C2[0]*C2[1],C2[0]**2])
eq3=integrate(F.dot(diff(C2,t)),(t,0,2))
eq4=integrate(G.dot(diff(C2,t)),(t,0,2))
(eq1,eq2,eq3,eq4)
手作業で置換積分します。
$\displaystyle\int_{C_1}\boldsymbol{F}(x,y)d\boldsymbol{r}$
$=\displaystyle\int_0^{2}x^2dx+\int_0^{4}\left(\cfrac{1}{2}y+y\right)dy$
$\displaystyle\int_{C_1}\boldsymbol{G}(x,y)d\boldsymbol{r}$
$=\displaystyle\int_0^{2}2x\left(2x\right)dx+\int_0^{4}\left(\cfrac{1}{2}y\right)^2dy$
$\displaystyle\int_{C_2}\boldsymbol{F}(x,y)d\boldsymbol{r}$
$=\displaystyle\int_0^{2}x^2dx+\int_0^{4}\left(\sqrt{y}+y\right)dy$
$\displaystyle\int_{C_2}\boldsymbol{G}(x,y)d\boldsymbol{r}$
$=\displaystyle\int_0^{2}2x(x^2)dx+\int_0^{4}\left(\sqrt{y}\right)^2dy$
eq1=integrate(x**2,(x,0,2))+integrate(3*y/2,(y,0,4))
eq2=integrate(4*x**2,(x,0,2))+integrate(y**2/4,(y,0,4))
eq3=integrate(x**2,(x,0,2))+integrate(sqrt(y)+y,(y,0,4))
eq4=integrate(2*x*x**2,(x,0,2))+integrate(y,(y,0,4))
(eq1,eq2,eq3,eq4)
定理
2定点$A$、$B$がある。ベクトル場$\boldsymbol{F}(\boldsymbol{x})$がスカラー場$g(\boldsymbol{x})$によって
$\displaystyle \boldsymbol{F}(\boldsymbol{x})=\nabla g(\boldsymbol{x})$と表されているとき、$A$から$B$への曲線$C$に沿った
$\displaystyle \boldsymbol{F}(\boldsymbol{s})$の線積分は、$C$のとり方によらず、一定の値となる。
$\displaystyle \int_C\boldsymbol{F}\dot{} d \boldsymbol{r}=\int_a^b\nabla g\dot{}\cfrac{d \boldsymbol{r}}{dt}dt\\
\displaystyle \int_a^b\left(
\cfrac{\partial{g}}{\partial{x}}\dot{}\cfrac{dx(t)}{dt}+\cfrac{\partial{g}}{\partial{y}}\dot{}\cfrac{dy(t)}{dt}+
\cfrac{\partial{g}}{\partial{z}}\dot{}\cfrac{dz(t)}{dt}
\right)dt\\=
\displaystyle \int_a^b\cfrac{dg(x(t),y(t),z(t))}{dt}dt=\left[g(x(t),y(t),z(t))\right]_a^b\\=
g(x(b),y(b),z(b))-g(x(a),y(a),z(a))
$
定理
$\nabla \times{} \boldsymbol{F}(\boldsymbol{x})=\boldsymbol{0}$のとき、点$A$から点$B$への曲線$C$に沿った$\boldsymbol{F}(\boldsymbol{x})$の
線積分は、$C$のとり方によらず一定の値となる。
曲面がパラメータ$u$、$v$によって
$\boldsymbol{S}(u,v)=(x(u,v),y(u,v),z(u,v))$と表されているものとします。
$\cfrac{\partial \boldsymbol{S}(a,b)}{\partial{u}}=
\begin{pmatrix}\cfrac{\partial x(a,b)}{\partial u}\\ \cfrac{\partial y(a,b)}{\partial u}\\
\cfrac{\partial z(a,b)}{\partial u}\end{pmatrix}$を$\boldsymbol{S}(a,b)$での曲線$u=a$に沿ったv方向の接ベクトル
$\cfrac{\partial \boldsymbol{S}(a,b)}{\partial{v}}=
\begin{pmatrix}\cfrac{\partial x(a,b)}{\partial v}\\ \cfrac{\partial y(a,b)}{\partial v}\\
\cfrac{\partial z(a,b)}{\partial v}\end{pmatrix}$を$\boldsymbol{S}(a,b)$での曲線$v=b$に沿ったu方向の接ベクトルとすると
$\displaystyle S=\int_D\left|\cfrac{\partial{} \boldsymbol{S}(u,v)}{\partial{u}}\times
\cfrac{\partial{} \boldsymbol{S}(u,v)}{\partial{v}}\right|dudv$
スカラー場$f(u,v)$のとき
$\displaystyle \int_D fdS=\int_D f(u,v)\left| \cfrac{\partial \boldsymbol{S}}{\partial u}\times \cfrac{\partial \boldsymbol{S}}{\partial v}\right|dudv$
$\boldsymbol{S}(\theta,\phi)=(\sin \theta \cos \phi,\sin \theta \sin \phi,\cos \theta)$ $\left(0\leqq \phi \leqq \cfrac{\pi}{2}, 0\leqq \theta \leqq \cfrac{\pi}{2} \right)$で表される曲面上の領域$D$の面積
$\displaystyle S=\int_D\left|\cfrac{\partial \boldsymbol{S}}{\partial \theta}\times \cfrac{\partial \boldsymbol{S}}{\partial \phi} \right|d\theta d\phi$
reset
$\boldsymbol{S}(\theta,\phi)=(\sin\theta\cos\phi,\sin\theta\cos\phi,\cos\theta)$
$\left(0\leq\phi\leq\cfrac{\pi}{2},0\leq\theta\leq\cfrac{\pi}{2}\right)$
で表される曲面上$D$の面積
from sympy import *
init_printing()
θ,ϕ,S=symbols('θ,ϕ,S')
S=Matrix([sin(θ)*cos(ϕ),sin(θ)*sin(ϕ),cos(θ)])
S
$\cfrac{\partial \boldsymbol{S}}{\partial \theta}\times \cfrac{\partial \boldsymbol{S}}{\partial \phi}$の計算
x=diff(S,θ).cross(diff(S,ϕ))
(x,simplify(x))
$\left|\cfrac{\partial \boldsymbol{S}}{\partial \theta}\times \cfrac{\partial \boldsymbol{S}}{\partial \phi} \right|^2$の計算から $\left|\cfrac{\partial \boldsymbol{S}}{\partial \theta}\times \cfrac{\partial \boldsymbol{S}}{\partial \phi} \right|=\sin\theta$を求める
x=simplify(x)
x=x[0]**2+x[1]**2+x[2]**2
(x,simplify(x))
$\displaystyle S=\int_D\left|\cfrac{\partial{} \boldsymbol{S}}{\partial{\theta}}\times \cfrac{\partial{} \boldsymbol{S}}{\partial{\phi}}\right|d\theta d\phi= \int_D\left|\begin{pmatrix}\sin^2\theta\cos \theta \\ \sin^2 \theta \sin \phi \\ \cfrac{1}{2}\sin 2\theta \end{pmatrix}\right|d\theta d\phi=\int_0^{\frac{\pi}{2}}\int_0^{\frac{\pi}{2}}\sin\theta d\theta d\phi $
integrate(integrate(sin(θ),(θ,0,pi/2)),(ϕ,0,pi/2))
$\boldsymbol{S}(\theta,\phi)=(\sin\theta\cos\phi,\sin\theta\cos\phi,\cos\theta)$
$\left(0\leq\phi\leq\cfrac{\pi}{2},0\leq\theta\leq\cfrac{\pi}{2}\right)$
で表される領域$D$でスカラー場
$f(\theta,\phi)=\cos\theta\sin\phi$を面積分
$\displaystyle\int_D f(\theta,\phi)dS$
$=\displaystyle\int_D f(\theta,\phi)\left|\cfrac{\partial\boldsymbol{S}}{\partial\theta}\times\cfrac{\partial\boldsymbol{S}}{\partial\phi}\right|d\theta d\phi$
$=\displaystyle\int_0^{\frac{\pi}{2}}\int_0^{\frac{\pi}{2}}\cos\theta\sin\phi\sin\theta d\theta d\phi$
integrate(integrate(cos(θ)*sin(ϕ)*sin(θ),(θ,0,pi/2)),(ϕ,0,pi/2))
# CoordSys3Dを使う場合
from sympy.vector import CoordSys3D
R=CoordSys3D('R')
S=sin(θ)*cos(ϕ)*R.i+sin(θ)*sin(ϕ)*R.j+cos(θ)*R.k
S
eq1=diff(S,θ).cross(diff(S,ϕ))
(eq1.magnitude(),simplify(eq1.magnitude()))
$f(\theta,\phi)=\cos \theta \sin \phi$ $\left(0\leqq \phi \leqq \cfrac{\pi}{2}, 0\leqq \theta \leqq \cfrac{\pi}{2} \right)$で表される曲面上の領域$D$の面積
$\displaystyle S=\int_D fdS=\int_D f(\theta,\phi)\left|\cfrac{\partial \boldsymbol{S}}{\partial \theta}\times{}\cfrac{\partial \boldsymbol{S}}{\partial \phi} \right|d\theta d\phi=\int_0^{\frac{\pi}{2}}\int_0^{\frac{\pi}{2}}\cos\theta\sin\phi\sin\theta d\theta d\phi $
f=cos(θ)*sin(ϕ)
f
eq1=integrate(integrate(sin(θ),(θ,0,pi/2)),(ϕ,0,pi/2))
eq2=integrate(integrate(f*sin(θ),(θ,0,pi/2)),(ϕ,0,pi/2))
(eq1,eq2)
$ \displaystyle \int_D \boldsymbol{F}\dot{}\boldsymbol{n}dS=\int_D(F_x n_x+F_y n_y+F_z n_z)\left| \cfrac{\partial \boldsymbol{S}}{\partial u}\times\cfrac{\boldsymbol{S}}{\partial v}\right|dudv= \lim_{\substack{k \to \infty \\ |\Delta S_i | \to 0}} \sum_{i=1}^k \boldsymbol{F}_i \dot{}\boldsymbol{n}_i\left|\Delta S_i\right| $
reset
from sympy import *
init_printing()
x,y,z,t=symbols('x:z,t')
ベクトル場 $\boldsymbol{F}(x,y,z)=(x+y,xz,yz^2)$
閉鎖曲線を単位円周$C:(\cos t \sin t,0)\ (0\leqq t\leqq,2\pi)$とし
ベクトル場の線積分$\displaystyle \int_C \boldsymbol{F}\dot{}d\boldsymbol{r}$を求める
C=Matrix([cos(t),sin(t),0])
F=Matrix([C[0]+C[1],C[0]*C[2],C[1]+C[2]**2])
integrate(F.dot(diff(C,t)),(t,0,2*pi))
# CoordSys3Dを使う方法
from sympy.vector import CoordSys3D
R=CoordSys3D('R')
F=(R.x+R.y)*R.i+R.x*R.z*R.j+(R.y+R.z**2)*R.k
C=cos(t)*R.i+sin(t)*R.j+0*R.k
eq1=F.subs(R.x,cos(t)).subs(R.y,sin(t)).subs(R.z,0)
(F,eq1,C)
integrate(eq1.dot(diff(C,t)),(t,0,2*pi))
単位円板 $S_1:x^2+y^2\leqq 1,z=0$ の$(x,y,z)$のベクトル値関数を$(r,\theta,\phi)$のベクトル値関数に書き換え
$S_1(r,\theta)=(r\cos \theta,r\sin \theta,0)\ \ (0\leqq r \leqq 1,0\leqq \theta \leqq 2\pi)$とし
単位法線ベクトルを$\boldsymbol{n}=(0,0,1)$としたとき
ベクトル場の面積分$\displaystyle \int\!\!\int_{S_1}\nabla\times{} \boldsymbol{F} \dot{} \boldsymbol{n} dS$
を求める
from sympy.vector import CoordSys3D,curl
R=CoordSys3D('R')
F=(R.x+R.y)*R.i+R.x*R.z*R.j+(R.y+R.z**2)*R.k
n=0*R.i+0*R.j+1*R.k
θ,r=symbols('θ,r')
S1=r*cos(θ)*R.i+r*sin(θ)*R.j+0*R.k
(F,curl(F),n,S1)
eq1=curl(F).dot(n)
eq1.subs(R.x,r*cos(θ)).subs(R.y,r*sin(θ)).subs(R.z,0)
$\boldsymbol{S}_1$のz成分は0なので
$\nabla\times{}\boldsymbol{F}(\boldsymbol{S}_1(r,\theta))\dot{}\boldsymbol{n}$
$=(-r\cos\theta+1,0\times r\sin\theta,0\times 0-1)\dot{} (0,0,1)$
$=-1$
eq2=simplify(diff(S1,r).cross(diff(S1,θ)))
eq2.magnitude()
$\displaystyle \int\!\!\int_{S_1}\nabla\times{}\boldsymbol{F}\dot{}\boldsymbol{n}dS= \int_0^{2\pi}\int_0^1 (-1)\left|\cfrac{\partial\boldsymbol{S}_1}{\partial r}\times{}\cfrac{\partial \boldsymbol{S}_1}{\partial \theta}\right|drd\theta= \int_0^{2*pi}\int_0^1 (-1)\times{}rdrd\theta=-\pi $
integrate(integrate((-1)*r,(θ,0,2*pi)),(r,0,1))
半球面 $S_2:x^2+y^2+z^2=1,\ \ 0\leqq z$ のベクトル値関数$(x,y,z)$を$(r,\theta,\phi)$に書き換え
$S_2(\theta,\phi)=(\sin\theta\cos\phi,\sin\theta\sin\phi,\cos\theta)\ \ \ \left(0\leqq \theta\leqq \cfrac{\pi}{2},
0\leqq\phi\leqq 2\pi \right)$
単位法線ベクトルを$\boldsymbol{n}=(\sin\theta\cos\phi,\sin\theta\sin\phi,\cos\theta)$としてベクトル場の面積分
$\displaystyle\int\!\int_{S_2}\nabla \boldsymbol{F}\dot{}\boldsymbol{n}dS$を求める。
ϕ=symbols('ϕ')
S2=sin(θ)*cos(ϕ)*R.i+sin(θ)*sin(ϕ)*R.j+cos(θ)*R.k
n=sin(θ)*cos(ϕ)*R.i+sin(θ)*sin(ϕ)*R.j+cos(θ)*R.k
(S2,n)
eq1=curl(F).dot(n)
eq1=eq1.subs(R.x,sin(θ)*cos(ϕ)).subs(R.y,sin(θ)*sin(ϕ)).subs(R.z,cos(θ))
(curl(F).dot(n),expand(eq1))
eq2=simplify(diff(S2,θ).cross(diff(S2,ϕ)))
eq2=eq2.magnitude()
(eq2,simplify(eq2))
$\displaystyle \int\!\!\int_{S_2} \nabla\times{}\boldsymbol{F}\dot{}\boldsymbol{n}dS=\int_0^{2\pi}\int_0^{\frac{\pi}{2}} \left(-\sin^2\theta\cos^2\phi+\sin\theta\cos\phi+\cos^2\theta-\cos\theta \right)\left|\cfrac{\partial\boldsymbol{S}_2}{\partial \theta}\times{}\cfrac{\partial\boldsymbol{S}_2}{\partial \phi}\right|d\theta d\phi\\= \displaystyle \int_0^{2\pi}\int_0^{\frac{\pi}{2}}\left(-\sin^2\theta\cos^2\phi+\sin\theta\cos\phi+\cos^2\theta-\cos\theta \right)\sin\theta d\theta d\phi $
integrate(integrate(eq1*sin(θ),(θ,0,pi/2)),(ϕ,0,2*pi))
閉曲線$C:\boldsymbol{r}(s)$とそれを境界に持つ曲面$\boldsymbol{S}(u,v)$上の領域$D$がある。このときベクトル値関数$\boldsymbol{A}(\boldsymbol{x})$に関して
$\displaystyle \int_C\boldsymbol{A}\dot{}d\boldsymbol{R}=\int_D\nabla\times{}\boldsymbol{A}\dot{}\boldsymbol{n}dS$
すなわち
$\displaystyle \int_C\boldsymbol{A}(\boldsymbol{x}(s))\dot{}\cfrac{d\boldsymbol{r}}{ds}ds=
\int_D\nabla\times{}\boldsymbol{A}(\boldsymbol{x}(u,v))\dot{}\boldsymbol{n}(\boldsymbol{x}(u,v))
\left|\cfrac{\partial\boldsymbol{S}}{\partial u}\times{}\cfrac{\partial\boldsymbol{S}}{\partial v}\right|dudv$
が成り立つ。
$\displaystyle \int_C\boldsymbol{A}\dot{}d\boldsymbol{r}=\sum_{i=1}^k\int_{C_i}\boldsymbol{A}\dot{}d\boldsymbol{r}= \sum_{i=1}^k\int_{S_i}\nabla\times{}\boldsymbol{A}\dot{}\boldsymbol{n}dS=\int_S\nabla\times{}\boldsymbol{A}\dot{}\boldsymbol{n}dS$
閉曲面$S:\boldsymbol{S}(u,v)$で囲まれた領域を$V$とする。
このとき、$V$全体で定義されるベクトル場$\boldsymbol{A}(\boldsymbol{x})$に関して、
$\displaystyle \int_S\boldsymbol{A}\dot{}\boldsymbol{n}dS=\int_V\nabla\dot{}\boldsymbol{A}dV$
すなわち
$\displaystyle \int_S\boldsymbol{A}(\boldsymbol{x}(u,v))\dot{}\boldsymbol{n}(\boldsymbol{x}(u,v))\left|\cfrac{\partial\boldsymbol{S}}
{\partial u}\times{}\cfrac{\partial\boldsymbol{S}}{\partial v}\right|dudv=
\int_V\nabla\dot{}\boldsymbol{A}(\boldsymbol{x}(x,y,z))dxdydz
$
が成り立つ。但し$\boldsymbol{n}$は領域$V$の外向きにとるものとする。
$\nabla\dot{}\boldsymbol{A}(\boldsymbol{x})=0$のとき、閉曲線$C$を境界に持つ曲面$S$に関する$\boldsymbol{A}(\boldsymbol{x})$の面積分は$S$のとり方によらず決まる。