S-function evaluator with batch evaluation support.
More...
#include <sfunction_evaluator.h>
S-function evaluator with batch evaluation support.
Wraps existing S-function logic and adds:
- Batch evaluation for multiple terms
- Coordinate system caching
- Binomial coefficient caching
◆ SFunctionEvaluator()
| occ::mults::SFunctionEvaluator::SFunctionEvaluator |
( |
int | max_rank = 4 | ) |
|
|
explicit |
◆ compute()
| SFunctionResult occ::mults::SFunctionEvaluator::compute |
( |
int | t1, |
|
|
int | t2, |
|
|
int | j, |
|
|
int | deriv_level = 0 ) |
Compute single S-function.
- Parameters
-
| t1 | Multipole index for site A |
| t2 | Multipole index for site B |
| j | Combined rank parameter |
| deriv_level | Derivative level (0=value only, 1=first derivs) |
- Returns
- S-function result
◆ compute_batch()
Batch evaluate S-functions from term list.
- Parameters
-
| term_list | Pre-filtered list of terms |
| deriv_level | Derivative level |
- Returns
- Vector of results (same size and order as term_list.terms)
◆ coordinates()
◆ index_to_lm()
| std::pair< int, int > occ::mults::SFunctionEvaluator::index_to_lm |
( |
int | index | ) |
|
|
static |
◆ lm_to_index()
| int occ::mults::SFunctionEvaluator::lm_to_index |
( |
int | l, |
|
|
int | m ) |
|
static |
◆ max_rank()
| int occ::mults::SFunctionEvaluator::max_rank |
( |
| ) |
const |
|
inline |
◆ r()
| double occ::mults::SFunctionEvaluator::r |
( |
| ) |
const |
|
inline |
◆ set_coordinate_system()
| void occ::mults::SFunctionEvaluator::set_coordinate_system |
( |
const CoordinateSystem & | coords | ) |
|
Set coordinate system directly (for body-frame S-functions).
- Parameters
-
| coords | Pre-computed coordinate system with body-frame unit vectors |
◆ set_coordinates()
| void occ::mults::SFunctionEvaluator::set_coordinates |
( |
const Vec3 & | ra, |
|
|
const Vec3 & | rb ) |
Set coordinate system for subsequent evaluations.
- Parameters
-
| ra | Position of site A |
| rb | Position of site B |
The documentation for this class was generated from the following file: