ai2_kit.domain.cp2k module#

class ai2_kit.domain.cp2k.CllCp2kContext(path_prefix: str, resource_manager: ai2_kit.core.resource_manager.ResourceManager, config: ai2_kit.domain.cp2k.CllCp2kContextConfig)[source]#

Bases: BaseCllContext

config: CllCp2kContextConfig#
class ai2_kit.domain.cp2k.CllCp2kContextConfig(*, script_template: BashTemplate, cp2k_cmd: str = 'cp2k', post_cp2k_cmd: str = 'echo "no post_cp2k_cmd"', concurrency: int = 5)[source]#

Bases: BaseModel

concurrency: int#
cp2k_cmd: str#
post_cp2k_cmd: str#
script_template: BashTemplate#
class ai2_kit.domain.cp2k.CllCp2kInput(config: ai2_kit.domain.cp2k.CllCp2kInputConfig, mode: Literal['default', 'dpff', 'fep-redox', 'fep-pka'], system_files: List[ai2_kit.core.artifact.Artifact], type_map: List[str], initiated: bool = False)[source]#

Bases: object

config: CllCp2kInputConfig#
initiated: bool = False#
mode: Literal['default', 'dpff', 'fep-redox', 'fep-pka']#
system_files: List[Artifact]#
type_map: List[str]#
class ai2_kit.domain.cp2k.CllCp2kInputConfig(*, init_system_files: List[str] = [], wfn_warmup_template: Optional[str] = None, input_template: Optional[str] = None, template_vars: Mapping[str, Any] = {}, limit: int = 50, limit_method: Literal['even', 'random', 'truncate'] = 'even')[source]#

Bases: BaseModel

init_system_files: List[str]#
input_template: Optional[str]#

Input template for cp2k. Could be a dict or content of a cp2k input file.

limit: int#

Limit of the number of systems to be labeled.

limit_method: Literal['even', 'random', 'truncate']#
template_vars: Mapping[str, Any]#

Template variables for input_template and wfn_warmup_template.

Those vars can be referenced in the LAMMPS input template as $$VAR_NAME.

wfn_warmup_template: Optional[str]#

Warmup template for cp2k. Could be a dict or content of a cp2k input file. This template will be used to generate input files for warmup runs. The warmup runs can be used to generate wave function files for the main runs.

class ai2_kit.domain.cp2k.GenericCp2kOutput(cp2k_outputs: List[ai2_kit.core.artifact.Artifact])[source]#

Bases: ICllLabelOutput

cp2k_outputs: List[Artifact]#
get_labeled_system_dataset()[source]#
async ai2_kit.domain.cp2k.cll_cp2k(input: CllCp2kInput, ctx: CllCp2kContext) GenericCp2kOutput[source]#
ai2_kit.domain.cp2k.dump_coord_n_cell(fp, atoms: Atoms)#
ai2_kit.domain.cp2k.make_cp2k_task_dirs(system_files: ~typing.List[~ai2_kit.core.artifact.__ArtifactDict.<locals>.ArtifactDict], type_map: ~typing.List[str], input_template: ~typing.Optional[str], template_vars: ~typing.Mapping[str, ~typing.Any], base_dir: str, mode: ~typing.Literal['default', 'dpff', 'fep-redox', 'fep-pka'], limit: int = 0, wfn_warmup_template: ~typing.Optional[str] = None, limit_method: ~typing.Literal['even', 'random', 'truncate'] = 'even', input_file_name: str = 'input.inp', warmup_file_name: str = 'wfn_warmup.inp') ArtifactDict]#

Generate CP2K input files from LAMMPS dump files or XYZ files.