Load cases and models#
These classes organise and combine individual load types into named analysis scenarios and reusable vehicle or load-pattern models.
LoadCase— a named scenario (e.g. “Dead Load”, “Live Load”) that collects loads for a single analysis run.CompoundLoad— a spatial grouping of loads that move together as a unit (e.g. an axle arrangement).LoadModel— a complete vehicle or load-pattern model composed of one or more compound loads, used as the payload for a moving load.
Factory functions#
|
Create a load case container for loads to apply in a grillage analysis. |
|
Create a compound load group that combines multiple individual loads. |
|
Create a load model object representing a vehicle load model. |
Class reference#
LoadCase#
- class LoadCase(name)#
Bases:
objectContainer for a named analysis scenario.
A LoadCase holds one or more
LoadsorCompoundLoadobjects that are applied together in a single analysis run. Load factors can be assigned per load object viaadd_load().A
MovingLoadproduces a series of LoadCase instances, one per increment, representing the load at each position along the path.Initialize a LoadCase instance.
- Parameters:
name (str) – Name identifier for this load case (e.g.
"Dead Load").
- add_load(load_obj, **kwargs)#
Add a load or compound load to this load case.
- Parameters:
load_obj (Loads or CompoundLoad) – The load to add.
global_coord_of_load_obj (Point namedtuple, optional) – Required when the load is defined in local coordinates. Sets the origin of the local coordinate system onto the global coordinate of the grillage.
load_factor (float, optional) – Scale factor applied to this load object within the load case. Defaults to
1.
- move_load_group(ref_point)#
Translate all load objects in this load case to a new position.
Repositions all individual and compound loads by moving them to the specified reference point. Used by the MovingLoad class to incrementally move load groups along a defined path.
Parameters#
- ref_pointPoint
Target position (x, y, z) to move the load group’s local reference coordinate. Loads are translated to this position.
Returns#
- None
Modifies load positions in-place for all load_groups in this LoadCase.
Notes#
This method is internal to the MovingLoad analysis workflow and should not be called directly by users.
CompoundLoad#
- class CompoundLoad(name)#
Bases:
objectClass for Compound load. Used to group different Load objects into a Compound load group.
When a Load object is pass as an input, CompoundLoad treats the initial positions (load_points) of the Load classes as local coordinates. Then CompoundLoad sets the loads “in-place” of the local coordinate. If class input local_coord is given, CompoundLoad replaces the coordinates of the initial load points (retaining the magnitude of load points)
When set_global_coord() function is called, CompoundLoad sets the input global coordinate as the new centroid of the compounded load groups. This is done by shifting each local coordinate load point in all load groups under CompoundLoad by x (global) and z (global).
Here are a few relationships between CompoundLoad and other classes
CompoundLoad object can have Loads class and its inheritances (Line, Point, Patch)
CompoundLoad handles functions of Load classes (e.g. move_load)
Initialize a CompoundLoad instance.
- Parameters:
name (str) – Name identifier for this compound load group.
- add_load(load_obj)#
Adds a
Loadto compound load group. If a local_coord parameter is given, this new local_coord overwrites the coordinates (either local or global) of the load object.Note
If load object is defined using local coordinate and local_coord is None, its default local coord precedes.
- Parameters:
load_obj (PointLoad,LineLoading,PatchLoading) – Load object
local_coord (Point namedTuple) – Local coordinate of load object
- set_global_coord(global_coord)#
Set global coordinate of the compound load with respect to global coordinate system of grillage model. The global coordinate is set to all local load points (i.e. it adds the global coord x y z to each local coord)
- Parameters:
global_coord (Point namedTuple) – Value of x y z (global coord) to offset the basic coordinate system
LoadModel#
- class LoadModel(gap=0, **kwargs)#
Bases:
objectClass to handle load model generator. This contains library of load models and creates load model using CompoundLoad class.
For users wishing to contribute/add load models, do so herein by adding the load model as a function to this class.
Init the class.
- Parameters:
gap (float or int) – Gap between axles (specific to M1600 load model). Defaults to
0.model_type (str, optional) – Load model type identifier.
units (str, optional) – Unit system to use. Defaults to
"SI".origin (Point namedTuple, optional) – Origin point for the load model in global coordinates. Defaults to
Point(0, 0, 0).