def test_disLogisticCDF():
    logscale = torch.tensor([[[[(- 3.6826), (- 3.0157), (- 3.6032)], [(- 3.7063), (- 3.0269), (- 3.5338)], [(- 3.5311), (- 2.9907), (- 3.3516)], [(- 3.93), (- 3.3121), (- 3.811)]], [[(- 3.1022), (- 3.0692), (- 3.2039)], [(- 2.9466), (- 3.0006), (- 3.2969)], [(- 2.7636), (- 2.5691), (- 2.9628)], [(- 3.3657), (- 3.2948), (- 3.5318)]], [[(- 3.9748), (- 3.067), (- 3.2399)], [(- 3.9312), (- 3.0055), (- 3.1729)], [(- 3.8588), (- 2.9139), (- 3.1794)], [(- 4.1534), (- 3.2404), (- 3.5665)]]]])
    mean = torch.tensor([[[[0.0191, 0.0459, 0.0131], [(- 0.0059), 0.0254, (- 0.01)], [0.0359, 0.0406, 0.0242], [0.0331, 0.0438, 0.0255]], [[0.0214, 0.0502, 0.0622], [0.0371, 0.0368, 0.0517], [0.0217, 0.0855, 0.0874], [0.0144, 0.0475, 0.047]], [[(- 0.0602), (- 0.0791), (- 0.0784)], [(- 0.0443), (- 0.0765), (- 0.0701)], [(- 0.0654), (- 0.0709), (- 0.0788)], [(- 0.0608), (- 0.0721), (- 0.0688)]]]])
    bins = ((_bins - 1) + torch.round(decimal.forward_(mean)))
    cdf = cdfDiscreteLogitstic(bins, mean, logscale, decimal=decimal).detach().numpy()
    pList = []
    for i in range(bins.shape[0]):
        logp = logDiscreteLogistic(bins[i:(i + 1)], mean, logscale, decimal=decimal).detach().numpy()
        pList.append(np.exp(logp).reshape(mean.shape))
    pList = np.array(pList)
    _cdf = np.cumsum(pList, 0)
    assert np.allclose(cdf, _cdf)
def test_disLogisticCDF():
    logscale = torch.tensor([[[[(- 3.6826), (- 3.0157), (- 3.6032)], [(- 3.7063), (- 3.0269), (- 3.5338)], [(- 3.5311), (- 2.9907), (- 3.3516)], [(- 3.93), (- 3.3121), (- 3.811)]], [[(- 3.1022), (- 3.0692), (- 3.2039)], [(- 2.9466), (- 3.0006), (- 3.2969)], [(- 2.7636), (- 2.5691), (- 2.9628)], [(- 3.3657), (- 3.2948), (- 3.5318)]], [[(- 3.9748), (- 3.067), (- 3.2399)], [(- 3.9312), (- 3.0055), (- 3.1729)], [(- 3.8588), (- 2.9139), (- 3.1794)], [(- 4.1534), (- 3.2404), (- 3.5665)]]]])
    mean = torch.tensor([[[[0.0191, 0.0459, 0.0131], [(- 0.0059), 0.0254, (- 0.01)], [0.0359, 0.0406, 0.0242], [0.0331, 0.0438, 0.0255]], [[0.0214, 0.0502, 0.0622], [0.0371, 0.0368, 0.0517], [0.0217, 0.0855, 0.0874], [0.0144, 0.0475, 0.047]], [[(- 0.0602), (- 0.0791), (- 0.0784)], [(- 0.0443), (- 0.0765), (- 0.0701)], [(- 0.0654), (- 0.0709), (- 0.0788)], [(- 0.0608), (- 0.0721), (- 0.0688)]]]])
    bins = ((_bins - 1) + torch.round(decimal.forward_(mean)))
    cdf = cdfDiscreteLogitstic(bins, mean, logscale, decimal=decimal).detach().numpy()
    pList = []
    for i in range(bins.shape[0]):
        logp = logDiscreteLogistic(bins[i:(i + 1)], mean, logscale, decimal=decimal).detach().numpy()
        pList.append(np.exp(logp).reshape(mean.shape))
    pList = np.array(pList)
    _cdf = np.cumsum(pList, 0)
    assert np.allclose(cdf, _cdf)