solve-trigonometric-problem
À propos
Cette compétence résout systématiquement les équations trigonométriques et les problèmes de triangles en utilisant les identités, les lois des sinus/cosinus et les fonctions inverses. Elle traite la résolution d'équations, la détermination des triangles à partir d'informations partielles sur les côtés/angles (SSS, SAS, etc.), la vérification d'identités et la modélisation appliquée. Utilisez-la pour trouver des angles inconnus, compléter des triangles, ou pour des applications trigonométriques pratiques en topographie ou en physique.
Installation rapide
Claude Code
Recommandénpx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/solve-trigonometric-problemCopiez et collez cette commande dans Claude Code pour installer cette compétence
Documentation
Solve Trig Problem
Classify type → select strategy → apply identities + laws → verify vs domain/range.
Use When
- Solve trig eqns for unknown angles/values
- Resolve triangles given partial info (SSS, SAS, ASA, AAS, SSA)
- Verify | prove trig identities
- Real-world (surveying, physics, eng)
- Simplify complex trig expressions
In
- Required: Problem statement (eqn, triangle data, identity, applied scenario)
- Required: Output form (exact, decimal, general, interval)
- Optional: Angle unit (rad | deg; default rad)
- Optional: Domain restriction ([0, 2π), [0, 360), reals)
- Optional: Precision for numerics (e.g. 4 decimals)
Do
Step 1: Classify
Each cat needs diff strategy.
-
Trig eqn: solve for unknown angle(s).
- Sub: linear in 1 fn, quadratic in 1 fn, multi-angle, mixed fns, parametric.
-
Triangle resolution: partial info → all sides + angles.
- Sub by data: SSS, SAS, ASA, AAS, SSA (ambiguous).
-
Identity verify: prove eqn holds for all values in domain.
- Sub: alg manip, sum-to-product, product-to-sum, half-angle, double-angle.
-
Applied: extract trig model from real-world.
- Sub: periodic modeling, elevation/depression, bearing/nav, harmonic motion.
Doc classification:
Problem: Solve 2*sin^2(x) - sin(x) - 1 = 0 for x in [0, 2*pi).
Classification: Trigonometric equation, quadratic in sin(x).
Got: Clear classification w/ sub-type → determines Step 2 strategy.
If err: Doesn't fit cleanly → compound problem. Decompose, classify each, solve sequential. e.g. "area of triangle ABC given 2 sides + included angle" = SAS resolution + area formula.
Step 2: Strategy
Based on Step 1 classification.
For trig eqns:
| Equation Type | Strategy |
|---|---|
| Linear in sin(x) or cos(x) | Isolate the trig function, apply inverse |
| Quadratic in sin(x) or cos(x) | Substitute u = sin(x), solve quadratic, back-substitute |
| Multiple angle (sin(2x), cos(3x)) | Solve for the inner argument, then divide |
| Mixed functions (sin and cos) | Convert to single function using identities |
| Factorable | Factor and solve each factor = 0 |
For triangle resolution:
| Given Data | Primary Tool |
|---|---|
| SSS | Law of cosines (find largest angle first) |
| SAS | Law of cosines (find opposite side), then law of sines |
| ASA | Angle sum = pi, then law of sines |
| AAS | Angle sum = pi, then law of sines |
| SSA | Law of sines (check ambiguous case: 0, 1, or 2 solutions) |
For identity verify:
- Work one side only (typically more complex)
- Convert all → sin + cos
- Apply fundamental: Pythagorean, reciprocal, quotient
- Apply sum/diff, double-angle, half-angle as needed
- Factor + simplify until both sides match
For applied:
- Diagram, label all known + unknown
- ID trig relationship (right tri, oblique, periodic)
- Setup eqn + solve via above
Doc chosen strategy:
Strategy: Substitute u = sin(x), solve 2u^2 - u - 1 = 0,
back-substitute, and find x in [0, 2*pi).
Got: Specific named strategy matching classification, w/ key formula/identity ID'd.
If err: No single strategy → combine. For mixed sin+cos: (a) Pythagorean sub, (b) tangent half-angle t = tan(x/2), (c) auxiliary angle (a·sin(x) + b·cos(x) = R·sin(x + phi)). Stuck identity → work both sides toward common middle.
Step 3: Apply Identities + Laws
Execute strategy step by step.
Key identity families:
-
Pythagorean: sin²(x) + cos²(x) = 1, 1 + tan²(x) = sec²(x), 1 + cot²(x) = csc²(x)
-
Double-angle: sin(2x) = 2·sin(x)·cos(x), cos(2x) = cos²(x) - sin²(x) = 2·cos²(x) - 1 = 1 - 2·sin²(x)
-
Sum/diff: sin(A ± B) = sin(A)·cos(B) ± cos(A)·sin(B), cos(A ± B) = cos(A)·cos(B) ∓ sin(A)·sin(B)
-
Law of sines: a/sin(A) = b/sin(B) = c/sin(C) = 2R
-
Law of cosines: c² = a² + b² - 2·a·b·cos(C)
-
Half-angle: sin(x/2) = ±√((1 - cos(x))/2), cos(x/2) = ±√((1 + cos(x))/2)
Show each step explicit:
2*sin^2(x) - sin(x) - 1 = 0
Let u = sin(x):
2u^2 - u - 1 = 0
(2u + 1)(u - 1) = 0
u = -1/2 or u = 1
Back-substitute:
sin(x) = -1/2 or sin(x) = 1
For triangle, intermediate values w/ sufficient precision:
Given: a = 7, b = 10, C = 38 degrees (SAS)
Law of cosines: c^2 = 49 + 100 - 2(7)(10)*cos(38)
c^2 = 149 - 140*cos(38) = 149 - 110.312 = 38.688
c = 6.220
Law of sines: sin(A)/7 = sin(38)/6.220
sin(A) = 7*sin(38)/6.220 = 0.6930
A = 43.78 degrees
B = 180 - 38 - 43.78 = 98.22 degrees
Got: Complete chain from initial → intermediate, every identity labeled.
If err: Identity → more complex (not simpler) → reconsider strategy. Recovery: (a) exponential form via Euler's formula for complex identity proofs, (b) multiply both sides by conjugate, (c) substitution to reduce degree. Numerical unexpected → verify w/ independent path.
Step 4: Solve + Check Domain/Range
Extract all solutions, filter vs problem domain.
- Reference angle. Per fn value, determine via inverse:
sin(x) = -1/2 => reference angle = pi/6
sin(x) = 1 => reference angle = pi/2
- Enumerate all in fundamental period. Use sign + quadrant rules:
sin(x) = -1/2:
x is in Q3 or Q4 (sin negative)
x = pi + pi/6 = 7*pi/6
x = 2*pi - pi/6 = 11*pi/6
sin(x) = 1:
x = pi/2
- Apply domain restriction. Keep only in interval:
Domain: [0, 2*pi)
Solutions: x = pi/2, 7*pi/6, 11*pi/6
- General solution (if requested):
General solution:
x = pi/2 + 2*k*pi, k in Z
x = 7*pi/6 + 2*k*pi, k in Z
x = 11*pi/6 + 2*k*pi, k in Z
-
Range constraints. Inverse fn → verify principal value range. Triangle → all angles positive + sum to π (180°), all sides positive.
-
Ambiguous case (SSA). Law of sines w/ SSA:
- sin(B) > 1 → no solution
- sin(B) = 1 → 1 solution (right angle)
- sin(B) < 1, given angle acute → 2 possible (check both yield valid triangles)
- Given angle obtuse | right → at most 1 solution
Got: Complete enumerated solution set respecting all constraints, ambiguous case handled.
If err: No solutions in domain → verify eqn setup. Too many → check extraneous (e.g. squaring both sides). Always sub each candidate back into original.
Step 5: Verify Numerically
Confirm by sub into original | independent computation.
- Sub each into original + verify equality:
Check x = 7*pi/6:
sin(7*pi/6) = -1/2
2*(-1/2)^2 - (-1/2) - 1 = 2*(1/4) + 1/2 - 1 = 1/2 + 1/2 - 1 = 0. VERIFIED.
Check x = 11*pi/6:
sin(11*pi/6) = -1/2
2*(1/4) + 1/2 - 1 = 0. VERIFIED.
Check x = pi/2:
sin(pi/2) = 1
2*(1) - 1 - 1 = 0. VERIFIED.
- Triangle: verify w/ independent law:
Verify triangle: a=7, b=10, c=6.220, A=43.78, B=98.22, C=38
Check law of sines: a/sin(A) = 7/sin(43.78) = 7/0.6913 = 10.126
b/sin(B) = 10/sin(98.22) = 10/0.9897 = 10.104
c/sin(C) = 6.220/sin(38) = 6.220/0.6157 = 10.102
Ratios approximately equal (within rounding). VERIFIED.
Check angle sum: 43.78 + 98.22 + 38 = 180. VERIFIED.
- Identity proofs: verify w/ specific value:
Verify identity: sin(2x) = 2*sin(x)*cos(x)
Let x = pi/3:
LHS: sin(2*pi/3) = sin(120) = sqrt(3)/2
RHS: 2*sin(pi/3)*cos(pi/3) = 2*(sqrt(3)/2)*(1/2) = sqrt(3)/2
LHS = RHS. VERIFIED.
- Doc final in requested format:
Solution: x in {pi/2, 7*pi/6, 11*pi/6} for x in [0, 2*pi).
Got: Every solution passes sub. Triangle passes both laws. Identity confirmed by ≥1 numerical test.
If err: Solution fails verify → extraneous. Remove + re-examine introducing step. Common: squaring (sign ambiguity), mult by potentially-zero expression, wrong quadrant for ref angle.
Check
- Type + sub-type classified
- Strategy explicit named, matches type
- Each identity/law application labeled
- All algebraic steps shown (no logic jumps)
- Domain + range applied explicit
- Ambiguous case addressed (SSA)
- Every solution sub-verified
- Triangle cross-checked w/ independent law
- Final answer in requested format
- Angle units consistent (no mixing rad+deg)
Traps
- Lose solutions by dividing by trig fn: Dividing both sides by sin(x) discards all sin(x)=0 solutions. Factor instead: sin(x)·f(x)=0, solve each factor.
- Extraneous from squaring: sin(x)=cos(x) → sin²=cos² has 2× solutions. Verify candidates vs original (unsquared).
- Ignore ambiguous SSA: 2 sides + non-included angle via law of sines → 0, 1, 2 valid triangles. Missing 2nd solution misses valid answers.
- Mix angle units: sin(30) in radian mode = sin(30 rad), not 30°. State unit at start, enforce throughout.
- Wrong quadrant for ref angle: sin(x)=-1/2 → Q3+Q4, NOT Q1+Q2. Check sign of fn vs quadrant before placing.
- Forget periodicity: Real-line has ∞ solutions. General sol → include "+2kπ" (or "+kπ" for tan). [0, 2π) → enumerate all in interval.
→
construct-geometric-figure— constructions need trig for angles + lengthsprove-geometric-theorem— trig identities frequently as lemmas in geometric proofscreate-skill— package new trig method as reusable skill
Dépôt GitHub
Compétences associées
executing-plans
DesignUtilisez la compétence executing-plans lorsque vous disposez d'un plan de mise en œuvre complet à exécuter par lots contrôlés avec des points de contrôle de revue. Elle charge et examine le plan de manière critique, puis exécute les tâches par petits lots (3 tâches par défaut) tout en rapportant la progression entre chaque lot pour une revue par l'architecte. Cela garantit une mise en œuvre systématique avec des points de contrôle de qualité intégrés.
requesting-code-review
DesignCette compétence délègue un sous-agent réviseur de code pour analyser les modifications apportées au code par rapport aux exigences avant de poursuivre. Elle doit être utilisée après avoir terminé des tâches, implémenté des fonctionnalités majeures, ou avant une fusion vers la branche principale. La revue aide à détecter précocement les problèmes en comparant l'implémentation actuelle avec le plan initial.
connect-mcp-server
DesignCette compétence fournit un guide complet permettant aux développeurs de connecter des serveurs MCP à Claude Code via les transports HTTP, stdio ou SSE. Elle couvre l'installation, la configuration, l'authentification et la sécurité pour intégrer des services externes tels que GitHub, Notion et des API personnalisées. Utilisez-la lors de la configuration d'intégrations MCP, de la configuration d'outils externes ou du travail avec le Protocole de Contexte de Modèle de Claude.
web-cli-teleport
DesignCette compétence aide les développeurs à choisir entre les interfaces Web et CLI de Claude Code en fonction de l'analyse des tâches, puis permet une téléportation transparente des sessions entre ces environnements. Elle optimise le flux de travail en gérant l'état et le contexte de la session lors du passage entre le web, la CLI ou le mobile. Utilisez-la pour des projets complexes nécessitant différents outils à diverses étapes.
