Senior Certificate (Amended) — exam-readiness programme (NQF 4 matric)
The complete matric subject catalogue on one row: the eleven official languages at three levels, Mathematics and Physical Sciences at full CAPS Grade 12 depth with independently recomputed worked solutions, and every other Umalusi subject with its own deterministic worked-reference unit. The house proves exam readiness; it does not register candidates, mark scripts that count, or issue the Senior Certificate — those are the roles of the examining authorities.
Lineage
- Conquest Designer University, 2026 — authored from the offline coursework base (an unofficial working reconstruction of CAPS and the Umalusi qualification); a readiness mapping — the DBE administers the examination and Umalusi certifies it, never the house
Final research project
Matriculate Again in 24 Hours — exam readiness across the complete Umalusi subject catalogue, proven against deterministic reference engines
Syllabus
- Languages: the eleven official languages at Home / First Additional / Second Additional level
- Mathematics (flawless focus): algebra and equations; patterns, sequences and series; functions and graphs; calculus; probability; finance; analytical geometry; trigonometry; Euclidean geometry and measurement; statistics
- Physical Sciences (flawless focus): mechanics; waves, sound and light; electricity and magnetism; matter and materials; chemical change; chemical systems
- The full elective catalogue: Mathematical Literacy, Life Orientation, Life Sciences, Agricultural Sciences, Accounting, Business Studies, Economics, Geography, History, Religion Studies, Tourism, Consumer Studies, Hospitality Studies, the technology subjects, the arts subjects and the named additional electives
- The qualification rules: the 7-subject package and the adult second-chance route, the working assessment splits, the pass rules and the designated-subject list — all working reconstructions with verify-before-claim items
Reference
- Quadratic formula
- x = (−b ± √(b² − 4ac)) / (2a), a ≠ 0; Δ = b² − 4ac
- Sequences
- Tₙ = a + (n − 1)d; Sₙ = n/2 [2a + (n − 1)d]; Tₙ = arⁿ⁻¹; S∞ = a/(1 − r), |r| < 1
- Calculus
- f′(x) = limₕ→₀ [f(x+h) − f(x)]/h; d/dx axⁿ = naxⁿ⁻¹
- Trigonometry
- sin(A ± B) = sinA cosB ± cosA sinB; sine, cosine and area rules
- Mechanics
- F_net = ma; f = μN; F_net Δt = Δp; W_net = ΔKE; g = 9,8 m·s⁻²
- Waves and light
- v = fλ; f_L = v/(v ∓ v_s)·f_s; n₁ sinθ₁ = n₂ sinθ₂; E = hf = hc/λ
- Chemistry
- pV = nRT; c = n/V; pH = −log[H⁺]; Kc from equilibrium concentrations; E°cell = E°cathode − E°anode
- Assessment split (working)
- 25% school-based assessment, 75% examination; Life Orientation 100% school-based; the adult route has no school-based component — working reconstruction, each a verify item
- What this row never claims
- registration, accreditation, an examination centre, or the issuing of a Senior Certificate — readiness only
Units
Quadratic equation by factorising · Quadratic equation by the formula · Nature of the roots · Simultaneous linear/quadratic system · Arithmetic sequence and series · Geometric sequence and series · Infinite geometric series · Sigma notation · The parabola · Inverse of a linear function · Exponential and logarithmic equations · Differentiation from first principles · Stationary points of a cubic · Optimisation — the largest rectangle · Compound-angle identity · General solution of a trig equation · Tangent to a circle · Probability from a contingency table · Probability without replacement · Compound interest · Descriptive statistics · Least-squares regression line · Newton's second law — horizontal motion · Inclined plane with friction · Impulse and rebound · Work–energy theorem · Vertical projectile motion · Doppler effect · Snell's law and the critical angle · Coulomb's law · EMF and internal resistance · Faraday's law · The ideal gas law · Stoichiometry — 2H₂ + O₂ → 2H₂O · Concentration · pH of a strong acid · Equilibrium constant — N₂ + 3H₂ ⇌ 2NH₃ · Standard cell potential · Photon energy · Practical data exercise (offline) · Weighted final mark · Reading statistic on a fixed text · Stepped tariff · School-based assessment total · Punnett square — monohybrid cross · Fertiliser nutrient mass · Depreciation · Break-even quantity · Inflation rate from two index values · Map scale and gradient · Timeline span · Fixed-text comparison statistic · Currency conversion and occupancy · Unit price and recipe scaling · Portion cost · File-size total · Binary and decimal conversion · Scale drawing length · Load per area · Gear ratio and torque · Series and parallel resistance · Colour-mix ratio and frame area · Interval frequency ratio · Lighting-cue duration total · Tempo and bar count
Role when narrated: You are a patient matric tutor working one unit at a time. State the formula, substitute every number, carry the units, and end with the check a learner can redo by hand. You never claim the house registers candidates or issues certificates; readiness is the product.
Quadratic equation by factorising · maths_quadratic_factorise
Try with the exampleThe roots of ax² + bx + c = 0 by factorisation, with the discriminant, the sum and the product of the roots checked.
Reference: CAPS Grade 12 Mathematics, worked reference M1 (offline reconstruction); quadratic formula and nature of roots
Returns
- rootA
- the smaller root
- rootB
- the larger root
- discriminant
- Δ = b² − 4ac
- sumOfRoots
- −b/a
- productOfRoots
- c/a
The example
{
"a": 1,
"b": -5,
"c": 6
}
Agents: POST /faculty/matric-nqf4/maths_quadratic_factorise with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Quadratic equation by the formula · maths_quadratic_formula
Try with the exampleThe roots of ax² + bx + c = 0 by x = (−b ± √Δ)/(2a), every substitution shown.
Reference: CAPS Grade 12 Mathematics, worked reference M2 (offline reconstruction); x = (−b ± √(b² − 4ac)) / (2a), a ≠ 0
Returns
- rootA
- the smaller root
- rootB
- the larger root
- discriminant
- Δ = b² − 4ac
The example
{
"a": 2,
"b": 3,
"c": -2
}
Agents: POST /faculty/matric-nqf4/maths_quadratic_formula with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Nature of the roots · maths_nature_of_roots
Try with the exampleWhether ax² + bx + c = 0 has two distinct real, equal real, or non-real roots, from the discriminant alone.
Reference: CAPS Grade 12 Mathematics, worked reference M3 (offline reconstruction); Δ > 0 distinct real, Δ = 0 equal real, Δ < 0 non-real
Returns
- discriminant
- Δ = b² − 4ac
- nature
- two distinct real roots | equal real roots | non-real (complex) roots
The example
{
"a": 1,
"b": 2,
"c": 5
}
Agents: POST /faculty/matric-nqf4/maths_nature_of_roots with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Simultaneous linear/quadratic system · maths_simultaneous
Try with the exampleWhere the line y = mx + k meets the parabola y = x² + px + q — equate, solve, substitute back.
Reference: CAPS Grade 12 Mathematics, worked reference M4 (offline reconstruction); equate the two expressions for y and solve the quadratic
Returns
- x1
- smaller x of intersection
- y1
- its y
- x2
- larger x of intersection
- y2
- its y
The example
{
"p": -3,
"q": 2,
"m": 2,
"k": -4
}
Agents: POST /faculty/matric-nqf4/maths_simultaneous with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Arithmetic sequence and series · maths_arithmetic_sequence
Try with the exampleTₙ = a + (n − 1)d and Sₙ = n/2 [2a + (n − 1)d], with the Sₙ = n/2 (a + l) cross-check.
Reference: CAPS Grade 12 Mathematics, worked reference M5 (offline reconstruction); Tₙ = a + (n − 1)d; Sₙ = n/2 [2a + (n − 1)d]
Returns
- tn
- the nth term
- sn
- the sum of the first n terms
The example
{
"a": 4,
"d": 3,
"n": 20
}
Agents: POST /faculty/matric-nqf4/maths_arithmetic_sequence with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Geometric sequence and series · maths_geometric_sequence
Try with the exampleTₙ = arⁿ⁻¹ and Sₙ = a(rⁿ − 1)/(r − 1), refusing r = 1 where the formula is undefined.
Reference: CAPS Grade 12 Mathematics, worked reference M6 (offline reconstruction); Tₙ = arⁿ⁻¹; Sₙ = a(rⁿ − 1)/(r − 1), r ≠ 1
Returns
- tn
- the nth term
- sn
- the sum of the first n terms
The example
{
"a": 2,
"r": 3,
"n": 5
}
Agents: POST /faculty/matric-nqf4/maths_geometric_sequence with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Infinite geometric series · maths_geometric_infinite
Try with the exampleS∞ = a/(1 − r) for |r| < 1; a ratio at or beyond 1 in magnitude is refused because the sum does not converge.
Reference: CAPS Grade 12 Mathematics, worked reference M6 (offline reconstruction); S∞ = a/(1 − r), only for |r| < 1
Returns
- sInfinity
- the infinite sum
The example
{
"a": 8,
"r": 0.5
}
Agents: POST /faculty/matric-nqf4/maths_geometric_infinite with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Sigma notation · maths_sigma_sum
Try with the exampleΣₖ₌₁ⁿ (pk + q) evaluated with Σk = n(n + 1)/2 and Σ1 = n.
Reference: CAPS Grade 12 Mathematics, worked reference M7 (offline reconstruction); Σₖ₌₁ⁿ k = n(n+1)/2
Returns
- sum
- the value of the sum
The example
{
"p": 2,
"q": 1,
"n": 10
}
Agents: POST /faculty/matric-nqf4/maths_sigma_sum with JSON {pan, …inputs} and the x-402-payment header. Manifest.
The parabola · maths_parabola
Try with the exampleTurning point, axis of symmetry, intercepts and range of f(x) = ax² + bx + c.
Reference: CAPS Grade 12 Mathematics, worked reference M8 (offline reconstruction); turning point at x = −b/(2a)
Returns
- tpX
- x of the turning point
- tpY
- y of the turning point
- xIntercept1
- smaller x-intercept
- xIntercept2
- larger x-intercept
- yIntercept
- f(0)
- range
- the range, e.g. y ≥ −1
The example
{
"a": 1,
"b": -4,
"c": 3
}
Agents: POST /faculty/matric-nqf4/maths_parabola with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Inverse of a linear function · maths_inverse_linear
Try with the exampleg⁻¹ of g(x) = ax + b, the round trip g⁻¹(g(x)) = x, and the composition f(g(x)) with a given parabola.
Reference: CAPS Grade 12 Mathematics, worked reference M8 (offline reconstruction); y = ax + b ⇒ g⁻¹(x) = (x − b)/a, a ≠ 0
Returns
- gOfX
- g(x)
- inverseOfGOfX
- g⁻¹(g(x)) — must be x
- fOfGOfX
- f(g(x)) with the given parabola
The example
{
"a": 2,
"b": 1,
"x": 2,
"pa": 1,
"pb": -4,
"pc": 3
}
Agents: POST /faculty/matric-nqf4/maths_inverse_linear with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Exponential and logarithmic equations · maths_exponential_log
Try with the exampleSolve baseˣ = value: x = log_base(value), refusing non-positive arguments and degenerate bases.
Reference: CAPS Grade 12 Mathematics, worked reference M9 (offline reconstruction); logarithm defined only for argument > 0 and base > 0, base ≠ 1
Returns
- exponent
- x with baseˣ = value
The example
{
"base": 2,
"value": 16
}
Agents: POST /faculty/matric-nqf4/maths_exponential_log with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Differentiation from first principles · maths_first_principles
Try with the examplef′(x) of f(x) = ax² + bx from the limit definition, the derivative at a point, and the tangent's equation there.
Reference: CAPS Grade 12 Mathematics, worked reference M10 (offline reconstruction); f′(x) = limₕ→₀ [f(x+h) − f(x)]/h
Returns
- derivativeAt
- f′(x0)
- fAt
- f(x0)
- tangentSlope
- gradient of the tangent
- tangentIntercept
- c of the tangent y = mx + c
The example
{
"a": 1,
"b": 3,
"x0": 2
}
Agents: POST /faculty/matric-nqf4/maths_first_principles with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Stationary points of a cubic · maths_cubic_stationary
Try with the exampleThe stationary points of f(x) = x³ + bx² + cx + d, classified by the second derivative, with the point of inflection.
Reference: CAPS Grade 12 Mathematics, worked reference M11 (offline reconstruction); f′(x) = 0 at stationary points; f″ classifies them
Returns
- x1
- first stationary x (smaller)
- y1
- f(x1)
- type1
- local maximum | local minimum
- x2
- second stationary x (larger)
- y2
- f(x2)
- type2
- local maximum | local minimum
- inflectionX
- x of the point of inflection
The example
{
"b": -6,
"c": 9,
"d": 1
}
Agents: POST /faculty/matric-nqf4/maths_cubic_stationary with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Optimisation — the largest rectangle · maths_optimisation
Try with the exampleThe rectangle of greatest area for a fixed perimeter, by differentiating A(x) = x(P/2 − x).
Reference: CAPS Grade 12 Mathematics, worked reference M12 (offline reconstruction); A′(x) = 0 at the maximum, A″ < 0 confirms it
Returns
- sideX
- the optimal width (m)
- sideY
- the optimal height (m)
- maxArea
- the maximal area (m²)
The example
{
"perimeter": 40
}
Agents: POST /faculty/matric-nqf4/maths_optimisation with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Compound-angle identity · maths_compound_angle
Try with the examplesin(A + B) = sinA cosB + cosA sinB, every substitution shown — sin 75° exactly and numerically.
Reference: CAPS Grade 12 Mathematics, worked reference M13 (offline reconstruction); sin(A ± B) = sinA cosB ± cosA sinB
Returns
- sinAB
- sin(A + B)
The example
{
"angleA": 45,
"angleB": 30
}
Agents: POST /faculty/matric-nqf4/maths_compound_angle with JSON {pan, …inputs} and the x-402-payment header. Manifest.
General solution of a trig equation · maths_trig_general_solution
Try with the exampleSolve p·sinθ = q on [0° ; 360°] with the general solution, refusing |q/p| > 1 because sine never leaves [−1 ; 1].
Reference: CAPS Grade 12 Mathematics, worked reference M14 (offline reconstruction); sinθ = k ⇒ θ = α + 360°k or 180° − α + 360°k
Returns
- alpha
- the reference angle (°)
- solution1
- first solution in [0 ; 360] (°)
- solution2
- second solution in [0 ; 360] (°)
The example
{
"p": 2,
"q": 1
}
Agents: POST /faculty/matric-nqf4/maths_trig_general_solution with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Tangent to a circle · maths_circle_tangent
Try with the exampleThe tangent to (x − a)² + (y − b)² = r² at a point on the circle: prove the point is on it, radius ⟂ tangent, the line in standard form.
Reference: CAPS Grade 12 Mathematics, worked reference M15 (offline reconstruction); gradient of tangent = −1/(gradient of radius)
Returns
- tangentGradient
- gradient of the tangent
- lineA
- A of Ax + By + C = 0
- lineB
- B of Ax + By + C = 0
- lineC
- C of Ax + By + C = 0
The example
{
"a": 2,
"b": -1,
"r": 5,
"px": 5,
"py": 3
}
Agents: POST /faculty/matric-nqf4/maths_circle_tangent with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Probability from a contingency table · maths_probability_table
Try with the exampleP(A | B) and P(neither) for two subject choices over one class, refusing any probability outside [0 ; 1].
Reference: CAPS Grade 12 Mathematics, worked reference M16 (offline reconstruction); P(A∪B) = P(A) + P(B) − P(A∩B)
Returns
- pAGivenB
- P(A | B)
- pNeither
- P(neither)
The example
{
"total": 100,
"nA": 60,
"nB": 40,
"nBoth": 30
}
Agents: POST /faculty/matric-nqf4/maths_probability_table with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Probability without replacement · maths_probability_draws
Try with the exampleP(both red) for two draws without replacement from a mixed set of counters.
Reference: CAPS Grade 12 Mathematics, worked reference M16 (offline reconstruction); dependent events multiply along the branch
Returns
- pBothRed
- P(first red and second red)
The example
{
"red": 5,
"blue": 3,
"green": 2
}
Agents: POST /faculty/matric-nqf4/maths_probability_draws with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Compound interest · maths_compound_interest
Try with the exampleA = P(1 + i)ⁿ and the interest earned, each substitution shown.
Reference: CAPS Grade 12 Mathematics, worked reference M17 (offline reconstruction); A = P(1 + i)ⁿ, i > −1
Returns
- amount
- A after n years
- interestEarned
- A − P
The example
{
"principal": 10000,
"ratePercent": 8,
"years": 3
}
Agents: POST /faculty/matric-nqf4/maths_compound_interest with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Descriptive statistics · maths_statistics
Try with the exampleMean, population variance and standard deviation, the five-number summary (inclusive quartiles), IQR and the outlier fences.
Reference: CAPS Grade 12 Mathematics, worked reference M18 (offline reconstruction); σ = √(Σ(x − x̄)²/n); quartiles include the median in each half
Returns
- mean
- x̄
- variance
- σ² (population)
- standardDeviation
- σ, 4 d.p.
- min
- minimum
- q1
- lower quartile
- median
- median
- q3
- upper quartile
- max
- maximum
- iqr
- Q3 − Q1
- outliers
- how many values lie outside the 1.5·IQR fences
The example
{
"data": [
2,
4,
6,
8,
10
]
}
Agents: POST /faculty/matric-nqf4/maths_statistics with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Least-squares regression line · maths_regression_line
Try with the exampleŷ = a + bx from r, the standard deviations and the means: b = r·σ_y/σ_x, a = ȳ − b·x̄. A zero σ_x is refused.
Reference: CAPS Grade 12 Mathematics, worked reference M19 (offline reconstruction); r is interpreted, never used as proof of causation
Returns
- slope
- b
- intercept
- a
The example
{
"r": 0.8,
"sigmaX": 2,
"sigmaY": 3,
"meanX": 10,
"meanY": 20
}
Agents: POST /faculty/matric-nqf4/maths_regression_line with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Newton's second law — horizontal motion · sci_newton_second_law
Try with the exampleThe acceleration of a block under an applied force and kinetic friction: a = F_net/m.
Reference: CAPS Grade 12 Physical Sciences, worked reference P1 (offline reconstruction); F_net = ma
Returns
- netForce
- F_net (N)
- acceleration
- a (m·s⁻²)
The example
{
"mass": 5,
"appliedForce": 20,
"friction": 5
}
Agents: POST /faculty/matric-nqf4/sci_newton_second_law with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Inclined plane with friction · sci_inclined_plane
Try with the exampleThe acceleration of a block sliding down a rough incline: components, the normal, μN, F_net, a — every substitution shown.
Reference: CAPS Grade 12 Physical Sciences, worked reference P2 (offline reconstruction); f = μN; up the slope is positive for the friction on a sliding block
Returns
- downSlopeComponent
- mg sinθ (N)
- normalForce
- N = mg cosθ (N)
- frictionForce
- f = μN (N)
- netForce
- F_net (N)
- acceleration
- a (m·s⁻², 2 d.p.)
The example
{
"mass": 10,
"angleDeg": 30,
"mu": 0.2
}
Agents: POST /faculty/matric-nqf4/sci_inclined_plane with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Impulse and rebound · sci_impulse
Try with the exampleΔp = m(v − u) for a rebound, the impulse magnitude, the average force, and the direction stated — never just the magnitude.
Reference: CAPS Grade 12 Physical Sciences, worked reference P3 (offline reconstruction); F_net Δt = Δp; toward the wall is positive
Returns
- momentumChange
- Δp (kg·m·s⁻¹, signed)
- impulseMagnitude
- |J| (N·s)
- averageForceMagnitude
- |F| (N)
- direction
- away from the wall | toward the wall
The example
{
"mass": 0.2,
"uToward": 4,
"vRebound": -3,
"contactTime": 0.01
}
Agents: POST /faculty/matric-nqf4/sci_impulse with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Work–energy theorem · sci_work_energy
Try with the exampleThe net work on a vehicle from its change in kinetic energy: W_net = ΔKE = ½m(v² − u²).
Reference: CAPS Grade 12 Physical Sciences, worked reference P4 (offline reconstruction); W_net = ΔKE
Returns
- workJoule
- W_net (J)
- workKilojoule
- W_net (kJ)
The example
{
"mass": 1200,
"uSpeed": 10,
"vSpeed": 25
}
Agents: POST /faculty/matric-nqf4/sci_work_energy with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Vertical projectile motion · sci_projectile
Try with the exampleTime to the top, maximum height and total flight time for a projectile launched straight up at u, constant g, no air resistance.
Reference: CAPS Grade 12 Physical Sciences, worked reference P5 (offline reconstruction); t_up = u/g; h_max = u²/(2g)
Returns
- timeUp
- t to the highest point (s, 3 d.p.)
- maxHeight
- h_max (m, 3 d.p.)
- flightTime
- total time back to launch height (s, 3 d.p.)
The example
{
"uUp": 20
}
Agents: POST /faculty/matric-nqf4/sci_projectile with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Doppler effect · sci_doppler
Try with the exampleThe observed frequency for a source approaching or receding from a stationary listener; a source at or beyond the speed of sound is refused.
Reference: CAPS Grade 12 Physical Sciences, worked reference P6 (offline reconstruction); f_L = v/(v ∓ v_s) · f_s; v = 340 m·s⁻¹ working value
Returns
- observedFrequency
- f_L (Hz)
The example
{
"sourceFrequency": 500,
"sourceSpeed": 20,
"motion": "approaching"
}
Agents: POST /faculty/matric-nqf4/sci_doppler with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Snell's law and the critical angle · sci_snell
Try with the exampleThe refraction angle for n₁ sinθ₁ = n₂ sinθ₂ and the critical angle for the reverse passage; total internal reflection is refused by name.
Reference: CAPS Grade 12 Physical Sciences, worked reference P7 (offline reconstruction); sinθ_c = n₁/n₂ for the denser-to-rarer passage
Returns
- theta2
- angle of refraction (°, 2 d.p.)
- criticalAngle
- critical angle for the denser-to-rarer passage (°, 2 d.p.)
The example
{
"n1": 1,
"n2": 1.5,
"theta1": 30
}
Agents: POST /faculty/matric-nqf4/sci_snell with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Coulomb's law · sci_coulomb
Try with the exampleThe electrostatic force between two point charges, its magnitude and its nature (attractive or repulsive).
Reference: CAPS Grade 12 Physical Sciences, worked reference P8 (offline reconstruction); F = k|Q₁Q₂|/r², k = 9,0 × 10⁹ N·m²·C⁻²
Returns
- forceNewton
- |F| (N)
- nature
- attractive | repulsive
The example
{
"q1MicroC": 2,
"q2MicroC": -3,
"distance": 0.3
}
Agents: POST /faculty/matric-nqf4/sci_coulomb with JSON {pan, …inputs} and the x-402-payment header. Manifest.
EMF and internal resistance · sci_internal_resistance
Try with the exampleCurrent, terminal potential difference and the power split for ε = I(R + r), with the energy check εI = P_R + P_r.
Reference: CAPS Grade 12 Physical Sciences, worked reference P9 (offline reconstruction); ε = I(R + r); P = I²R
Returns
- current
- I (A)
- terminalPd
- V = IR (V)
- powerLoad
- P_R = I²R (W)
- powerInternal
- P_r = I²r (W)
The example
{
"emf": 12,
"internalResistance": 1,
"loadResistance": 5
}
Agents: POST /faculty/matric-nqf4/sci_internal_resistance with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Faraday's law · sci_faraday
Try with the exampleThe magnitude of the induced emf for a changing flux through N turns; the sign follows Lenz and is stated, not dropped.
Reference: CAPS Grade 12 Physical Sciences, worked reference P10 (offline reconstruction); ε = −NΔΦ/Δt
Returns
- emfMagnitude
- |ε| (V)
The example
{
"turns": 200,
"fluxFrom": 0.02,
"fluxTo": 0,
"timeSeconds": 0.1
}
Agents: POST /faculty/matric-nqf4/sci_faraday with JSON {pan, …inputs} and the x-402-payment header. Manifest.
The ideal gas law · sci_ideal_gas
Try with the exampleThe pressure from pV = nRT, kelvin only — a Celsius temperature is refused with the conversion shown.
Reference: CAPS Grade 12 Physical Sciences, worked reference P11 (offline reconstruction); pV = nRT, R = 8,314 J·K⁻¹·mol⁻¹
Returns
- pressurePa
- p (Pa)
- pressureKPa
- p (kPa, 1 d.p.)
The example
{
"moles": 2,
"temperature": 300,
"volume": 0.05,
"temperatureUnit": "K"
}
Agents: POST /faculty/matric-nqf4/sci_ideal_gas with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Stoichiometry — 2H₂ + O₂ → 2H₂O · sci_stoichiometry
Try with the exampleThe limiting reagent and the mass of water formed, with the mole ratios shown (working molar masses: H₂ 2, O₂ 32, H₂O 18 g·mol⁻¹).
Reference: CAPS Grade 12 Physical Sciences, worked reference P12 (offline reconstruction); the limiting reagent fixes the product
Returns
- molH2
- n(H₂) (mol)
- molO2
- n(O₂) (mol)
- limiting
- H2 | O2 | stoichiometric
- massWater
- mass of H₂O formed (g)
The example
{
"massH2": 4,
"massO2": 32
}
Agents: POST /faculty/matric-nqf4/sci_stoichiometry with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Concentration · sci_concentration
Try with the examplec = n/V with the volume converted from cm³ to dm³ first.
Reference: CAPS Grade 12 Physical Sciences, worked reference P13 (offline reconstruction); c = n/V, V in dm³
Returns
- concentration
- c (mol·dm⁻³)
The example
{
"moles": 0.5,
"volumeCm3": 250
}
Agents: POST /faculty/matric-nqf4/sci_concentration with JSON {pan, …inputs} and the x-402-payment header. Manifest.
pH of a strong acid · sci_ph
Try with the examplepH = −log[H⁺] for a fully dissociated monoprotic acid; a weak acid without Ka is refused with that reason.
Reference: CAPS Grade 12 Physical Sciences, worked reference P14 (offline reconstruction); pH = −log[H⁺]
Returns
- pH
- pH (2 d.p.)
The example
{
"concentration": 0.01,
"acidStrength": "strong"
}
Agents: POST /faculty/matric-nqf4/sci_ph with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Equilibrium constant — N₂ + 3H₂ ⇌ 2NH₃ · sci_equilibrium_kc
Try with the exampleKc = [NH₃]²/([N₂][H₂]³) from the equilibrium concentrations; a zero denominator is refused.
Reference: CAPS Grade 12 Physical Sciences, worked reference P15 (offline reconstruction); Kc carries no unit in the house's convention
Returns
- kc
- Kc (4 d.p.)
The example
{
"concN2": 0.5,
"concH2": 1.5,
"concNH3": 1
}
Agents: POST /faculty/matric-nqf4/sci_equilibrium_kc with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Standard cell potential · sci_cell_potential
Try with the exampleE°cell = E°cathode − E°anode; a negative answer is reported as non-spontaneous as written, never called an error.
Reference: CAPS Grade 12 Physical Sciences, worked reference P16 (offline reconstruction); working electrode potentials Zn²⁺/Zn −0,76 V, Cu²⁺/Cu +0,34 V
Returns
- cellPotential
- E°cell (V)
- spontaneity
- spontaneous as written | non-spontaneous as written
The example
{
"eCathode": 0.34,
"eAnode": -0.76
}
Agents: POST /faculty/matric-nqf4/sci_cell_potential with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Photon energy · sci_photon_energy
Try with the exampleE = hc/λ in joule and electron-volt for a given wavelength; λ ≤ 0 is refused.
Reference: CAPS Grade 12 Physical Sciences, worked reference P17 (offline reconstruction); h = 6,63 × 10⁻³⁴ J·s, c = 3,0 × 10⁸ m·s⁻¹, e = 1,6 × 10⁻¹⁹ C
Returns
- energyJoule
- E (J)
- energyEv
- E (eV, 2 d.p.)
The example
{
"wavelengthNm": 500
}
Agents: POST /faculty/matric-nqf4/sci_photon_energy with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Practical data exercise (offline) · sci_practical_data
Try with the exampleThe gradient of extension against load, the mean of repeated readings and their spread — over SUPPLIED readings; no experiment was performed.
Reference: CAPS Grade 12 Physical Sciences, worked reference P18 (offline reconstruction); the practical is a data exercise, not a performed experiment
Returns
- gradient
- Δ(extension)/Δ(load) (cm·N⁻¹)
- meanRepeat
- mean of the repeated readings (cm)
- spread
- range of the repeated readings (cm)
The example
{
"loads": [
0,
2,
4,
6,
8
],
"extensions": [
0,
0.8,
1.6,
2.4,
3.2
],
"repeats": [
3.1,
3.2,
3.3
]
}
Agents: POST /faculty/matric-nqf4/sci_practical_data with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Weighted final mark · lang_final_mark
Try with the exampleThe final subject mark from the school-based assessment and the examination mark under the stated weighting — or the examination mark alone on the adult (no-SBA) route.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); working split 25% SBA / 75% exam for exam subjects; the Senior Certificate (Amended) route has no SBA (verify item §12)
Returns
- finalMark
- the final mark (percent)
The example
{
"sbaMark": 60,
"examMark": 68,
"route": "nsc"
}
Agents: POST /faculty/matric-nqf4/lang_final_mark with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Reading statistic on a fixed text · lang_reading_statistic
Try with the exampleWord count, sentence count and average word length of a supplied passage — a deterministic text measure, never a model-marked essay.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); a fixed-text statistic (languages row of §4)
Returns
- words
- word count
- sentences
- sentence count
- averageWordLength
- letters per word (2 d.p.)
The example
{
"text": "The sun rose over the valley. Every learner opened a book. Reading builds the mind."
}
Agents: POST /faculty/matric-nqf4/lang_reading_statistic with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Stepped tariff · mathlit_tariff
Try with the exampleThe cost of consumption under a two-block stepped tariff, block by block.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Mathematical Literacy row of §4 — a tariff computation
Returns
- totalCost
- the total cost (2 d.p.)
The example
{
"unitsUsed": 150,
"blockOneLimit": 100,
"blockOneRate": 1.5,
"blockTwoRate": 2.1
}
Agents: POST /faculty/matric-nqf4/mathlit_tariff with JSON {pan, …inputs} and the x-402-payment header. Manifest.
School-based assessment total · lo_sba_total
Try with the exampleThe Life Orientation SBA percentage from task marks and task totals — 100% school-based, no external paper (working reconstruction).
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Life Orientation is 100% SBA with no external examination (verify item §12)
Returns
- sbaPercent
- the SBA percentage (2 d.p.)
The example
{
"taskMarks": [
38,
42,
71,
85
],
"taskTotals": [
50,
50,
80,
100
]
}
Agents: POST /faculty/matric-nqf4/lo_sba_total with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Punnett square — monohybrid cross · lifesci_punnett
Try with the exampleThe genotype and phenotype ratios of a monohybrid cross, by enumerating the four gamete combinations.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Life Sciences row of §4 — a Punnett-square ratio
Returns
- genotypeRatio
- AA : Aa : aa
- dominantFraction
- fraction showing the dominant phenotype
The example
{
"parentOne": "Aa",
"parentTwo": "Aa"
}
Agents: POST /faculty/matric-nqf4/lifesci_punnett with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Fertiliser nutrient mass · agrisci_npk
Try with the exampleThe mass of N, P and K in a bag from its stated percentages.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Agricultural Sciences row of §4 — nutrient mass from a fertiliser label
Returns
- massN
- kg of N
- massP
- kg of P
- massK
- kg of K
The example
{
"bagMassKg": 50,
"nPercent": 10,
"pPercent": 6,
"kPercent": 4
}
Agents: POST /faculty/matric-nqf4/agrisci_npk with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Depreciation · acc_depreciation
Try with the exampleDepreciation for a chosen year and the carrying value, on the straight-line or the diminishing-balance method.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Accounting row of §4 — depreciation and carrying value
Returns
- depreciationForYear
- depreciation in that year (2 d.p.)
- carryingValue
- carrying value at the end of that year (2 d.p.)
The example
{
"cost": 100000,
"ratePercent": 20,
"year": 3,
"method": "diminishing-balance"
}
Agents: POST /faculty/matric-nqf4/acc_depreciation with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Break-even quantity · bus_breakeven
Try with the exampleFixed cost over the contribution per unit; a selling price at or below the variable cost is refused because no volume can break even.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Business Studies row of §4 — break-even from fixed cost, price and variable cost
Returns
- breakEvenUnits
- units to break even (rounded up)
The example
{
"fixedCost": 60000,
"sellingPrice": 50,
"variableCost": 30
}
Agents: POST /faculty/matric-nqf4/bus_breakeven with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Inflation rate from two index values · econ_inflation
Try with the exampleThe percentage change of a price index between two readings.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Economics row of §4 — an inflation rate from two index values
Returns
- inflationPercent
- the rate (%, 2 d.p.)
The example
{
"indexOld": 120,
"indexNew": 129
}
Agents: POST /faculty/matric-nqf4/econ_inflation with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Map scale and gradient · geo_map_scale
Try with the exampleThe ground distance from a map measurement and a 1 : n scale, and the gradient as 1 : (run/rise).
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Geography row of §4 — a map scale distance and a gradient
Returns
- groundDistanceKm
- ground distance (km, 3 d.p.)
- gradientRun
- the n of gradient 1 : n (1 d.p.)
The example
{
"mapDistanceCm": 4.5,
"scaleDenominator": 50000,
"riseM": 120
}
Agents: POST /faculty/matric-nqf4/geo_map_scale with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Timeline span · hist_timeline
Try with the exampleThe span in years between two dated events; an end year before the start year is refused.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); History row of §4 — a timeline span and a source-weighting total
Returns
- spanYears
- years between the two
The example
{
"startYear": 1948,
"endYear": 1994
}
Agents: POST /faculty/matric-nqf4/hist_timeline with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Fixed-text comparison statistic · rel_text_compare
Try with the exampleThe shared and unique word counts of two supplied passages — a deterministic comparison, never a model-marked essay.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Religion Studies row of §4 — a fixed-text comparison statistic
Returns
- sharedWords
- distinct words in both
- uniqueToA
- distinct words only in A
- uniqueToB
- distinct words only in B
The example
{
"textA": "Compassion and justice guide the community.",
"textB": "Justice and mercy guide the household."
}
Agents: POST /faculty/matric-nqf4/rel_text_compare with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Currency conversion and occupancy · tour_currency
Try with the exampleA currency conversion at a stated rate, and the occupancy percentage of a lodge.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Tourism row of §4 — a currency conversion and an occupancy percentage
Returns
- converted
- converted amount (2 d.p.)
- occupancyPercent
- occupancy (%, 1 d.p.)
The example
{
"amount": 1000,
"rate": 18.5,
"roomsSold": 45,
"roomsAvailable": 60
}
Agents: POST /faculty/matric-nqf4/tour_currency with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Unit price and recipe scaling · cons_unit_price
Try with the exampleThe price per unit of a pack and the factor to scale a recipe between serving counts.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Consumer Studies row of §4 — a unit price and a recipe scale factor
Returns
- unitPrice
- price per unit (2 d.p.)
- scaleFactor
- multiply every ingredient by this (2 d.p.)
The example
{
"packPrice": 36,
"packSize": 6,
"servingsHave": 4,
"servingsNeed": 10
}
Agents: POST /faculty/matric-nqf4/cons_unit_price with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Portion cost · hosp_portion_cost
Example filled in — consult belowThe cost per portion from a batch cost and a portion count.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Hospitality Studies row of §4 — a portion cost and a cover count
Returns
- costPerPortion
- cost per portion (2 d.p.)
The example
{
"batchCost": 480,
"portions": 32
}
Agents: POST /faculty/matric-nqf4/hosp_portion_cost with JSON {pan, …inputs} and the x-402-payment header. Manifest.
File-size total · cat_filesize
Try with the exampleThe total of a list of file sizes in KB, converted to MB at 1024 KB per MB.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); CAT row of §4 — a file-size total
Returns
- totalKb
- total (KB)
- totalMb
- total (MB, 3 d.p.)
The example
{
"fileSizesKb": [
512,
256,
1280
]
}
Agents: POST /faculty/matric-nqf4/cat_filesize with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Binary and decimal conversion · it_binary
Try with the exampleThe binary representation of a whole number (0–65535) and the round-trip back to decimal.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); IT row of §4 — a binary/decimal conversion
Returns
- binary
- binary digits
- bits
- how many bits
- roundTrip
- parsed back to decimal — must equal the input
The example
{
"value": 156
}
Agents: POST /faculty/matric-nqf4/it_binary with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Scale drawing length · egd_scale
Try with the exampleThe actual length from a drawing measurement and a 1 : n scale.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); EGD row of §4 — a scale drawing length
Returns
- actualMm
- actual length (mm)
- actualM
- actual length (m, 3 d.p.)
The example
{
"drawingMm": 45,
"scaleDenominator": 20
}
Agents: POST /faculty/matric-nqf4/egd_scale with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Load per area · civtech_load
Try with the exampleThe distributed load on a slab: force over area.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Civil Technology row of §4 — a load per area
Returns
- loadPerArea
- kN/m² (3 d.p.)
The example
{
"loadKn": 12,
"areaM2": 2.5
}
Agents: POST /faculty/matric-nqf4/civtech_load with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Gear ratio and torque · mechtech_gear
Try with the exampleThe velocity ratio of a gear pair and the ideal output torque.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Mechanical Technology row of §4 — a gear ratio and a torque
Returns
- gearRatio
- driven/driver (3 d.p.)
- outputTorque
- ideal output torque (N·m, 3 d.p.)
The example
{
"teethDriver": 20,
"teethDriven": 60,
"inputTorque": 50
}
Agents: POST /faculty/matric-nqf4/mechtech_gear with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Series and parallel resistance · electech_resistance
Try with the exampleThe total resistance of a set of resistors in series or in parallel; a zero resistor in parallel is refused.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Electrical Technology row of §4 — a series/parallel resistance
Returns
- totalResistance
- total (Ω, 3 d.p.)
The example
{
"resistors": [
10,
20,
30
],
"arrangement": "series"
}
Agents: POST /faculty/matric-nqf4/electech_resistance with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Colour-mix ratio and frame area · art_colour_mix
Try with the exampleThe fraction of each pigment in a stated mix, and the area of a picture frame border.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Visual Arts row of §4 — a colour-mix ratio and a frame area
Returns
- fractionA
- fraction of pigment A (4 d.p.)
- frameAreaCm2
- area of the border (cm²)
The example
{
"partsA": 2,
"partsB": 3,
"innerWidthCm": 40,
"innerHeightCm": 30,
"borderCm": 5
}
Agents: POST /faculty/matric-nqf4/art_colour_mix with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Interval frequency ratio · music_interval
Try with the exampleThe just-intonation frequency ratio of a named interval and the upper note from a base frequency.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Music row of §4 — a frequency ratio for an interval
Returns
- ratio
- the frequency ratio (4 d.p.)
- upperFrequencyHz
- the upper note (Hz, 2 d.p.)
The example
{
"interval": "perfect fifth",
"baseFrequencyHz": 440
}
Agents: POST /faculty/matric-nqf4/music_interval with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Lighting-cue duration total · drama_cue
Try with the exampleThe total running time of a cue list in seconds and minutes:seconds.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Drama row of §4 — a lighting-cue duration total
Returns
- totalSeconds
- total (s)
- clock
- m:ss
The example
{
"cueSeconds": [
12,
45,
8,
95
]
}
Agents: POST /faculty/matric-nqf4/drama_cue with JSON {pan, …inputs} and the x-402-payment header. Manifest.
Tempo and bar count · dance_tempo
Try with the exampleHow many beats and full bars fit a piece at a stated tempo and time signature.
Reference: Umalusi/NSC subject catalogue, worked reference (offline reconstruction); Dance Studies row of §4 — a tempo/bar count
Returns
- beats
- total beats
- fullBars
- complete bars
The example
{
"tempoBpm": 120,
"beatsPerBar": 4,
"durationSeconds": 90
}
Agents: POST /faculty/matric-nqf4/dance_tempo with JSON {pan, …inputs} and the x-402-payment header. Manifest.