Main modules

Loads

class actions.loads.BaseVectorLoad(name, loadVector)

Bases: object

Base class for loads introduced using a load as an xcVector

Variables:
  • name – name identifying the load
  • loadVector – load xc.Vector
class actions.loads.EarthPressLoad(name, xcSet, soilData, vDir)

Bases: actions.loads.BaseVectorLoad

Earth pressure applied on the elements (shell or beams) included in the set xcSet.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements (shells and/or beams)
  • soilData – instance of the class EarthPressureModel that defines the soil parameters required to calculate the earth pressure (K:coefficient of pressure, zGround: global Z coordinate of ground level,gammaSoil: weight density of soil, zWater: global Z coordinate of groundwater level, gammaWater: weight density of water) . soilProp==None if earth thrust is not considered.

:ivar vDir:unit xc vector defining pressures direction :ivar stripLoads: list of instances of the class

StripLoadOnBackfill to define (if any) strip surcharge loads on the backfill (defaults to [], no loads)
Variables:
  • lineLoads – list of instances of the class LineVerticalLoadOnBackfill to define (if any) line surcharge loads acting in vertical direction on the backfill (defaults to [], no loads)
  • horzLoads – list of instances of the class HorizontalLoadOnBackfill to define (if any) surcharge loads acting in horizontal direction on the backfill (defaults to [], no loads)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.InertialLoad(name, lstSets, vAccel)

Bases: actions.loads.BaseVectorLoad

Inertial load (density*acceleration) applied to the elements in the list of mesh-sets

Variables:
  • name – name identifying the load
  • lstSets – list of sets of elements
  • vAccel – acceleration vector xc.Vector([ax,ay,az])
appendLoadToCurrentLoadPattern()
class actions.loads.NodalLoad(name, lstNod, loadVector)

Bases: actions.loads.BaseVectorLoad

Point load applied on a list of nodes

Variables:
  • name – name identifying the load
  • lstNod – list of nodes on which the load is applied.
  • loadVector – xc.Vector with the six components of the load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
appendLoadToCurrentLoadPattern()
getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.PointLoadOverShellElems(name, xcSet, loadVector, prismBase, prismAxis='Z', refSystem='Global')

Bases: actions.loads.BaseVectorLoad

Point load distributed over the shell elements in xcSet whose centroids are inside the prism defined by the 2D polygon prismBase and one global axis.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the shell elements
  • loadVector – xc vector with the six components of the point load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
  • prismBase

    2D polygon that defines the n-sided base of the prism. The vertices of the polygon are defined in global coordinates in the following way:

    • for X-axis-prism: (y,z)
    • for Y-axis-prism: (x,z)
    • for Z-axis-prism: (x,y)
  • prismAxis – axis of the prism (can be equal to ‘X’, ‘Y’, ‘Z’) (defaults to ‘Z’)
  • refSystem – reference system in which loadVector is defined: ‘Local’: element local coordinate system ‘Global’: global coordinate system (defaults to ‘Global’)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

distrParam()

Return the set of elements over which to distribute the point load and the coefficient that must be applied to it

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.SlidingVectorLoad(name, xcSet, pntCoord, loadVector)

Bases: actions.loads.BaseVectorLoad

Distribute load expressed as a sliding vector over the nodes in a set.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the nodes to distribute the load on.
  • pntCoord – (x,y,z) coordinates of a point of the sliding vector.
  • loadVector – xc.Vector(Fx,Fy,Fz,Mx,My,Mz) components of the force sliding vector
appendLoadToCurrentLoadPattern()

Append the loads to the current load pattern.

class actions.loads.StrainGradientThermalLoadOnShells(name, elemSet, elThick, DOF, alpha, Ttop, Tbottom)

Bases: actions.imposed_strain.imp_strain.gradThermalStrain

