HomeCalculatorsChemistryWeak-Base Equilibrium Calculator
Chemistry calculator

Weak-Base Equilibrium Calculator

Solve monoprotic weak-base ICE from formal C and Kb or pKb. Charge and mass balance; optional water at 25 °C. Runs locally. Not Henderson–Hasselbalch and not weak-acid ICE.

Instant result
Result
—

Enter values to calculate.

Inputs—
Mode—
Formula—
Trust summary CVP VERIFIED · production STALE · CVP protocol 1.0.0-proposed · Engineering assurance · Monoprotic weak-base ICE, + O3 mpmath tabulated [OH−].
Input interpretation
Enter values to calculate.
Result
—
Verified scope
Monoprotic weak-base ICE, + O3 mpmath tabulated [OH−].
Assurance
Engineering
Declared partition coverage
PASS · 7/7 declared partitions (alias, pkb, awkward, dilute, no-water, water, invalid-domain) · Matrix
Deferred
Not a buffer and not a weak acid.
Numerical scope
O2: monoprotic weak-base ICE vs a separate-module quadratic or Newton cubic. Agreement is absolute 1e-8 because the IUT root is a residual solver. Not a buffer. Absolute 1e-8 vs O3 applies only to the published tabulated weak-base vectors. Not a buffer.
Known limitations
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
Monoprotic weak-base ICE pH and species from formal C and Kb or pKb.
Scope
Monoprotic B + H2O ⇌ BH+ + OH−
Verification
Engine tested · Source checked · v1.0.4 · CVP VERIFIED · production STALE · CVP protocol 1.0.0-proposed · Engineering assurance · Monoprotic weak-base ICE, + O3 mpmath tabulated [OH−].· View Manifest · CVP overview · Specification
Versions
Calculation 1.0.4 · CVP protocol 1.0.0-proposed · Evidence 2026-10-13.node22-residual-replay
Verification revision
2026-10-13.node22-residual-replay · 1/1 property · digest 87cd5351751e
Legacy regression
13/13 tests · Production surface contract 6/6
Trust layers
Verification VERIFIED · Production STALE · Overall CVP state: VERIFIED_STALE under CVP 1.0.0-proposed
CVP status
STALE · attestation snapshot core cd39a2833a83 ≠ live cvp_core_sha256 87cd5351751e (2026-10-13.node22-residual-replay)
Reference
O1 model · O3 expected_values · O3 numerical_behavior · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session. Error-path engine·REST·MCP 1/1 (status, code, calculation_version). SSR compared on URL-canonical requested calculations; empty query is idle (not an error) and JSON-typed object/array inputs are REST/MCP-only.
Supplemental domain review
Not performed
Named expert review
Not performed
CVP suite
3/3 golden · 5/5 CVP boundary · 7/7 invalid · 1/1 property · 1/1 metamorphic · 8/8 O3 · 2/2 cross-interface · 6/6 CVP contract · Manifest
Sources
Sources
Evidence
2 legacy golden · 6 legacy boundary · legacy regression suite · 3/3 oracle-backed golden · 7/7 invalid · Artifact integrity PASS
STALE · Build schema 1.0.4 matches page · production binding STALE · Semantic contract ✓ · Last attestation PASS · current evidence changed · re-attestation required · CVP STALE · attestation STALE — Production CURRENT withheld · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

ICE with water[OH⁻]³ + Kb[OH⁻]² − (Kw + Kb C)[OH⁻] − Kb Kw = 0
ICE neglecting waterKb = x² / (C − x)
iKw = 1.0×10⁻¹⁴ at 25 °C. This page is not Henderson–Hasselbalch and not weak-acid ICE HA ⇌ H+ + A−.

How to use

1

Enter formal concentration C

C is the analytical B concentration in mol/L. It must be greater than zero.

2

Enter pKb or Kb

Give one basicity encoding. Sending both, or sending Ka/pKa, is rejected.

3

Choose whether to include water

ICE (default) includes Kw at 25 °C. ICE, no water uses the quadratic approximation for [OH−].

4

Read pH and the ICE species

The solver reuses math.numerical.root. Outputs [OH−], [B], [BH+], [H+], pOH, and α = [BH+]/C.

Example calculations

Common configurations with formula and result.

ϟ

Ammonia, water neglected

C=0.1 mol/L, Kb=1.8e-5

x = (−Kb + √(Kb² + 4 Kb C)) / 2
[OH−]≈1.333e-3, pH≈11.125
ϟ

