Máy tính vector 3D (dot, cross, góc)

Máy tính vector 3D online — dot product, cross product, magnitude |v|, angle giữa 2 vector, unit vector, projection. Áp dụng cho học sinh THPT lớp 12 (hình học giải tích) và sinh viên cơ học, vật lý, đồ hoạ 3D.

Máy tính

Phép tính với 2 vector 3D: cộng, trừ, tích vô hướng, tích có hướng, độ lớn, góc giữa.

Công thức & ví dụ

Vector trong R³: u = (u₁, u₂, u₃), v = (v₁, v₂, v₃).

Phép Công thức Kết quả
Cộng/trừ u ± v = (u₁±v₁, u₂±v₂, u₃±v₃) Vector
Tích vô hướng (dot) u · v = u₁v₁ + u₂v₂ + u₃v₃ Số
Tích có hướng (cross) u × v = (u₂v₃−u₃v₂, u₃v₁−u₁v₃, u₁v₂−u₂v₁) Vector
Độ dài (magnitude) |u| = √(u₁² + u₂² + u₃²) Số ≥ 0
Góc giữa cos θ = (u·v) / (|u|·|v|) Số trong [-1, 1]
Unit vector û = u / |u| Vector |û| = 1
Projection u lên v proj_v u = (u·v / |v|²) · v Vector

Ý nghĩa hình học:

  • Dot u·v = 0: u và v vuông góc
  • Cross u×v: vector vuông góc với cả u và v, hướng theo quy tắc bàn tay phải. |u×v| = diện tích hình bình hành tạo bởi u, v
  • Cross = 0: u và v song song

Ví dụ: u = (1, 2, 3), v = (4, 5, 6).

  • u + v = (5, 7, 9)
  • u · v = 1·4 + 2·5 + 3·6 = 32
  • u × v = (2·6−3·5, 3·4−1·6, 1·5−2·4) = (−3, 6, −3)
  • |u| = √14 ≈ 3.74, |v| = √77 ≈ 8.77
  • cos θ = 32/(3.74·8.77) ≈ 0.974 → θ ≈ 13.0°

Hướng dẫn sử dụng

  1. Nhập vector u và v dưới dạng (x, y, z).
  2. Chọn phép tính: dot / cross / angle / magnitude / projection / unit.
  3. Nhấn “Tính”. Kết quả + giải thích hình học.

Lưu ý: Dot product trả SỐ THỰC (scalar). Cross product trả VECTOR (3D, vuông góc với u và v). Magnitude là độ dài vector. Góc giữa 2 vector trong khoảng [0°, 180°].

Tại sao cần ba tọa độ — từ R² lên không gian R³?

Trên mặt phẳng 2D, mọi vị trí và hướng mô tả được bằng hai tọa độ (x, y). Nhưng thế giới thực là ba chiều — lực tác động lên một vật có thể nghiêng sang phải, ngả về phía trước, hướng lên trên đồng thời. Vận tốc của máy bay, trường điện từ tại một điểm trong không gian, hay hướng nhìn của camera trong game 3D — tất cả đều cần ba thành phần (x, y, z) để mô tả đầy đủ.

Vector trong R³ không chỉ là “mảng ba số” — nó mang hai thông tin đồng thời: hướng và độ lớn. Đây là điểm phân biệt vector với điểm (scalar): điểm chỉ cho biết vị trí; vector cho biết dịch chuyển từ đâu đến đâu với bao nhiêu “sức”. Tích vô hướng (dot product) rút ra thông tin về góc giữa hai hướng; tích có hướng (cross product) tạo ra hướng vuông góc mới — hai phép tính này không có trong số học thông thường và là trái tim của hầu hết mọi tính toán không gian trong khoa học và kỹ thuật.

Cách dùng máy tính vector 3D trên VJOL

  1. Nhập tọa độ hai vector: Điền (u₁, u₂, u₃) và (v₁, v₂, v₃) vào các ô tương ứng — chấp nhận số nguyên, số thập phân và phân số.
  2. Chọn phép tính cần thực hiện: Công cụ cho phép chọn một hoặc nhiều phép tính cùng lúc — cộng, trừ, dot, cross, magnitude, góc giữa hai vector, unit vector, hoặc projection.
  3. Đọc kết quả kèm ý nghĩa hình học: Ngoài con số kết quả, công cụ hiển thị ghi chú tự động: u·v = 0 → “hai vector vuông góc”; cross = (0,0,0) → “hai vector song song”; góc θ → “θ ≈ X° (nhọn/tù/vuông)”.
  4. Tính diện tích và thể tích từ vector: Diện tích hình bình hành tạo bởi u và v = |u × v| — công cụ tính trực tiếp sau khi có cross product. Kết hợp với máy tính diện tích các hình trên VJOL để so sánh và kiểm tra kết quả hình học.

