Cylinder Assembly

The panel assembly looks like:

B                               A
_______ _______ _______ _______
|       |       |       |       |
|       |       |       |       |
|       |       |       |       |
|  p04  |  p03  |  p02  |  p01  |
|       |       |       |       |
|       |       |       |       |
|_______|_______|_______|_______|

04      03      02      01
_       _       _       _
| |     | |     | |     | |
| |     | |     | |     | |
| |     | |     | |     | |
| |     | |     | |     | |
|_|     |_|     |_|     |_|
x
/\
|
|
y  <-------


where edges A and B are connected to produce the cyclic effect.

Parameters:
heightfloat

Cylinder height (along $$x$$).

rfloat

stackarray-like

Stacking sequence for the cylinder.

The stacking sequence for each blade (with length = npanels).

The width for each blade (with length = npanels).

plytfloat

Ply thickness (assumed unique for the whole structure).

laminaproplist or tuple

Orthotropic lamina properties: $$E_1, E_2, \nu_{12}, G_{12}, G_{13}, G_{23}$$.

npanelsint

The number of panels the cylinder perimiter.

m, nint, optional

Number of approximation terms for each panel.

Returns:
assy, connstuple

A tuple containing the assembly and the default connectivity list of dictionaries.

Linear buckling analysis with a constant Nxx for each panel

See create_cylinder_blade_stiffened() for most parameters.

Parameters:
Nxxs_skinlist

A Nxx for each skin panel.

A Nxx for each blade stiffener.

num_eigvaluesint

Number of eigenvalues to be extracted.

Returns:
assy, eigvals, eigvecstuple

Assembly, eigenvalues and eigenvectors.

Examples

The following example is one of the test cases:

def test_cylinder_blade_stiffened_compression_lb_Nxx_cte():
height = 0.500
r = 0.250
npanels = 5
Nxxs = [-100.]*npanels
height=height,
r=r,
plyt=0.125e-3,
stack=[0, 45, -45, 90, -45, 45],
laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 5.1e9),
npanels=npanels,
Nxxs_skin=Nxxs,
m=8, n=12)

assert np.isclose(Nxxs[0]*eigvals[0], -56569.62172, atol=0.01, rtol=0.001)


Linear buckling analysis with a Nxx calculated using static analysis

See create_cylinder_blade_stiffened() for most parameters.

Parameters:
Nxxs_skinlist

A Nxx for each skin panel.

A Nxx for each blade stiffener.

num_eigvaluesint

Number of eigenvalues to be extracted.

Returns:
assy, c, eigvals, eigvecstuple

Assembly, static results, eigenvalues and eigenvectors.

Examples

The following example is one of the test cases: