def calculate_properties descriptors=PhysChem::OPENBABEL
      if core.smiles and !coating.collect{|c| c.smiles}.compact.empty?
        core_prop = core.calculate_properties descriptors
        coating_prop = coating.collect{|c| c.calculate_properties descriptors if c.smiles}
        descriptors.collect_with_index{|d,i| [core_prop[i],coating_prop.collect{|c| c[i] if c}]}
      end
    end
def calculate_properties descriptors=PhysChem::OPENBABEL
      if core.smiles and !coating.collect{|c| c.smiles}.compact.empty?
        core_prop = core.calculate_properties descriptors
        coating_prop = coating.collect{|c| c.calculate_properties descriptors if c.smiles}
        descriptors.collect_with_index{|d,i| [core_prop[i],coating_prop.collect{|c| c[i] if c}]}
      end
    end
Calculate physchem properties
 @param [Array<Hash>] list of descriptors
 @return [Array<Float>]