pyconmech.frame_analysis.StiffnessChecker

class pyconmech.frame_analysis.StiffnessChecker(model, verbose=False, checker_engine='numpy')[source]

Bases: object

stiffness checking instance for 3D frame deformation analysis

Calculating elastic deformation given a 3D frame shape.

__init__(model, verbose=False, checker_engine='numpy')[source]

Constructor of the StiffnessChecker

Parameters
  • model (io_base.Model) – the structural model

  • verbose (bool, optional) – verbose output, by default False

  • checker_engine (str, optional) – “numpy” or “C++”, by default DEFAULT_ENGINE

Raises
  • NotImplementedError – [description]

  • NotImplementedError – [description]

  • RuntimeError – [description]

Methods

__init__(model[, verbose, checker_engine])

Constructor of the StiffnessChecker

StiffnessChecker.from_frame_data

from_json([json_file_path, verbose, …])

init class from a frame json file

get_compliance()

Get compliance of the last solved deformation

get_deformed_shape([disc, exagg_ratio])

get_element2dof_id_map()

Get element_id-to-dof_id maps

get_element_connected_node_ids([…])

return connected nodes’ indices of the elements specified in existing_ids

get_element_local2global_rot_matrices()

Get all elemental local to global transformation matrices, each of which is 12 x 12

get_element_neighbors()

Return all elements’ connected element ids

get_element_stiffness_matrices([…])

Get all elemental stiffness matrices, each of which is 12 x 12 in global coordinate (default): R_{LG}^T * K_{eL} * R_{LG} in local coordinate (default): K_{eL}

get_max_nodal_deformation()

Get max nodal deformation info

get_nodal_deformation_tol()

Get nodal displacement tolerance for stiffness checking criteria.

get_nodal_loads([existing_ids, dof_flattened])

Return nodal loads

get_node2dof_id_map()

Get node_id-to-dof_id maps

get_node_neighbors([return_e_id])

Return all nodes’ connected element ids

get_original_shape([disc, draw_full_shape])

get_self_weight_loads([existing_ids, …])

Return lumped gravity loads

get_solved_results([existing_ids])

Fetch back solved results from last time.

has_stored_result()

Check if the stiffness checker has solved results stored, i.e.

set_loads(loadcase)

set load case for the stiffness checker.

set_nodal_displacement_tol([trans_tol, rot_tol])

Set nodal displacement tolerance for stiffness checking criteria.

set_output_json([do_output, output_dir, …])

DEPRECATED

set_self_weight_load(gravity_load)

Turn on/off self-weight load.

solve([exist_element_ids, if_cond_num, …])

compute elastic deformation using the linear stiffness equation, return True or False indicating if the set criteria is passed nor not.

Attributes

elements

fix_element_ids

return grounded element ids

fix_node_ids

fixed node indices

StiffnessChecker.fix_specs

StiffnessChecker.material

model_name

StiffnessChecker.model_type

node_points

__init__(model, verbose=False, checker_engine='numpy')[source]

Constructor of the StiffnessChecker

Parameters
  • model (io_base.Model) – the structural model

  • verbose (bool, optional) – verbose output, by default False

  • checker_engine (str, optional) – “numpy” or “C++”, by default DEFAULT_ENGINE

Raises
  • NotImplementedError – [description]

  • NotImplementedError – [description]

  • RuntimeError – [description]