def METHOD_NAME(self):
    """
    Try typical usage of ProfilePressure.
    """
    # Try a case with 2 species:
    ne = ProfilePolynomial(1.0e20 * np.array([1.0, 0.0, 0.0, 0.0, -1.0]))
    Te = ProfilePolynomial(8.0e3 * np.array([1.0, -1.0]))
    nH = ne
    TH = ProfilePolynomial(7.0e3 * np.array([1.0, -1.0]))
    pressure = ProfilePressure(ne, Te, nH, TH)
    s = np.linspace(0, 1, 20)
    atol = 1e-14
    np.testing.assert_allclose(
        pressure(s), ne(s) * (Te(s) + TH(s)), atol=atol)
    np.testing.assert_allclose(pressure.dfds(s),
                               ne.dfds(s) * (Te(s) + TH(s))
                               + ne(s) * (Te.dfds(s) + TH.dfds(s)),
                               atol=atol)
    # Now try a case with 3 species:
    nD = ProfileScaled(ne, 0.55)
    nT = ProfileScaled(ne, 0.45)
    TD = ProfilePolynomial(12.0e3 * np.array([1.0, -1.0]))
    TT = TD
    pressure = ProfilePressure(ne, Te, nD, TD, nT, TT)
    ne.local_unfix_all()
    nD.local_unfix_all()
    nT.local_unfix_all()
    Te.local_unfix_all()
    TD.local_unfix_all()
    TT.local_unfix_all()
    for j in range(2):
        np.testing.assert_allclose(
            pressure(s),
            ne(s) * Te(s) + nD(s) * TD(s) + nT(s) * TT(s),
            atol=atol)
        np.testing.assert_allclose(
            pressure.dfds(s),
            ne.dfds(s) * Te(s) + nT.dfds(s) * TT(s) + nD.dfds(s) * TD(s) +
            ne(s) * Te.dfds(s) + nT(s) * TT.dfds(s) + nD(s) * TD.dfds(s),
            atol=atol)
        # Try changing some dofs before the 2nd loop iteration:
        ne.x = 2.0e20 * np.array([1.0, 0.0, 0.0, -1.0, 0.0])
        nD.local_x = [0.51]
        nT.local_x = [0.49]
        Te.x = 15.0e3 * np.array([1.0, -0.9])
        TD.x = 14.0e3 * np.array([1.0, -0.3])