class_docstr: Distribution of Ansari-Bradley W-statistic under the null hypothesis.
docstr: When necessary, recalculate exact distribution.
docstr_tok: ["When","necessary",",","recalculate","exact","distribution","."]
code: def _recalc(self, n, m):
      """When necessary, recalculate exact distribution."""
      if n != self.n or m != self.m:
          self.n, self.m = n, m
          # distribution is NOT symmetric when m + n is odd
          # n is len(x), m is len(y), and ratio of scales is defined x/y
          astart, a1, _ = statlib.gscale(n, m)
          self.astart = astart  # minimum value of statistic
          # Exact distribution of test statistic under null hypothesis
          # expressed as frequencies/counts/integers to maintain precision.
          # Stored as floats to avoid overflow of sums.
          self.freqs = a1.astype(np.float64)
          self.total = self.freqs.sum()
  
imports: from __future__ import annotations
  import math
  import warnings
  from collections import namedtuple
  import numpy
  from numpy import isscalar, r_, log, around, unique, asarray, zeros, arange, sort, amin, amax, atleast_1d, sqrt, array, compress, pi, exp, ravel, count_nonzero, sin, cos, arctan2, hypot
  from scipy import optimize
  from scipy import special
  from .None import statlib
  from .None import stats
  from .stats import find_repeats, _contains_nan, _normtest_finish
  from .contingency import chi2_contingency
  from .None import distributions
  from ._distn_infrastructure import rv_generic
  from ._hypotests import _get_wilcoxon_distr
label_desc: Use image node_id 2 for calling the _ABW obj's underlying member method code with example usage: obj._recalc(n, m) without return types