A fingerprint for the density of states

class madas.fingerprints.DOS_fingerprint.DOSFingerprint(name: str = 'DOS', grid_id: str | None = None, pass_on_exceptions: bool = False, similarity_function=<function DOS_similarity>)

A DOS fingerprint that uses the NOMAD DOS fingerprint package.

calculate(energy: List[float] | ndarray, dos: List[float] | ndarray, convert_data: Callable | None = None, **kwargs)
Calculate the fingerprint. Possible kwargs (and defaults) are:

grid_id = ‘dg_cut:56:-2:7:(-10, 5):56’ unit_cell_volume = 1 n_atoms = 1

from_material(material: Material, energy_path: str = 'electronic_dos_energies', dos_path: str = 'electronic_dos_values', convert_data: Callable | None = None, **kwargs)

To be defined in child class. Calculate the fingerprint from a Material object.

Expected return value:

self: Fingerprint

It is expected that the object returns itself after calling calculate.

classmethod from_nomad_dos_fingerprint(fingerprint: ~nomad_dos_fingerprints.DOSfingerprint.DOSFingerprint, name: str = 'DOS', pass_on_exceptions: bool = False, similarity_function: ~typing.Callable = <function DOS_similarity>) object

Create MADAS DOSFingerprint from NOMAD DOS fingerprint object.

Arguments:

fingerprint: nomad_dos_fingerprints.DOSFingerprint

nomad_dos_fingerprints.DOSFingerprint object to convert to madas.fingerprints.DOSFingerprint

Keyword arguments:

name: str

Name of the fingerprint

default: “DOS”

pass_on_exceptions: bool

Set if fingerprint should pass and return None if an exception occures during calculation of similarities, or raise an Exception.

default: False

similarity_function: Callable

Similarity function to be used by the fingerprints.

default: madas.fingerprints.DOS_fingerprint.DOS_similarity

Returns:

self: madas.fingerprints.DOS_fingerprint.DOSFingerprint

madas.fingerprints.DOS_fingerprint.DOS_similarity(fingerprint1, fingerprint2)

Compute Tanimoto coefficient (Tc) between two DOS fingerprints.