Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

sdynpy.System

Signature

class sdynpy.System(coordinate: sdynpy.core.sdynpy_coordinate.CoordinateArray, mass, stiffness, damping=None, transformation=None, enforce_symmetry=True)

Matrix Equations representing a Structural Dynamics System

Attributes

NameSummary
CGet or set the damping matrix of the system
coordinateGet or set the degrees of freedom in the system
dampingGet or set the damping matrix of the system
KGet or set the stffness matrix of the system
MGet or set the mass matrix of the system
massGet or set the mass matrix of the system
massive_dofs
massless_dofsGets the massless degrees of freedom in the system
ndofGet the number of internal degrees of freedom of the system
ndof_transformedGet the number of physical degrees of freedom of the system
stiffnessGet or set the stffness matrix of the system
transformationGet or set the transformation matrix

C

Get or set the damping matrix of the system

coordinate

Get or set the degrees of freedom in the system

damping

Get or set the damping matrix of the system

K

Get or set the stffness matrix of the system

M

Get or set the mass matrix of the system

mass

Get or set the mass matrix of the system

massive_dofs

massless_dofs

Gets the massless degrees of freedom in the system

ndof

Get the number of internal degrees of freedom of the system

ndof_transformed

Get the number of physical degrees of freedom of the system

stiffness

Get or set the stffness matrix of the system

transformation

Get or set the transformation matrix

Methods

NameSummary
__init__Create a system representation including mass, stiffness, damping, and transformation matrices.
assign_modal_dampingAssigns a damping matrix to the system that results in equivalent modal damping
beamCreate a beam mass and stiffness matrix
concatenateCombine multiple systems together
constrainApply a constraint matrix to the system
copyReturns a copy of the system object
eigensolutionComputes the eigensolution of the system
frequency_responseComputes frequency response functions at the specified frequency lines.
from_exodus_superelementCreates a system from a superelement from Sierra/SD
from_sierra_sd_mfile_outputGenerates a System object from the MFILE, MAA, and KAA outputs from Sierra/SD
get_indices_by_coordinateGets the indices in the transformation matrix corresponding coordinates
loadLoad a system from a file
reduceApply the specified reduction to the model
reduce_craig_bamptonComputes a craig-bampton substructure model for the system
reduce_dynamicPerform Dynamic condensation
reduce_guyanPerform Guyan reduction on the system
remove_transformation
saveSaves the system to a file
set_proportional_dampingSets the damping matrix to a proportion of the mass and stiffness matrices.
simulate_test
spyPlot the structure of the system’s matrices
substructure_by_coordinateConstrain the system by connecting the specified degree of freedom pairs
substructure_by_positionApplies constraints to systems by constraining colocated nodes together
substructure_by_shapeConstrain the system using a set of shapes in a least-squares sense.
substructure_shakersUses substructuring to attach 4DoF Shaker Models to the Substructure
time_integrateIntegrate a system to produce responses to an excitation
to_state_spaceCreates state space matrices A, B, C, and D from a SDynPy System object
transformation_matrix_at_coordinatesReturn the transformation matrix at the specified coordinates
transformation_shapes

__init__

def sdynpy.System.__init__(self, coordinate: sdynpy.core.sdynpy_coordinate.CoordinateArray, mass, stiffness, damping=None, transformation=None, enforce_symmetry=True)

Create a system representation including mass, stiffness, damping, and transformation matrices.

Parameters

Returns

Raises

assign_modal_damping

def sdynpy.System.assign_modal_damping(self, damping_ratios)

Assigns a damping matrix to the system that results in equivalent modal damping

Parameters

Returns

beam

def sdynpy.System.beam(cls, length, width, height, num_nodes, E=None, rho=None, nu=None, material=None)

Create a beam mass and stiffness matrix

Parameters

Returns

Raises

concatenate

def sdynpy.System.concatenate(cls, systems, coordinate_node_offset=0)

Combine multiple systems together

Parameters

Returns

constrain

def sdynpy.System.constrain(self, constraint_matrix, rcond=None)

Apply a constraint matrix to the system

Parameters

Returns

copy

def sdynpy.System.copy(self)

Returns a copy of the system object

Returns

eigensolution

def sdynpy.System.eigensolution(self, num_modes=None, maximum_frequency=None, complex_modes=False, return_shape=True)

Computes the eigensolution of the system

Parameters

Returns

Raises

frequency_response

def sdynpy.System.frequency_response(self, frequencies, responses=None, references=None, displacement_derivative=0)

Computes frequency response functions at the specified frequency lines.

Parameters

Returns

