def plot_shear_moment_torque(model, gpforce, coord: CORD2R, idir: int = 0, itime: int = 0, nplanes: int = 11, show: bool = True): nids, nid_cd, xyz_cid0, icd_transform, eids, element_centroids_cid0 = smt_setup( model) element_centroids_cid = coord.transform_node_to_local_array( element_centroids_cid0) x = element_centroids_cid[idir] xmin = x.min() xmax = x.max() dx = xmax - xmin assert abs(dx) > 0., f'dx={dx} xmin={xmin} xmax={xmax}' stations = np.linspace(0., dx, num=nplanes, endpoint=True) force_sum, moment_sum = gpforce.shear_moment_diagram( xyz_cid0, eids, nids, icd_transform, element_centroids_cid0, model.coords, nid_cd, stations, coord, idir=idir, itime=itime, debug=False, log=model.log) plot_smt(stations, force_sum, moment_sum, show=show)
def plot_shear_moment_torque(model: OP2Geom, gpforce: RealGridPointForcesArray, coord: CORD2R, itime: int=0, nplanes: int=11, show: bool=True): nids, nid_cd, xyz_cid0, icd_transform, eids, element_centroids_cid0 = smt_setup(model) element_centroids_coord = coord.transform_node_to_local_array(element_centroids_cid0) idir = 0 x = element_centroids_coord[idir] xmin = x.min() xmax = x.max() dx = xmax - xmin assert abs(dx) > 0., f'dx={dx} xmin={xmin} xmax={xmax}' stations = np.linspace(0., dx, num=nplanes, endpoint=True) force_sum, moment_sum, new_coords, nelems, nnodes = gpforce.shear_moment_diagram( nids, xyz_cid0, nid_cd, icd_transform, eids, element_centroids_cid0, stations, model.coords, coord, iaxis_march=None, itime=itime, debug=False, log=model.log) plot_smt(stations, force_sum, moment_sum, nelems, nnodes, show=show)