直交曲線座標とヤコビアン

 以下の 変換式

x = f(u_1, u_2, u_3)\ y = g(u_1, u_2, u_3)\ z = h(u_1, u_2, u_3)\cdots(17)

ここで以下の前提を置きます.つまり f, g, h は連続であり,連続な偏微分を有し,直交座標系 xyzu_1u_2u_3 との間で点が 1 対 1 に対応する単一の逆関数が確立しているとします.ベクトル記法においては変換式 (17) は以下のように書けます.

\bold{r} = x\bold{i} + y\bold{j} + z\bold{k} = f(u_1, u_2, u_3)\bold{i} + g(u_1, u_2, u_3)\bold{j} + h(u_1, u_2, u_3)\bold{k}\cdots (18)

 ある点 P直交座標 (x, y, z) だけで定義出来るだけでなく,座標 (u_1, u_2, u_3) によっても定義できます.この (u_1, u_2, u_3) をその点の 曲線座標 と呼びます.

 仮に u_2 および u_3 が定数であり, u_1 が変化すると,\bold{r}u1 座標曲線 と呼ばれる曲線を記述します.同様に P を通る u_2 および u_3 座標曲線を定義できます.

 式 (18) から以下が得られます.

\displaystyle d\bold{r} = \frac{\partial\bold{r}}{\partial u_1}du_1 + \frac{\partial\bold{r}}{\partial u_2}du_2 + \frac{\partial\bold{r}}{\partial u_3}du_3 \cdots (19)

 ベクトル \partial\bold{r}/\partial u_1 は点 P における u_1 座標曲線へのタンジェントです.仮に \bold{e_1} が点 P におけるこの方向への単位ベクトルならこのように書けます,  \partial \bold{r} / \partial u_1 = h_1\bold{e_1} と.ここで h_1 = |\partial\bold{r}/\partial u_1| です.同様に次のように書けます. \partial\bold{r} / \partial u_2 = h_2\bold{e_2} また  \partial\bold{r}/\partial u_3 = h_3 \bold{e_3} ここで,それぞれ h_2 = |\partial\bold{r}/\partial u_2| また  h_3 = |\partial\bold{r}/\partial u_3| です.ゆえに式 (19) は以下のように書けます.

d\bold{r} = h_1du\bold{e_1} + h_2du\bold{e_2} + h_3du\bold{e_3}\cdots(20)

 量 h_1, h_2, h_3 は時に スケール因子 と呼びます.

 仮に \bold{e_1}, \bold{e_2}, \bold{e_3} が点 P において相互に垂直とすると,その曲線座標を 直交 と呼びます.そのような場合,弧長の要素 ds は以下により与えられます.

ds^2 = d\bold{r} \cdot d\bold{r} = h_1^2du_1^2 + h_2^2du_2^2 + h_3^2du_3^2 \cdots(21)

また上記の直方体の対角線の長さの2乗に対応します.

 また,直交座標においては直方体の体積は以下により与えられます.

 dV = |(h_1du_1\bold{e_1}) \cdot (h_2du_2\bold{e_2}) \times (h_3du_3\bold{e_3})| = h_1h_2h_3du_1du_2du_3 \cdots (22)

ここで次のように記述できます.

\displaystyle dV = \left| \frac{\partial\bold{r}}{\partial u_1} \cdot \frac{\partial\bold{r}}{\partial u_2} \times \frac{\partial\bold{r}}{\partial u_3} \right| du_1du_2du_3   = \left| \frac{\partial(x, y, z)}{\partial(u_1, u_2, u_3)} \right|du_1du_2du_3 \cdots (23)

ここで,

\displaystyle \frac{\partial(x, y, z)}{\partial(u_1, u_2, u_3)}   = \left| \begin{array}{ccc}   \frac{\partial x}{\partial u_1} & \frac{\partial x}{\partial u_2} & \frac{\partial x}{\partial u_3} \\   \frac{\partial y}{\partial u_1} & \frac{\partial y}{\partial u_2} & \frac{\partial y}{\partial u_3} \\   \frac{\partial z}{\partial u_1} & \frac{\partial z}{\partial u_2} & \frac{\partial z}{\partial u_3} \end{array} \right|\cdots (24)

上記は変換式の ヤコビアン と呼ばれます.

 ヤコビアンがゼロに等しい時に直方体が存在しないことは明らかです.そのような場合には x, y および z の間には関数関係が存在します.例えば \phi があって,\phi(x, y, z) = 0 のような場合です.

How to BULK INSERT from text file to the table, which primary key is IDENTITY-constrained column?

I’d like to describe how to BULK INSERT from text file to the table with IDENTITY-constrained primary key. You should insert a column into worksheet for primary key such as ‘AUTO_ID’.

TEXTfile

Transact-SQL code is following list. [Table] is table name, FullPath is complete file-path, and FileName is name of text file, respectively. WITH option phrase represents the first row is title.

BULK INSERT dbo.[Table] FROM 'FullPath\FileName.txt' WITH (FIRSTROW = 2);

主キーにIDENTITYの指定のあるテーブルにテキストファイルからBULK INSERTする

 SQL Server で作成したデータベースのテーブルにテキストファイルを BULK INSERT する際の備忘録です.主キーとしたい列に IDENTITY を指定すると初期値 1, 増分 1 の整数を主キーとするテーブルになります.列の IDENTITY 指定をしておかないとエラーとなります.

 用意するテキストファイルにも工夫が必要です.主キーの列名を AUTO_ID であると仮定すると,テキストファイルの 1 列目を空白にしておかなくてはなりません.