from_exodus_superelement

def sdynpy.System.from_exodus_superelement(cls, superelement_nc4, transformation_exodus_file=None, x_disp='DispX', y_disp='DispY', z_disp='DispZ', x_rot=None, y_rot=None, z_rot=None, reduce_to_external_surfaces=False)

Creates a system from a superelement from Sierra/SD

Parameters

Returns

Raises

from_sierra_sd_mfile_output

def sdynpy.System.from_sierra_sd_mfile_output(cls, maa_file, kaa_file, gid_file, aset_map_file)

Generates a System object from the MFILE, MAA, and KAA outputs from Sierra/SD

Parameters

Returns

get_indices_by_coordinate

def sdynpy.System.get_indices_by_coordinate(self, coordinates, ignore_sign=False)

Gets the indices in the transformation matrix corresponding coordinates

Parameters

Returns

Raises

load

def sdynpy.System.load(cls, filename)

Load a system from a file

Parameters

Returns

reduce

def sdynpy.System.reduce(self, reduction_transformation)

Apply the specified reduction to the model

Parameters

Returns

reduce_craig_bampton

def sdynpy.System.reduce_craig_bampton(self, connection_degrees_of_freedom: sdynpy.core.sdynpy_coordinate.CoordinateArray, num_fixed_base_modes: int, return_shape_matrix: bool = False)

Computes a craig-bampton substructure model for the system

Parameters

Returns

Raises

reduce_dynamic

def sdynpy.System.reduce_dynamic(self, coordinates, frequency)

Perform Dynamic condensation

Parameters

Returns

Raises

reduce_guyan

def sdynpy.System.reduce_guyan(self, coordinates)

Perform Guyan reduction on the system

Parameters

Returns

Raises

remove_transformation

def sdynpy.System.remove_transformation(self)

save

def sdynpy.System.save(self, filename)

Saves the system to a file

Parameters

Returns

set_proportional_damping

def sdynpy.System.set_proportional_damping(self, mass_fraction, stiffness_fraction)

Sets the damping matrix to a proportion of the mass and stiffness matrices.

The damping matrix will be set to mass_fraction*self.mass + stiffness_fraction*self.stiffness

Parameters

Returns

simulate_test

def sdynpy.System.simulate_test(self, bandwidth, frame_length, num_averages, excitation, references, responses=None, excitation_level=1.0, excitation_noise_level=0.0, response_noise_level=0.0, steady_state_time=0.0, excitation_min_frequency=None, excitation_max_frequency=None, signal_fraction=0.5, extra_time_between_frames=0.0, integration_oversample=10, antialias_filter_cutoff_factor=3, antialias_filter_order=4, multihammer_impact_spacing_factor=4, extra_outputs=None, **generator_kwargs)

spy

def sdynpy.System.spy(self, subplots_kwargs={'figsize': (10, 3)}, spy_kwargs={})

Plot the structure of the system’s matrices

Parameters

Returns

substructure_by_coordinate

def sdynpy.System.substructure_by_coordinate(self, dof_pairs, rcond=None, return_constrained_system=True)

Constrain the system by connecting the specified degree of freedom pairs

Parameters

Returns

substructure_by_position

def sdynpy.System.substructure_by_position(cls, systems, geometries, distance_threshold=1e-08, rcond=None)

Applies constraints to systems by constraining colocated nodes together

Parameters

Returns

substructure_by_shape

def sdynpy.System.substructure_by_shape(self, constraint_shapes, connection_dofs_0, connection_dofs_1=None, rcond=None, return_constrained_system=True)

Constrain the system using a set of shapes in a least-squares sense.

Parameters

Returns

substructure_shakers

def sdynpy.System.substructure_shakers(self, shakers, coordinates)

Uses substructuring to attach 4DoF Shaker Models to the Substructure

Parameters

Returns

time_integrate

def sdynpy.System.time_integrate(self, forces, responses=None, initial_state=None, integration_oversample=1, extra_outputs=None)

Integrate a system to produce responses to an excitation

Parameters

Returns

to_state_space

def sdynpy.System.to_state_space(self, response_coordinates=None, excitation_coordinates=None, output_excitation_signals=True, extra_outputs=None)

Creates state space matrices A, B, C, and D from a SDynPy System object

Parameters

Returns

transformation_matrix_at_coordinates

def sdynpy.System.transformation_matrix_at_coordinates(self, coordinates)

Return the transformation matrix at the specified coordinates

Parameters

Returns

Raises

transformation_shapes

def sdynpy.System.transformation_shapes(self, shape_indices=None)