mechanical-engineering-ai999x — offline, verified mechanical engineering solver with step-by-step answers

Install · Capability guide · Evaluation · AI999X on Hugging Face · Website · Support: Buy Me a Coffee

License: Apache-2.0 · Author: Ibnul Jaif Farabi (creator and engineer) · Organization: AI999X · Version 1.0.0

Field: Engineering · Tasks: Question Answering, Token Classification, Text Classification, Sentence Similarity, Feature Extraction

mechanical-engineering-ai999x is an offline, deterministic Python solver that answers mechanical engineering questions with verified results from 90 certified capabilities, gives 312 documented answers identically on Windows and Linux, and refuses rather than guesses when an answer cannot be verified.

mechanical-engineering-ai999x is a compact, deterministic mechanical engineering engine for Python. It reads a question in plain English (or a typed call), picks a certified mechanical engineering capability, computes the answer exactly, checks it, and returns the result with its steps, units, LaTeX and assumptions — or an honest refusal that says what is missing. It runs fully offline on any CPU, needs no GPU, no API key and no internet, and is built to give zero wrong answers: when it is not sure, it refuses instead of guessing.

Buy me a coffee License Python Offline

Highlights

  • Verified, not generated. Every answer is computed by a certified mechanical engineering capability and checked (substituted back, dimension-checked or compared with an independent computation) before it is returned.
  • Zero wrong answers by design. Seven explicit outcomes — SOLVED, NEEDS_INPUT, AMBIGUOUS, INVALID_INPUT, OUT_OF_SCOPE, UNRECOGNIZED_FORMAT, INTERNAL_ERROR — never a silent guess. Every one of its 312 documented answers is reproduced exactly on every tested platform.
  • Plain-English questions and a guaranteed typed interface. ask() reads documented question forms; solve(capability_id, **inputs) always solves a supported task with valid inputs.
  • Explains itself. Steps, formulas in LaTeX, units, assumptions and the model used, ready for notebooks, tutoring apps and homework checkers.
  • Small and portable. Pure Python (sympy, mpmath); identical answers on Windows and Linux (Python 3.10, 3.11, 3.12, 3.13, 3.14).
  • Coverage: statics, beams and section properties, stress and strain, torsion, columns, fatigue, machine elements, vibrations and structural analysis.

Model overview

Property Value
Package mechanical-engineering-ai999x 1.0.0 (import mechanical_engineering_ai999x)
Type Deterministic neuro-symbolic mechanical engineering engine (rule-based reading + certified symbolic capabilities)
Capabilities 90 certified procedures
Knowledge pack version 1.0.1
Golden answers 312 documented answers, identical on every tested platform
Platforms tested Windows (Python 3.13), Linux x86-64 (Python 3.10, 3.11, 3.12, 3.13, 3.14)
Runtime CPU only, offline; no GPU, no network, no API key
License Apache-2.0
Creator / engineer Ibnul Jaif Farabi
Organization AI999X

Quickstart

pip install mechanical-engineering-ai999x
# or straight from this repository:
pip install https://huggingface.co/AI999X/mechanical-engineering-ai999x/resolve/main/dist/mechanical_engineering_ai999x-1.0.0-py3-none-any.whl
import mechanical_engineering_ai999x as mechanical_engineering

mechanical_engineering.ask("Simply supported beam with point load: L = 6 m, P = 20 kN, a = 2 m, E = 200 GPa, I = 8e-5 m^4").show()
# -> SOLVED — RA = 13333.3, RB = 6666.67, M_max = 26666.7, V_max = 13333.3  (simply_supported_beam_point_load)
mechanical_engineering.ask("Principal stresses: sx = 50 MPa, sy = -10 MPa, txy = 40 MPa").show()
# -> SOLVED — s1_MPa = 70, s2_MPa = -30, tau_max_inplane_MPa = 50, theta_p_deg = 26.5651  (principal_stresses_2d)
mechanical_engineering.ask("Goodman safety factor: sa = 120 MPa, sm = 80 MPa, Se = 250 MPa, Sut = 700 MPa").show()
# -> SOLVED — n_fatigue = 1.68269, sigma_ar_MPa = 135.484  (goodman_fatigue_safety_factor)
mechanical_engineering.ask("Rainflow counting: history = [0, 5, -3, 4, -2, 6, -4, 1, 0]").show()
# -> SOLVED — ranges = [10.0, 9.0, 8.0, 6.0, 5.0, 1.0], counts = [0.5, 0.5, 0.5, 1.0, 1.0, 0.5], total_cycles = 4, max_range = 10  (rainflow_counting)
mechanical_engineering.solve("euler_buckling", E="200 GPa", I="8e-6 m^4", L="4 m", ends="fixed-pinned").show()
# -> SOLVED — P_cr = 2.01907e+06, P_cr_kN = 2019.07, K = 0.699156, Le = 2.79662  (euler_buckling)
mechanical_engineering.ask("Who created you?").message
# -> mechanical-engineering-ai999x was created and engineered by Ibnul Jaif Farabi at AI999X.

Command line: mechanical-engineering-ai999x "<question>", mechanical-engineering-ai999x --capabilities. The outputs above were produced by running this exact code on mechanical-engineering-ai999x 1.0.0.

How every answer is verified

  1. Reading — the question is turned into typed quantities (value, unit, kind, role) and one asked quantity; every stated number must be used or the question is refused.
  2. Planning — only certified capabilities may answer; a capability applies only under the conditions the wording states (for example a pendulum, a liquid at rest, boiling).
  3. Computing — exact symbolic or high-precision numeric evaluation.
  4. Checking — dimensions, substitution back into the defining equation, and agreement between independent readings; any disagreement becomes a refusal, never a number.

Capabilities are certified before they ship: each must reproduce hand-worked reference cases, reject a deliberately wrong variant (a control), and leave every benchmark answer unchanged.

Capabilities

90 certified procedures. A few of them:

  • Procedures: All critical (whirling) speeds of a shaft with several disks; Angle of twist of a stepped shaft; Bar fixed at both ends with an axial load at a step; Belt or rope friction on a drum (capstan equation); Bolt tightening torque and preload (T = K F d); Cantilever with a point load; Cantilever with a triangular (linearly varying) load; Cantilever with a uniformly distributed load; Combined axial force and biaxial bending of a rectangular section; Composite section of rectangles (parallel-axis theorem); Continuous beam under uniform loads (three-moment equation); Critical speed of a shaft carrying one disk; Critical stress of an intermediate column (Johnson parabola / Euler); Damping ratio, damped frequency and logarithmic decrement; Eccentrically loaded bolt group (elastic method); Eccentrically loaded column (secant formula); Endurance limit with the Marin factors; Euler buckling load of a column with given end conditions; Fatigue damage of a stress history (rainflow counting + Miner's rule); Fatigue damage on the trilinear (Eurocode 3) S-N curve; Fatigue life from the S-N line (10^3 to 10^6 cycles); Fatigue life with a mean-stress correction (Morrow, Goodman, SWT, Walker) and Basquin's law; Fatigue safety factor by the ASME-elliptic criterion; Fatigue safety factor by the Gerber criterion …

mechanical_engineering_ai999x.templates() lists every question form ask() reads; the capability guide (PDF, every example executed) is included in this repository.

All 90 formulas

Show every formula, by topic

Beams / cantilevers

Cantilever with a point load

δtip=Pa2(3L−a)6EI,θtip=Pa22EI \delta_{tip} = \frac{Pa^2(3L-a)}{6EI},\quad \theta_{tip} = \frac{Pa^2}{2EI}

Cantilever with a triangular (linearly varying) load

δtip=w0L430EI,θtip=w0L324EI \delta_{tip} = \frac{w_0L^4}{30EI},\quad \theta_{tip} = \frac{w_0L^3}{24EI}

Cantilever with a uniformly distributed load

δtip=wL48EI,θtip=wL36EI \delta_{tip} = \frac{wL^4}{8EI},\quad \theta_{tip} = \frac{wL^3}{6EI}

Beams / simply supported beams

Simply supported beam with a point load

Mmax=PabL,δmax=Pb (L2−b2)3/293 EIL M_{max} = \frac{Pab}{L},\quad \delta_{max} = \frac{Pb\,(L^2-b^2)^{3/2}}{9\sqrt3\,EIL}

Simply supported beam with a uniformly distributed load

Mmax=wL28,δmax=5wL4384EI M_{max} = \frac{wL^2}{8},\quad \delta_{max} = \frac{5wL^4}{384EI}

Simply supported beam with several point loads

RB=∑PixiL,RA=∑Pi−RB,M(x)=RAx−∑xi<xPi(x−xi) R_B = \frac{\sum P_i x_i}{L},\quad R_A = \sum P_i - R_B,\quad M(x) = R_A x - \sum_{x_i<x} P_i(x-x_i)

Beams / statically indeterminate beams

Fixed-fixed (built-in) beam with a point load

MA=Pab2L2,MB=Pa2bL2,δP=Pa3b33EIL3 M_A = \frac{Pab^2}{L^2},\quad M_B = \frac{Pa^2b}{L^2},\quad \delta_P = \frac{Pa^3b^3}{3EIL^3}

Fixed-fixed (built-in) beam with a uniformly distributed load

Mend=wL212,Mmid=wL224,δmax=wL4384EI M_{end} = \frac{wL^2}{12},\quad M_{mid} = \frac{wL^2}{24},\quad \delta_{max} = \frac{wL^4}{384EI}

Propped cantilever with a point load

RB=Pa2(3L−a)2L3,MA=Pab(L+b)2L2 R_B = \frac{Pa^2(3L-a)}{2L^3},\quad M_A = \frac{Pab(L+b)}{2L^2}

Propped cantilever with a uniformly distributed load

RB=3wL8,MA=wL28,δmax≈wL4185EI R_B = \frac{3wL}{8},\quad M_A = \frac{wL^2}{8},\quad \delta_{max} \approx \frac{wL^4}{185EI}

Columns / eccentric loading

Eccentrically loaded column (secant formula)

σmax=PA[1+ecr2sec⁡(L2PEI)] \sigma_{max} = \frac{P}{A}\Big[1 + \frac{ec}{r^2}\sec\Big(\frac{L}{2}\sqrt{\frac{P}{EI}}\Big)\Big]

Columns / elastic buckling

Euler buckling load of a column with given end conditions

Pcr=π2EI(KL)2 P_{cr} = \frac{\pi^2EI}{(KL)^2}

Columns / inelastic buckling

Critical stress of an intermediate column (Johnson parabola / Euler)

σcr=Sy−1E(Sy2πKLr)2(KL/r<Cc),Cc=2π2ESy \sigma_{cr} = S_y - \frac{1}{E}\Big(\frac{S_y}{2\pi}\frac{KL}{r}\Big)^2 \quad (KL/r < C_c),\quad C_c = \sqrt{\frac{2\pi^2E}{S_y}}

Failure theories / brittle materials

Safety factors of a brittle material (maximum normal stress, Coulomb-Mohr, modified Mohr)

σ1Sut−σ3Suc=1n,(Suc−Sut)σASucSut−σBSuc=1n \frac{\sigma_1}{S_{ut}} - \frac{\sigma_3}{S_{uc}} = \frac1n,\quad \frac{(S_{uc}-S_{ut})\sigma_A}{S_{uc}S_{ut}} - \frac{\sigma_B}{S_{uc}} = \frac1n

Failure theories / ductile materials

Von Mises and Tresca equivalent stresses and safety factors

σvm=12[(σ1−σ2)2+(σ2−σ3)2+(σ3−σ1)2],n=Syσeq \sigma_{vm} = \sqrt{\tfrac12\big[(\sigma_1-\sigma_2)^2+(\sigma_2-\sigma_3)^2+(\sigma_3-\sigma_1)^2\big]},\quad n = \frac{S_y}{\sigma_{eq}}

Fatigue / cumulative damage

Fatigue damage of a stress history (rainflow counting + Miner's rule)

D=∑iniNc(SiSc)m D = \sum_i \frac{n_i}{N_c}\Big(\frac{S_i}{S_c}\Big)^m

Fatigue damage on the trilinear (Eurocode 3) S-N curve

N=2⋅106(ΔσCΔσ)3 (Δσ≥ΔσD),N=5⋅106(ΔσDΔσ)5 N = 2\cdot10^6\Big(\frac{\Delta\sigma_C}{\Delta\sigma}\Big)^3\ (\Delta\sigma\ge\Delta\sigma_D),\quad N = 5\cdot10^6\Big(\frac{\Delta\sigma_D}{\Delta\sigma}\Big)^5

Miner's rule damage with a single-slope S-N curve

D=∑iniNi,Ni=Nc(ScSi)m D = \sum_i\frac{n_i}{N_i},\quad N_i = N_c\Big(\frac{S_c}{S_i}\Big)^m

Fatigue / cycle counting

Rainflow cycle counting of a load history (ASTM E1049)

∣x3−x2∣≥∣x2−x1∣⇒count ∣x2−x1∣ \vert x_3-x_2\vert \ge \vert x_2-x_1\vert \Rightarrow \text{count } \vert x_2-x_1\vert

Fatigue / endurance limit

Endurance limit with the Marin factors

Se=kakbkckdkekf Se′,ka=aSutb,ke=1−0.08 za S_e = k_a k_b k_c k_d k_e k_f\,S_e',\quad k_a = aS_{ut}^b,\quad k_e = 1 - 0.08\,z_a

Fatigue / mean-stress criteria

Fatigue safety factor by the ASME-elliptic criterion

(nσaSe)2+(nσmSy)2=1 \left(\frac{n\sigma_a}{S_e}\right)^2 + \left(\frac{n\sigma_m}{S_y}\right)^2 = 1

Fatigue safety factor by the Gerber criterion

nσaSe+(nσmSut)2=1 \frac{n\sigma_a}{S_e} + \left(\frac{n\sigma_m}{S_{ut}}\right)^2 = 1

Fatigue safety factor by the Soderberg criterion

σaSe+σmSy=1n \frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_y} = \frac1n

Fatigue safety factor by the modified Goodman criterion

σaSe+σmSut=1n \frac{\sigma_a}{S_e} + \frac{\sigma_m}{S_{ut}} = \frac1n

Fatigue / shaft design

Shaft diameter for a design factor (DE-Goodman)

d=(16nπ{4(KfMa)2+3(KfsTa)2Se+4(KfMm)2+3(KfsTm)2Sut})1/3 d = \Big(\frac{16n}{\pi}\Big\{\frac{\sqrt{4(K_fM_a)^2+3(K_{fs}T_a)^2}}{S_e} + \frac{\sqrt{4(K_fM_m)^2+3(K_{fs}T_m)^2}}{S_{ut}}\Big\}\Big)^{1/3}

Shaft fatigue safety factor (DE-Goodman)

1n=16πd3{4(KfMa)2+3(KfsTa)2Se+4(KfMm)2+3(KfsTm)2Sut} \frac1n = \frac{16}{\pi d^3}\Big\{\frac{\sqrt{4(K_fM_a)^2+3(K_{fs}T_a)^2}}{S_e} + \frac{\sqrt{4(K_fM_m)^2+3(K_{fs}T_m)^2}}{S_{ut}}\Big\}

Fatigue / stress-life

Fatigue life from the S-N line (10^3 to 10^6 cycles)

a=(fSut)2Se,b=−13log⁡10fSutSe,N=(σaa)1/b a = \frac{(fS_{ut})^2}{S_e},\quad b = -\frac13\log_{10}\frac{fS_{ut}}{S_e},\quad N = \Big(\frac{\sigma_a}{a}\Big)^{1/b}

Fatigue life with a mean-stress correction (Morrow, Goodman, SWT, Walker) and Basquin's law

σar=σa1−σm/σf′,σar=σmaxσa,Nf=12(σarσf′)1/b \sigma_{ar} = \frac{\sigma_a}{1-\sigma_m/\sigma_f'},\quad \sigma_{ar} = \sqrt{\sigma_{max}\sigma_a},\quad N_f = \tfrac12\Big(\frac{\sigma_{ar}}{\sigma_f'}\Big)^{1/b}

