Modul 5 — Jembatan ke Jupyter

Modul 5 — Jembatan ke Jupyter

Kembali ke bagian induk

Padanan cerita, hitungan, dan kode (penjelasan tambahan)

Bagian cerita Langkah manual atau konsep Perintah pada blok di bawah
Dua meter kanan, satu meter depan Gabungkan arah dasar w = 2*e1 + e2
Dua arah berbeda atau berulang Periksa rank kolom arah matrix_rank(column_stack(...))
Basis memakai satuan kanan dua meter Cari banyak satuan basis np.linalg.solve(B, w[:2])
Setengah perjalanan Kalikan perpindahan penuh dengan 0.5 a + .5*w
Titik pada lantai Gabungkan arah kanan dan depan a + 2*e1 + 1*e2

w[:2] mengambil komponen kanan dan depan karena B ditulis untuk lantai dua dimensi. Komponen vertikalnya nol. Rank membantu membaca kebebasan arah; uji ruang bagian tetap memerlukan sifat penutupan.

import numpy as np
e1 = np.array([1., 0., 0.])
e2 = np.array([0., 1., 0.])
w = 2*e1 + e2                    # [2, 1, 0]
assert np.allclose(w, [2, 1, 0])
assert np.linalg.matrix_rank(np.column_stack((e1, e2))) == 2
assert np.linalg.matrix_rank(np.column_stack((e1, 2*e1))) == 1
B = np.array([[2., 0.], [0., 1.]])
print(np.linalg.solve(B, w[:2]))  # [1, 1] dalam basis (2e1, e2)
a = np.zeros(3)
print(a + .5*w)                  # [1, 0.5, 0], tengah ruas
print(a + 2*e1 + 1*e2)          # [2, 1, 0], titik pada bidang

Hubungan materi