TEXTfile

 BULK INSERT する際の Transact-SQL コードは以下のようになります.[Table] にはテーブル名,FullPath には完全なファイルパス,FileName にはテキストファイル名を指定します.WITH 句のオプションは 1 行目がタイトル行であることを示しています.

BULK INSERT dbo.[Table] FROM 'FullPath\FileName.txt' WITH (FIRSTROW = 2);

Anabolic exercise in haemodialysis patients: a randomised controlled pilot study

Nutrition rehabilitation in hemodialysis patients is one of the hottest topics. They have reported that resistance exercise has resulted to muscle strength, but the lack of functional capacity. Although this trial has high evidence with RCT, the number of participants may be too small to determine statistically significant.

Anabolic exercise in haemodialysis patients: a randomised controlled pilot study

Danielle L. Kirkman, Paul Mullins, Naushad A. Junglee, Mick Kumwenda, Mahdi M. Jibani, Jamie H. Macdonald

Abstract

Background

The anabolic response to progressive resistance exercise training (PRET) in haemodialysis patients is unclear. This pilot efficacy study aimed to determine whether high-intensity intradialytic PRET could reverse atrophy and consequently improve strength and physical function in haemodialysis patients. A second aim was to compare any anabolic response to that of healthy participants completing the same program.

Methods

In a single blind controlled study, 23 haemodialysis patients and 9 healthy individuals were randomly allocated to PRET or an attention control (SHAM) group. PRET completed high-intensity exercise leg extensions using novel equipment. SHAM completed low-intensity lower body stretching activities using ultra light resistance bands. Exercises were completed thrice weekly for 12 weeks, during dialysis in the haemodialysis patients. Outcomes included knee extensor muscle volume by magnetic resonance imaging, knee extensor strength by isometric dynamometer and lower body tests of physical function. Data were analysed by a per protocol method using between-group comparisons.

Results

PRET elicited a statistically and clinically significant anabolic response in haemodialysis patients (PRET—SHAM, mean difference [95 % CI]: 193[63 to 324] cm3) that was very similar to the response in healthy participants (PRET—SHAM, 169[−41 to 379] cm3). PRET increased strength in both haemodialysis patients and healthy participants. In contrast, PRET only enhanced lower body functional capacity in the healthy participants.

Conclusions

Intradialytic PRET elicited a normal anabolic and strength response in haemodialysis patients. The lack of a change in functional capacity was surprising and warrants further investigation.

Keywords: Weight lifting, Wasting syndrome, Chronic kidney failure, Haemodialysis

Anabolic exercise in haemodialysis patients: a randomised
controlled pilot study

Anabolic exercise in haemodialysis patients: a randomised controlled pilot study

 血液透析患者における栄養リハビリテーションは最近のトピックの一つです.レジスタンス運動は筋力増強をもたらしたものの,身体機能の改善には至らなかったという報告です.無作為化比較試験であり信頼性は高いのですが,参加者人数が少なく有意差が出なかったのではないかとも考えられます.



透析患者における蛋白同化運動:無作為化比較試験

Danielle L. Kirkman, Paul Mullins, Naushad A. Junglee, Mick Kumwenda, Mahdi M. Jibani, Jamie H. Macdonald

要旨

背景

 透析患者における漸増レジスタンス運動 (PRET) への反応は不明確である.このパイロット有効性研究は,透析患者において透析の間での強度の PRET が萎縮を逆転できるか,また結果的に筋力と身体機能を改善することができるか否かを定義することを目的とする.2番目の目的は蛋白同化反応と,同様のプログラムを完遂した健康な参加者の反応とを比較することである.

方法

 単盲検対照試験において 23 名の透析患者と 9 名の健康な個人が無作為に PRET 群と比較対照群 (SHAM) に割り付けられた.PRET 群は強度の運動,つまり新規の設備を使って下肢を進展する運動を完遂した.SHAM 群は軽度の下半身を進展する活動を超軽量の抵抗バンドを用いて完遂した.透析患者の運動は週に 3 回の透析中に,12 週間にわたって行われた.転帰には MRI による膝伸筋容積,アイソメトリックダイナモメーターによる膝伸展力および身体機能の下半身テストが含まれた.データは群間比較を用いたプロトコルメソッドにより解析した.

結果

 PRET は透析患者において統計的および臨床的に有意に蛋白同化反応を惹起し (PRET—SHAM, mean difference [95 % CI]: 193[63 to 324] cm3), 健常な参加者においても同様であった (PRET—SHAM, 169[−41 to 379] cm3). PRET は透析患者においても健常者においても筋力を増強させた.対照的に, PRET は健常者においてのみ下半身の身体機能を増強させただけであった.

結論

 透析患者において透析中の PRET は正常な蛋白同化と筋力増強を惹起した.身体機能に変化がなかったことは驚くべきものであり,さらなる調査が必要と考えられた.

Keywords: Weight lifting, Wasting syndrome, Chronic kidney failure, Haemodialysis

Anabolic exercise in haemodialysis patients: a randomised
controlled pilot study

How to fix the text file of the food composition of the diet recipes to the first normal form?

In this article, I’d like to describe how to fix the text file of the food composition of the diet recipes, which a facility have provided for one year, to the first normal form in order to insert into database.

Option Explicit

Sub LoopProcedure()
    Dim Sh  As Worksheet
    For Each Sh In Worksheets
        If Sh.Name Like "Sheet" & "*" Then
            Call TransportFromTxtToCSV(Sh)
        End If
    Next Sh
End Sub

Sub TransportFromTxtToCSV()
    Dim mySht               As Worksheet
    Dim myRng               As Range
    Dim myAr                As Variant
    Dim RecAr()             As String
    Dim i                   As Long
    Dim j                   As Long
    Dim k                   As Long
    Dim Date_Serving_Meal   As Date
    Dim Menu_Name           As String
    Dim tmpStart            As Long
    Dim Meal_Time           As String
    Dim Dish                As String
    Dim RecordNumber        As Long
    
    set mysht = sh
    RecordNumber = Count_Record(mySht)
    ReDim RecAr(RecordNumber - 1, 51)
    Set myRng = mySht.UsedRange
    myAr = myRng
    k = 0
    Date_Serving_Meal = "2011/1/1"
    Menu_Name = myAr(1, 11) & myAr(1, 12) & myAr(1, 13)
    tmpStart = InStr(Menu_Name, ")")
    Menu_Name = Mid(Menu_Name, tmpStart + 1)
    Meal_Time = "朝食"
    For i = LBound(myAr) To UBound(myAr)
        
        Select Case True
            Case myAr(i, 2) = "合      計"
                Date_Serving_Meal = DateAdd("d", 1, Date_Serving_Meal)
            Case myAr(i, 2) = "《朝食》"
                Meal_Time = "朝食"
            Case myAr(i, 2) = "《昼食》"
                Meal_Time = "昼食"
            Case myAr(i, 2) = "《夕食》"
                Meal_Time = "夕食"
            Case myAr(i, 2) = "小      計"
            Case myAr(i, 2) = "^e12【献立"
            Case myAr(i, 2) Like "動蛋比" & "*"
            Case myAr(i, 2) = "・・・・・・・・・・"
            Case myAr(i, 2) = "料理名"
            Case myAr(i, 2) = ""
            Case Else
                Dish = myAr(i, 2)
        End Select
        
        Select Case True
            Case myAr(i, 3) = "・・・・・・・・・・・"
            Case myAr(i, 3) Like "EN比" & "*"
            Case myAr(i, 3) = "食品名"
            Case myAr(i, 3) Like "一覧表】 ^e11" & "*"
            Case myAr(i, 3) = ""
            Case Else
                RecAr(k, 0) = Date_Serving_Meal
                RecAr(k, 1) = Menu_Name
                RecAr(k, 2) = Meal_Time
                RecAr(k, 3) = Dish
                RecAr(k, 4) = myAr(i, 3)
                For j = 5 To 22
                    RecAr(k, j) = myAr(i, j - 1)
                Next j
                For j = 23 To 39
                    RecAr(k, j) = myAr(i + 1, j - 18)
                Next j
                For j = 40 To 51
                    RecAr(k, j) = myAr(i + 2, j - 35)
                Next j
                k = k + 1
        End Select
    Next i
    Set mySht = Worksheets.Add
    With mySht
        .Name = Menu_Name
        .Range(Cells(1, 1), Cells(RecordNumber, 52)) = RecAr
    End With
    
    Set mySht = Nothing
    Set myRng = Nothing
    Erase RecAr
End Sub

Function Count_Record(ByRef Sh As Worksheet) As Long    
    Dim mySht       As Worksheet
    Dim myAr        As Variant
    Dim i           As Long
    Dim j           As Long
    Dim k           As Long
    Set mySht = Sh
    myAr = mySht.UsedRange
    j = 0
    k = 0
    For i = LBound(myAr) To UBound(myAr)
        Select Case True
            Case myAr(i, 2) = "合      計"
            Case myAr(i, 2) = "小      計"
            Case myAr(i, 2) = "《朝食》"
            Case myAr(i, 2) = "《昼食》"
            Case myAr(i, 2) = "《夕食》"
            Case myAr(i, 2) = "^e12【献立"
            Case myAr(i, 2) Like "動蛋比" & "*"
            Case myAr(i, 2) = "・・・・・・・・・・"
            Case myAr(i, 2) = "料理名"
            Case myAr(i, 2) = ""
            Case Else
                j = j + 1
        End Select
        Select Case True
            Case myAr(i, 3) = "・・・・・・・・・・・"
            Case myAr(i, 3) Like "EN比" & "*"
            Case myAr(i, 3) = "食品名"
            Case myAr(i, 3) Like "一覧表】 ^e11" & "*"
            Case myAr(i, 3) = ""
            Case Else
                k = k + 1
        End Select
    Next i
    Count_Record = k
End Function

提供食レシピの食品成分のテキストファイルを第1正規形にするEXCEL VBAコード

 ある施設の1年間で提供した食事のレシピの食品成分のテキストファイルから,データベースに取り込むための前処置としてデータを第1正規形に整形する EXCEL VBA コードです.個人的な備忘録です.

 94行目以降の関数 Count_Record は,アクティブシートをループして必要なレコード数を計測する関数です.104行目以降で料理名の数(B列),119行目以降で食品名の数(C列)に注目しています.サブルーチン TransportFromTxtToCSV から呼び出して,動的配列の要素数を後で決定するのに用います.

Option Explicit

Sub LoopProcedure()
    Dim Sh  As Worksheet
    For Each Sh In Worksheets
        If Sh.Name Like "Sheet" & "*" Then
            Call TransportFromTxtToCSV(Sh)
        End If
    Next Sh
End Sub

