การคำนวณผลคูณของเวกเตอร์ขนาดใหญ่ไม่ใช่เรื่องง่าย อาจต้องใช้การคำนวณและเวลาจำนวนมากในขณะที่คำนวณด้วยตนเอง อย่างไรก็ตาม ในยุคของเครื่องมือคอมพิวเตอร์ระดับสูงในปัจจุบัน เราพอใจกับ MATLAB ที่ทำให้การคำนวณจำนวนมากในระยะเวลาสั้นที่สุดโดยใช้ฟังก์ชันในตัว ฟังก์ชั่นหนึ่งดังกล่าวคือ ข้าม() ซึ่งช่วยให้เราสามารถหาผลคูณไขว้ของเวกเตอร์สองตัวได้
บทช่วยสอนนี้จะค้นพบ:
- Cross-Product คืออะไร?
- เหตุใดเราจึงต้องพิจารณาผลิตภัณฑ์ Cross
- จะตรวจสอบผลคูณไขว้ของเวกเตอร์สองตัวใน MATLAB ได้อย่างไร
- ตัวอย่าง
- บทสรุป
Cross-Product คืออะไร?
ที่ ข้ามผลิตภัณฑ์ ของเวกเตอร์สองตัวคือปริมาณทางกายภาพที่คำนวณโดยการคูณเวกเตอร์สองตัว มันจะส่งกลับเวกเตอร์ ตั้งฉาก ให้กับเวกเตอร์สองตัวที่กำหนด ถ้า ก และ บี คือปริมาณเวกเตอร์สองปริมาณ ผลคูณไขว้ของพวกมันคือ:
ที่ไหน ค ก็เป็นปริมาณเวกเตอร์เช่นกัน และตั้งฉากกับทั้งคู่ ก และ บี .
เหตุใดเราจึงต้องพิจารณาผลิตภัณฑ์ Cross
ที่ ข้ามผลิตภัณฑ์ ทำงานหลายอย่างในวิชาฟิสิกส์ คณิตศาสตร์ และวิศวกรรมศาสตร์ บางส่วนได้รับด้านล่าง
ที่ ข้ามผลิตภัณฑ์ ใช้เพื่อค้นหา:
- พื้นที่ของรูปสามเหลี่ยม
- มุมระหว่างเวกเตอร์สองตัว
- เวกเตอร์หน่วยที่ตั้งฉากกับเวกเตอร์สองตัว
- พื้นที่ของสี่เหลี่ยมด้านขนาน
- เส้นตรงระหว่างเวกเตอร์สองตัว
จะใช้ cross product ของ Two Vectors ใน MATLAB ได้อย่างไร
MATLAB อำนวยความสะดวกให้กับเราด้วยบิวท์อิน ข้าม() ฟังก์ชั่นเพื่อค้นหา ข้ามผลิตภัณฑ์ ของเวกเตอร์สองตัว ฟังก์ชันนี้ยอมรับเวกเตอร์สองตัวเป็นอินพุตบังคับและจัดเตรียมเวกเตอร์เหล่านั้น ข้ามผลิตภัณฑ์ t ในแง่ของปริมาณเวกเตอร์
ไวยากรณ์
ที่ ข้าม() ฟังก์ชั่นสามารถนำไปใช้ใน MATLAB ด้วยวิธีที่กำหนด:
ค = ข้าม ( เอ บี )ค = ข้าม ( เอ บี สลัว )
ที่นี่,
ฟังก์ชั่น C = กากบาท(A,B) มีหน้าที่คำนวณหา ข้ามผลิตภัณฑ์ C ของเวกเตอร์ที่กำหนด ก และ บี .
- ถ้า เอ และ บี แทนเวกเตอร์ พวกมันต้องมี a ขนาด เท่ากับ 3 .
- ถ้า เอ และ บี เป็นตัวแทนของเมทริกซ์สองตัวหรืออาร์เรย์หลายทิศทาง ซึ่งจะต้องมีขนาดเท่ากัน ในสถานการณ์เช่นนี้ ข้าม() ฟังก์ชั่นจะพิจารณา เอ และ บี เป็นชุดของเวกเตอร์ที่มีองค์ประกอบ 3 ตัวแล้วคำนวณ ข้ามผลิตภัณฑ์ ไปตามมิติที่หนึ่งซึ่งมีขนาดเท่ากัน 3.
ฟังก์ชั่น C = กากบาท (A, B, สลัว) มีหน้าที่คำนวณหา ข้ามผลิตภัณฑ์ C ของสองอาร์เรย์ที่กำหนด เอ และ บี ไปพร้อม ๆ กับ มิติสลัว . โปรดจำไว้ว่า เอ และ บี ต้องเป็นอาร์เรย์สองตัวที่มีขนาดเท่ากันและ ขนาด(A,สลัว) , และ ขนาด(B,สลัว) จะต้องเท่ากับ 3 . ที่นี่, สลัว เป็นตัวแปรที่มีปริมาณสเกลาร์เป็นบวก
ตัวอย่าง
พิจารณาตัวอย่างบางส่วนเพื่อทำความเข้าใจการใช้งานจริงของ ข้าม() ฟังก์ชั่นใน MATLAB
ตัวอย่างที่ 1: จะพิจารณาผลคูณไขว้ของเวกเตอร์สองตัวได้อย่างไร
ในตัวอย่างนี้ เราคำนวณ ข้ามผลิตภัณฑ์ C ของเวกเตอร์ที่กำหนดและการใช้ ข้าม() การทำงาน.
เอ = [ - - 7 9 2.78 ] ;บี = [ 1 0 - - 7 ] ;
ค = ข้าม ( เอ บี )
ตอนนี้เราสามารถตรวจสอบผลลัพธ์ของเราได้แล้ว ค โดยรับมัน ผลิตภัณฑ์ดอท กับเวกเตอร์ เอ และ บี ถ้า ค เป็น ตั้งฉาก ถึงเวกเตอร์ทั้งสอง เอ และ บี มันหมายถึง ค คือ ข้ามผลิตภัณฑ์ ของ เอ และ บี . เราสามารถตรวจสอบ ความตั้งฉาก ของ ค กับ เอ และ บี โดยรับมัน ผลิตภัณฑ์ดอท กับ เอ และ บี . ถ้า ผลิตภัณฑ์ดอท ของ ค กับ เอ และ บี เท่ากับ 0. มันหมายถึง ค เป็น ตั้งฉาก ถึง เอ และ บี .
จุด ( ซี,เอ ) == 0 && จุด ( ซี, บี ) == 0หลังจากดำเนินการข้างต้นแล้ว การทดสอบความตั้งฉาก เราได้รับก ค่าตรรกะของ 1 ที่บอกเป็นนัยว่าการดำเนินการข้างต้นเป็นจริง ดังนั้นเราจึงสรุปได้ว่าเวกเตอร์ผลลัพธ์ ค แสดงถึง ข้ามผลิตภัณฑ์ ของเวกเตอร์ที่กำหนด เอ และ บี .
ตัวอย่างที่ 2: วิธีหาผลคูณไขว้ของเมทริกซ์สองตัว
ตัวอย่างที่กำหนดจะคำนวณ ข้ามผลิตภัณฑ์ C ของเมทริกซ์ที่กำหนด เอ, สร้างขึ้นโดยใช้ฟังก์ชัน magic() และ บี เมทริกซ์ของตัวเลขสุ่มโดยใช้ ข้าม() การทำงาน. เมทริกซ์ทั้งสอง ก และ บี มีขนาดเท่ากัน
เอ = มายากล ( 3 ) ;บี = แรนด์ ( 3 , 3 ) ;
ค = ข้าม ( เอ บี )
เป็นผลให้เราได้รับ 3 ต่อ 3 เมทริกซ์ ค นั่นคือ ข้ามผลิตภัณฑ์ ของ ก และ บี . แต่ละคอลัมน์ของ ค แสดงถึง ข้ามผลิตภัณฑ์ ของคอลัมน์ที่เกี่ยวข้องของ ก และ บี . ตัวอย่างเช่น, ค(:,1) คือ ข้ามผลิตภัณฑ์ ของ ก(:,1) และ ข(:,1) .
ตัวอย่างที่ 3: วิธีค้นหาผลคูณของอาร์เรย์หลายทิศทางสองตัว
รหัส MATLAB ที่กำหนดจะกำหนด ข้ามผลิตภัณฑ์ C ของอาร์เรย์หลายทิศทางที่กำหนด ก , อาร์เรย์ของจำนวนเต็มสุ่ม และ บี อาร์เรย์ของตัวเลขสุ่มโดยใช้ ข้าม() การทำงาน. อาร์เรย์ทั้งสอง ก และ บี มีขนาดเท่ากัน
A = แรนด์ ( 100 , 3 , 4 , 2 ) ;บี = แรนด์ ( 3 , 4 , 2 ) ;
ค = ข้าม ( เอ บี )
เป็นผลให้เราได้รับ 3 ต่อ 4 ต่อ 2 อาร์เรย์ ค นั่นคือ ข้ามผลิตภัณฑ์ ของ ก และ บี. แต่ละคอลัมน์ของ ค แสดงถึง ข้ามผลิตภัณฑ์ ของคอลัมน์ตามลำดับของ ก และ บี . ตัวอย่างเช่น, ค(:,1,1) คือผลคูณไขว้ของ ก(:,1,1) และ ข(:,1,1) .
ตัวอย่างที่ 4: วิธีค้นหาผลคูณของอาร์เรย์หลายทิศทางสองตัวตามมิติที่กำหนด
พิจารณาอาร์เรย์ ก และ บี จาก ตัวอย่างที่ 3 มีขนาด 3 ต่อ 3 ต่อ 3 และใช้ ข้าม() ฟังก์ชั่นเพื่อค้นหาของพวกเขา ข้ามผลิตภัณฑ์ ตาม มิติสลัว=2 .
A = แรนด์ ( 100 , 3 , 3 , 3 ) ;บี = แรนด์ ( 3 , 3 , 3 ) ;
ค = ข้าม ( เอ บี 2 )
เป็นผลให้เราได้รับ 3 ต่อ 3 ต่อ 3 อาร์เรย์ ค นั่นคือ ข้ามผลิตภัณฑ์ ของ ก และ บี . แต่ละแถวของ ค แสดงถึงผลคูณไขว้ของแถวที่เกี่ยวข้องของ ก และ บี. ตัวอย่างเช่น, ค(1,,1) คือผลคูณไขว้ของ ก(1,:,1) และ ข(1,:,1) .
บทสรุป
การหา ข้ามผลิตภัณฑ์ ของเวกเตอร์สองตัวเป็นการดำเนินการทั่วไปที่ใช้กันอย่างแพร่หลายในงานทางคณิตศาสตร์และวิศวกรรม การดำเนินการนี้สามารถทำได้ใน MATLAB โดยใช้บิวท์อิน ข้าม() การทำงาน. คู่มือนี้ได้อธิบายวิธีต่างๆ ในการดำเนินการ ข้ามผลิตภัณฑ์ ใน MATLAB โดยใช้หลายตัวอย่าง