Fatigue strength at a given number of cycles (S-N line)

Sf=aNb S_f = aN^b

Machine elements / belts and band brakes

Belt or rope friction on a drum (capstan equation)

T1T2=eμθ(eμθ/sin⁡(β/2) for a V-belt) \frac{T_1}{T_2} = e^{\mu\theta}\quad\Big(e^{\mu\theta/\sin(\beta/2)}\ \text{for a V-belt}\Big)

Power of a belt drive with centrifugal tension

T1−mv2T2−mv2=eμθ,P=(T1−T2)v \frac{T_1 - mv^2}{T_2 - mv^2} = e^{\mu\theta},\quad P = (T_1-T_2)v

Machine elements / bolted joints

Bolt tightening torque and preload (T = K F d)

T=KFi d T = K F_i\,d

Eccentrically loaded bolt group (elastic method)

Fi=−Pny^+Pe∑rj2 (yi−yˉ,  −(xi−xˉ)) \mathbf F_i = -\frac{P}{n}\hat{\mathbf y} + \frac{Pe}{\sum r_j^2}\,(y_i-\bar y,\; -(x_i-\bar x))

Machine elements / clutches and brakes

Torque capacity of a disc clutch or brake

Twear=Ff(D+d)4,Tpress=Ff3 D3−d3D2−d2 T_{wear} = \frac{Ff(D+d)}{4},\quad T_{press} = \frac{Ff}{3}\,\frac{D^3-d^3}{D^2-d^2}

