Naloge
Naloge so namenjene sprotnemu reševanju. Če se zatakne, poglejte namige (ali skočite na rešitve).
Naloga 1 - množenje matrik iz Pythona
V C++ izpostavite funkcijo matmul(A, B) in jo pokličite iz Pythona z NumPy polji.
Kriterij uspeha:
- rezultat se ujema z
A @ Bv Pythonu (znotraj tolerance)
Namig:
- začnite z
Eigen::MatrixXd matmul(Eigen::MatrixXd A, Eigen::MatrixXd B).
Naloga 2 - izognite se kopijam (konceptualno)
Ustvarite pogled NumPy: A[:, ::2] (nezvezna postavitev) in ga podajte vezavi.
Kriterij uspeha:
- znate pojasniti, ali se verjetno zgodi kopiranje in zakaj.
Namig:
- poglejte
A.flags.
Naloga 3 - validacija vhodov
Preverite, ali imata A in B združljive oblike; sicer vrzite izjemo.