9 if block_name ==
"ANALYTICAL_DISPLACEMENT_1":
12 c_val_dx = np.zeros_like(x)
14 c_val_dy = np.zeros_like(x)
15 c_val_dz = np.zeros_like(z)
18 c_val_dx.reshape((-1, 1)),
19 c_val_dy.reshape((-1, 1)),
20 c_val_dz.reshape((-1, 1))
29 if block_name
in (
"ANALYTICAL_TRACTION_1",
"ANALYTICAL_TRACTION_3"):
30 c_val_dx = np.full_like(x, 0.1)
31 elif block_name ==
"ANALYTICAL_TRACTION_2":
32 c_val_dx = np.full_like(x, -0.2)
34 c_val_dx = np.zeros_like(x)
36 c_val_dy = np.zeros_like(x)
37 c_val_dz = np.zeros_like(z)
40 c_val_dx.reshape((-1, 1)),
41 c_val_dy.reshape((-1, 1)),
42 c_val_dz.reshape((-1, 1))
55 youngs_modulus = 1000 * np.exp(0.1 * x)
57 return np.hstack([youngs_modulus.reshape((-1, 1))])