Machine elements / gear trains

Speeds of a simple planetary (epicyclic) gear train

ωs−ωcωr−ωc=−NrNs \frac{\omega_s - \omega_c}{\omega_r - \omega_c} = -\frac{N_r}{N_s}

Machine elements / gears

Lewis bending stress of a gear tooth

σ=KvWtF m Y \sigma = \frac{K_v W_t}{F\,m\,Y}

Spur gear mesh geometry and contact ratio

Z=ra12−rb12+ra22−rb22−Csin⁡ϕ,mc=Zπmcos⁡ϕ Z = \sqrt{r_{a1}^2-r_{b1}^2} + \sqrt{r_{a2}^2-r_{b2}^2} - C\sin\phi,\quad m_c = \frac{Z}{\pi m\cos\phi}

Machine elements / mechanisms

Four-bar linkage position analysis

K1cos⁡θ4−K2cos⁡θ2+K3=cos⁡(θ2−θ4),θ4=2arctan⁡−B∓B2−4AC2A K_1\cos\theta_4 - K_2\cos\theta_2 + K_3 = \cos(\theta_2-\theta_4),\quad \theta_4 = 2\arctan\frac{-B\mp\sqrt{B^2-4AC}}{2A}

Slider-crank mechanism: slider position, velocity and acceleration

