{ "cells": [ { "cell_type": "markdown", "id": "9bdb2681", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "(sec:text-file-keywords)=\n", "# Input text file keywords \n", "\n", "Keywords for the various input sections in the program input file can be listed by means of the `print_keyword()` class method. Examples are given below." ] }, { "cell_type": "code", "execution_count": 2, "id": "89e61d0b", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [ "remove-cell" ] }, "outputs": [], "source": [ "import veloxchem as vlx" ] }, { "cell_type": "markdown", "id": "436669fc", "metadata": {}, "source": [ "## Tasks" ] }, { "cell_type": "markdown", "id": "c37e245f", "metadata": {}, "source": [ "The different taks below are presented in the same order followed for the Properties description." ] }, { "cell_type": "markdown", "id": "b37f59d3", "metadata": {}, "source": [ "|Task|Description|\n", "|:--|:--|\n", "| [scf](sec:rhf) | Perform a Restricted closed-shell calculation (HF or DFT) |\n", "| [roscf](sec:rohf) | Perform a Restricted open-shell calculation (HF or DFT) |\n", "| [uscf](sec:uhf) | Perform a Unrestricted open-shell calculation (HF or DFT) |\n", "| [mp2](sec:rmp2) | Perform a Restricted closed-shell MP2 calculation | \n", "| [romp2](sec:romp2) | Perform a Restricted open-shell MP2 calculation |\n", "| [ump2](sec:ump2) | Perform a Unrestricted open-shell MP2 calculation |\n", "| [esp charges](sec:esp) | Calculate the ESP charges |\n", "| [resp charges](sec:resp) | Calculate the RESP charges|\n", "| [loprop](sec:loprop) | Calculate the LoProp charges and polarizabilities |\n", "| [optimize](sec:pes) | Optimize the geometry in the ground and excited state |\n", "| [response](sec:uv_vis) | Calculate response properies with TD-DFT and CPP, such as [UV/vis](sec:uv_vis) or [ECD](sec:ecd)|\n", "| [exciton](sec:ecm) | Use the exciton coupling model to calculate absorption and circular dichroism |\n", "| [vibrational](sec:vib_spect) | Calculate IR, Raman and resonance Raman spectra |\n", "\n" ] }, { "cell_type": "markdown", "id": "5d3fe4da", "metadata": { "editable": true, "slideshow": { "slide_type": "" }, "tags": [] }, "source": [ "(sec:molecule-keywords)=\n", "## Molecule" ] }, { "cell_type": "code", "execution_count": 2, "id": "093d964f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ========================================================================================== \n", " @molecule \n", " ------------------------------------------------------------------------------------------ \n", " charge integer net charge \n", " multiplicity integer spin multiplicity \n", " units string unit of coordinates, default is Angstrom \n", " xyz multi-line atom and Cartesian coordinates \n", " xyzfile string XYZ file name (conflicts with units/xyz) \n", " ========================================================================================== \n" ] } ], "source": [ "mol = vlx.Molecule()\n", "mol.print_keywords()" ] }, { "cell_type": "markdown", "id": "278744cf", "metadata": {}, "source": [ "(sec:scf-keywords)=\n", "## SCF optimization" ] }, { "cell_type": "markdown", "id": "7a21ffe0", "metadata": {}, "source": [ "Here are printed the keywords for the ```ScfRestrictedDriver()```, the same can be done for the ```ScfRestrictedOpenDriver()``` and ```ScfUnrestrictedDriver()```" ] }, { "cell_type": "code", "execution_count": null, "id": "c0f6fed1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ========================================================================================== \n", " @scf \n", " ------------------------------------------------------------------------------------------ \n", " acc_type string type of SCF convergence accelerator \n", " max_iter integer maximum number of SCF iterations \n", " max_err_vecs integer maximum number of DIIS error vectors \n", " pfon boolean use pFON to accelerate convergence \n", " pfon_temperature float pFON temperature \n", " pfon_delta_temperature float pFON delta temperature \n", " pfon_nocc integer number of occupied orbitals used in pFON \n", " pfon_nvir integer number of virtual orbitals used in pFON \n", " level_shifting float level shifting parameter \n", " level_shifting_delta float level shifting delta \n", " conv_thresh float SCF convergence threshold \n", " eri_thresh float ERI screening threshold \n", " restart boolean restart from checkpoint file \n", " filename string base name of output files \n", " checkpoint_file string name of checkpoint file \n", " timing boolean print timing information \n", " profiling boolean print profiling information \n", " memory_profiling boolean print memory usage \n", " memory_tracing boolean trace memory allocation \n", " print_level integer verbosity of output (1-3) \n", " guess_unpaired_electrons string unpaired electrons for initila guess \n", " point_charges string potential file for point charges \n", " qm_vdw_params string vdw parameter file for QM atoms \n", " ========================================================================================== \n", " @method settings \n", " ------------------------------------------------------------------------------------------ \n", " ri_coulomb boolean use RI-J approximation \n", " ri_auxiliary_basis string RI-J auxiliary basis set \n", " dispersion boolean use D4 dispersion correction \n", " xcfun string exchange-correlation functional \n", " grid_level integer accuracy level of DFT grid (1-8) \n", " potfile string potential file for polarizable embedding \n", " solvation_model string solvation model \n", " cpcm_grid_per_sphere sequence number of C-PCM grid points per sphere \n", " cpcm_cg_thresh float threshold for solving C-PCM charges \n", " cpcm_epsilon float dielectric constant of solvent (C-PCM) \n", " cpcm_x float parameter for scaling function (C-PCM) \n", " cpcm_custom_vdw_radii sequence custom vdw radii for C-PCM \n", " electric_field sequence static electric field \n", " ========================================================================================== \n" ] } ], "source": [ "scf_drv = vlx.ScfRestrictedDriver()\n", "scf_drv.print_keywords()" ] }, { "cell_type": "markdown", "id": "e061f580", "metadata": {}, "source": [ "(sec:uv-vis-keywords)=\n", "## UV/vis absorption spectrum" ] }, { "cell_type": "code", "execution_count": 4, "id": "eff2aee2", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ========================================================================================== \n", " @response \n", " ------------------------------------------------------------------------------------------ \n", " eri_thresh float ERI screening threshold \n", " batch_size integer batch size for Fock build \n", " conv_thresh float convergence threshold \n", " max_iter integer maximum number of iterations \n", " norm_thresh float norm threshold for adding vector \n", " lindep_thresh float threshold for linear dependence \n", " serial_ratio float serial ratio as in Amdahl's law \n", " use_subcomms boolean use subcommunicators for Fock build \n", " restart boolean restart from checkpoint file \n", " filename string base name of output files \n", " checkpoint_file string name of checkpoint file \n", " force_checkpoint boolean flag for writing checkpoint every iteration \n", " save_solutions boolean save solutions to file \n", " timing boolean print timing information \n", " profiling boolean print profiling information \n", " memory_profiling boolean print memory usage \n", " memory_tracing boolean trace memory allocation \n", " print_level integer verbosity of output (1-3) \n", " nstates integer number of excited states \n", " core_excitation boolean compute core-excited states \n", " num_core_orbitals integer number of involved core-orbitals \n", " nto boolean analyze natural transition orbitals \n", " nto_pairs integer number of NTO pairs in NTO analysis \n", " nto_cubes boolean write NTO cube files \n", " detach_attach boolean analyze detachment/attachment density \n", " detach_attach_cubes boolean write detachment/attachment density cube files \n", " esa boolean compute excited state absorption \n", " esa_from_state integer the state to excite from (e.g. 1 for S1) \n", " cube_origin sequence origin of cubic grid points \n", " cube_stepsize sequence step size of cubic grid points \n", " cube_points sequence number of cubic grid points \n", " tamm_dancoff boolean use Tamm-Dancoff approximation \n", " ========================================================================================== \n", " @method settings \n", " ------------------------------------------------------------------------------------------ \n", " ri_coulomb boolean use RI-J approximation \n", " ri_auxiliary_basis string RI-J auxiliary basis set \n", " xcfun string exchange-correlation functional \n", " grid_level integer accuracy level of DFT grid \n", " potfile string potential file for polarizable embedding \n", " electric_field sequence static electric field \n", " ========================================================================================== \n" ] } ], "source": [ "prop = vlx.Absorption()\n", "prop.init_driver()\n", "\n", "prop.print_keywords()" ] }, { "cell_type": "markdown", "id": "0e70b3b0", "metadata": {}, "source": [ "(sec:cpp-keywords)=\n", "## Complex response solver" ] }, { "cell_type": "code", "execution_count": 5, "id": "0488fc3d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ========================================================================================== \n", " @response \n", " ------------------------------------------------------------------------------------------ \n", " eri_thresh float ERI screening threshold \n", " batch_size integer batch size for Fock build \n", " conv_thresh float convergence threshold \n", " max_iter integer maximum number of iterations \n", " norm_thresh float norm threshold for adding vector \n", " lindep_thresh float threshold for linear dependence \n", " serial_ratio float serial ratio as in Amdahl's law \n", " use_subcomms boolean use subcommunicators for Fock build \n", " restart boolean restart from checkpoint file \n", " filename string base name of output files \n", " checkpoint_file string name of checkpoint file \n", " force_checkpoint boolean flag for writing checkpoint every iteration \n", " save_solutions boolean save solutions to file \n", " timing boolean print timing information \n", " profiling boolean print profiling information \n", " memory_profiling boolean print memory usage \n", " memory_tracing boolean trace memory allocation \n", " print_level integer verbosity of output (1-3) \n", " a_operator string A operator \n", " a_components string Cartesian components of A operator \n", " b_operator string B operator \n", " b_components string Cartesian components of B operator \n", " frequencies sequence frequencies \n", " damping float damping parameter \n", " ========================================================================================== \n", " @method settings \n", " ------------------------------------------------------------------------------------------ \n", " ri_coulomb boolean use RI-J approximation \n", " ri_auxiliary_basis string RI-J auxiliary basis set \n", " xcfun string exchange-correlation functional \n", " grid_level integer accuracy level of DFT grid \n", " potfile string potential file for polarizable embedding \n", " electric_field sequence static electric field \n", " ========================================================================================== \n" ] } ], "source": [ "cpp_solver = vlx.ComplexResponse()\n", "\n", "cpp_solver.print_keywords()" ] }, { "cell_type": "markdown", "id": "2413c5d8", "metadata": {}, "source": [ "(sec:opt-keywords)=\n", "## Optimization driver" ] }, { "cell_type": "code", "execution_count": 6, "id": "fa392cf4", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ " ========================================================================================== \n", " @optimize \n", " ------------------------------------------------------------------------------------------ \n", " coordsys string coordinate system \n", " constraints multi-line constraints \n", " check_interval integer interval for checking coordinate system \n", " trust float trust radius to begin with \n", " tmax float maximum value of trust radius \n", " max_iter integer maximum number of optimization steps \n", " transition boolean transition state search \n", " hessian string hessian flag \n", " ref_xyz string reference geometry \n", " keep_files boolean flag to keep output files \n", " conv_maxiter boolean consider converged if max_iter is reached \n", " conv_energy float \n", " conv_grms float \n", " conv_gmax float \n", " conv_drms float \n", " conv_dmax float \n", " ========================================================================================== \n" ] } ], "source": [ "opt_drv = vlx.OptimizationDriver(scf_drv)\n", "\n", "opt_drv.print_keywords()" ] }, { "cell_type": "code", "execution_count": null, "id": "ff145856", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "vlx-github", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.8" } }, "nbformat": 4, "nbformat_minor": 5 }