{ "cells": [ { "cell_type": "markdown", "source": [ "# Tutorial using expert mode\n", "\n", "Here we demonstrate avoiding the use of the disk at all; keeping all objects in memory. It is recommended to at least use the `hdf_file` option of all functions to save the data to disk, just in case!\n", "\n", "We will do the same calculations as done in the recipe tutorial, but using the expert API.\n", "\n", "You may wish to follow this if:\n", "\n", "1. The calculations are inexpensive and can be done in a single process, or filesystem access is very expensive.\n", "2. You wish to use either a non-standard wave function or use a custom accumulator.\n", "\n", "Note that the low-level API can be mixed with the recipes API; in fact, the recipes use the low-level API here under the hood, so they are also good references; check `recipes.py`.\n" ], "metadata": {} }, { "cell_type": "code", "execution_count": 1, "source": [ "import os\n", "os.environ[\"MKL_NUM_THREADS\"] = \"1\"\n", "os.environ[\"NUMEXPR_NUM_THREADS\"] = \"1\"\n", "os.environ[\"OMP_NUM_THREADS\"] = \"1\"\n", "import numpy as np\n", "import pandas as pd\n", "from pyscf import gto, scf\n", "import pyqmc.api as pyq\n", "import h5py\n", "import matplotlib.pyplot as plt\n", "from ase.data.pubchem import pubchem_atoms_search\n", "import pyscf.pbc.tools.pyscf_ase as pyscf_ase\n" ], "outputs": [ { "output_type": "stream", "name": "stderr", "text": [ "/opt/homebrew/Caskroom/miniforge/base/envs/python3.9/lib/python3.9/site-packages/pyscf/lib/misc.py:46: H5pyDeprecationWarning: Using default_file_mode other than 'r' is deprecated. Pass the mode to h5py.File() instead.\n", " h5py.get_config().default_file_mode = 'a'\n" ] } ], "metadata": {} }, { "cell_type": "code", "execution_count": 2, "source": [ "atoms = pubchem_atoms_search(name='water')\n", "mol = gto.M(\n", " atom=pyscf_ase.ase_atoms_to_pyscf(atoms),\n", " basis=\"ccECP_cc-pVDZ\", ecp=\"ccecp\",\n", ")\n", "mf = scf.RHF(mol)\n", "mf.kernel()\n" ], "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "converged SCF energy = -16.9321257267691\n" ] }, { "output_type": "execute_result", "data": { "text/plain": [ "-16.932125726769126" ] }, "metadata": {}, "execution_count": 2 } ], "metadata": {} }, { "cell_type": "markdown", "source": [ "Construct the trial wave function. We control which parameters to optimize using a dictionary `to_opt`. Since the cusp conditions are already set for the exact conditions, we do not wish to optimize those parameters. \n", "\n", "Here is where you can insert other wave function objects, a more complex Jastrow, etc.\n" ], "metadata": {} }, { "cell_type": "code", "execution_count": 3, "source": [ "wf = pyq.MultiplyWF(\n", " pyq.Slater(mol, mf),\n", " pyq.generate_jastrow(mol)[0]\n", ")\n", "print(list(wf.parameters.keys()))\n", "print(\"electron-electron parameters:\\n\", wf.parameters['wf2bcoeff'])\n", "to_opt = {k:np.ones_like(wf.parameters[k],dtype=bool) for k in ['wf2acoeff','wf2bcoeff']}\n", "to_opt['wf2bcoeff'][0,:] = False\n", "print(\"parameters to optimize\\n\", to_opt['wf2bcoeff'])\n" ], "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "['wf1det_coeff', 'wf1mo_coeff_alpha', 'wf1mo_coeff_beta', 'wf2bcoeff', 'wf2acoeff']\n", "electron-electron parameters:\n", " [[-0.25 -0.5 -0.25]\n", " [ 0. 0. 0. ]\n", " [ 0. 0. 0. ]\n", " [ 0. 0. 0. ]]\n", "parameters to optimize\n", " [[False False False]\n", " [ True True True]\n", " [ True True True]\n", " [ True True True]]\n" ] } ], "metadata": {} }, { "cell_type": "markdown", "source": [ "The gradient accumulator object presents only the parameters available in to_opt to the optimizer. This can be replaced by any object that presents the same interface, including a custom one that you define yourself. See `LinearTransform` and `PGradTransform` in `accumulators.py`." ], "metadata": {} }, { "cell_type": "code", "execution_count": 4, "source": [ "nconfig=400\n", "coords = pyq.initial_guess(mol, nconfig)\n", "gradient_accumulator = pyq.gradient_generator(mol, wf, to_opt)\n", "wf, minimization_results = pyq.line_minimization(wf, coords, gradient_accumulator, max_iterations=10)" ], "outputs": [], "metadata": {} }, { "cell_type": "code", "execution_count": 5, "source": [ "for r in minimization_results:\n", " print(r['energy'])\n", "print(wf.parameters['wf2bcoeff'])" ], "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "-16.99419791016134\n", "-17.109371802877092\n", "-17.131586001398762\n", "-17.151584798575904\n", "-17.166627220956933\n", "-17.17266706469024\n", "-17.173110504534208\n", "-17.176354456482365\n", "-17.17167911623273\n", "-17.177799072725385\n", "[[-0.25 -0.5 -0.25 ]\n", " [ 0.01640548 -0.00527065 0.01573901]\n", " [-0.17070071 -0.27458873 -0.17282158]\n", " [-0.11646714 -0.1173134 -0.11980396]]\n" ] } ], "metadata": {} }, { "cell_type": "markdown", "source": [ "The VMC and DMC functions accept a dictionary of accumulator objects. These can be custom defined by the user as well, see `accumulators.py` or the example in `Snippets`." ], "metadata": {} }, { "cell_type": "code", "execution_count": 6, "source": [ "vmc_data, coords = pyq.vmc(wf, coords, accumulators={'energy':pyq.EnergyAccumulator(mol)})" ], "outputs": [], "metadata": {} }, { "cell_type": "code", "execution_count": 7, "source": [ "import scipy.stats\n", "en = vmc_data['energytotal'][1:]\n", "print(\"average\", np.mean(en))\n", "print(\"standard error\", scipy.stats.sem(en))" ], "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "average -17.174165784834877\n", "standard error 0.0059391103748076485\n" ] } ], "metadata": {} }, { "cell_type": "code", "execution_count": 9, "source": [ "dmc_data, coords, weights = pyq.rundmc(wf, coords, tstep=0.1, accumulators={'energy':pyq.EnergyAccumulator(mol)})" ], "outputs": [ { "output_type": "stream", "name": "stderr", "text": [ "/opt/homebrew/Caskroom/miniforge/base/envs/python3.9/lib/python3.9/site-packages/pyqmc/slater.py:291: RuntimeWarning: invalid value encountered in true_divide\n", " return gpu.asnumpy(ratios[1:] / ratios[0])\n" ] } ], "metadata": {} }, { "cell_type": "code", "execution_count": 11, "source": [ "plt.plot(dmc_data['energytotal'])" ], "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "[]" ] }, "metadata": {}, "execution_count": 11 }, { "output_type": "display_data", "data": { "text/plain": [ "
" ], "image/png": "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" }, "metadata": { "needs_background": "light" } } ], "metadata": {} }, { "cell_type": "code", "execution_count": null, "source": [], "outputs": [], "metadata": {} } ], "metadata": { "orig_nbformat": 4, "language_info": { "name": "python", "version": "3.9.4", "mimetype": "text/x-python", "codemirror_mode": { "name": "ipython", "version": 3 }, "pygments_lexer": "ipython3", "nbconvert_exporter": "python", "file_extension": ".py" }, "kernelspec": { "name": "python3", "display_name": "Python 3.9.4 64-bit ('python3.9': conda)" }, "interpreter": { "hash": "112989c04d9b5f15556575e770d3522ecbbef8edcf6491f6e33b45ab165d60eb" } }, "nbformat": 4, "nbformat_minor": 2 }