Overview - Contraction Editor

The Contraction Editor works in conjunction with the new Combine Multiple Basis Sets feature under the Advanced menu item in the Basis Set Tool. The purpose of the Contraction Editor and the Combine Multiple Basis Sets feature is to enable you to create your own custom basis sets by combining different contractions from heterogenous sources. The Contraction Editor also enables you to append tight and/or diffuse functions to fine-tune the endpoints of the electron distributions. These custom basis sets are required to obtain the higher accuracy required of the Amica code, and may be of general use for other codes.

Contractions are grouped by L value (i.e., shell) and element. You can click on the Contraction Editor at any time, and it will display all the contractions for the basis sets you have selected, grouped by element and L value, as shown in this picture. If no basis sets have been selected, the Contraction Editor will be empty.

Starting the Contraction Editor

In the Ecce Basis Set Tool, click on the Edit Basis Set... button located just above the configuration table. The Contraction Editor will display.

Picture... Contraction Editor

Key Concepts: Each screen in the Contraction Editor window represents the basis set's contractions for a particular element. To switch to a different element, click the element buttons at the top of the screen.

The top table of the Contraction Editor displays a breakdown of the contractions by basis set and L value. The Contraction Set column identifies which basis set the contraction came from.

The Contraction column in the upper Contraction Set table shows which shell (L value or angular momentum) that particular contraction represents. It also displays the number of functions that contraction has in both an uncontracted and a contracted state. For example, (9s)/[4s] means 9 uncontracted functions or 4 contracted functions for the s shell. Contractions are contracted or uncontracted for computational efficiency. If the Uncontract column is grayed out for a particular basis set/shell, this means that this particular contraction does not have a contracted state, so uncontracting it is not an option.

The bottom, or L, table of the Contraction Editor displays a breakdown of the contractions by L value only. It shows combined total functions for all basis sets. Similar to the above Contraction column, the #Prim column shows the total uncontracted functions for each shell. The #Cont column shows the total contracted functions for each shell.

The L table also allows you to add a number of tight or diffuse functions to add to the contractions for a given shell. You do this by entering a number in the green Tight or Diffuse columns, respectively. The functions are extrapolated from the existing contractions using the algorithms described below. If you want to enter diffuse functions for every L value (which is quite common for Amica input), a shortcut is provided. The Diffuse Functions box to the right of the L table will add the entered number of diffuse functions to every L value in the table.

Tight Functions

The largest two exponents (Emax, Emax-1) for the given element/angular momentum combination are identified, where Emax is the largest and Emax-1 is the second largest. Their ratio is then computed (ratio = Emax/Emax-1). If n is the number of tight functions to add, and i is the current tight function, then for i = 1 to i = n, Ei = ratio^i * Emax. Tight Function i is then added to the configuration with exponent Ei and coefficient 1.0.

Note: Prior to adding a tight function, if only one exponent is available, the tight function will not be calculated.

Diffuse Functions

Appended diffuse functions are calculated similarly to tight functions except for two differences. Instead of picking the largest two exponents to compute the ratio, the smallest two exponents are selected (ratio = Emin/Emin-1), where Emin is the smallest exponent, and Emin-1 is the second smallest exponent.

If only one exponent is present for the given angular momentum (i.e., shell), then the extrapolated diffuse exponent is calculated from the extrapolated diffuse exponents of the two previous shells. For example, if you were trying to add a diffuse function for the D shell, but only one exponent was available, then extrapolated exponents would first be determined for the P and S shells, using the same algorithm described above. The extrapolated diffuse exponent for the D shell would be calculated as follows:

extrapolated_D_exponent = extrapolated_P_exponent ^ 2 / extrapolated_S_exponent.

The actual ratio would then be determined as:

ratio = extrapolated_D_exponent / Emin.

Note: For P or S shells, this extrapolation method would fail because there aren't two lower shells with which to calculate the ratio. In these cases, a diffuse function will not be appended.

If you do not wish to use these calculated values, the extrapolated diffuse or tight exponents may be changed by modifying the input file via the Final Edit button in the Calculation Editor.

Ecce Online Help
Revised: November 4, 2002