Sub TransportFromTxtToCSV()
    Dim mySht               As Worksheet
    Dim myRng               As Range
    Dim myAr                As Variant
    Dim RecAr()             As String
    Dim i                   As Long
    Dim j                   As Long
    Dim k                   As Long
    Dim Date_Serving_Meal   As Date
    Dim Menu_Name           As String
    Dim tmpStart            As Long
    Dim Meal_Time           As String
    Dim Dish                As String
    Dim RecordNumber        As Long
    
    set mysht = sh
    RecordNumber = Count_Record(mySht)
    ReDim RecAr(RecordNumber - 1, 51)
    Set myRng = mySht.UsedRange
    myAr = myRng
    k = 0
    Date_Serving_Meal = "2011/1/1"
    Menu_Name = myAr(1, 11) & myAr(1, 12) & myAr(1, 13)
    tmpStart = InStr(Menu_Name, ")")
    Menu_Name = Mid(Menu_Name, tmpStart + 1)
    Meal_Time = "朝食"
    For i = LBound(myAr) To UBound(myAr)
        
        Select Case True
            Case myAr(i, 2) = "合      計"
                Date_Serving_Meal = DateAdd("d", 1, Date_Serving_Meal)
            Case myAr(i, 2) = "《朝食》"
                Meal_Time = "朝食"
            Case myAr(i, 2) = "《昼食》"
                Meal_Time = "昼食"
            Case myAr(i, 2) = "《夕食》"
                Meal_Time = "夕食"
            Case myAr(i, 2) = "小      計"
            Case myAr(i, 2) = "^e12【献立"
            Case myAr(i, 2) Like "動蛋比" & "*"
            Case myAr(i, 2) = "・・・・・・・・・・"
            Case myAr(i, 2) = "料理名"
            Case myAr(i, 2) = ""
            Case Else
                Dish = myAr(i, 2)
        End Select
        
        Select Case True
            Case myAr(i, 3) = "・・・・・・・・・・・"
            Case myAr(i, 3) Like "EN比" & "*"
            Case myAr(i, 3) = "食品名"
            Case myAr(i, 3) Like "一覧表】 ^e11" & "*"
            Case myAr(i, 3) = ""
            Case Else
                RecAr(k, 0) = Date_Serving_Meal
                RecAr(k, 1) = Menu_Name
                RecAr(k, 2) = Meal_Time
                RecAr(k, 3) = Dish
                RecAr(k, 4) = myAr(i, 3)
                For j = 5 To 22
                    RecAr(k, j) = myAr(i, j - 1)
                Next j
                For j = 23 To 39
                    RecAr(k, j) = myAr(i + 1, j - 18)
                Next j
                For j = 40 To 51
                    RecAr(k, j) = myAr(i + 2, j - 35)
                Next j
                k = k + 1
        End Select
    Next i
    Set mySht = Worksheets.Add
    With mySht
        .Name = Menu_Name
        .Range(Cells(1, 1), Cells(RecordNumber, 52)) = RecAr
    End With
    
    Set mySht = Nothing
    Set myRng = Nothing
    Erase RecAr
End Sub

Function Count_Record(ByRef Sh As Worksheet) As Long    
    Dim mySht       As Worksheet
    Dim myAr        As Variant
    Dim i           As Long
    Dim j           As Long
    Dim k           As Long
    Set mySht = Sh
    myAr = mySht.UsedRange
    j = 0
    k = 0
    For i = LBound(myAr) To UBound(myAr)
        Select Case True
            Case myAr(i, 2) = "合      計"
            Case myAr(i, 2) = "小      計"
            Case myAr(i, 2) = "《朝食》"
            Case myAr(i, 2) = "《昼食》"
            Case myAr(i, 2) = "《夕食》"
            Case myAr(i, 2) = "^e12【献立"
            Case myAr(i, 2) Like "動蛋比" & "*"
            Case myAr(i, 2) = "・・・・・・・・・・"
            Case myAr(i, 2) = "料理名"
            Case myAr(i, 2) = ""
            Case Else
                j = j + 1
        End Select
        Select Case True
            Case myAr(i, 3) = "・・・・・・・・・・・"
            Case myAr(i, 3) Like "EN比" & "*"
            Case myAr(i, 3) = "食品名"
            Case myAr(i, 3) Like "一覧表】 ^e11" & "*"
            Case myAr(i, 3) = ""
            Case Else
                k = k + 1
        End Select
    Next i
    Count_Record = k
End Function

Gradient, divergence and curl

Consider the vector operator \nabla\ (del) defined by

\displaystyle \nabla \equiv \bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\cdots(13)

Then if \phi(x, y, z) and \bold{A}(x, y, z) have continuous first partial derivatives in a region (a condition which is in many cases stronger than necessary), we can define the following.

1. Gradient

The gradient of φ is defined by

\displaystyle grad\phi = \nabla\phi = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\phi\\   = \bold{i}\frac{\partial\phi}{\partial x} + \bold{j}\frac{\partial\phi}{\partial y} + \bold{k}\frac{\partial\phi}{\partial z}\\   = \frac{\partial\phi}{\partial x}\bold{i} + \frac{\partial\phi}{\partial y}\bold{j} + \frac{\partial\phi}{\partial z}\bold{k}\cdots(14)

An interesting interpretation is that if \phi(x, y, z) = c is the equation of a surface, then \nabla\phi is a normal to this surface.

2. Divergence

The divergence of \bold{A} is defined by

\displaystyle div\bold{A} = \nabla\cdot\bold{A} = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\cdot(A_1\bold{i} + A_2\bold{j} + A_3\bold{k})\\ = \frac{\partial A_1}{\partial x} + \frac{\partial A_2}{\partial y} + \frac{\partial A_3}{\partial z}\cdots(15)

3. Curl

The curl of \bold{A} is defined by

\displaystyle curl\bold{A} = \nabla\times\bold{A} = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\times(A_1\bold{i} + A_2\bold{j} + A_3\bold{k})\\   = \left|\begin{array}{ccc} \bold{i} & \bold{j} & \bold{k} \\ \frac{\partial}{\partial x} & \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ A_1 & A_2 & A_3 \end{array}\right| \\  = \bold{i}\left|\begin{array}{cc} \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ A_2 & A_3 \end{array}\right| - \bold{j}\left|\begin{array}{cc} \frac{\partial}{\partial z} & \frac{\partial}{\partial z} \\ A_1 & A_3 \end{array}\right| + \bold{k}\left|\begin{array}{cc} \frac{\partial}{\partial x} & \frac{\partial}{\partial y} \\ A_1 & A_2 \end{array}\right|\\  = \left(\frac{\partial A_3}{\partial y} - \frac{\partial A_2}{\partial z}\right)\bold{i} + \left(\frac{\partial A_1}{\partial z} - \frac{\partial A_3}{\partial x}\right)\bold{j} + \left(\frac{\partial A_2}{\partial x} - \frac{\partial A_1}{\partial y}\right)\bold{k}\cdots(16)

Note that in the expansion of the determinant, the operators \partial/\partial x, \partial/\partial y, \partial/\partial z must precede A_1, A_2, A_3.

勾配,発散,回転

 以下で定義されるベクトル演算子 \nabla\ (del) を考えてみましょう.

\displaystyle \nabla \equiv \bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\cdots(13)

 仮に \phi(x, y, z) および \bold{A}(x, y, z) が(多くの例において必要性よりも強い状態にある)ある地点において一階の偏微分を有する場合,以下のように定義できます.

1. 勾配

  φ の 勾配 は以下の定義です.

\displaystyle grad\phi = \nabla\phi = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\phi\\   = \bold{i}\frac{\partial\phi}{\partial x} + \bold{j}\frac{\partial\phi}{\partial y} + \bold{k}\frac{\partial\phi}{\partial z}\\   = \frac{\partial\phi}{\partial x}\bold{i} + \frac{\partial\phi}{\partial y}\bold{j} + \frac{\partial\phi}{\partial z}\bold{k}\cdots(14)

 仮に \phi(x, y, z) = c が表面の方程式の場合,  \nabla\phi はこの表面に対して垂直であることは興味深い解釈です.

2. 発散

 \bold{A}発散 は以下で定義されます.

\displaystyle div\bold{A} = \nabla\cdot\bold{A} = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\cdot(A_1\bold{i} + A_2\bold{j} + A_3\bold{k})\\ = \frac{\partial A_1}{\partial x} + \frac{\partial A_2}{\partial y} + \frac{\partial A_3}{\partial z}\cdots(15)

3. 回転

 \bold{A}回転 は以下で定義されます.

\displaystyle curl\bold{A} = \nabla\times\bold{A} = \left(\bold{i}\frac{\partial}{\partial x} + \bold{j}\frac{\partial}{\partial y} + \bold{k}\frac{\partial}{\partial z}\right)\times(A_1\bold{i} + A_2\bold{j} + A_3\bold{k})\\   = \left|\begin{array}{ccc} \bold{i} & \bold{j} & \bold{k} \\ \frac{\partial}{\partial x} & \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ A_1 & A_2 & A_3 \end{array}\right| \\  = \bold{i}\left|\begin{array}{cc} \frac{\partial}{\partial y} & \frac{\partial}{\partial z} \\ A_2 & A_3 \end{array}\right| - \bold{j}\left|\begin{array}{cc} \frac{\partial}{\partial z} & \frac{\partial}{\partial z} \\ A_1 & A_3 \end{array}\right| + \bold{k}\left|\begin{array}{cc} \frac{\partial}{\partial x} & \frac{\partial}{\partial y} \\ A_1 & A_2 \end{array}\right|\\  = \left(\frac{\partial A_3}{\partial y} - \frac{\partial A_2}{\partial z}\right)\bold{i} + \left(\frac{\partial A_1}{\partial z} - \frac{\partial A_3}{\partial x}\right)\bold{j} + \left(\frac{\partial A_2}{\partial x} - \frac{\partial A_1}{\partial y}\right)\bold{k}\cdots(16)

 行列式,演算子 \partial/\partial x, \partial/\partial y, \partial/\partial z においては必ず A_1, A_2, A_3 の前に置かねばならないことに注意してください.

Geometric interpretation of a vector derivative

If \bold{r} is the vector joining the origin O of a coordinate system and the point (x, y, z), then specification of the vector function \bold{r}(u) defines x, y and z as function of u. As u changes, the terminal point of \bold{r} describes a space curve having parametric equations x = x(u), y = y(u), z = z(u). If the parameter u is the arc length s measured from some fixed point on the curve, then

\displaystyle \frac{d\bold{r}}{ds} = \bold{T}\cdots(9)

is a unit vector in the direction of the tangent to the curve and is called the unit tangent vector. If u is the time t, then

\displaystyle \frac{d\bold{r}}{dt} = \bold{v}\cdots(10)

is the velocity with which the terminal point of \bold{r} describes the curve. We have

\displaystyle \bold{v} = \frac{d\bold{r}}{dt} = \frac{d\bold{r}}{ds}\frac{ds}{dt} = \frac{ds}{dt}\bold{T} = v\bold{T}\cdots(11)

from which we see that the magnitude of \bold{v}, often called the speed, is v = ds/dt. Similarly,

\displaystyle \frac{d^2\bold{r}}{dt^2} = \bold{a}\cdots(12)

is the acceleration with which the terminal point of \bold{r} describes the curve. These concepts have important applications in mechanics.

