The mass() method will be removed in the next version (to be released soon), so I recommend switching everything to mass_properties.
def mass_properties(self, element_ids=None, reference_point=None,
sym_axis=None, num_cpus=1, scale=None):
"""
Caclulates mass properties in the global system about the
reference point.
Parameters
---------------
self : BDF
The BDF object.
element_ids : ndarray, optional
An array of element ids.
reference_point : ndarray, optional
An array that defines the origin of the frame.
default = <0,0,0>.
sym_axis : str, optional
The axis to which the model is symmetric. If AERO cards are used, this can be left blank
allowed_values = 'x', 'y', 'z', 'xy', 'yz', 'xz', 'xyz'
scale : float, optional
The WTMASS scaling value.
default=None -> PARAM, WTMASS is used
float > 0.0
Returns
----------
mass : float
The mass of the model.
cg : ndarray
The cg of the model as an array.
I : ndarray
Moment of inertia array([Ixx, Iyy, Izz, Ixy, Ixz, Iyz]).
Just call it with element_ids as a list/ndarray of the element ids. You cannot explicitly get mass by property id.