Generation of boundary conditions based on springs

Generation of boundary conditions based on springs.

class model.boundary_cond.spring_bound_cond.ElasticFoundation(wModulus, cRoz, noTensionZ=False)

Bases: object

Region resting on springs (Winkler elastic foundation)

Variables
  • wModulus – Winkler modulus of the foundation (springs in Z direction)

  • cRoz – fraction of the Winkler modulus to apply for friction in the contact plane (springs in X, Y directions)

  • noTensionZ – if True springs in Z direction are made of no-tension material (defaults to None)

calcPressures()

Foundation pressures over the soil. Calculates pressures and forces in the free nodes of the springs (those that belongs to both the spring and the foundation) and stores these values as properties of those nodes: property ‘soilPressure:’ [xStress,yStress,zStress] property ‘soilReaction:’ [xForce,yForce,zForce]

createMaterials(preprocessor, name)

Create the elastic materials for the zero-length elements in a 3D space.

elastic materials (initialize them here and then we apply the corresponding elastic modulus to each node).

createMaterials2D(preprocessor, name)

Create the elastic materials for the zero-length elements in a 2D space.

elastic materials (initialize them here and then we apply the corresponding elastic modulus to each node).

createMaterials3D(preprocessor, name)

Create the elastic materials for the zero-length elements in a 3D space.

elastic materials (initialize them here and then we apply the corresponding elastic modulus to each node).

displayMaxPressures(modelSpace, analysis, combs, caption, fUnitConv, unitDescription, rgMinMax=None, fileName=None)

Calculate and display the maximum earth pressures (Z direction) obtained from the group of load combinations passed as paremeter.

Parameters
  • analysis – analysis type (e.g. predefined_solutions.simple_static_linear(FEcase))

  • combs – load cases to analyze and compare to obtain the maximum pressures.

  • caption – caption text to diaplay.

  • fUnitConv – factor to apply to results (unit conversion)

  • unitDescription – text to display as unit description.

  • rgMinMax – range (vmin,vmax) with the maximum and minimum values of the scalar field (if any) to be represented. All the values less than vmin are displayed in blue and those greater than vmax in red (defaults to None)

  • fileName – file name (defaults to None -> screen display)

displayPressures(caption, fUnitConv, unitDescription, rgMinMax=None, fileName=None)

Display foundation pressures for a single load case. :param rgMinMax: range (vmin,vmax) with the maximum and minimum values

of the scalar field (if any) to be represented. All the values less than vmin are displayed in blue and those greater than vmax in red (defaults to None)

Parameters

fileName – file name (defaults to None -> screen display)

generateSprings(xcSet)

Creates the springs at the nodes of the xcSet given as parameter.

getCentroid()

Returns the geometric baricenter of the springs.

class model.boundary_cond.spring_bound_cond.SpringBC(name, modelSpace, Kx=0, Ky=0, Kz=0)

Bases: object

Spring to be used as boundary condition

Variables
  • name – name

  • modelSpace – model space

  • Kx – spring stiffness in X direction (defaults to 0 -> free)

  • Ky – spring stiffness in Y direction (defaults to 0 -> free)

  • Kz – spring stiffness in Z direction (defaults to 0 -> free)

applyBConNode(node)

create spring boundary conditions in the node. Return the spring element created.

applyOnNodesIn3Dpos(lst3DPos)

create springs in the nearest nodes to the coordinates in the list of 3D positions given as parameter

applyOnNodesInSet(setEnt)

create springs in all the nodes included in the set of entities given as parameter

applyOnNodesLst(Nodelist)

create spring boundary conditions in the nodes included in the list of nodes passed as parameter.

applyOnPointsInSet(setEnt)

create springs in all the points included in the set of entities given as parameter

createSpringMaterials()

create the spring materials in X, Y, Z directions. If there is no spring in any of these directions, its corresponding material is equal to None

model.boundary_cond.spring_bound_cond.spring_bound_cond_anydir(setNodes, orientation, Klist, name)

Apply spring boundary conditions to a set of nodes

Parameters
  • setNodes – set of nodes to apply boundary conditions

  • orientation

    (list) of two vectors [x,y] used to orient

    the zero length element, where: x are the vector components in global coordinates defining

    local x-axis (optional)

    y: vector components in global coordinates defining a vector

    that lies in the local x-y plane of the element(optional).

    If the optional orientation vector are not specified, the local element axes coincide with the global axes. Otherwise, the local z-axis is defined by the cross product between the vectors x and yp specified in the command line.

  • Klist – stiffness [KX,KY,KZ,KrotX,KrotY,KrotZ]

  • name – string to name the spring materials

OpenSees style

OpenSees style commands. Useful when translating OpenSees tcl files.

model.boundary_cond.opensees_style.fix(constraintHandler, idNode, dofs)

Simulates OpenSees fix command.

Parameters
  • constraintHandler – constraint handler.

  • idNode – identifier of the node to constraint.

  • dofs – degrees of freedom to fix (0: free, 1 fixed).