GPAW Descriptor Interface

The GPAW descriptor interface evaluates semilocal or version-J NLDF features on the fixed density and orbitals of a completed classic GPAW plane-wave calculation. It combines uniform-grid values with the matching PAW all-electron-minus-pseudo contributions and uses the electronic state retained by the calculator.

ciderpress.gpaw.descriptors.get_descriptors(calc, settings, p_i=None, use_paw=True, screen_dens=True, **kwargs)

Evaluate one feature-settings component on a converged GPAW calculator.

calc must retain its density, wavefunctions, PAW setups, and grid distribution. settings is a semilocal or NLDF settings object, or the string "l" for the raw density/gradient/kinetic-energy-density vector. The documented GPAW descriptor settings are semilocal and version-J NLDF.

With p_i=None, the return value is (features, weights). features has shape (nspin, nfeature, npoint) and weights has shape (npoint,). When p_i is provided, the return value is (features, feature_derivatives, weights); feature_derivatives has shape (norbital, nfeature, npoint). When provided, p_i is a list of orbital/band indexes, where each index is a zero-based (spin, kpoint, band) tuple.

use_paw=True includes the atomic all-electron correction used by the supported PAW calculation path. screen_dens=True removes very-low-density uniform-grid points before returning arrays. Keyword arguments such as qmax and lambd select the same NLDF numerical representation used by a CIDER calculation.

Using settings from a packaged model

Feature order and normalization belong to the model. Load its serialized component settings to preserve the exact feature definition:

from ciderpress.dft.model_utils import load_cider_model
from ciderpress.gpaw.descriptors import get_descriptors

model = load_cider_model("CIDER26XCSURFSCI")

sl_features, sl_weights = get_descriptors(
    calc,
    model.settings.sl_settings,
    use_paw=True,
)
nldf_features, nldf_weights = get_descriptors(
    calc,
    model.settings.nldf_settings,
    use_paw=True,
    qmax=300,
    lambd=1.8,
)

The two calls describe the same retained electronic state and return independent point lists. A workflow that combines them must align the weights, screening convention, and model feature order.

Occupation derivatives

Supplying p_i evaluates derivatives with respect to the selected orbital occupations. The routine constructs both the smooth-grid density response and the PAW atomic density-matrix response, then applies the descriptor forward/adjoint machinery at fixed orbitals. The orbital indices, k-point distribution, spin convention, occupations, and NLDF numerical settings define the returned derivative arrays.

This interface serves inspection and training-data construction. Its occupation derivatives hold the orbitals fixed; a self-consistent energy is obtained through the calculator interface.

See Inspecting Densities and Descriptors for the cross-backend workflow and GPAW FFT, PAW, and Radial Implementation for the GPAW/PASDW implementation.