class VABCDescriptor extends AbstractMolecularDescriptor implements IMolecularDescriptor {

    @Override
    public DescriptorValue calculate(IAtomContainer atomContainer) {
        double volume;
        try {
            // clone: don't mod original
            volume = VABCVolume.calculate(clone(atomContainer));
        } catch (CDKException exception) {
            return getDummyDescriptorValue(exception);
        }

        return new DescriptorValue(getSpecification(), getParameterNames(), getParameters(), new DoubleResult(volume),
                getDescriptorNames());
    }

}