x=rcos⁡θ+l2−r2sin⁡2θ,v=ωdxdθ,a=ω2d2xdθ2 x = r\cos\theta + \sqrt{l^2 - r^2\sin^2\theta},\quad v = \omega\frac{dx}{d\theta},\quad a = \omega^2\frac{d^2x}{d\theta^2}

Machine elements / power screws

Power screw: raising and lowering torque, efficiency, self-locking

TR=Fdm2 l+πfdmsec⁡απdm−flsec⁡α+Ffcdc2 T_R = \frac{Fd_m}{2}\,\frac{l + \pi fd_m\sec\alpha}{\pi d_m - fl\sec\alpha} + \frac{Ff_cd_c}{2}

Machine elements / rolling bearings

Required catalogue rating of a rolling bearing

C10=afFD[xDx0+(θ−x0)(ln⁡1/RD)1/b]1/a C_{10} = a_fF_D\Big[\frac{x_D}{x_0 + (\theta-x_0)(\ln 1/R_D)^{1/b}}\Big]^{1/a}

Rolling-bearing life at a given reliability

L10=LR(CF)a,x=x0+(θ−x0)(ln⁡1R)1/b L_{10} = L_R\Big(\frac{C}{F}\Big)^a,\quad x = x_0 + (\theta-x_0)\Big(\ln\frac1R\Big)^{1/b}

Machine elements / springs

Helical compression spring: rate, deflection and shear stress

k=Gd48D3Na,τ=Ks8FDπd3,Ks=1+0.5C k = \frac{Gd^4}{8D^3N_a},\quad \tau = K_s\frac{8FD}{\pi d^3},\quad K_s = 1 + \frac{0.5}{C}

Wahl curvature factor of a helical spring

KW=4C−14C−4+0.615C,τ=KW8FDπd3 K_W = \frac{4C-1}{4C-4} + \frac{0.615}{C},\quad \tau = K_W\frac{8FD}{\pi d^3}

Pressure vessels / interference fits

Shrink (press) fit: interface pressure and hoop stresses

p=Eδ2R3 (ro2−R2)(R2−ri2)ro2−ri2 p = \frac{E\delta}{2R^3}\,\frac{(r_o^2-R^2)(R^2-r_i^2)}{r_o^2-r_i^2}

Pressure vessels / rotating disks

Stresses in a rotating disk (solid or with a central hole)

σθ(ri)=3+ν4ρω2(ro2+1−ν3+νri2),σr,max=3+ν8ρω2(ro−ri)2 \sigma_\theta(r_i) = \frac{3+\nu}{4}\rho\omega^2\Big(r_o^2 + \frac{1-\nu}{3+\nu}r_i^2\Big),\quad \sigma_{r,max} = \frac{3+\nu}{8}\rho\omega^2(r_o-r_i)^2

Pressure vessels / thick-walled cylinders

Thick-walled cylinder under pressure (Lame equations)

σr,θ=pia2−pob2b2−a2∓(pi−po)a2b2(b2−a2)r2 \sigma_{r,\theta} = \frac{p_ia^2 - p_ob^2}{b^2-a^2} \mp \frac{(p_i-p_o)a^2b^2}{(b^2-a^2)r^2}

Pressure vessels / thin-walled vessels

Thin-walled pressure vessel stresses (cylinder or sphere)

σh=prt,σl=pr2t \sigma_h = \frac{pr}{t},\quad \sigma_l = \frac{pr}{2t}

Section properties / arbitrary sections

Section properties of a polygonal section

A=12∑ci,Ix=112∑ci (yi2+yiyi+1+yi+12)−Ayˉ2 A = \tfrac12\sum c_i,\quad I_x = \tfrac1{12}\sum c_i\,(y_i^2+y_iy_{i+1}+y_{i+1}^2) - A\bar y^2

Section properties / composite sections

Composite section of rectangles (parallel-axis theorem)

Ix=∑i(bihi312+Ai(yi−yˉ)2),Ixy=∑iAi(xi−xˉ)(yi−yˉ) I_x = \sum_i\Big(\frac{b_ih_i^3}{12} + A_i(y_i-\bar y)^2\Big),\quad I_{xy} = \sum_i A_i(x_i-\bar x)(y_i-\bar y)

Section properties / standard shapes

Section properties of a T-section

yˉ=∑Aiyi∑Ai,Ix=∑(bihi312+Ai(yi−yˉ)2) \bar y = \frac{\sum A_i y_i}{\sum A_i},\quad I_x = \sum\Big(\frac{b_ih_i^3}{12} + A_i(y_i - \bar y)^2\Big)

