R ဖြင့် cross product တစ်ခုကို တွက်နည်း
ကျွန်ုပ်တို့တွင် vector A ပါရှိသော ဒြပ်စင်များ (A 1 ၊ A 2 ၊ A 3 ) နှင့် vector B များ ( B 1 ၊ B 2 ၊ B 3 ) ၊ ဤ vector နှစ်ခု၏ cross product ကို အောက်ပါအတိုင်း တွက်ချက်နိုင်ပါသည်။
လက်ဝါးကပ်တိုင်ထုတ်ကုန် = [(A 2 *B 3 ) – (A 3 * B 2 ), (A 3 * B 1 ) – ( A 1 * B 3 ), ( A 1 * B 2 ) – ( A 2 * B 1 )]
ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့တွင် အောက်ပါ vector များရှိသည်ဆိုပါစို့။
- Vector A- (၁၊ ၂၊ ၃)
- Vector B- (၄၊ ၅၊ ၆)
ဤ vector များ ၏ cross product ကို အောက်ပါအတိုင်း တွက်ချက်နိုင်သည် ။
- လက်ဝါးကပ်တိုင်ထုတ်ကုန် = [(A 2 *B 3 ) – (A 3 * B 2 ), (A 3 * B 1 ) – ( A 1 * B 3 ), ( A 1 * B 2 ) – ( A 2 * B 1 )]
- ထုတ်ကုန်များ = [(2*6) – (3*5), (3*4) – (1*6), (1*5) – (2*4)]
- Cross product = (-3, 6, -3)၊
R တွင် vector နှစ်ခု၏ cross product ကိုတွက်ချက်ရန် နည်းလမ်းနှစ်ခုထဲမှ တစ်ခုကို သင်သုံးနိုင်သည်။
နည်းလမ်း 1- pracma package ၏ cross() function ကိုသုံးပါ။
library (pracma) #calculate cross product of vectors A and B cross(A, B)
နည်းလမ်း 2- သင့်ကိုယ်ပိုင်လုပ်ဆောင်ချက်ကို သတ်မှတ်ပါ။
#define function to calculate cross product cross <- function (x, y, i=1:3) { create3D <- function (x) head (c(x, rep (0, 3)), 3) x <- create3D(x) y <- create3D(y) j <- function (i) (i-1) %% 3+1 return (x[j(i+1)]*y[j(i+2)] - x[j(i+2)]*y[j(i+1)]) } #calculate cross product cross(A, B)
အောက်ဖော်ပြပါ ဥပမာများသည် နည်းလမ်းတစ်ခုစီကို လက်တွေ့အသုံးချနည်းကို ပြသထားသည်။
ဥပမာ 1- pracma package ၏ cross() function ကိုသုံးပါ။
အောက်ပါကုဒ်သည် vector နှစ်ခုကြားရှိ cross product ကိုတွက်ချက်ရန် pracma package မှ cross() function ကိုမည်သို့အသုံးပြုရမည်ကိုပြသသည်-
library (pracma) #definevectors A <- c(1, 2, 3) B <- c(4, 5, 6) #calculate cross product cross(A, B) [1] -3 6 -3
လက်ဝါးကပ်တိုင်ထုတ်ကုန်သည် (-3၊ 6၊ -3) ဟူ၍ဖြစ်သည်။
၎င်းသည် အစောပိုင်းက ကျွန်ုပ်တို့ကိုယ်တိုင်တွက်ချက်ထားသော လက်ဝါးကပ်တိုင်ထုတ်ကုန်နှင့် ကိုက်ညီပါသည်။
ဥပမာ 2- သင့်ကိုယ်ပိုင်လုပ်ဆောင်ချက်ကို သတ်မှတ်ပါ။
အောက်ပါကုဒ်သည် vectors နှစ်ခုကြားရှိ cross product ကိုတွက်ချက်ရန် သင့်ကိုယ်ပိုင် function ကိုမည်သို့သတ်မှတ်ရမည်ကိုပြသသည်-
#define function to calculate cross product cross <- function (x, y, i=1:3) { create3D <- function (x) head (c(x, rep (0, 3)), 3) x <- create3D(x) y <- create3D(y) j <- function (i) (i-1) %% 3+1 return (x[j(i+1)]*y[j(i+2)] - x[j(i+2)]*y[j(i+1)]) } #definevectors A <- c(1, 2, 3) B <- c(4, 5, 6) #calculate cross product cross(A, B) [1] -3 6 -3
လက်ဝါးကပ်တိုင်ထုတ်ကုန်သည် (-3၊ 6၊ -3) ဟူ၍ဖြစ်သည်။
၎င်းသည် ယခင်ဥပမာတွင် ကျွန်ုပ်တို့တွက်ချက်ထားသော လက်ဝါးကပ်တိုင်ထုတ်ကုန်နှင့် ကိုက်ညီပါသည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် R တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
R တွင် dot product တွက်နည်း
R တွင် identity matrix ဖန်တီးနည်း
R တွင် အလွတ်မက်ထရစ်ကို ဖန်တီးနည်း