Condizioni per gli operatori
Questo modulo raccoglie le routine che agiscono sui singoli termini di un operatore, suddividendoli in base alla loro struttura. I sottomoduli riportati di seguito raggruppano le funzionalità correlate.
Raggruppamento
Si prega di fare riferimento ai termini relativi agli operatori di gruppo: utilizzare la struttura degli operatori per una spiegazione dettagliata delle funzionalità di questo modulo.
Membri
Anziché affidarsi sempre all'utente per l'inserimento degli indici di raggruppamento, questo modulo offre una serie di funzioni che determinano automaticamente le informazioni relative al raggruppamento.
group_terms_by_electronic_structure(op,...) | Raggruppa i termini di un operatore in base alla loro struttura elettronica. |
Filtro
Questo modulo fornisce funzioni di utilità per rimuovere da un operatore i termini che non contribuiscono in modo significativo al calcolo successivo.
Membri
filter_diagonal_terms(op) | Esclude i termini di un operatore che sono diagonali nella base dei numeri di occupazione. |
Ordinamento
Questo modulo fornisce funzioni per riorganizzare i termini di un operatore. Sebbene gli operatori risultanti siano matematicamente identici, l'ordine dei termini può avere implicazioni significative sul comportamento dell'algoritmo in fase di esecuzione, a causa dell'ordine di iterazione dei termini.
A differenza di canonical_order(), non order_terms() ha alcun equivalente nell'API C.
Membri
canonical_order(op) | Restituisce una copia di un operatore con i suoi termini ordinati secondo un ordine canonico. |
order_terms(op, chiave, *[, inverso] ) | Restituisce una copia di un operatore con i suoi termini riordinati in base a una chiave specificata dall'utente. |