Apply a thermal gradient between top and bottom faces of the shell elements in xcSet.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • elThick – thickness of elements
  • alpha – Thermal expansion coefficient of material (1/ºC)
  • Ttop – Temperature (ºC) at the top face of elements
  • Tbottom – Temperature (ºC) at the bottom face of elements
  • DOFstrain – degree of freedom to which apply the strain 3: curvature around local x 4: curvature around local y 5: curvature around local z
appendLoadToCurrentLoadPattern()

Append load to the load pattern passed as parameter.

class actions.loads.StrainLoadOnBeams(name, xcSet, strain)

Bases: object

Strain load applied on the beam elements in xcSet

appendLoadToCurrentLoadPattern()

Append load to the load pattern passed as parameter.

class actions.loads.StrainLoadOnShells(name, xcSet, DOFstrain, strain)

Bases: object

Strain load applied on the shell elements in xcSet

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • DOFstrain – degree of freedom to which apply the strain 0: strain along local x 1: strain along local y 3: strain along local z
  • strain – strain (e.g.: alpha x deltaT for thermal expansion)
appendLoadToCurrentLoadPattern()

Append load to the load pattern passed as parameter.

class actions.loads.StrainLoadOnTrusses(name, xcSet, strain)

Bases: object

Strain load applied on the truss elements in xcSet

appendLoadToCurrentLoadPattern()

Append load to the load pattern passed as parameter.

class actions.loads.UnifLoadSurfNodesDistributed(name, surfSet, loadVector)

Bases: actions.loads.BaseVectorLoad

Distribute uniform load defined on surfaces in surfSet (not necessarily meshed) among the nodes that touch each surface.

Variables:
  • name – name identifying the load
  • surfSet – set that contains the surfaces (not necesarily meshed)
  • loadVector – xc.Vector with the six components of the load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.UniformLoadOnBeams(name, xcSet, loadVector, refSystem='Global')

Bases: actions.loads.BaseVectorLoad

Uniform load applied on the beam elements in the set passed as parameter.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • loadVector – xc.Vector with the six components of the load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
  • refSystem – reference system in which loadVector is defined: ‘Local’: element local coordinate system ‘Global’: global coordinate system (defaults to ‘Global)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.UniformLoadOnLines(name, xcSet, loadVector)

Bases: actions.loads.BaseVectorLoad

Uniform load applied to all the lines (not necessarily defined as lines for latter generation of beam elements, they can be lines belonging to surfaces for example) found in the xcSet The uniform load is introduced as point loads in the nodes

Variables:
  • name – name identifying the load
  • xcSet – set that contains the lines
  • loadVector – xc.Vector with the six components of the load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
appendLoadToCurrentLoadPattern()
getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.UniformLoadOnSurfaces(name, xcSet, loadVector, refSystem='Global')

Bases: actions.loads.BaseVectorLoad

Uniform load applied on the shell elements generated from all the surfaces in the xcSet.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the surfaces
  • loadVector – xc.Vector with the six components of the load: xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
  • refSystem – reference system in which loadVector is defined: ‘Local’: element local coordinate system ‘Global’: global coordinate system (defaults to ‘Global)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.UniformLoadOnTrusses(name, xcSet, loadVector)

Bases: actions.loads.BaseVectorLoad

Uniform load applied on the truss elements elements in the set passed as parameter. Load is applied as point loads in the extremities of the truss element.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the lines
  • loadVector – xc.Vector with the six components of the uniform load in global coordinates xc.Vector([Fx,Fy,Fz,Mx,My,Mz]).
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.WindLoadOnBeams(name, xcSet, windParams, Cp, vDirWind, surfExpossed=None, Gf=1.0)

Bases: actions.loads.BaseVectorLoad

Wind load applied on the beam elements in the set passed as parameter.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • windParams – instance of class base_wind.windParams defining the parameters to calculate wind pressure.
  • Cp – pressure coefficient
  • vDirWind – unitary xc.Vector in Wind direction (global coordinates) xc.Vector([Wx,Wy,Wz]).
  • Gf – gust factor (defaults to 1.0)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

class actions.loads.WindLoadOnShells(name, xcSet, windParams, Cp, positFace=True, Gf=1.0)

Bases: actions.loads.BaseVectorLoad

Wind load applied on the beam elements in the set passed as parameter.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • windParams – instance of class base_wind.windParams defining the parameters to calculate wind pressure.
  • Cp – pressure coefficient
  • positFace – if True wind acts against the positive face of the shell (defaults to True)
  • Gf – gust factor (defaults to 1.0)
appendLoadToCurrentLoadPattern()
class actions.loads.WindLoadOnTrusses(name, xcSet, windParams, Cp, vDirWind, surfExpossed=None, Gf=1.0)

Bases: actions.loads.BaseVectorLoad

Wind load applied on the truss elements in the set passed as parameter.

Variables:
  • name – name identifying the load
  • xcSet – set that contains the elements
  • windParams – instance of class base_wind.windParams defining the parameters to calculate wind pressure.
  • Cp – pressure coefficient
  • vDirWind – unitary xc.Vector in Wind direction (global coordinates) xc.Vector([Wx,Wy,Wz]).
  • surfExpossed – surface expossed to wind per unit length of beam. If None surfExpossed is taken as the value of method h() of property ‘crossSection’ for each element.
  • Gf – gust factor (defaults to 1.0)
appendLoadToCurrentLoadPattern()

Append load to the current load pattern.

getMaxMagnitude()

Return the maximum magnitude of the vector loads

Load cases

class actions.load_cases.LoadCase(preprocessor, name, loadPType='default', timeSType='constant_ts')

Bases: object

Definition of a load case.

Variables:
  • name – name given to the load case
  • loadPType – type of load pattern. Available types: “default”, “uniform_excitation”, “multi_support_pattern”, “pbowl_loading”. Defaults to “default”
  • timeSType – type of Time Series. Available time series: “constant_ts”,”linear_ts”,”path_ts”,”pulse_ts”,”rectangular_ts”,”triangular_ts”,”trig_ts”. Defaults to “constant_ts”
  • timeSName – name of the Time Serie
  • lstOfLoadDef – list of load definitions added to the load case
addLstLoads(lstLoads)

list of loads to be added to the load case.

create()

Create the load case and set it as current

class actions.load_cases.LoadCaseManager(preprocessor)

Bases: object

Manager for XC load cases.

defineSimpleLoadCases(names)

Define load patterns with constant time series.

getCurrentLoadCase()

Returns current load case.

getLoadCase(name)
setCurrentLoadCase(name)

Sets current load case.

actions.load_cases.resetAccionesConstantTS(preprocessor, tipoTimeSeries, nmbTimeSeries, fct)

Clear all load patterns in the model and create a new TimeSeries

Parameters:
  • tipoTimeSeries – time series type
  • nmbTimeSeries – time series name.
  • fct – Factor

Combinations

combinations.py: manages the container for load combinations.

class actions.combinations.CombContainer

Bases: object

Container of load combinations.

Variables:
  • SLS – serviceability limit state combination
  • ULS – ultimate limit state combination
dumpCombinations(preprocessor)

Introduces the combinations into the XC combination handler.

exportToLatex(fileName)

Creates LaTeX tables and put the combinations in them.

getLoadCaseDispParameters(combName, setsToDispLoads, setsToDispDspRot, setsToDispIntForc)

Returns a suitable LoadCaseDispParameters for the combination.

Parameters:
  • combName – name of the combination to create the record for.
  • setsToDispLoads – ordered list of sets of elements to display loads.
  • setsToDispDspRot – ordered list of sets of elements to display displacements.
  • setsToDispIntForc – ordered list of sets of elements to display internal forces.
getNames()

returns a list of the combination names.

getNeutralFormat(mapLoadCases)
class actions.combinations.CombinationRecord(name, expr)

Bases: object

Combination name and expression (i.e. ELS01= 1.0*G+1.0*Q)

Variables:
  • name – combination name (i.e. “ELS01”).
  • expr – expresion of the load combination (i.e. 1.0*G+1.0*Q).
createCombination(xcCombHandler)

Create combination and insert it into the XC combination handler.

exportToLatex(outputFile)

Creates LaTeX tables and put the combinations in them.

Parameters:outputFile – file to write into.
getLoadCaseDispParameters(setsToDispLoads, setsToDispDspRot, setsToDispIntForc, unitsScaleForc=0.001, unitsScaleMom=0.001, unitsScaleDisp=1000.0, unitsDispl='[mm]')

Return a suitable LoadCaseDispParameters for the combination.

Parameters:
  • setsToDispLoads – ordered list of sets of elements to display loads.
  • setsToDispDspRot – ordered list of sets of elements to display displacements.
  • setsToDispIntForc – ordered list of sets of elements to display internal forces.
  • unitsScaleForc – factor to apply to internal forces if we want to change the units (defaults to 1e-3).
  • unitsScaleMom – factor to apply to internal moments if we want to change the units (defaults to 1e-3).
  • unitsScaleDispl – factor to apply to displacements if we want to change the units (defaults to 1e3).
  • unitsDispl – text to especify the units in which displacements are represented (defaults to ‘[mm]’
class actions.combinations.SLSCombinations

Bases: actions.combinations.SituationsSet

Combinations of actions for serviceability limit states

Variables:
  • name – name to identify the limit state (serviceability, ultimate,…)
  • rare – combination for a rare design situation
  • freq – combination for a frequent design situation
  • qp – combination for a quasi-permanent design situation
  • earthquake – combination for a earthquake design situation
getNeutralFormat(counter, mapLoadCases)
class actions.combinations.SituationCombs(desc: str)

Bases: dict

Dictionary of combinations for a situation (frequent, rare,
persistent,…).
Variables:description – short description of the situation.
add(name, expr)

Add a combination to the dictionary.

Parameters:
  • name – combination name (i.e. “ELS01”).
  • expr – expresion of the load combination (i.e. 1.0*G+1.0*Q).
dumpCombinations(xcCombHandler)

Introduces the combinations into the XC combination handler.

exportToLatex(outputFile)

Creates LaTeX tables and put the combinations in them.

Parameters:outputFile – file to write into.
getLoadCaseDispParameters(combName, setsToDispLoads, setsToDispDspRot, setsToDispIntForc)

Returns a suitable LoadCaseDispParameters for the combination.

Parameters:
  • combName – name of the combination to create the record for.
  • setsToDispLoads – ordered list of sets of elements to display loads.
  • setsToDispDspRot – ordered list of sets of elements to display displacements.
  • setsToDispIntForc – ordered list of sets of elements to display internal forces.
getNames()

returns a list of the combination names.

getNeutralFormat(counter, typ, mapLoadCases)
class actions.combinations.SituationsSet(name: str)

Bases: object

Set of situations as used in limit states

Variables:
  • name – name to identify the situation set
  • situations – set of situations
dumpCombinations(xcCombHandler)

Introduces the combinations into the XC combination handler.

exportToLatex(outputFile)

Creates LaTeX tables and put the combinations in them.

getLoadCaseDispParameters(combName, setsToDispLoads, setsToDispDspRot, setsToDispIntForc)

Returns a suitable LoadCaseDispParameters for the combination.

Parameters:
  • combName – name of the combination to create the record for.
  • setsToDispLoads – ordered list of sets of elements to display loads.
  • setsToDispDspRot – ordered list of sets of elements to display displacements.
  • setsToDispIntForc – ordered list of sets of elements to display internal forces.
getNames()

returns a list of the combination names.

class actions.combinations.ULSCombinations

Bases: actions.combinations.SituationsSet

Combinations of actions for ultimate limit states

Variables:
  • name – name to identify the limit state (ultimate,…)
  • perm – combination for a persistent or transient design situation
  • acc – combination for a accidental design situation
  • fatigue – combination for a fatigue design situation
  • earthquake – combination for a seismic design situation
getNeutralFormat(counter, mapLoadCases)