Section properties of a channel (C) section

xˉ=∑Aixi∑Ai,Iy=∑(hibi312+Ai(xi−xˉ)2) \bar x = \frac{\sum A_i x_i}{\sum A_i},\quad I_y = \sum\Big(\frac{h_ib_i^3}{12} + A_i(x_i-\bar x)^2\Big)

Section properties of a hollow circle (tube)

I=π(D4−d4)64,J=π(D4−d4)32 I = \frac{\pi(D^4-d^4)}{64},\quad J = \frac{\pi(D^4-d^4)}{32}

Section properties of a hollow rectangle (box)

Ix=BH3−bh312,Zp,x=BH2−bh24 I_x = \frac{BH^3 - bh^3}{12},\quad Z_{p,x} = \frac{BH^2 - bh^2}{4}

Section properties of a solid circle

I=πd464,J=πd432,Z=πd332 I = \frac{\pi d^4}{64},\quad J = \frac{\pi d^4}{32},\quad Z = \frac{\pi d^3}{32}

Section properties of a solid rectangle

Ix=bh312,Zx=bh26,rx=Ix/A I_x = \frac{bh^3}{12},\quad Z_x = \frac{bh^2}{6},\quad r_x = \sqrt{I_x/A}

Section properties of a symmetric I-section

Ix=bh3−(b−tw)(h−2tf)312,Zp,x=btf(h−tf)+tw(h−2tf)24 I_x = \frac{bh^3 - (b-t_w)(h-2t_f)^3}{12},\quad Z_{p,x} = bt_f(h-t_f) + \frac{t_w(h-2t_f)^2}{4}

Section properties / unsymmetric sections

Section properties of an angle (L) section, with principal axes

I1,2=Ix+Iy2±(Ix−Iy2)2+Ixy2,tan⁡2φ=−2IxyIx−Iy I_{1,2} = \frac{I_x+I_y}{2} \pm \sqrt{\Big(\frac{I_x-I_y}{2}\Big)^2 + I_{xy}^2},\quad \tan2\varphi = \frac{-2I_{xy}}{I_x-I_y}

Statics / equilibrium of a particle

Tensions in two cables holding a weight

T1=Wcos⁡βsin⁡(α+β),T2=Wcos⁡αsin⁡(α+β) T_1 = \frac{W\cos\beta}{\sin(\alpha+\beta)},\quad T_2 = \frac{W\cos\alpha}{\sin(\alpha+\beta)}

Statics / force systems

Resultant of concurrent coplanar forces

R=(∑Ficos⁡θi)2+(∑Fisin⁡θi)2,θR=atan2⁡(Ry,Rx) R = \sqrt{\Big(\sum F_i\cos\theta_i\Big)^2 + \Big(\sum F_i\sin\theta_i\Big)^2},\quad \theta_R = \operatorname{atan2}(R_y, R_x)

Statics / moments

Moment of a force about a point (2D)

MO=(x−x0)Fy−(y−y0)Fx,d=∣MO∣∣F∣ M_O = (x - x_0)F_y - (y - y_0)F_x,\quad d = \frac{\vert M_O\vert }{\vert \mathbf F\vert }

Stress analysis / combined loading

Combined axial force and biaxial bending of a rectangular section

σ=NA+MxyIx+MyxIy \sigma = \frac{N}{A} + \frac{M_xy}{I_x} + \frac{M_yx}{I_y}

Stress analysis / principal stresses

