Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Unidirectional Lamina Micromechanics

ASecurity

Use when you must predict the engineering constants of a unidirectional composite lamina from the fiber and matrix constituent properties and the fiber volume fraction: compute the longitudinal modulus E1 and the major Poisson ratio nu12 by the rule of mixtures, the transverse modulus E2 by the Halpin-Tsai closed form with the xi equal to 2 shape factor on the fiber transverse modulus, the in-plane shear modulus G12 by the Halpin-Tsai closed form with the xi equal to 1 shape factor on the fib...

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
ai-agentspythonrustgogit

Works with

claude code

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add ashfordeOU/aero-agent-skills --skill unidirectional-lamina-micromechanics --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Unidirectional Lamina Micromechanics?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Unidirectional Lamina Micromechanics
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-unidirectional-lamina-micromechanics/badge)](https://www.skillsdirectory.com/skills/ashfordeou-unidirectional-lamina-micromechanics)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: unidirectional-lamina-micromechanics
description: "Use when you must predict the engineering constants of a unidirectional composite lamina from the fiber and matrix constituent properties and the fiber volume fraction: compute the longitudinal modulus E1 and the major Poisson ratio nu12 by the rule of mixtures, the transverse modulus E2 by the Halpin-Tsai closed form with the xi equal to 2 shape factor on the fiber transverse modulus, the in-plane shear modulus G12 by the Halpin-Tsai closed form with the xi equal to 1 shape factor on the fiber shear modulus, and the density by the rule of mixtures. Produces the lamina engineering constants in the material axes and the Voigt-Reuss and Hashin-Shtrikman bound bands on E2 and G12 as the verification envelope predictions fall inside. Constituent properties are inputs; no property tables are reproduced. Trigger: unidirectional lamina micromechanics, fiber volume fraction, rule of mixtures, halpin tsai transverse and shear moduli, hashin shtrikman bounds."
license: Apache-2.0
compliance: STANDARDS-REF
standards:
  - id: cmh-17
    reference-only: true
gated: false
domain: structures
pack: composites
compatibility: "agentskills.io SKILL.md; any SKILL.md host (Claude Code, Hermes, OpenClaw)"
metadata:
  domain: structures
  subdomain: composites
  tags: [unidirectional-lamina-micromechanics, rule-of-mixtures, halpin-tsai-equations, fiber-volume-fraction, constituent-property-prediction, voigt-reuss-bounds, hashin-shtrikman-bounds]
  version: 0.1.0
  author: AeroSkills
---

# Unidirectional Lamina Micromechanics (structures/composites/unidirectional-lamina-micromechanics)

Use when the task is predicting the four lamina engineering constants,
E1, nu12, E2 and G12, of a unidirectional composite ply from the fiber
and matrix constituent properties and the fiber volume fraction, the
producer side of the lamina-constant chain that
structures/composites/laminate-stiffness takes as a given input at its
workflow step 1. This leaf implements the rule of mixtures for the
longitudinal modulus, major Poisson ratio and density, and the
Halpin-Tsai closed form for the transverse modulus and in-plane shear
modulus, with the Voigt-Reuss and Hashin-Shtrikman bound bands as the
verification envelope. Pure Python, stdlib only. It pairs with
structures/composites/laminate-stiffness for the downstream ply
stiffness and laminate A matrix, and with
structures/materials/material-selection for constituent property
context.

## Domain quick reference

- Rule of mixtures (exact for the composite cylinder assemblage): E1 =
  V_f E_f + V_m E_m and nu12 = V_f nu_f + V_m nu_m, with V_m = 1 - V_f.
  The fiber axial modulus E_f and major Poisson ratio nu_f enter the
  longitudinal arm directly.
- Matrix shear modulus (isotropic matrix): G_m = E_m / (2 (1 + nu_m)).
- Halpin-Tsai shared form: eta = (Mr - 1) / (Mr + xi) with Mr the
  constituent property ratio; P / P_m = (1 + xi eta V_f) / (1 - eta V_f).
- Transverse modulus E2: the Halpin-Tsai closed form against the fiber
  TRANSVERSE modulus ratio E_fT / E_m with the circular-fiber shape
  factor xi_E2 = 2.0. A carbon fiber is transversely isotropic; using
  the fiber axial modulus in this arm overpredicts E2 by roughly a
  factor of two.
- In-plane shear modulus G12: the Halpin-Tsai closed form against G_f /
  G_m with the circular-fiber shape factor xi_G12 = 1.0, which equals
  exactly the composite-cylinder-assemblage longitudinal shear solution.
- Density: rho_c = V_f rho_f + V_m rho_m, when both constituent
  densities are given.
- Voigt/Reuss band: E2_Voigt = V_f E_fT + V_m E_m (iso-strain upper
  bound) and E2_Reuss = 1 / (V_f / E_fT + V_m / E_m) (iso-stress lower
  bound); the same two forms with G_f and G_m give the G12 band.
- Hashin-Shtrikman G12 band (anti-plane, circular-cylinder problem): the
  lower endpoint equals the xi_G12 = 1 Halpin-Tsai value exactly.
- Hashin-Shtrikman E2 band (in-plane, Hashin 1965 plane-strain bulk
  modulus k* and transverse shear modulus m* bounds): converted through
  the exact transverse-isotropy identity E2 = 4 k m E1 / (E1 (k + m) +
  4 k m nu12^2) at the exact CCA E1 and nu12.
- Module constants XI_E2 = 2.0 and XI_G12 = 1.0 are the standard
  circular-fiber Halpin-Tsai shape factors (Halpin and Tsai, AFML-TR-67-
  423, 1969); the model is closed-form arithmetic in SI units (Pa,
  kg/m^3) on the unidirectional lamina in its material axes.

## Workflow

1. Collect the fiber constituent properties (axial modulus E_f, major
   Poisson ratio nu_f, transverse modulus E_fT, longitudinal shear
   modulus G_f), the matrix constituent properties (modulus E_m,
   Poisson ratio nu_m) and the fiber volume fraction V_f.
2. Derive the matrix shear modulus with shear_modulus_isotropic(E_m,
   nu_m).
3. Predict the longitudinal modulus E1 and major Poisson ratio nu12 by
   the rule of mixtures with e1_longitudinal and nu12_major.
4. Predict the transverse modulus E2 with e2_halpin_tsai, using the
   fiber transverse modulus E_fT and the xi_E2 = 2 shape factor, never
   the fiber axial modulus.
5. Predict the in-plane shear modulus G12 with g12_halpin_tsai, using
   the fiber shear modulus G_f and the xi_G12 = 1 shape factor.
6. Compute the density with rho_composite when both constituent
   densities are given.
7. Verify E2 against the Voigt-Reuss bound band (e2_voigt_upper,
   e2_reuss_lower) and the tighter Hashin-Shtrikman bound band
   (e2_hashin_shtrikman_bounds).
8. Verify G12 against the Voigt-Reuss bound band (g12_voigt_upper,
   g12_reuss_lower) and the Hashin-Shtrikman bound band
   (g12_hashin_shtrikman_bounds), noting the xi_G12 = 1 identity with
   the lower endpoint.
9. Run the one-shot report unidirectional_lamina_constants for the full
   engineering-constants and bound-band dict.
10. Confirm the deterministic checks with the contract test
    scripts/test_unidirectional_lamina_micromechanics.py.

## Worked example

A T300 carbon / epoxy 5208-class unidirectional ply at V_f = 0.60.
Constituent inputs: E_f = 230.0 GPa, nu_f = 0.20, E_fT = 20.0 GPa, G_f =
27.0 GPa (fiber); E_m = 3.5 GPa, nu_m = 0.35 (epoxy matrix); rho_f =
1760.0 kg/m^3, rho_m = 1230.0 kg/m^3.

- Matrix shear modulus: G_m = 3.5 / (2 (1 + 0.35)) = 1.296296 GPa.
- Rule of mixtures: E1 = 0.60 * 230 + 0.40 * 3.5 = 139.400000 GPa;
  nu12 = 0.60 * 0.20 + 0.40 * 0.35 = 0.260000.
- Halpin-Tsai E2: eta = (20 / 3.5 - 1) / (20 / 3.5 + 2) = 0.611111, and
  E2 = 3.5 * (1 + 2 * 0.611111 * 0.60) / (1 - 0.611111 * 0.60) =
  9.578947 GPa.
- Halpin-Tsai G12: G12 = 4.402037 GPa, exactly the composite-cylinder-
  assemblage longitudinal shear solution.
- Density: rho = 0.60 * 1760 + 0.40 * 1230 = 1548.000000 kg/m^3.
- E2 band (GPa): Reuss 6.930693 < Hashin-Shtrikman 8.821709 < 9.578947
  < Hashin-Shtrikman 10.939799 < Voigt 13.400000, with the magnitude
  gate E1 in [135, 145] GPa, E2 in [8, 12] GPa and G12 in [4, 6] GPa
  (Daniel and Ishai textbook T300/5208 values).
- G12 band (GPa): Reuss 3.023033 < 4.402037 = Hashin-Shtrikman lower
  4.402037 < Hashin-Shtrikman upper 12.608295 < Voigt 16.718519, the
  Halpin-Tsai prediction attaining the Hashin-Shtrikman lower endpoint
  exactly.
- Degeneracies: at V_f = 0 the E2 band closes to E_m (3.500000 GPa)
  exactly; at V_f = 1 it closes to 20.758123 GPa, 3.8 percent above
  E_fT because of the cross-section idealization in the k* and m*
  bounds, while the Halpin-Tsai E2 limit at V_f = 1 is exactly E_fT.

## Verification

- Confirm e1_longitudinal(230e9, 3.5e9, 0.6) is within 1e-6 relative of
  139.4e9 and nu12_major(0.2, 0.35, 0.6) is within 1e-9 of 0.26.
- Confirm e2_halpin_tsai(20e9, 3.5e9, 0.6) is within 1e-6 relative of
  9578947368.421053 and g12_halpin_tsai(27e9, 1296296296.2962961, 0.6)
  is within 1e-6 relative of 4402037250.138515.
- Confirm the nested-band ordering at V_f = 0.6: E2 Reuss < E2
  Hashin-Shtrikman lower < E2 Halpin-Tsai < E2 Hashin-Shtrikman upper <
  E2 Voigt, and the analogous G12 ordering with the Halpin-Tsai and
  Hashin-Shtrikman lower endpoint equal.
- Confirm the G12 Halpin-Tsai and Hashin-Shtrikman lower-bound identity
  holds within 1e-9 relative at V_f in {0.3, 0.5, 0.6, 0.7}.
- Confirm the V_f = 0 and V_f = 1 degeneracies and the E2-in-band sweep
  over V_f in [0.3, 0.9].
- Confirm every non-positive or boolean modulus, density and shape
  factor, every Poisson ratio outside [0, 0.5), every fiber volume
  fraction outside [0, 1], and a fiber that is not the stiffer shear or
  cross-section phase raises ValueError.
- Run the contract test offline: python3
  scripts/test_unidirectional_lamina_micromechanics.py (41 tests,
  deterministic).

## Related leaves

- structures/composites/laminate-stiffness: consumes E1, E2, nu12 and
  G12 as workflow step 1 inputs to build the ply stiffness, rotate it
  and assemble the laminate A matrix; this leaf produces those four
  constants, it never assembles stiffness matrices.
- structures/composites/failure-criteria: consumes lamina allowables
  and strength values, not the elastic constants this leaf predicts.
- structures/composites/laminate-hygrothermal-response: owns the
  moisture content, CTE and CME vein from ply-level properties; this
  leaf stops at density.
- structures/materials/material-selection: representative constituent
  property bands for reference, verified against MMPDS, AMS or CMH-17
  before design use; this leaf never looks up or reproduces those
  bands.

## Pitfalls

- Using the fiber axial modulus E_f in the transverse Halpin-Tsai arm
  instead of the fiber transverse modulus E_fT: a carbon fiber is
  transversely isotropic, and this substitution overpredicts E2 by
  roughly a factor of two, the classic bug class here.
- Reading the Voigt/Reuss band as the tight envelope: the
  Hashin-Shtrikman band is always tighter, with the Reuss bound at or
  below the Hashin-Shtrikman lower bound and the Voigt bound at or
  above the Hashin-Shtrikman upper bound (6.930693 GPa Reuss against
  8.821709 GPa Hashin-Shtrikman lower at the worked V_f = 0.6).
- Expecting the E2 Hashin-Shtrikman band to close exactly to E_fT at
  V_f = 1: the in-plane cross-section idealization used to keep the
  band closed-form gives 20.758123 GPa, 3.8 percent above the 20.0 GPa
  E_fT value that the Halpin-Tsai estimator itself reaches exactly.
- Trusting the xi_E2 = 2 estimator below roughly V_f = 0.25: the fixed
  semi-empirical shape factor can dip slightly under the variational
  Hashin-Shtrikman lower bound there (Wall 1997); the verification
  sweep in this leaf deliberately starts at V_f = 0.3.
- Passing engineering constants E1, E2, nu12, G12 into this leaf as
  inputs: they are the OUTPUTS of the constituent-level prediction here,
  never collected inputs; structures/composites/laminate-stiffness is
  the leaf that takes them as given.

## Behavior contract (gate 3)

Run the deterministic contract test (stdlib unittest, offline):

    python3 scripts/test_unidirectional_lamina_micromechanics.py

The test covers the T300/5208 worked example (E1, nu12, E2, G12 and
density within tolerance of the real module outputs and inside the
magnitude gates), the matrix shear derivation, the nested Voigt-Reuss
and Hashin-Shtrikman band ordering for both E2 and G12 at the worked
volume fraction, the G12 Halpin-Tsai and Hashin-Shtrikman lower-bound
identity across volume fractions, the V_f = 0 and V_f = 1 degeneracies,
the E2-in-band sweep over V_f in [0.3, 0.9], the isotropic-fiber
collapse, the one-shot report keys and determinism, and ValueError
rejection of every non-physical or boolean input and of a fiber that is
not the stiffer shear or cross-section phase.

## Compliance

- Standards referenced, not reproduced: CMH-17 (Composite Materials
  Handbook, SAE International) frames the constituent and lamina
  property data conventions this prediction feeds, reference-only per
  standards-map.yaml; no CMH-17 table or design value is reproduced.
- compliance: STANDARDS-REF, gated: false.

Attribution

ashfordeOUashfordeOU
View sourceMore from ashfordeOU →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

694821 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →