T-Stiffened Panels¶
-
compmech.panel.assembly.tstiff2d_1stiff_compression.
tstiff2d_1stiff_compression
(a, b, ys, bb, bf, defect_a, mu, plyt, laminaprop, stack_skin, stack_base, stack_flange, Nxx_skin, Nxx_base, Nxx_flange, run_static_case=True, r=None, m=8, n=8, mb=None, nb=None, mf=None, nf=None)[source]¶ Linear Buckling of T-Stiffened panel with debonding defect
The panel assembly looks like:
skin _________ _____ _________ | | | | | | | | | p01 | p02 | p03 | | | | | |_________|_____|_________| | p04 | p05 | p06 | /\ x |_________|_____|_________| | | | | | | | | | | | | p07 | p08 | p09 | | | | | | | | | |_________|_____|_________| loaded edge base flange _____ _____ | | | | | | | | | p10 | | p11 | | | | | |_____| |_____| | p12 | | p13 | |_____| |_____| | | | | | | | | | p14 | | p15 | | | | | | | | | |_____| |_____| loaded edge loaded edge
For more details about the theory involved, see [castro2017AssemblyModels].
Parameters: a : float
Total length of the assembly (along
).
b : float
Total width of the assembly (along
).
ys : float
Position of the stiffener along
.
bb : float
Stiffener’s base width.
bf : float
Stiffener’s flange width.
defect_a : float
Debonding defect/assembly length ratio.
mu : float
Material density.
plyt : float
Ply thickness.
laminaprop : list or tuple
Orthotropic lamina properties:
.
stack_skin : list or tuple
Stacking sequence for the skin.
stack_base : list or tuple
Stacking sequence for the stiffener’s base.
stack_flange : list or tuple
Stacking sequence for the stiffener’s flange.
Nxx_skin : float
Skin load distributed at the assembly edge at
.
Nxx_base : float
Stiffener’s base load distributed at the assembly edge at
.
Nxx_flange : float
Stiffener’s flange load distributed at the assembly edge at
.
run_static_case : bool, optional
If True a static analysis is run before the linear buckling analysis to compute the real membrane stress state along the domain, otherwise it is assumed constant values of
for all components.
r : float or None, optional
Radius of the stiffened panel.
m, n : int, optional
Number of terms of the approximation function for the skin.
mb, nb : int, optional
Number of terms of the approximation function for the stiffener’s base.
mf, nf : int, optional
Number of terms of the approximation function for the stiffener’s flange.
Examples
The following example is one of the test cases:
def test_tstiff2d_1stiff_compression(): print('Testing assembly function: tstiff2d_1stiff_compression') b = 1. bb = b/5. bf = bb/2. ys = b/2. assy, eigvals, eigvecs = tstiff2d_1stiff_compression( b=b, bb=bb, bf=bf, a=3., ys=ys, defect_a=0.6, mu=1.3e3, plyt=0.125e-3, laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 5.1e9), stack_skin=[0, 45, -45, 90, -45, 45, 0], stack_base=[0, 90, 0]*4, stack_flange=[0, 90, 0]*8, m=8, n=7, mb=7, nb=6, mf=8, nf=6, run_static_case=False, Nxx_skin=-1., Nxx_base=-1., Nxx_flange=-1., ) assert np.isclose(eigvals[0], 142.65057725, rtol=0.001) assy, c, eigvals, eigvecs = tstiff2d_1stiff_compression( b=b, bb=bb, bf=bf, a=3., ys=ys, defect_a=0.6, mu=1.3e3, plyt=0.125e-3, laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 5.1e9), stack_skin=[0, 45, -45, 90, -45, 45, 0], stack_base=[0, 90, 0]*4, stack_flange=[0, 90, 0]*8, m=8, n=7, mb=7, nb=6, mf=8, nf=6, run_static_case=True, Nxx_skin=-1., Nxx_base=-1., Nxx_flange=-1., ) assert np.isclose(eigvals[0], 114.85854770879844, rtol=0.001)
-
compmech.panel.assembly.tstiff2d_1stiff_flutter.
tstiff2d_1stiff_flutter
(a, b, ys, bb, bf, defect_a, mu, plyt, laminaprop, stack_skin, stack_base, stack_flange, air_speed=None, rho_air=None, Mach=None, speed_sound=None, flow='x', Nxx_skin=None, Nxx_base=None, Nxx_flange=None, run_static_case=True, r=None, m=8, n=8, mb=None, nb=None, mf=None, nf=None)[source]¶ Flutter of T-Stiffened Panel with possible defect at middle
For more details about each parameter and the aerodynamic formulation see Ref. [castro2016FlutterPanel] .
The panel assembly looks like:
skin _________ _____ _________ | | | | | | | | | p01 | p02 | p03 | | | | | |_________|_____|_________| | p04 | p05 | p06 | /\ x |_________|_____|_________| | | | | | | | | | | | | p07 | p08 | p09 | | | | | | | | | |_________|_____|_________| loaded edge base flange _____ _____ | | | | | | | | | p10 | | p11 | | | | | |_____| |_____| | p12 | | p13 | |_____| |_____| | | | | | | | | | p14 | | p15 | | | | | | | | | |_____| |_____| loaded edge loaded edge
Parameters: a : float
Total length of the assembly (along
).
b : float
Total width of the assembly (along
).
ys : float
Position of the stiffener along
.
bb : float
Stiffener’s base width.
bf : float
Stiffener’s flange width.
defect_a : float
Debonding defect/assembly length ratio.
mu : float
Material density.
plyt : float
Ply thickness.
laminaprop : list or tuple
Orthotropic lamina properties:
.
stack_skin : list or tuple
Stacking sequence for the skin.
stack_base : list or tuple
Stacking sequence for the stiffener’s base.
stack_flange : list or tuple
Stacking sequence for the stiffener’s flange.
air_speed : float
Airflow speed.
rho_air : float
Air density.
Mach : float
Mach number.
speed_sound : float
Speed of sound.
flow : “x” or “y”
Direction of airflow.
Nxx_skin : float
Skin load distributed at the assembly edge at
.
Nxx_base : float
Stiffener’s base load distributed at the assembly edge at
.
Nxx_flange : float
Stiffener’s flange load distributed at the assembly edge at
.
run_static_case : bool, optional
If True a static analysis is run before the linear buckling analysis to compute the real membrane stress state along the domain, otherwise it is assumed constant values of
for all components.
r : float or None, optional
Radius of the stiffened panel.
m, n : int, optional
Number of terms of the approximation function for the skin.
mb, nb : int, optional
Number of terms of the approximation function for the stiffener’s base.
mf, nf : int, optional
Number of terms of the approximation function for the stiffener’s flange.
Examples
The following example is one of the test cases:
def test_tstiff2d_1stiff_flutter(): print('Testing assembly function: tstiff2d_1stiff_flutter') b = 1. bb = b/5. bf = bb/2. ys = b/2. assy, c, eigvals, eigvecs = tstiff2d_1stiff_flutter( b=b, bb=bb, bf=bf, a=3., ys=ys, defect_a=0.1, mu=1.3e3, plyt=0.125e-3, laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 5.1e9), stack_skin=[0, 45, -45, 90, -45, 45, 0], stack_base=[0, 90, 0]*4, stack_flange=[0, 90, 0]*8, m=6, n=7, mb=5, nb=6, mf=6, nf=7, air_speed=800., rho_air=1500., Mach=2., speed_sound=343., run_static_case=True, ) assert np.isclose(eigvals[0], 1423.254820+0.j, rtol=0.001)
-
compmech.panel.assembly.tstiff2d_1stiff_freq.
tstiff2d_1stiff_freq
(a, b, ys, bb, bf, defect_a, mu, plyt, laminaprop, stack_skin, stack_base, stack_flange, r=None, m=8, n=8, mb=None, nb=None, mf=None, nf=None)[source]¶ Frequency T-Stiffened Panel with possible defect at middle
For more details about each parameter and the aerodynamic formulation see Ref. [castro2016FlutterPanel] .
For more details about the theory involved on the assembly of panels, see [castro2017AssemblyModels].
The panel assembly looks like:
skin _________ _____ _________ | | | | | | | | | p01 | p02 | p03 | | | | | |_________|_____|_________| | p04 | p05 | p06 | |_________|_____|_________| | | | | | | | | | p07 | p08 | p09 | | | | | | | | | |_________|_____|_________| base flange _____ _____ | | | | | | | | | p10 | | p11 | | | | | |_____| |_____| | p12 | | p13 | |_____| |_____| | | | | | | | | | p14 | | p15 | | | | | | | | | |_____| |_____|
Parameters: a : float
Total length of the assembly (along
).
b : float
Total width of the assembly (along
).
ys : float
Position of the stiffener along
.
bb : float
Stiffener’s base width.
bf : float
Stiffener’s flange width.
defect_a : float
Debonding defect/assembly length ratio.
mu : float
Material density.
plyt : float
Ply thickness.
laminaprop : list or tuple
Orthotropic lamina properties:
.
stack_skin : list or tuple
Stacking sequence for the skin.
stack_base : list or tuple
Stacking sequence for the stiffener’s base.
stack_flange : list or tuple
Stacking sequence for the stiffener’s flange.
r : float or None, optional
Radius of the stiffened panel.
m, n : int, optional
Number of terms of the approximation function for the skin.
mb, nb : int, optional
Number of terms of the approximation function for the stiffener’s base.
mf, nf : int, optional
Number of terms of the approximation function for the stiffener’s flange.
Examples
The following example is one of the test cases:
def test_tstiff2d_1stiff_freq(): print('Testing assembly function: tstiff2d_1stiff_freq') b = 1. bb = b/5. bf = bb/2. ys = b/2. assy, eigvals, eigvecs = tstiff2d_1stiff_freq( b=b, bb=bb, bf=bf, a=3., ys=ys, defect_a=0.1, mu=1.3e3, plyt=0.125e-3, laminaprop=(142.5e9, 8.7e9, 0.28, 5.1e9, 5.1e9, 5.1e9), stack_skin=[0, 45, -45, 90, -45, 45, 0], stack_base=[0, 90, 0]*4, stack_flange=[0, 90, 0]*8, m=6, n=7, mb=5, nb=6, mf=6, nf=7, ) assert np.isclose(eigvals[0], 48.440425531703042+0.j, atol=0.001)