ベクトル導関数の幾何学的解釈

 \bold{r} が座標系の原点 O と点 (x, y, z) とを結合するベクトルの時,ベクトル関数 \bold{r}(u) の詳細は x, y および zu の関数として定義します.u が変化するにつれて \bold{r} の終点はパラメトリックな方程式 x = x(u), y = y(u), z = z(u) を持つ 空間曲線 を描きます.変数 u が曲線上のある固定点から測定した弧長 s の時,

\displaystyle \frac{d\bold{r}}{ds} = \bold{T}\cdots(9)

上式は曲線の接線方向への単位ベクトルであり 単位接線ベクトル と呼びます.仮に u が時間 t の時,

\displaystyle \frac{d\bold{r}}{dt} = \bold{v}\cdots(10)

上式は終点 \bold{r} が曲線上に描く 速度 です.ここで

\displaystyle \bold{v} = \frac{d\bold{r}}{dt} = \frac{d\bold{r}}{ds}\frac{ds}{dt} = \frac{ds}{dt}\bold{T} = v\bold{T}\cdots(11)

\bold{v} の大きさを得,しばしば 速度v = ds/dt と記述します.同様に

\displaystyle \frac{d^2\bold{r}}{dt^2} = \bold{a}\cdots(12)

上式は終点 \bold{r} が曲線上で描く 加速度 です.この概念は 力学 にとって重要な意味を持ちます.

Limits, continuity and derivatives of vector functions

Limits, continuity and derivatives of vector functions follow rules similar to those for scalar functions already considered. The following statements show the analogy which exists.

  1. The vector function \bold{A}(u) is said to be continuous at u_0 if given any positive number \varepsilon, we can find some positive number \delta such that \left|\bold{A}(u) - \bold{A}(u_0)\right| < \varepsilon[/latex] whenever [latex]\left|u - u_0\right| < \delta[/latex]. This is equivalent to the statement [latex]\lim\limits_{u \rightarrow u_0}\bold{A}(u) = \bold{A}(u_0)[/latex]. </li> <li>The derivative of [latex]\bold{A}(u) is defined as
    \displaystyle \frac{d\bold{A}}{du} = \lim\limits_{\Delta{u} \rightarrow 0}\frac{\bold{A}(u + \Delta {u}) - \bold{A}(u)}{\Delta{u}}\cdots (7)
    provided this limit exists. In case \bold{A}(u) = A_1(u)\bold{i} + A_2(u)\bold{j} + A_3(u)\bold{k}; then
    \displaystyle \frac{d\bold{A}}{du} = \frac{dA_1}{du}\bold{i} + \frac{dA_2}{du}\bold{j} + \frac{dA_3}{du}\bold{k}
    Higher derivatives such as d^2\bold{A}/du^2, etc., can be similarly defined.
  2. If \bold{A}(x, y, z) = A_1(x, y, z)\bold{i} + A_2(x, y, z)\bold{j} + A_3(x, y, z)\bold{k}, then
    \displaystyle d\bold{A} = \frac{\partial\bold{A}}{\partial x}dx + \frac{\partial\bold{A}}{\partial y}dy + \frac{\partial\bold{A}}{\partial z}dz\cdots(8)
    is the differential of \bold{A}.
  3. Derivatives of products obey rules similar to those for scalar functions. However, when cross products are involved the order may be important. Some examples are:
    \displaystyle (a)\ \frac{d}{du}(\phi\bold{A}) = \phi\frac{d\bold{A}}{du} + \frac{d\phi}{du}\bold{A}
    \displaystyle (b)\ \frac{\partial}{\partial y}(\bold{A} \cdot \bold{B}) = \bold{A} \cdot \frac{\partial \bold{B}}{\partial y} + \frac{\partial\bold{A}}{\partial y} \cdot \bold{B}
    \displaystyle (c)\ \frac{\partial}{\partial z}(\bold{A} \times \bold{B}) = \bold{A} \times \frac{\partial\bold{B}}{\partial z} + \frac{\partial\bold{A}}{\partial z} \times \bold{B}

ベクトル関数の極限,連続と導関数

 ベクトル関数の極限,連続及び導関数は,スカラー関数のそれとよく似た規則に従います.以下の記述は存在する類似を示しています.

  1. ベクトル関数 \bold{A}(u)u_0 において 連続 であると言われる.仮に任意の正の数 \varepsilon があってここで \left|u - u_0\right| < \delta[/latex] を満たす [latex]\left|\bold{A}(u) - \bold{A}(u_0)\right| < \varepsilon[/latex] が存在するようなある正の数 [latex]\delta[/latex] を見つけられるなら.このことは次の記述と等価である.[latex]\lim\limits_{u \rightarrow u_0}\bold{A}(u) = \bold{A}(u_0)[/latex]</li> <li>[latex]\bold{A}(u) の微分は次のように定義される.
    \displaystyle \frac{d\bold{A}}{du} = \lim\limits_{\Delta{u} \rightarrow 0}\frac{\bold{A}(u + \Delta {u}) - \bold{A}(u)}{\Delta{u}}\cdots (7)
    \bold{A}(u) = A_1(u)\bold{i} + A_2(u)\bold{j} + A_3(u)\bold{k} のような場合,
    \displaystyle \frac{d\bold{A}}{du} = \frac{dA_1}{du}\bold{i} + \frac{dA_2}{du}\bold{j} + \frac{dA_3}{du}\bold{k}
     d^2\bold{A}/du^2 等のような高階の導関数も同様に定義される.
  2. 仮に \bold{A}(x, y, z) = A_1(x, y, z)\bold{i} + A_2(x, y, z)\bold{j} + A_3(x, y, z)\bold{k} ならば
    \displaystyle d\bold{A} = \frac{\partial\bold{A}}{\partial x}dx + \frac{\partial\bold{A}}{\partial y}dy + \frac{\partial\bold{A}}{\partial z}dz\cdots(8)
    \bold{A}微分 である.
  3. 積の導関数はスカラー関数のそれの規則に従う.しかしながら,クロス積の従う順序は重要かもしれない.いくつかの例を挙げる.
    \displaystyle (a)\ \frac{d}{du}(\phi\bold{A}) = \phi\frac{d\bold{A}}{du} + \frac{d\phi}{du}\bold{A}
    \displaystyle (b)\ \frac{\partial}{\partial y}(\bold{A} \cdot \bold{B}) = \bold{A} \cdot \frac{\partial \bold{B}}{\partial y} + \frac{\partial\bold{A}}{\partial y} \cdot \bold{B}
    \displaystyle (c)\ \frac{\partial}{\partial z}(\bold{A} \times \bold{B}) = \bold{A} \times \frac{\partial\bold{B}}{\partial z} + \frac{\partial\bold{A}}{\partial z} \times \bold{B}

