Law of Sines Calculator ($\frac{\sin(A)}{a} = \frac{\sin(B)}{b}$)

This calculator solves any non-right triangle when provided with two angles and one side (AAS/ASA) or two sides and one non-included angle (SSA). Enter exactly three known values below. The tool will identify the case and provide all solutions.

Enter Exactly 3 Known Values

The Law of Sines Formula

The Law of Sines is used to solve oblique triangles (non-right triangles). It establishes a direct proportionality between the side lengths and the sines of their opposite angles:

$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$

To find a missing value, you must always use a complete ratio (a known side and its opposite angle) as your reference.

Triangle Solution Cases for the Law of Sines

The Law of Sines is effective in solving three specific input cases, based on the known parts of the triangle:

  1. **AAS (Angle-Angle-Side):** Two angles and a non-included side. (Always has one unique solution)
  2. **ASA (Angle-Side-Angle):** Two angles and the included side. (Always has one unique solution)
  3. **SSA (Side-Side-Angle):** Two sides and a non-included angle. (The **Ambiguous Case**)

The Ambiguous Case (SSA)

When solving the SSA case, the Law of Sines may yield **zero, one, or two** possible triangles. This ambiguity occurs because the sine function is positive in both the first and second quadrants ($\sin(\theta) = \sin(180^\circ - \theta)$).

To determine the number of solutions, the height ($h$) of the triangle is compared to the known side opposite the known angle ($a$) and the adjacent side ($b$).

  • $$h = b \sin(\alpha)$$
  • **Zero Solutions:** If $a < h$ or $a \le b$ and $\alpha \ge 90^\circ$.
  • **One Solution:** If $a = h$ or $a \ge b$.
  • **Two Solutions:** If $h < a < b$.

Frequently Asked Questions (FAQ)

What is the Law of Sines formula?

What is the Ambiguous Case (SSA)?

How do you find the area using the Law of Sines?

When should I use the Law of Cosines instead?


Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Audit: Complete
Formula (LaTeX) + variables + units
This section shows the formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}
Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}

Formula (LaTeX) + variables + units
This section shows the exact formulas used by the calculator engine, plus variable definitions and units.
Formula (extracted LaTeX)
\[','\]
','
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}
Formula (extracted LaTeX)
\[h = b \sin(\alpha)\]
h = b \sin(\alpha)
Formula (extracted LaTeX)
\[{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:\]
{ratios[i].label} = \\frac{\\text{known side}}{\\sin(\\text{known angle})} \\sin(\\text{angle } ${ratios[i].label}) \\approx ${formatNumber(ratios[i].side)}$</p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
lt;/p>`); } } // Find missing angle for (let i = 0; i < ratios.length; i++) { if (ratios[i].angle === null && ratios[i].side !== null) { const sinVal = (ratios[i].side / knownRatio.side) * Math.sin(knownRatio.angle * D_TO_R); if (sinVal > 1 + 1e-9) throw new Error('No Solution: Law of Sines calculation leads to $\\sin(\\theta) > 1$.'); ratios[i].angle = Math.asin(sinVal) * R_TO_D; steps.push(`<p>${steps.length + 1}. Find angle ${ratios[i].label}:
Formula (extracted LaTeX)
\[\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}\]
\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)}
Formula (extracted LaTeX)
\[\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)\]
\beta = \sin^{-1}\left(\frac{b \sin(\alpha)}{a}\right)
Formula (extracted text)
\[\]
$\frac{a}{\sin(\alpha)} = \frac{b}{\sin(\beta)} = \frac{c}{\sin(\gamma)}$
Variables and units
  • No variables provided in audit spec.
Sources (authoritative):
Changelog
Version: 0.1.0-draft
Last code update: 2026-01-19
0.1.0-draft · 2026-01-19
  • Initial audit spec draft generated from HTML extraction (review required).
  • Verify formulas match the calculator engine and convert any text-only formulas to LaTeX.
  • Confirm sources are authoritative and relevant to the calculator methodology.
Verified by Ugo Candido on 2026-01-19
Profile · LinkedIn
, ', svg: { fontCache: 'global' } }; ]], displayMath: [['\\[','\\]']] }, svg: { fontCache: 'global' } };, svg: { fontCache: 'global' } };