3from numpy.polynomial.legendre 
import legval
 
    5def f(coords, u, stress, strain):
 
    6    energy = 0.5*((strain*stress).sum(axis=0)) + 20*np.ones(stress.shape[1])
 
 
   15def f_u(coords, u, stress, strain):
 
   16    return np.zeros(u.shape)
 
 
   27    nb_points = coords.shape[0]
 
   34    r = np.sqrt(x*x + y*y)
 
   38        coeffs = np.zeros(i+1)
 
   40        l = legval(ksi, coeffs)
 
   41        n = -l*(ksi+1)*(ksi-1)*np.sign(y)
 
   42        M[i] = np.array([np.zeros(nb_points), n, np.zeros(nb_points)]).T
 
 
block_modes(block_id, coords, cenytroid, bbox)
f_u(coords, u, stress, strain)
number_of_modes(block_id)
f_strain(coords, u, stress, strain)
f(coords, u, stress, strain)
f_stress(coords, u, stress, strain)