Vector functions

If corresponding to each value of a scalar u we associate a vector \bold{A}, then \bold{A} is called a function of u denoted by \bold{A}(u). In there dimensions we can write \bold{A}(u) = A_1(u)\bold{i} + A_2(u)\bold{j} + A_3(u)\bold{k}.

The function concept is easily extended. Thus if to each point (x, y, z) there corresponds a vector \bold{A}, then \bold{A} is a function of (x, y, z), indicated by \bold{A} = A_1(x, y, z)\bold{i} + A_2(x, y, z)\bold{j} + A_3(x, y, z)\bold{k}.

We sometimes say that a vector function \bold{A}(x, y, z) defines a vector field since it associates a vector with each point of a region. Similarly \phi(x, y, z) defines a scalar field since it associates a scalar with each point of a region.

ベクトル関数

 仮に対応する各々のスカラー u にベクトル \bold{A} を関連付けるなら \bold{A}u関数 と呼ばれ \bold{A}(u) と記述します.3次元では \bold{A}(u) = A_1(u)\bold{i} + A_2(u)\bold{j} + A_3(u)\bold{k} と書くことができます.

 関数の概念は容易に拡張できます.ゆえにもし各々の点 (x, y, z) に対して対応するベクトル \bold{A} が存在するなら \bold{A}(x, y, z) の関数であり \bold{A} = A_1(x, y, z)\bold{i} + A_2(x, y, z)\bold{j} + A_3(x, y, z)\bold{k} によって示されます.

 時に,ベクトル関数 \bold{A}(x, y, z) はそれが1つの地域のベクトルの各点に関連するゆえに ベクトル場 を定義する,と言うことがあります.同様に \phi(x, y, z) はそれが1つの地域の各点のスカラーに関連するゆえに1つの スカラー場 を定義します.

Triple products

Dot and cross multiplication of three vectors \bold{A}, \bold{B} and \bold{C} may produce meaningful products of the form (\bold{A}\cdot\bold{B})\bold{C}, \bold{A}\cdot(\bold{B}\times\bold{C}) and \bold{A}\times(\bold{B}\times\bold{C}). The following laws are valid:

  1. (\bold{A}\cdot\bold{B})\bold{C} \ne \bold{A}(\bold{B}\cdot\bold{C}) in general
  2. \bold{A}\cdot(\bold{B}\times\bold{C}) = \bold{B}\cdot(\bold{C}\times\bold{A}) = \bold{C}\cdot(\bold{A}\times\bold{B}) is volume of a parallelepiped having \bold{A}, \bold{B}, and \bold{C} as edges, or the negative of this volume according as \bold{A}, \bold{B} and \bold{C} do or do not form a right-handed system. If \bold{A} = A_1\bold{i} + A_2\bold{j} + A_3\bold{k}, \bold{B} = B_1\bold{i} + B_2\bold{j} + B_3\bold{k} and \bold{C} = C_1\bold{i} + C_2\bold{j} + C_3\bold{k}, then
    \displaystyle \bold{A}\cdot(\bold{B}\times\bold{C}) = \left|\begin{array}{ccc} A_1 & A_2 & A_3 \\ B_1 & B_2 & B_3 \\ C_1 & C_2 & C_3 \end{array}\right|\cdots (6)
  3. \bold{A} \times (\bold{B} \times \bold{C}) \ne (\bold{A} \times \bold{B}) \times \bold{C}
  4. \bold{A} \times (\bold{B} \times \bold{C}) = (\bold{A} \cdot \bold{C})\bold{B} - (\bold{A} \cdot \bold{B})\bold{C}\\  (\bold{A} \times \bold{\bold{B}}) \times \bold{C} = (\bold{A} \cdot \bold{C})\bold{B} - (\bold{B} \cdot \bold{C})\bold{A}

The product \bold{A} \cdot (\bold{B} \times \bold{C}) is sometimes called the scalar triple product or box product and may be denoted by \left[\bold{ABC}\right]. The product \bold{A} \times (\bold{B} \times \bold{C}) is called the vector triple product.

In \bold{A} \cdot (\bold{B} \times \bold{C}) parentheses are sometimes omitted and we write \bold{A} \cdot \bold{B} \times \bold{C}. However, parentheses must be used in \bold{A} \times (\bold{B} \times \bold{C}). Note that \bold{A} \cdot (\bold{B} \times \bold{C}) = (\bold{A} \times \bold{B}) \cdot \bold{C}. This is often expressed by stating that in a scalar triple product the dot and the cross can be interchanged without affecting the result.