Dot product và cross product — hai phép tính khác nhau hoàn toàn về bản chất

Điểm dễ nhầm nhất của vector 3D là hai phép nhân đều gọi là “tích” nhưng trả về kết quả và ý nghĩa hoàn toàn khác:

Tiêu chí Dot product (u · v) Cross product (u × v)
Kết quả trả về Số vô hướng (scalar) Vector mới vuông góc với u và v
Tính giao hoán u·v = v·u (có giao hoán) u×v = −(v×u) (KHÔNG giao hoán)
Bằng 0 khi nào u và v vuông góc nhau u và v song song hoặc một vector = 0
Ý nghĩa hình học Đo “mức độ cùng hướng” Diện tích hình bình hành; hướng pháp tuyến
Ứng dụng điển hình Công cơ học W = F·d; kiểm tra vuông góc Moment lực; pháp tuyến mặt phẳng; ánh sáng 3D

Tính không giao hoán của cross product là nguồn gốc lỗi phổ biến nhất — đảo ngược thứ tự u×v thành v×u cho vector ngược chiều hoàn toàn. Quy tắc bàn tay phải giúp kiểm tra nhanh: cuộn bốn ngón từ u sang v, ngón cái chỉ hướng của u×v.

Triple product — từ diện tích đến thể tích

Khi có ba vector u, v, w, tích hỗn hợp (scalar triple product) cho thể tích hình hộp song song tạo bởi ba vector:

V = |u · (v × w)|

Nếu u · (v × w) = 0, ba vector đồng phẳng (coplanar) — không tạo được hình hộp có thể tích. Đây là công cụ kiểm tra đồng phẳng nhanh nhất trong hình học không gian, thường xuất hiện trong bài toán hình học giải tích lớp 12 và đại học năm nhất.

Ứng dụng vector 3D trong khoa học, kỹ thuật và lập trình

Vật lý và kỹ thuật:

  • Công cơ học: W = F · d (dot product của lực và độ dịch chuyển). Khi lực vuông góc với chuyển động (F·d = 0), không sinh công — ví dụ lực pháp tuyến của mặt sàn không làm vật di chuyển lên xuống.
  • Moment lực (torque): τ = r × F (cross product của cánh tay đòn và lực). Hướng của τ xác định chiều quay theo quy tắc bàn tay phải — nền tảng của cơ học quay và thiết kế động cơ.
  • Lực từ trên điện tích chuyển động: F = q(v × B) (công thức Lorentz). Cross product quyết định hướng lực lệch vuông góc với cả vận tốc lẫn từ trường.

Lập trình game và đồ họa 3D:

  • Hướng di chuyển và AI: Tính vector từ vị trí nhân vật đến mục tiêu bằng phép trừ (target − position), chuẩn hóa bằng unit vector để ra hướng di chuyển độc lập tốc độ.
  • Chiếu sáng (lighting): Dot product giữa pháp tuyến bề mặt và hướng ánh sáng xác định độ sáng của bề mặt (Lambert shading). Giá trị âm nghĩa là bề mặt không nhận ánh sáng trực tiếp.
  • Camera và góc nhìn: Cross product của vector “forward” và “up” cho vector “right” — ba vector này tạo thành hệ tọa độ camera, cơ sở của mọi phép chiếu 3D lên màn hình 2D.

Machine learning và dữ liệu nhiều chiều: Dot product đo độ tương đồng cosine giữa hai vector embedding (cosine similarity = u·v / (|u||v|)) — phương pháp cốt lõi trong tìm kiếm ngữ nghĩa, hệ thống gợi ý và mô hình ngôn ngữ lớn.

