def _isDissipative(obj):
    """
    NAME:

       _isDissipative

    PURPOSE:

       Determine whether this combination of potentials and forces is Dissipative

    INPUT:

       obj - Potential/DissipativeForce instance or list of such instances

    OUTPUT:

       True or False depending on whether the object is dissipative

    HISTORY:

       2018-03-16 - Written - Bovy (UofT)

    """
    from .Potential import flatten
    obj= flatten(obj)
    isList= isinstance(obj,list)
    if isList:
        isCons= [not isinstance(p,DissipativeForce) for p in obj]
        nonCons= not numpy.prod(numpy.array(isCons))
    else:
        nonCons= isinstance(obj,DissipativeForce)
    return nonCons
NAME:

       _isDissipative

    PURPOSE:

       Determine whether this combination of potentials and forces is Dissipative

    INPUT:

       obj - Potential/DissipativeForce instance or list of such instances

    OUTPUT:

       True or False depending on whether the object is dissipative

    HISTORY:

       2018-03-16 - Written - Bovy (UofT)