三重積

 3つのベクトル \bold{A}, \bold{B} および \bold{C} のドット積及びクロス積は以下の形をした意義深い積を生み出すかもしれません. (\bold{A}\cdot\bold{B})\bold{C},  \bold{A} \cdot (\bold{B} \times \bold{C}) および  \bold{A} \times (\bold{B} \times \bold{C}).以下の法則が有効です.

  1. (\bold{A}\cdot\bold{B})\bold{C} \ne \bold{A}(\bold{B}\cdot\bold{C})
  2. \bold{A}\cdot(\bold{B}\times\bold{C}) = \bold{B}\cdot(\bold{C}\times\bold{A}) = \bold{C}\cdot(\bold{A}\times\bold{B})\bold{A}, \bold{B}, および \bold{C} を辺とする平行六面体の体積であり, \bold{A}, \bold{B} および \bold{C} が右手系をなすか否かに従って負の体積を有することもある.仮に \bold{A} = A_1\bold{i} + A_2\bold{j} + A_3\bold{k}, \bold{B} = B_1\bold{i} + B_2\bold{j} + B_3\bold{k} および \bold{C} = C_1\bold{i} + C_2\bold{j} + C_3\bold{k} ならば
    \displaystyle \bold{A}\cdot(\bold{B}\times\bold{C}) = \left|\begin{array}{ccc} A_1 & A_2 & A_3 \\ B_1 & B_2 & B_3 \\ C_1 & C_2 & C_3 \end{array}\right|\cdots (6)
  3. \bold{A} \times (\bold{B} \times \bold{C}) \ne (\bold{A} \times \bold{B}) \times \bold{C}
  4. \bold{A} \times (\bold{B} \times \bold{C}) = (\bold{A} \cdot \bold{C})\bold{B} - (\bold{A} \cdot \bold{B})\bold{C}\\  (\bold{A} \times \bold{\bold{B}}) \times \bold{C} = (\bold{A} \cdot \bold{C})\bold{B} - (\bold{B} \cdot \bold{C})\bold{A}

 積 \bold{A} \cdot (\bold{B} \times \bold{C}) は時に スカラー三重積 または box product と呼ばれ, \left[\bold{ABC}\right] と記述します.積 \bold{A} \times (\bold{B} \times \bold{C})ベクトル三重積 と呼ばれます.

 \bold{A} \cdot (\bold{B} \times \bold{C}) においては括弧は時に省略され, \bold{A} \cdot \bold{B} \times \bold{C} と記述します.しかしながら括弧は \bold{A} \times (\bold{B} \times \bold{C}) においては絶対に必要です.\bold{A} \cdot (\bold{B} \times \bold{C}) = (\bold{A} \times \bold{B}) \cdot \bold{C} であることに注意してください.これはスカラー三重積においてはドット積とクロス積が入れ替わっても結果が変わらないことを示しています.

Cross or vector product

The cross or vector product of \bold{A} and \bold{B} is a vector \bold{C} = \bold{A} \times \bold{B} (read \bold{A} cross \bold{B}). The magnitude of \bold{A}\times\bold{B} is defined as the product of the magnitudes of \bold{A} and \bold{B} and the sine of the angle between them. The direction of the vector \bold{C} = \bold{A}\times\bold{B} is perpendicular to the plane of \bold{A} and \bold{B} and such that \bold{A}, \bold{B} and \bold{C} form a right-handed system. In symbols,

\bold{A}\times\bold{B} = AB\sin{\theta}\bold{u},\ 0\le\theta\le\pi\cdots(5)

where \bold{u} is a unit vector indicating the direction of \bold{A}\times\bold{B}. If \bold{A} = \bold{B} or if \bold{A} is parallel to \bold{B}, then \sin\theta = 0 and we define \bold{A}\times\bold{B} = 0.

//en.wikipedia.org/wiki/Vector_product
//en.wikipedia.org/wiki/Vector_product

The following laws are valid:

  1.  \bold{A} \times \bold{B} = - \bold{B} \times \bold{A}
  2.  \bold{A} \times (\bold{B} + \bold{C}) = \bold{A}\times\bold{B} + \bold{A} \times \bold{C}
  3.  m( \bold{A} \times \bold{B}) = (m \bold{A}) \times \bold{B} = \bold{A} \times (m \bold{B}) = (\bold{A} \times \bold{B})m
  4.  \bold{i} \times \bold{i} = \bold{j} \times \bold{j} = \bold{k} \times \bold{k} = 0,\ \bold{i} \times \bold{j} = \bold{k},\ \bold{j} \times \bold{k} = \bold{i},\ \bold{k} \times \bold{i} = \bold{j}
  5. If  \bold{A} = A_1\bold{i} + A_2\bold{j} + A_3\bold{k} and  \bold{B} = B_1\bold{i} + B_2\bold{j} + B_3\bold{k}, then
  6. \displaystyle \bold{A} \times \bold{B} = \left|\begin{array}{ccc} \bold{i} & \bold{j} & \bold{k} \\ A_1 & A_2 & A_3 \\ B_1 & B_2 & B_3 \end{array}\right| = \left|\begin{array}{cc} A_2 & A_3 \\ B_2 & B_3 \end{array}\right| \bold{i} - \left|\begin{array}{cc} A_1 & A_3 \\ B_1 & B_3 \end{array}\right| \bold{j} + \left|\begin{array}{cc} A_1 & A_2 \\ B_1 & B_2 \end{array}\right| \bold{k}
  7.  |\bold{A} \times \bold{B}| is the area of a parallelogram with sides \bold{A} and \bold{B}.
  8. If  \bold{A} \times \bold{B} = 0 and \bold{A} and \bold{B} are not null vectors, then \bold{A} and \bold{B} are parallel.

Note that communicative law for cross products is failed.