Sai lầm thường gặp khi tính vector 3D

  • Đảo thứ tự trong cross product: u × v ≠ v × u — kết quả ngược dấu hoàn toàn. Khi tính pháp tuyến mặt phẳng hoặc moment lực mà nhập sai thứ tự, hướng kết quả sai 180°. Luôn ghi rõ thứ tự trước khi tính.
  • Nhầm đơn vị vector với vector chuẩn hóa: Unit vector û = u/|u| có |û| = 1 nhưng hướng giống u. Nếu u = (0,0,0) thì unit vector không xác định — chia cho 0. Công cụ VJOL cảnh báo trường hợp này.
  • Kết luận vuông góc khi dot product gần 0 thay vì bằng 0: Do sai số số học, u·v có thể ra 0,0000001 thay vì 0. Cần đặt ngưỡng sai số (tolerance) khi kiểm tra vuông góc trong lập trình, không so sánh cứng với 0.
  • Nhầm projection vector với projection scalar: Projection của u lên v trả về vector (proj_v u). Độ dài của projection (scalar projection) là (u·v)/|v| — khác nhau quan trọng khi áp dụng vào vật lý.

Câu hỏi thường gặp

Cross product có định nghĩa trong R² không?

Không hoàn toàn — cross product chỉ định nghĩa tự nhiên trong R³. Trong R², có thể dùng “pseudo cross product” trả về số thay vì vector: u × v = u₁v₂ − u₂v₁, bằng diện tích hình bình hành có dấu. Công cụ VJOL tính cho R³ — với vector 2D, bổ sung thành phần z = 0.

Hai vector song song thì cross product = 0 — kiểm tra thực tế thế nào?

Nếu u = k·v (v là bội số của u), thì u × v = 0. Nhưng do sai số số học, kết quả có thể là vector rất nhỏ thay vì đúng (0,0,0). Kiểm tra bằng cách so sánh |u × v| với ngưỡng nhỏ (như 10⁻¹⁰), hoặc so sánh cos θ với ±1.

Công cụ có hỗ trợ vector trong R² hoặc Rⁿ không?

Công cụ này tối ưu cho R³. Với R², nhập thành phần z = 0. Với không gian nhiều chiều hơn (dùng trong machine learning), cần công cụ đại số tuyến tính chuyên biệt như NumPy (Python) hoặc MATLAB.

Tại sao góc giữa hai vector tính bằng arccos của dot product mà không phải arctan?

Công thức cos θ = u·v/(|u||v|) đến từ định lý cosine trong tam giác. Arccos cho góc trong [0°, 180°] — phù hợp với định nghĩa góc giữa hai vector. Arctan chỉ cho góc của một vector đơn với trục tọa độ, không dùng để tính góc giữa hai vector tùy ý.

Máy tính vector 3D trên VJOL thực hiện tất cả 7 phép tính vector cơ bản tức thì, kèm ý nghĩa hình học tự động — thay thế việc tính tay từng bước và loại bỏ sai số số học trong bài toán hình học không gian, vật lý và lập trình. Hiểu sâu sự khác biệt giữa dot và cross product, nắm quy tắc bàn tay phải và biết khi nào kết quả bằng 0 có ý nghĩa gì là nền tảng để áp dụng vector đúng trong mọi bài toán không gian ba chiều.

Xem thêm các công cụ liên quan

Câu hỏi thường gặp

Dot và cross product khác gì?

Dot (u·v): trả SỐ, dùng để tính góc, kiểm tra vuông góc, projection. Cross (u×v): trả VECTOR vuông góc với u và v, dùng tính diện tích hình bình hành, vector pháp tuyến mặt phẳng. Cross CHỈ TỒN TẠI ở R³ (3 chiều), dot có ở mọi chiều.

Quy tắc bàn tay phải cho cross?

Ngón trỏ chỉ hướng u, ngón giữa chỉ hướng v → ngón cái chỉ hướng u×v. Hoặc: cuộn 4 ngón từ u đến v (theo góc nhỏ hơn 180°), ngón cái chỉ hướng kết quả. Cross KHÔNG giao hoán: u×v = −(v×u) (đối hướng).

Tại sao |u×v| = diện tích?

|u×v| = |u|·|v|·sin(θ). Đây là CÔNG THỨC DIỆN TÍCH hình bình hành: cạnh u, cạnh v, góc giữa θ. Suy ra diện tích tam giác = ½·|u×v|. Đó là cách tính diện tích tam giác trong không gian 3D khi có toạ độ 3 đỉnh.

Vector dùng trong vật lý thế nào?

Vận tốc, gia tốc, lực, mô-men — tất cả là vector. Dot product: công W = F·s (lực · quãng đường). Cross product: mô-men M = r×F (cánh tay × lực), từ trường tạo lực Lorentz F = qv×B. Cơ học 3D không thể thiếu vector.