From pKb

C=0.1 mol/L, pKb=5

Kb = 10^(−pKb)
Kb=1e-5; ICE pH from the cubic or quadratic

Weak-Base Equilibrium calculator specification

Version 1.0.4 · Engine tested

Calculation status

Review policy · Evidence

Definition
Monoprotic B + H2O ⇌ BH+ + OH−. With water: [OH−]³ + Kb[OH−]² − (Kw + Kb C)[OH−] − Kb Kw = 0. Without water: Kb = x²/(C−x).
What it calculates
Monoprotic weak-base ICE pH and species from formal C and Kb or pKb.
Inputs
  • mode?
  • C | c | concentration
  • pKb | Kb
Outputs
  • pH
  • pOH
  • h
  • oh
  • B
  • BH
  • C
  • Kb
  • pKb
  • fraction_ionized
Formula
[OH−]³ + Kb[OH−]² − (Kw + Kb C)[OH−] − Kb Kw = 0 (mode=ice)
Assumptions
  • Monoprotic B + H2O ⇌ BH+ + OH−
  • Activity coefficients ≈ 1
  • Kw = 1e-14 at 25 °C when mode=ice
  • Not Henderson–Hasselbalch
  • Not weak-acid ICE
  • Not pH = −log10[H+] identities
  • Not polyprotic, not titration
Units
  • mol/L
  • pH
  • pKb
Boundary conditions
  • missing C → MISSING_REQUIRED_INPUT
  • C ≤ 0 or Kb ≤ 0 → VALUE_MUST_BE_POSITIVE
  • pKb and Kb together, or Ka/pKa, or HA/A → MIXED_INPUT_ENCODING
  • hh_ph is not a mode on this page
Example
C=0.1 Kb=1.8e-5 mode=ice_no_water → x=(−Kb+√(Kb²+4 Kb C))/2
Validation cases

3 published on this page · 13/13 tests · Production surface contract 6/6 · View evidence

  • C=0.1 Kb=1.8e-5 mode=ice_no_water → oh = (−Kb+√(Kb²+4 Kb C))/2
  • C=0.1 pKb=5 → pKb=5, model=weak_base_ice
  • Kb=1e-5 → MISSING_REQUIRED_INPUT
Sources
Calculation version
1.0.4

Background

Interpretation and common distinctions.

Compute monoprotic weak-base ICE from formal concentration and Kb.

Supported and not supported

Supported — B + H2O ⇌ BH+ + OH− from C and Kb or pKb; optional Kw at 25 °C · API chemistry.equilibrium.weak_base

Not supported — weak-acid ICE, Henderson–Hasselbalch, pH=−log10[H+] identities, polyprotic, activity coefficients, titration

Agent / API notes

Capability id: chemistry.equilibrium.weak_base · tool id: weak-base-equilibrium · pin 1.0.1.

{ "mode": "ice", "C": 0.1, "Kb": 1.8e-5 }

Alternate encoding: { "C": 0.1, "pKb": 4.75 }. Modes: ice (default, includes water), ice_no_water. Errors: MISSING_REQUIRED_INPUT, INVALID_NUMBER, VALUE_MUST_BE_POSITIVE, MIXED_INPUT_ENCODING, INVALID_MODE, NO_PHYSICAL_ROOT.

Calculator URL is /calc/chemistry/weak-base-equilibrium. Weak-acid ICE stays on /calc/chemistry/weak-acid-equilibrium. Buffer pH stays on /calc/chemistry/henderson-hasselbalch. Water-ion identities stay on /calc/chemistry/ph.

Other calculators in this family: Weak-acid ICE, Henderson–Hasselbalch, pH .

Frequently asked questions

Key distinctions behind the calculation.

Is this a weak-acid ICE?

No. HA ⇌ H+ + A− from formal C and Ka is /calc/chemistry/weak-acid-equilibrium. This page is B + H2O ⇌ BH+ + OH− from C and Kb. Sending Ka or pKa is MIXED_INPUT_ENCODING.

Is this Henderson–Hasselbalch?

No. Buffer pH from a given pair is /calc/chemistry/henderson-hasselbalch. This page solves ICE from formal C and Kb.

Is this pH = −log10[H+]?

No. That identity is /calc/chemistry/ph. This page finds [OH−] from charge and mass balance, then reports pH = 14 − pOH at 25 °C.

Where does this run?

Locally in the browser by default. REST and MCP call the same chemistry-engine weak-base ICE wrapper, which reuses math.numerical.root.