Skip to content

Commit b80f0bc

Browse files
authoredMay 13, 2024
Rework MCSCF into the Standard Workflow (evangelistalab#388)
* Logic to handle frozen core in MCSCF module * Fix ACI test cases * Fixed AVAS test cases * Fixed detci tests * Fix DSRG-MRPT2-5 (this would be a good test case) * Update code but buggy * Fix small bug * Fix bug and test case * Fix most test cases * Fix many test cases * Fix more test cases * Introduce way to set options in the SemiCanonicalize class * Revert changes to inputs * Fixed one more test case * Fix another test case * Don't run MCSCF in FCIDUMP tests * Fix more test cases * Fix one more test case * Mute two failing tests * Save progress * Fix test case failure due to loose threshold * Update reference output * Try to fix gasscf-1 test case * Modernize the SemiCanonical class * Edited some documentation * Big CAS -> MC relabeling + removed original CASSCF code * Fix casscf test cases. One test case was not even testing the energy * Fix CASSCF gradient test case * Updated manual * Add manual tests * Update version * Fix issues with input options * Fix small issue in documentation * Removed comments
1 parent 20ab821 commit b80f0bc

File tree

275 files changed

+14445
-4722
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

275 files changed

+14445
-4722
lines changed
 

‎docs/notebooks/nb_01_compilation.ipynb ‎docs/notebooks/nb_01_getting_forte.ipynb

+22-2
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,35 @@
55
"id": "8f090642-8398-4ff8-92fb-652a968de9e6",
66
"metadata": {},
77
"source": [
8-
"# Compiling and running Forte"
8+
"# Getting Forte"
9+
]
10+
},
11+
{
12+
"cell_type": "markdown",
13+
"id": "4607a37f",
14+
"metadata": {},
15+
"source": [
16+
"## Installing Forte from conda\n",
17+
"\n",
18+
"The easiest way to get Forte is by downloading [compiled binaries](https://anaconda.org/conda-forge/forte/files) from conda. These are currently available for x86 Mac and Linux. The recommended way to do so is by creating a new `forte` environment\n",
19+
"\n",
20+
"```bash\n",
21+
">conda create -n forte forte -c conda-forge\n",
22+
"```\n",
23+
"\n",
24+
"Once installed, you should be able to import Forte from python:\n",
25+
"```python\n",
26+
"import forte\n",
27+
"```\n",
28+
"If you get an error related to libpugixml (`ImportError: libpugixml.so.1`) you will need to install pugixml via the command `conda install conda-forge::pugixml`"
929
]
1030
},
1131
{
1232
"cell_type": "markdown",
1333
"id": "513f3726-e976-478f-aa1b-73313cdbfbc2",
1434
"metadata": {},
1535
"source": [
16-
"## Download and compilation of Forte\n",
36+
"## Compiling Forte\n",
1737
"\n",
1838
"Prior to the compilation of Forte you must first check to make sure you have the following:\n",
1939
"\n",

‎docs/notebooks/nb_02_getting_started.ipynb

+38-5
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,51 @@
22
"cells": [
33
{
44
"cell_type": "markdown",
5-
"id": "4e3c03b4-5965-4613-94d9-3e997d776f9c",
5+
"id": "08c43c25",
66
"metadata": {},
77
"source": [
88
"# Running Forte computations\n",
99
"\n",
10-
"In this section, we will look at the basics of running computations in Forte.\n",
11-
"\n",
12-
"There are two ways one can run Forte:\n",
10+
"In this section, we will look at the basics of running computations in Forte via the **standard workflow**.This is a predefined workflow that supports standard multireference computations and should be sufficient for the majority of applications of Forte.\n",
1311
"\n",
12+
"There are two ways one can run the standard workflow in Forte:\n",
1413
"1. Using the plugin interface in Psi4.\n",
15-
"1. Using Forte's python API.\n",
14+
"1. Using Forte's python API."
15+
]
16+
},
17+
{
18+
"cell_type": "markdown",
19+
"id": "dbc53b68",
20+
"metadata": {},
21+
"source": [
22+
"## The standard workflow\n",
23+
"\n",
24+
"The simplest way to run Forte computations is through the standard workflow.\n",
25+
"This requires the user to write an input file or a python script that is then executed by calling Psi4 on the command line or via Python.\n",
26+
"\n",
27+
"The main steps in the standard workflow are shown below:\n",
1628
"\n",
29+
"![Forte's standard workflow scheme](../source/images/standard_workflow.png)\n",
30+
"\n",
31+
"The steps in the standard workflow based on a Psi4 input file are as follow:\n",
32+
"1. The computation starts from an input file in the Psithon format.\n",
33+
"1. Options for performing a computation are read from the file and passed to Forte\n",
34+
"1. Orbitals and integrals are generated in Psi4 (after running a SCF computation) or read from a file.\n",
35+
"1. Optionally, the orbitals are localized or AVAS orbitals are formed\n",
36+
"1. An active space solver computation is performed on the system (e.g. CASCI)\n",
37+
"1. An MCSCF computation is performed using the active space solver used in step e)\n",
38+
"1. Optionally, the orbitals are transformed to enable an embedding computation\n",
39+
"1. A dynamical correlation solver computation is performed (e.g., MR-DSRG)\n",
40+
"\n",
41+
"This standard workflow encompasses a variety of user case scenarios, allowing any combination of integrals, active space solvers, and dynamical correlation solvers.\n",
42+
"This is possible due to Forte's extensive use of abstract interfaces and polymorphism, which enables using a single workflow code that is easy to maintain."
43+
]
44+
},
45+
{
46+
"cell_type": "markdown",
47+
"id": "4e3c03b4-5965-4613-94d9-3e997d776f9c",
48+
"metadata": {},
49+
"source": [
1750
"## Running a FCI computation using the plugin interface\n",
1851
"\n",
1952
"Let's start by looking at how one can run Forte as a plugin to Psi4.\n",

0 commit comments

Comments
 (0)