mirror of
https://github.com/openmc-dev/openmc.git
synced 2026-07-27 21:55:41 -04:00
Add init methods (with order) for capi expansion filters
This commit is contained in:
parent
609877e131
commit
7c01594111
3 changed files with 23 additions and 2 deletions
|
|
@ -32,7 +32,7 @@ extern "C" {
|
|||
int openmc_extend_sources(int32_t n, int32_t* index_start, int32_t* index_end);
|
||||
int openmc_extend_tallies(int32_t n, int32_t* index_start, int32_t* index_end);
|
||||
int openmc_filter_get_id(int32_t index, int32_t* id);
|
||||
int openmc_filter_get_type(int32_t index, const char* type);
|
||||
int openmc_filter_get_type(int32_t index, char* type);
|
||||
int openmc_filter_set_id(int32_t index, int32_t id);
|
||||
int openmc_filter_set_type(int32_t index, const char* type);
|
||||
int openmc_finalize();
|
||||
|
|
|
|||
|
|
@ -209,6 +209,11 @@ class EnergyFunctionFilter(Filter):
|
|||
class LegendreFilter(Filter):
|
||||
filter_type = 'legendre'
|
||||
|
||||
def __init__(self, order=None, uid=None, new=True, index=None):
|
||||
super().__init__(uid, new, index)
|
||||
if order is not None:
|
||||
self.order = order
|
||||
|
||||
@property
|
||||
def order(self):
|
||||
temp_order = c_int()
|
||||
|
|
@ -293,6 +298,11 @@ class PolarFilter(Filter):
|
|||
class SphericalHarmonicsFilter(Filter):
|
||||
filter_type = 'sphericalharmonics'
|
||||
|
||||
def __init__(self, order=None, uid=None, new=True, index=None):
|
||||
super().__init__(uid, new, index)
|
||||
if order is not None:
|
||||
self.order = order
|
||||
|
||||
@property
|
||||
def order(self):
|
||||
temp_order = c_int()
|
||||
|
|
@ -307,6 +317,11 @@ class SphericalHarmonicsFilter(Filter):
|
|||
class SpatialLegendreFilter(Filter):
|
||||
filter_type = 'spatiallegendre'
|
||||
|
||||
def __init__(self, order=None, uid=None, new=True, index=None):
|
||||
super().__init__(uid, new, index)
|
||||
if order is not None:
|
||||
self.order = order
|
||||
|
||||
@property
|
||||
def order(self):
|
||||
temp_order = c_int()
|
||||
|
|
@ -329,6 +344,11 @@ class UniverseFilter(Filter):
|
|||
class ZernikeFilter(Filter):
|
||||
filter_type = 'zernike'
|
||||
|
||||
def __init__(self, order=None, uid=None, new=True, index=None):
|
||||
super().__init__(uid, new, index)
|
||||
if order is not None:
|
||||
self.order = order
|
||||
|
||||
@property
|
||||
def order(self):
|
||||
temp_order = c_int()
|
||||
|
|
|
|||
|
|
@ -205,7 +205,8 @@ def test_tally_results(capi_run):
|
|||
assert np.all(t.ci_width()[nonzero] >= 1.95*t.std_dev[nonzero])
|
||||
|
||||
t2 = openmc.capi.tallies[2]
|
||||
assert t2.mean.size == 63 # 21 coefficients for 5th order Zernike * 3 cells
|
||||
n = 5
|
||||
assert t2.mean.size == (n + 1) * (n + 2) // 2 * 3 # Number of Zernike coeffs * 3 cells
|
||||
|
||||
|
||||
def test_global_tallies(capi_run):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue