def addVolDens(mCM):
    """
    multi-component density assuming additive volumes

    Parameters:
        mCM, multi-Component Material dictionary - see init

    Returns:
        1/sum([mCM['basisFrac'][cID]/rho for cID, rho in 
               mCM['compDens'].items()])
    """

    if mCM['state'] == 'v':
        mFrac = 'moleFrac'
    else:
        mFrac = 'massFrac'
        
    return 1/sum([mCM[mFrac][cid]/rho for cid, rho in
                  mCM['compDens'].items()])