HOME | Videos |
---|
Tutorials showcasing various capabilities of Libra
- Rigid body
- Integrators
- 2.1. Runge-Kutta 4-th order for Classical Mechanics
- 2.2. Runge-Kutta 4-th order for Quantum Mechanics
- Linear algebra
- 3.1. operations with VECTOR, MATRIX, and CMATRIX data types
- 3.2. matrix functions, inversion, linear equations
- Optimization
- Electronic structure calculations in Libra
-
5.1. Extended Huckel Theory, EHT
- 5.1.1. Compact version
- 5.1.2. Detailed version
-
5.2. Incomplete Neglect of Differential Overlap, INDO
- 5.2.1. Compact version
- Dynamics with Libra
-
6.1. Quantum-classical, trajectory methods
- 6.1.1. Model, adiabatic MD
- 6.1.1.1. NVE ensemble
- 6.1.1.2. NVT ensemble
- 6.1.1.2.1. 1 electronic state
- 6.1.2. Model, common approach to adiabatic, Ehrenfest, and TSH
- 6.1.3. Model, Ehrenfest recipes
- 6.1.5. Atomistic, adiabatic dynamics, ground/excited
- 6.1.6. Model, NBRA and non-NBRA
- 6.1.7. Model, TSH with thermostat, quantum-vs-classical partitioning of DOFs, and constrining
- 6.1.8. General TSH with multiple recipes, NBRA and not
- 6.1.9. Revised, most recent TSH with model Hamiltonians
- 6.1.10. Ehrefest, FSSH, GFSH, BCSH, MSSH, DISH, SDM, IDA, MFSD, SSY, etc. with model Hamiltonians
- 6.1.11. Exact factorization methods with model Hamiltonians
- 6.1.12. NA-MD with Spin-boson/FMO Hamiltonians
- 6.1.1. Model, adiabatic MD
-
6.2. Quantum-classical, neglect-of-back-reaction trajectory workflows
- 6.2.1. step 1 with DFTB+
- 6.2.2. step 1 with QE
- 6.2.3. step 2 with QE
- 6.2.4. step 3
- 6.2.4.1. Compute single-particle NACs
- 6.2.4.2. Compute many-body NACs
- 6.2.5. step 4
- 6.2.5.1. Initialze_data
- 6.2.5.2. Dynamics
- 6.2.6. step 1 with CP2K
- 6.2.6.1. Molecular dynamics with DFT
- 6.2.6.2. Molecular dynamics with extended tight-binding
- 6.2.7. step 2 with CP2K
- 6.2.7.1. Compute molecular orbital overlaps and time-overlaps in DFT
- 6.2.7.1.1. On desktop
- 6.2.7.1.2. On HPC
- 6.2.7.1.2.1. TiO2 example
- 6.2.7.1.2.2. Adamantane example
- 6.2.7.2. Compute molecular orbital overlaps and time-overlaps in extended tight-binding
- 6.2.7.2.1. On desktop
- 6.2.7.2.2. On HPC
- 6.2.7.1. Compute molecular orbital overlaps and time-overlaps in DFT
- 6.2.8. step 3 with CP2K
- 6.2.9. step 4 with sparse data files
- 6.2.10. NBRA steps 3 and 4, tsh_revision
- 6.2.11. step 2 with DFTB+
- 6.2.12. step 3: generic mapping
- 6.2.13. complete example with DFTB+
- 6.2.14. step 4: many recipes
- 6.2.15. step 4 with BLLZ method
- 6.2.16. Kohn-Sham Hamiltonian mapping with machine-learning *6.2.16.1 benzene example
-
6.4. DVR, on-the-grid wavepackets
- 6.4.1. Gaussian wavepackets
- 6.4.1.1. Computing matrix elements
- 6.4.2. DVR basics
- 6.4.3. SOFT dynamics in 1D and 2D
- 6.4.4. More examples of DVR and dynamics
- 6.4.5. Grids and hyperplanes
- 6.4.1. Gaussian wavepackets
-
6.5. Quantum Trajectories with Adaptive Gaussians, QTAG
- 6.5.1. Basics
-
6.7. ETHD
- Special functions
- 7.1. Sorting, matrix statistics
- 7.2. Fitting distributions to a superposition of Gaussians
- 7.3. Data statistics
- 7.4. Random numbers
- 7.5. Autocorrelation function and its Fourier Transform
- Model Hamiltonians
- 8.1. Define model Hamiltonians and plot PES
- 8.2. Define atomistic Hamiltonians and plot PES
- 8.3. Model Hamiltonians in Libra
- Machine learning
- 9.1. Basics of the artificial neural networks (ANNs), Multilayer Perceptron (MLP)
- 9.2. Analytical derivatives of the ANNs
- 9.3. Advanced ANN training algorithms
- Auxiliary functions and data types
- Program-specific methods
- 11.1. ErgoSCF methods
- 11.1.1. Basic methods
- 11.1.2. Basic methods
- 11.2. QE methods
- 11.2.1. pDOS
- 11.2.2. MD
- 11.2.3. Normal modes
- 11.3. CP2K methods
- 11.3.1. Input generator
- 11.3.2. PDOS calculations
- 11.3.3. Time-resolved energies
- 11.3.4. Excitation analysis
- 11.4. DFTB+ methods
- 11.4.1. Input generator
- 11.5. MOPAC methods
- Molecular builders
- 12.1. Crystal and QD builders
- 12.2. Chemobjects
- 12.2.1. Basic methods
- 12.2.2. Rotations & Translations
- Force fields and classical MD (outside the dynamics module)
- 13.1. Force field basics
- 13.2. Basics of MM calculations with Libra
- 13.3. Force field molecular structure optimization
- 13.4. Force field molecular dynamics NEEDS MORE WORK
- Molecular integrals
- Create a chemical system
- EHT calculations with Libra
- INDO calculations with Libra
- Compute .cube files from orbitals computed with Libra
- Visualize the MOs from .cube files
- Compute pDOS
- Plot pDOS
- Visualize MD trajectory with py3Dmol:
- Construct the vibronic Hamiltonian from the QE MD calculations
- Read the vibronic Hamiltonian data files to obtain its properties
- Compute the time-averaged nonadiabatic couplings of the vibronic Hamiltonian
- Manually construct a Slater Determinant basis
- Auto-generate a Slater Determinant basis
- Compute the energies and nonadiabatic couplings in the SD basis
- Calculate population and coherence dynamics of a quantum system embedded in a bath
- Calculate absorbance spectral lineshapes of a quantum system embedded in a bath
- Construct and plot the Heller's wavepackets
- Compute the matrix elements of various operators with Heller's wavepackets
- Define diabatic abstract model Hamiltonian
- Define adiabatic abstract model Hamiltonian
- Define adiabatic file-based model Hamiltonian
- Plot 1D PES
- Plot diabatic-to-adiabatic transformaitons vs. coordinate in 1D
- Plot 1D PES vs. time
- Define Libra/Psi4 intraface Hamiltonian
- Define Libra/DFTB+ intraface Hamiltonian
- Plot the PES of LiH at the EOM-CCSD/sto-3G level computed via interface of Libra with Psi4
- Plot the 1D PES of HFCO at the TD-DFTB level compute with interface of Libra with DFTB+
- Generate XYZ trajectory from a list of matrices
- Perform a ground state adiabatic MD with Libra
- Perform an excited state adiabatic MD with Libra
- Compute MD with DFTB+ via Libra
- Generate XYZ trajectory from HDF5 files
- Compute trajectory-averaged dephasing times
- Compute trajectory-averaged energy gaps
- Plot trajectory-averaged dephasing times
- Fit the probability density of randomly distributed point with Gaussian density kernel functions
- Read the HDF5 files to setup Hamiltonians
- Read the HDF5 files to plot results of dynamical calculations
- Compute nonadiabatic dynamics for atomistic systems with NBRA using Kohn-Sham states
- Plot the PES profiles with multidimensional model Hamiltonians
- MD and NAMD in the NVT ensemble
- Partitioning quantum and classical DOFs
- Coupling classical DOFs to thermostat
- Constraining DOFs in dynamics
- Numerically exact TD-SE
- DVR calculations
- Making animated gifs
- Integrating quantum Liouville's equation of motion
- Machine learning with MLP
- Artificial neural networks (ANN) and error Back Propagation algorithm
- Derivatives of ANNs
- Convert Libra and Python data types
- Manipulate vectors (lists of data)
- Setup default values of Python dictionary
- Interfacing ErgoSCF and Libra
- Sampling random numbers from common distributions
- Sampling random numbers from arbitrary distributions
- Computing data probability densities and cumulative distribution functions
- Generating (deterministic) quasi-random numbers
- Dynamical regimes and chaotic systems
- Wigner sampling
- Canonical and microcanonical enesemble sampling
- Analyzing MD trajectories
- Normal modes
- Constructing quantum dots
- Constructing periodic structures
- Automatically determining connectivity in complex structures
- Computing NACs using ErgoSCF/Libra
- Computing NACs using DFTB+/Libra
- Computing NACs using CP2K/Libra
- Computing single-particle (KS-DFT, HF, semiempirical) NACs
- Computing many-body (TD-DFT, TD-DFTB, CI) NACs
- Saving ANNs to files and creating ANNs from XML files
- Rprop algorithm for ANN training
- Momentum algorithm in the ANN training
- Weight decay in the ANN training
- Rotating and translating molecular fragments
- Creating classical force fields
- Molecular mechanics calculations (Hamiltonian_Atomistic)
- Mixing force fields
- NVE ensemble MD with force fields
- Simulated annealing
- Molecular mechanics molecular structure optimization
- Conduct quantum trajectories calculations (QTAG)
- Mapping multidimensional vectors of ints to an integer and vice versa
- Working with multidimensional grids
- Computing hyperplanes of multidimensional grids
- Compute ACF of data series
- Compute spectra
- Processing the MOPAC calculations results
- Computing CI wavefunction time-overlaps with MOPAC
- Define Libra/MOPAC interface Hamiltonian
-
liblibra::libconverters
-
liblibra::libdyn
-
liblibra::libintegrators
-
liblibra::liblinalg
pop_submatrix
9.1.
-
liblibra::libmontecarlo
metropolis_gau
7.4.2.
-
liblibra::libspecialfunctions
randperm
9.1.
-
liblibra::libqm_tools
-
liblibra::libpot
Angle_Cubic
13.1.Angle_Fourier
13.1.Angle_Fourier_General
13.1.Angle_Fourier_Special
13.1.Angle_Harmonic
13.1.Angle_Harmonic_Cos
13.1.Angle_Harmonic_Cos_General
13.1.Bond_Harmonic
13.1.Bond_Quartic
13.1.Bond_Morse
13.1.Dihedral_Fourier
13.1.Dihedral_General
13.1.Elec_Coulomb
13.1.Elec_Ewald3D
13.1.Gay_Berne
13.1.Girifalco12_6
13.1.LJ_Coulomb
13.1.OOP_Fourier
13.1.OOP_Harmonic
13.1.OOP_Wilson
13.1.Stretch_Bend_Harmonic
13.1.Vdw_Buffered14_7
13.1.VdW_Ewald3D
13.1.Vdw_LJ
13.1.Vdw_LJ1
13.1.Vdw_LJ2_excl
13.1.Vdw_LJ2_no_excl
13.1.Vdw_Morse
13.1.
-
libra_py
-
acf
-
autoconnect
-
build
-
data_visualize
-
dynamics
exact
heom
compute
run_dynamics
6.3.1.
qtag
tsh
compute
plot
add_basis_transform
6.1.6.add_coordinates_vs_t
6.1.6.add_energies
6.1.6.add_momentum_vs_t
6.1.6.add_phase_space
6.1.6.add_populations
6.1.6.add_time_overlap_projectors
6.1.6.add_trajectory_resolved_ham_property
6.1.6.hdf2xyz
6.1.5.plot_dyn
6.1.5.plot_dynamics
6.1.6. | 6.1.7. | 6.2.10.1. | 6.2.10.2. | 6.1.9. | 6.1.10. | 6.1.11. | 6.1.12. | 6.1.5. |
recipes
adiabatic_md_interfaces_params
6.1.5.
-
molden_methods
eigenvectors_molden
index_reorder
molden_file_to_libint_shell
resort_eigenvectors
-
models
-
workflows
nbra
compute_hprime
compute_hprime_dia
hprime_py
compute_properties
compute_properties_onekpt
decoherence_times
generate_data
distribute_jobs
6.2.16.1.1
lz
Belyaev_Lebedev
adjust_SD_probabilities
run
6.2.15.
mapping
sd2indx
energy_arb
energy_mat_arb
orbs2spinorbs
ovlp_arb
ovlp_mat_arb
6.2.4.2.
mapping2
ml_map
compute_properties
6.2.16.1.2
load_models
6.2.16.1.2train
6.2.16.1.2qsh
compute_freqs
compute_qs_Hvib
run
step2
step2_analysis
compute_oscillator_strengths
compute_spectrum
get_step2_mb_sp_properties
step2_dftb
step2_ergoscf
do_step
do_ovlp
clean
run_step2
11.1.2.
step2_many_body
curr_and_final_step_job
normalize_ci_coefficients
get_excitation_analysis_output
integrate_cube_set
compute_cube_ks_overlaps
reindex_cp2k_sd_states
6.2.4.2.form_Hvib_real
run_step2_many_body
step3
apply_normalization
6.2.4.2.apply_orthonormalization_general
6.2.4.2.apply_orthonormalization_scipy
apply_phase_correction
apply_phase_correction_general
6.2.4.2.apply_phase_correction_scipy
apply_state_reordering
6.2.4.2.apply_state_reordering_general
6.2.4.2.build_SD_basis
6.2.4.1.compute_Hvib
compute_phase_corrections_scipy
do_phase_corr
do_phase_corr_scipy
get_Lowdin
get_Lowdin_general
get_Lowdin_scipy
get_step2_data
6.2.4.1. | 6.2.4.2.make_cost_mat
map_Hvib
orthonormalize_ks_overlaps
output_sorted_Hvibs
6.2.4.1.print_SD_basis
6.2.4.1.pyxaid2libra
run
6.2.4.1.run_step3_ks_nacs_libint
6.2.8.1. | 6.2.8.3. | 6.2.10.2.run_step3_sd_nacs_libint
6.2.8.1. | 6.2.8.3. | 6.2.10.2.sac_matrices
scale_H_vib
sort_SD_energies
6.2.4.1.sort_unique_SD_basis
6.2.4.2.sort_unique_SD_basis_scipy
step3_many_body
step4
-
data_conv
-
data_outs
-
data_read
-
data_stat
-
data_visualize
-
dynamics_plotting
-
ERGO_methods
-
ft
-
gaussian_kernel_algorithm
-
hpc_utils
distribute
6.2.3.
-
influence_spectrum
recipe1
7.5.2.
-
LoadGAFF
Load_GAFF
13.1.
-
LoadGAFF
Load_MMFF94
13.1.
-
LoadMolecule
-
LoadPT
-
LoadTRIPOS
Load_TRIPOS
13.1.
-
LoadUFF
Load_UFF
13.1.
-
normal_modes
get_xyz2
11.2.3.
-
nve_md
-
packages
cp2k
input
generate
11.3.1.
methods
cp2k_find_excitation_energies
6.2.8.1.cp2k_xtb_diag_inp
6.2.7.1.1.cp2k_xtb_ot_inp
6.2.7.2.1.distribute_cp2k_libint_jobs
6.2.7.1.2.generate_translational_vectors
6.2.7.1.1.read_trajectory_xyz_file
11.5.
dftbplus
ergo
gaussian
lammps
mopac
qe
-
pdos
-
psi4_methods
run_psi4_adi
8.2.
-
QE_methods
-
scan
-
units
-
-
liblibra::libutil
-
liblibra::liwfcgrid
-
liblibra::libann
NeuralNetwork
9.1. | 9.2. | 9.3.Nlayers
9.1.Npe
9.1.W
9.1.dW
9.1.dWold
9.1.grad_w
9.1.grad_w_old
9.1.B
9.1.dB
9.1.dBold
9.1.grad_b
9.1.grad_b_old
9.1.propagate
9.1. | 9.2. | 9.3.derivatives
9.2.back_propagate
9.1.init_weights_biases_uniform
9.1. | 9.2. | 9.3.init_weights_biases_normal
9.1.train
9.1. | 9.2. | 9.3.load
9.1.save
9.1. | 9.3.error
9.1.
-
liblibra::libcontrol_parameters::Control_Parameters
5.1.1. -
liblibra::libconverters
-
liblibra::libchemobjects
libchemsys::System
12.2.1.Atoms
12.2.1. | 12.2.2.CREATE_ATOM
12.2.1. | 13.3.determine_functional_groups
12.2.1. | 12.2.2.Fragments
12.2.1. | 12.2.2.GROUP_ATOMS
12.2.1. | 12.2.2.get_xyz
5.1.1. 12.1.init_box
12.1. | 12.2.1.init_atom_velocities
13.2.init_fragments
12.2.1. | 12.2.2.LINK_ATOMS
12.2.1. | 13.3.Number_of_atoms
12.2.1. | 12.2.2. | 5.1.1.Number_of_angles
12.2.1. | 12.2.2.Number_of_bonds
12.2.1. | 12.2.2.Number_of_dihedrals
12.2.1. | 12.2.2.Number_of_fragments
12.2.1. | 12.2.2.Number_of_impropers
12.2.1. | 12.2.2.print_ent
12.1. | 12.2.1.print_xyz
12.2.1.ROTATE_FRAGMENT
12.2.1. | 12.2.2.set_atomic_q
13.2.show_atoms
12.2.1.show_bonds
12.2.1.show_fragments
12.2.1.show_molecules
12.2.1.show_rings
12.2.1.System
12.1. | 12.2.1.TRANSLATE_FRAGMENT
12.2.1.
libmol
libuniverse::Universe
5.1.1. | 12.2.1. | 12.2.2.
-
liblibra::libdata
DATA
7.3. | 7.4.2.Data
7.3.ave
7.3.var
7.3.sd
7.3.se
7.3.mse
7.3.mae
7.3.rmse
7.3.min_val
7.3.min_indx
7.3.max_val
7.3.max_indx
7.3.scale_factor
7.3.shift_amount
7.3.LinearTransformData
7.3.invLinearTransformData
7.3.ScaleData
7.3.ShiftData
7.3.NormalizeData
7.3.Calculate_Estimators
7.3. | 11.2.2.Calculate_MiniMax
7.3. | 11.2.2.Calculate_Distribution
7.3. | 7.4.1. | 7.4.2. | 11.2.2.
DATAList
10.1.
-
liblibra::libdyn
-
liblibra::libforcefield
Angle_Record
Angle_RecordList
10.1.Atom_Record
Bond_RecordList
10.1.Dihedral_RecordList
10.1.ForceField
Add_Angle_Record
13.1. | 13.2.Add_Atom_Record
13.1. | 13.2.ForceField
13.1. | 13.2.bond_functional
13.1.angle_functional
13.1.dihedral_functional
13.1.oop_functional
13.1.vdw_functional
13.1.elec_functional
13.1.mb_functional
13.1.cg_functional
13.1.mb_excl_functional
13.1.set_functionals
13.1.show_angle_records
13.1.show_atom_records
13.1.show_info
13.1.
Fragment_RecordList
10.1.
-
`liblibra::libhamiltonian
-
liblibra::libqobjects
-
liblibra::librandom
-
liblibra::liblinalg
CMATRIX
intList
10.1.floatList
10.1.doubleList
10.1.complexList
10.1.intList2
10.1.floatList2
10.1.doubleList2
10.1.complexList2
10.1.intList3
10.1.floatList3
10.1.doubleList3
10.1.complexList3
10.1.intMap
10.1.floatMap
10.1.doubleMap
10.1.complexMap
10.1.MATRIXList
10.1.MATRIXMap
10.1.CMATRIXList
10.1.CMATRIXMap
10.1.MATRIX3x3List
10.1.MATRIX3x3Map
10.1.QUATERNIONList
10.1.QUATERNIONMap
10.1.VECTORList
10.1.VECTORMap
10.1.
-
libra_py
-
liblibra::libdyn::libwfcgrid2
Wfcgrid2
6.4.2.nstates
6.4.2.ndof
6.4.2.Npts
6.4.2.npts
6.4.2.rmin
6.4.2.rmax
6.4.2.dr
6.4.2.kmin
6.4.2.dk
6.4.2.gmap
6.4.2.imap
6.4.2.PSI_dia
6.4.2.reciPSI_dia
6.4.2.PSI_adi
6.4.2.reciPSI_adi
6.4.2.Hdia
6.4.2.U
6.4.2.add_wfc_Gau
6.4.2.add_wfc_HO
6.4.2.add_wfc_ARB
6.4.2.norm
6.4.2.e_kin
6.4.2.e_pot
6.4.2.e_tot
6.4.2.get_pow_q
6.4.2.get_pow_p
6.4.2.get_den_mat
6.4.2.get_pops
6.4.2. | 6.4.3.update_propagator_H
6.4.2.update_propagator_K
6.4.2.SOFT_propagate
6.4.2.update_real
6.4.3.update_reciprocal
6.4.2.normalize
6.4.2.update_Hamiltonian
6.4.2.update_adiabatic
6.4.2.update_diabatic
6.4.3.print_wfc_1D
6.4.3.print_reci_wfc_1D
6.4.3.print_wfc_2D
6.4.3.print_reci_wfc_2D
6.4.3.