Source code for molsysmt.form.molsysmt_StructuresDict.has_attribute

from molsysmt._private.digestion import digest

[docs] @digest(form='molsysmt.StructuresDict') def has_attribute(molecular_system, attribute, include_none=False, skip_digestion=False): from . import attributes output = attributes[attribute] if not include_none: ### ### STRUCTURAL ATTRIBUTES ### if attribute=='n_atoms': if ('coordinates' not in molecular_system) and ('velocities' not in molecular_system): output = False if attribute=='structure_id': if attribute not in molecular_system: output = False elif attribute=='coordinates': if attribute not in molecular_system: output = False elif attribute=='velocities': if attribute not in molecular_system: output = False elif attribute=='time': if attribute not in molecular_system: output = False elif attribute in ['box', 'box_shape', 'box_angles', 'box_lengths', 'box_volume']: if 'box' not in molecular_system: output = False elif attribute=='occupancy': if attribute not in molecular_system: output = False elif attribute=='alternate_location': if attribute not in molecular_system: output = False elif attribute=='b_factor': if attribute not in molecular_system: output = False return output