Files
HM1-Serie-Python/test_Aufg2.py
2025-09-25 11:38:53 +02:00

40 lines
1.6 KiB
Python

from Kuengjoe_S01.Kuengjoe_S01_Aufg2 import _as_1d_array
from Kuengjoe_S01.Kuengjoe_S01_Aufg2 import poly_derivate_coeffs
from Kuengjoe_S01.Kuengjoe_S01_Aufg2 import poly_integrate_coeffs
import numpy as np
def _test_as_1d_array():
def run_case(name, a):
try:
arr = _as_1d_array(a)
print(f"[OK] {name:22s} -> shape={arr.shape}, ndim={arr.ndim}, dtype={arr.dtype}, values={arr}")
except Exception as e:
print(f"[ERRORE] {name:22s} -> {e}")
print("=== Test _as_1d_array ===")
run_case("Lista 1D", [1, 2, 3])
run_case("Array NumPy 1D", np.array([1, 2, 3]))
run_case("Vettore riga 1xN", np.array([[1, 2, 3]]))
run_case("Vettore colonna Nx1", np.array([[1], [2], [3]]))
run_case("Misto tipi -> float", [1, 2.5, "3"]) # verrà convertito a float
run_case("Lista vuota", [])
run_case("Matrice 2x2", np.array([[1, 2], [3, 4]]))
run_case("Scalare", 5)
run_case("Tensore 3D", np.arange(8).reshape(2, 2, 2))
if __name__ == "__main__":
_test_as_1d_array()
array = np.array([[2,5,6]])
arr = _as_1d_array(array)
print("Input array: "+str(array))
print("coeff: "+str(arr))
print("coeff derivate: "+str(poly_derivate_coeffs(arr)))
print("coeff integrate: "+str(poly_integrate_coeffs(arr)))
a = np.array([[2, 5, 6]]) # 1x3 -> verrà reso 1D
a = _as_1d_array(a)
print("coeff:", a)
print("coeff derivate:", str(poly_derivate_coeffs(a))) # atteso [5., 12.]
print("coeff integrate:", poly_integrate_coeffs(a))