Principal stresses and maximum shear (Mohr's circle, plane stress)

σ1,2=σx+σy2±(σx−σy2)2+τxy2,tan⁡2θp=2τxyσx−σy \sigma_{1,2} = \frac{\sigma_x+\sigma_y}{2} \pm \sqrt{\Big(\frac{\sigma_x-\sigma_y}{2}\Big)^2 + \tau_{xy}^2},\quad \tan2\theta_p = \frac{2\tau_{xy}}{\sigma_x-\sigma_y}

Principal stresses of a three-dimensional stress state

det⁡(σ−σI)=0,τmax=σ1−σ32,τoct=23σvm \det(\boldsymbol\sigma - \sigma\mathbf I) = 0,\quad \tau_{max} = \frac{\sigma_1-\sigma_3}{2},\quad \tau_{oct} = \frac{\sqrt2}{3}\sigma_{vm}

Stress analysis / strain measurement

Strain rosette: strains, principal strains and principal stresses

ε1,2=εx+εy2±(εx−εy2)2+(γxy2)2,σ1=E(ε1+νε2)1−ν2 \varepsilon_{1,2} = \frac{\varepsilon_x+\varepsilon_y}{2} \pm \sqrt{\Big(\frac{\varepsilon_x-\varepsilon_y}{2}\Big)^2 + \Big(\frac{\gamma_{xy}}{2}\Big)^2},\quad \sigma_1 = \frac{E(\varepsilon_1+\nu\varepsilon_2)}{1-\nu^2}

Stress analysis / stress transformation

Plane stress transformation to rotated axes

σx′=σx+σy2+σx−σy2cos⁡2θ+τxysin⁡2θ \sigma_{x'} = \frac{\sigma_x+\sigma_y}{2} + \frac{\sigma_x-\sigma_y}{2}\cos2\theta + \tau_{xy}\sin2\theta

Stress and strain / axial loading

Stepped bar under axial loads at its joints

δ=∑iNiLiAiE,σi=NiAi \delta = \sum_i \frac{N_iL_i}{A_iE},\quad \sigma_i = \frac{N_i}{A_i}

Stress and strain / constitutive law

Generalized Hooke's law: strains from a 3D stress state

εx=1E[σx−ν(σy+σz)],γxy=τxyG,G=E2(1+ν) \varepsilon_x = \frac{1}{E}\big[\sigma_x - \nu(\sigma_y+\sigma_z)\big],\quad \gamma_{xy} = \frac{\tau_{xy}}{G},\quad G = \frac{E}{2(1+\nu)}

Stress and strain / statically indeterminate members

Bar fixed at both ends with an axial load at a step

RA=Pk1k1+k2,ki=AiEiLi,δ=Pk1+k2 R_A = P\frac{k_1}{k_1+k_2},\quad k_i = \frac{A_iE_i}{L_i},\quad \delta = \frac{P}{k_1+k_2}

Structural analysis / continuous beams

Continuous beam under uniform loads (three-moment equation)

Mi−1Li+2Mi(Li+Li+1)+Mi+1Li+1=−wiLi3+wi+1Li+134 M_{i-1}L_i + 2M_i(L_i+L_{i+1}) + M_{i+1}L_{i+1} = -\frac{w_iL_i^3 + w_{i+1}L_{i+1}^3}{4}

Structural analysis / trusses

Member forces of a plane truss (method of joints)

∑members at jFm e^m+Rj+Pj=0 \sum_{\text{members at } j} F_m\,\hat{\mathbf e}_{m} + \mathbf R_j + \mathbf P_j = \mathbf 0

Torsion / circular shafts

Torsion of a hollow circular shaft

τmax=16TDπ(D4−d4),φ=TLGJ \tau_{max} = \frac{16TD}{\pi(D^4-d^4)},\quad \varphi = \frac{TL}{GJ}

Torsion of a solid circular shaft

τmax=16Tπd3,φ=TLGJ,J=πd432 \tau_{max} = \frac{16T}{\pi d^3},\quad \varphi = \frac{TL}{GJ},\quad J = \frac{\pi d^4}{32}

Torsion / compound shafts

Angle of twist of a stepped shaft

φ=∑iTLiGJi,Ji=πdi432 \varphi = \sum_i\frac{TL_i}{GJ_i},\quad J_i = \frac{\pi d_i^4}{32}

Torsion / power transmission

Torque and minimum diameter of a power-transmission shaft

T=Pω,dmin=(16Tπτallow)1/3 T = \frac{P}{\omega},\quad d_{min} = \Big(\frac{16T}{\pi\tau_{allow}}\Big)^{1/3}

Torsion / statically indeterminate shafts

Shaft fixed at both ends with a torque between them

TA=T0b/J2a/J1+b/J2,TB=T0−TA T_A = T_0\frac{b/J_2}{a/J_1 + b/J_2},\quad T_B = T_0 - T_A

Vibrations / continuous systems

Natural frequencies of a uniform beam (Euler-Bernoulli)

ωn=(βnL)2EIρAL4,cos⁡βLcosh⁡βL=−1 (cantilever) \omega_n = (\beta_nL)^2\sqrt{\frac{EI}{\rho AL^4}},\quad \cos\beta L\cosh\beta L = -1\ \text{(cantilever)}

Vibrations / critical speeds of shafts

All critical (whirling) speeds of a shaft with several disks

det⁡(AM−1ω2I)=0 \det\Big(\mathbf A\mathbf M - \frac{1}{\omega^2}\mathbf I\Big) = 0

Critical speed of a shaft carrying one disk

k=3EILa2b2,ωcr=km k = \frac{3EIL}{a^2b^2},\quad \omega_{cr} = \sqrt{\frac{k}{m}}

First critical speed of a shaft with several disks (Dunkerley)

1ωcr2=∑imiaii,aii=ai2bi23EIL \frac{1}{\omega_{cr}^2} = \sum_i m_ia_{ii},\quad a_{ii} = \frac{a_i^2b_i^2}{3EIL}

First critical speed of a shaft with several disks (Rayleigh)

ωcr2=g∑miyi∑miyi2 \omega_{cr}^2 = \frac{g\sum m_iy_i}{\sum m_iy_i^2}

Vibrations / damped vibration

Damping ratio, damped frequency and logarithmic decrement

ζ=c2km,ωd=ωn1−ζ2,δ=2πζ1−ζ2 \zeta = \frac{c}{2\sqrt{km}},\quad \omega_d = \omega_n\sqrt{1-\zeta^2},\quad \delta = \frac{2\pi\zeta}{\sqrt{1-\zeta^2}}

Free vibration response of a damped spring-mass system

x(t)=e−ζωnt(x0cos⁡ωdt+v0+ζωnx0ωdsin⁡ωdt) x(t) = e^{-\zeta\omega_nt}\Big(x_0\cos\omega_dt + \frac{v_0+\zeta\omega_nx_0}{\omega_d}\sin\omega_dt\Big)

Vibrations / forced vibration

Steady-state response to a harmonic force

X=F0/k(1−r2)2+(2ζr)2,tan⁡ϕ=2ζr1−r2 X = \frac{F_0/k}{\sqrt{(1-r^2)^2 + (2\zeta r)^2}},\quad \tan\phi = \frac{2\zeta r}{1-r^2}

Vibration due to rotating unbalance

X=mueω2(k−Mω2)2+(cω)2,FT=Xk2+(cω)2 X = \frac{m_ue\omega^2}{\sqrt{(k-M\omega^2)^2 + (c\omega)^2}},\quad F_T = X\sqrt{k^2+(c\omega)^2}

Vibrations / free vibration

Natural frequency of a spring-mass system

ωn=km,fn=12πkm=12πgδst \omega_n = \sqrt{\frac{k}{m}},\quad f_n = \frac{1}{2\pi}\sqrt{\frac{k}{m}} = \frac{1}{2\pi}\sqrt{\frac{g}{\delta_{st}}}

Vibrations / multi-degree-of-freedom systems

Natural frequencies and first mode of a spring-mass chain

(K−ω2M)ϕ=0 (\mathbf K - \omega^2\mathbf M)\boldsymbol\phi = \mathbf 0

Vibrations / torsional vibration

Torsional natural frequency of a two-rotor system

ω=kt(J1+J2)J1J2,l1=J2LJ1+J2 \omega = \sqrt{\frac{k_t(J_1+J_2)}{J_1J_2}},\quad l_1 = \frac{J_2L}{J_1+J_2}

Vibrations / vibration isolation

Force (or base-motion) transmissibility of a vibration isolator

TR=1+(2ζr)2(1−r2)2+(2ζr)2 TR = \sqrt{\frac{1 + (2\zeta r)^2}{(1-r^2)^2 + (2\zeta r)^2}}

Stiffness of an undamped isolator for a target transmissibility

TR=1r2−1,k=m(ωr)2 TR = \frac{1}{r^2-1},\quad k = m\Big(\frac{\omega}{r}\Big)^2

Out of scope

  • Open-ended explanation, essay writing or tutoring dialogue: it is a solver, not a chatbot.
  • Questions outside its certified mechanical engineering capabilities, and any question whose stated numbers it cannot all use — it refuses with the reason instead.
  • High-stakes engineering, medical or legal decisions without independent review.

Limitations

  • It answers what its certified capabilities cover (statics, beams and section properties, stress and strain, torsion, columns, fatigue, machine elements, vibrations and structural analysis); anything else is refused with a reason.
  • ask() reads documented question forms and common phrasings; unusual wording may be refused — use solve() for guaranteed results.
  • Results are as correct as the certified relations and their stated conditions; a certified relation is a checked model, not a claim about every physical situation.

Citation

@software{mechanical_engineering_ai999x_1_0_0,
  title  = {mechanical-engineering-ai999x: an offline, verified mechanical engineering solver},
  author = {Farabi, Ibnul Jaif}, organization = {AI999X},
  year   = {2026}, version = {1.0.0},
  url    = {https://huggingface.co/AI999X/mechanical-engineering-ai999x}
}

Contact

Questions, bug reports and requests: open a discussion on https://huggingface.co/AI999X/mechanical-engineering-ai999x/discussions or visit https://ai999x.com.

Support the project

mechanical-engineering-ai999x is free and open source. If it helps you, you can support further development on Buy Me a Coffee.

Created and engineered by Ibnul Jaif Farabi · AI999X · ai999x.com

Downloads last month
30
Safetensors
Model size
4.72M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Collections including AI999X/mechanical-engineering-ai999x

Evaluation results

  • identical on every platform on Golden answers (312 documented questions, Windows + Linux Python 3.10-3.14)
    self-reported
    1.000