Skip to main content
Glama

random_vibration

Compute random vibration response from a PSD input using Miles' equation and SRSS modal combination, returning RMS acceleration and stress plus a pass/fail check.

Instructions

Random-vibration response off a modal run (Miles' equation; closed-form, no external solver). Provide either analysis (a handle whose fem_modal + fem_run already produced natural frequencies) or an explicit frequencies_hz list, plus a base-acceleration PSD psd_profile ([{"hz":20,"g2_hz":0.01}, ...]; log-log interpolated, and zero outside its band so a mode stiffened above the band escapes drive). Each mode is an SDOF resonator with amplification q (default 10; rule of thumb Q≈√f_n), combined by SRSS: rms_g = sqrt(Σ (π/2)·f·W(f)·Q). With modal_stress_mpa_per_g the g response converts to RMS / 3-σ stress; add allowable_stress_mpa for a pass/fail.

Returns {rms_g, first_mode_hz, dominant_mode_hz, q, psd_band_hz, miles_grms_g, modes: [{mode, frequency_hz, psd_g2_hz, contribution_g, in_band}], rms_stress_mpa, three_sigma_stress_mpa, pass}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
qNo
analysisNo
psd_profileYes
frequencies_hzNo
allowable_stress_mpaNo
modal_stress_mpa_per_gNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden and does so well: it discloses the method (closed-form Miles), the SDOF resonator model, the SRSS combination rule, the Q default and rule of thumb, and the important behavioral subtlety that a mode stiffened above the band 'escapes drive' because PSD is zero outside its band. It also outlines the pass/fail behavior via allowable stress.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose is front-loaded and the Returns block is compact and useful. The middle paragraph is dense and equation-laden, but nearly every clause conveys a needed input format or modeling constraint, so little is wasted; only the sheer density keeps it from a perfect score.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex solver with no output schema and no annotations, the definition is complete: it documents required inputs, alternative input modes, method, model assumptions, and even summarizes the return object's fields. An agent has enough to call it and interpret results correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description compensates for every one of the six parameters: `analysis` (handle with frequencies from fem_modal+fem_run), `frequencies_hz` (explicit list), `psd_profile` (documented format [{"hz":20,"g2_hz":0.01}] and log-log interpolation with band limits), `q` (default 10), `modal_stress_mpa_per_g` (g-to-stress conversion) and `allowable_stress_mpa` (enables pass/fail). This is meaning well beyond the bare schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence states a specific verb and resource ('Random-vibration response off a modal run') and names the method ('Miles' equation; closed-form, no external solver'). An agent can distinguish this from fem_modal, harmonic_response, or beam_modal without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly states the two valid input paths ('either `analysis` ... or an explicit `frequencies_hz` list, plus a base-acceleration PSD `psd_profile`'), which tells the agent when this tool is applicable. However, it never contrasts itself against the many sibling solvers (e.g. harmonic_response, fem_modal) or states when NOT to use it, so routing among alternatives is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools