pycba.load.LoadTrapez#

class LoadTrapez(i_span, w1, w2, a=0.0, c=None)[source]#

Bases: Load

Trapezoidal (linearly varying) distributed load, optionally partial.

The load varies linearly from intensity w1 at position a to w2 at position a + c. When a = 0 and c = span length the load covers the full span (the default).

Creates a trapezoidal load for the member.

Parameters:
  • i_span (int) – The member index to which the load is applied.

  • w1 (float) – The load intensity at position a (left edge of the load).

  • w2 (float) – The load intensity at position a + c (right edge of the load).

  • a (float) – Distance from the left end of the span to the start of the load. Default is 0 (load starts at the left end).

  • c (Optional[float]) – Length (cover) of the load. None (default) means full span from a to the right end.

Methods

H

Heaviside step function: values less than zero are clipped to zero; values greater than zero are clipped to unity; zeros are retained.

MB

Macaulay bracket: clipping values less than zero to zero.

get_cnl

Consistent Nodal Loads for the trapezoidal load on a fixed-fixed span.

get_mbr_results

Simply-supported member results using Macaulay bracket integration.

get_ref

Returns the Released End Forces for a span of length L of element eType: converts the Consistent Nodal Loads of the applied loading to the correct nodal loading depending on the element type.

get_cnl(L, eType)[source]#

Consistent Nodal Loads for the trapezoidal load on a fixed-fixed span.

Derived from the fixed-end force influence integrals:

\[M_A = \frac{1}{L^2}\int_a^b w(x)\,x\,(L-x)^2\,dx\]
Parameters:
  • L (float) – The length of the member

  • eType (int) – The member element type

Returns:

Consistent Nodal Loads for this load type

Return type:

LoadCNL

get_mbr_results(x, L)[source]#

Simply-supported member results using Macaulay bracket integration.

The load w(x) = w1 + (w2−w1)·(x−a)/c for a x a+c is integrated using Macaulay brackets at positions a and b = a+c.

Parameters:
  • x (ndarray) – Vector of points along the length of the member

  • L (float) – The length of the member

Returns:

res – A populated pycba.load.MemberResults object

Return type:

MemberResults

H(v, value=0.0)#

Heaviside step function: values less than zero are clipped to zero; values greater than zero are clipped to unity; zeros are retained.

Parameters:
  • v (ndarray) – The vector to which the Heaviside function will be applied

  • value (float) – The value of the Heaviside function at zero, usually 0, but sometimes 0.5 (average of adjacent values) or 1.0.

Return type:

ndarray

MB(v)#

Macaulay bracket: clipping values less than zero to zero.

Parameters:

v (ndarray) – The vector to which the Macaulay Bracket will be applied

Return type:

ndarray

get_ref(L, eType)#

Returns the Released End Forces for a span of length L of element eType: converts the Consistent Nodal Loads of the applied loading to the correct nodal loading depending on the element type.

Parameters:
  • L (float) – The length of the member

  • eType (int) – The member element type

Returns:

Released End Forces for this load type: the nodal loads to be applied in the analysis, consistent with the element type.

Return type:

LoadCNL