exactEquityCardRemovalGradient
Exact 52-vector sensitivity of HU equity vs a range when each remaining deck card is treated as dead — plus baseline equity.
exactEquityCardRemovalGradient(heroHoleCards: CardInput, boardCards: CardInput, range: Float64Array | SparseRangeSpec): CardRemovalGradientResult
See Packed card input and SparseRangeSpec.
Import
const poker = require('poker-calculations');
ESM (Node):
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const poker = require('poker-calculations');
When to use
You need exact card-removal effects on equity vs a weighted range — for blocker analysis, study backends, or comparing to the Monte Carlo heuristic equityDeltaIfCardRemoved.
How to use
const poker = require('poker-calculations');
const range = new Float64Array(1326);
range.fill(1 / 1326);
const { gradient, baseEquity } = poker.exactEquityCardRemovalGradient(
['Ah', 'Kh'],
['Qh', 'Jh', '2c'],
range,
);
console.log('Base equity:', baseEquity);
console.log('Sample gradient entry:', gradient[50]);
Positive gradient[d] means equity drops when card d is removed from the deck (typical for cards that help villain combos).
Return type
See also
exactEquityCardRemovalGradientAsync · equityDeltaIfCardRemoved · exactHuEquityVsRange