Basic operations (3D)
ndsl.stencil offers the following basic operations as building blocks in 3D:
add(summand_1, summand_2, sum)
Add two inputs together, sum to a new field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
summand_1
|
FloatField
|
input field |
required |
summand_2
|
FloatField
|
input field |
required |
sum
|
FloatField
|
output field |
required |
add_to_self(field, summand)
Add a summand to a field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
field
|
FloatField
|
field to be modified |
required |
summand
|
FloatField
|
modification to be made |
required |
average_input(q_out, adjustment)
Averages every element of q_out with every element of the adjustment field, overwriting q_out.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
adjustment
|
FloatField
|
adjustment field |
required |
q_out
|
FloatField
|
output field |
required |
copy(input, output)
Copy one field into another.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
input
|
FloatField
|
input field |
required |
output
|
FloatField
|
output field |
required |
divide(dividend, divisor, quotient)
Divide dividend by divisor, output to a new field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dividend
|
FloatField
|
input field |
required |
divisor
|
FloatField
|
input field |
required |
quotient
|
FloatField
|
output field |
required |
divide_self(field, divisor)
Divide a field by a divisor.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
field
|
FloatField
|
field to be modified |
required |
divisor
|
FloatField
|
modification factor |
required |
multiply(factor_1, factor_2, product)
Multiply two inputs together, output to a new field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
factor_1
|
FloatField
|
input field |
required |
factor_2
|
FloatField
|
input field |
required |
product
|
FloatField
|
output field |
required |
multiply_to_self(field, factor)
Multiply a field by a factor.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
field
|
FloatField
|
field to be modified |
required |
factor
|
FloatField
|
modification factor |
required |
select_k_from_field(in_field, out_field, k_select)
Saves a specific k-index of a 3D field to a new 2D array. The k-value can be different for each i,j point.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
in_field
|
FloatField
|
A 3D array to select from |
required |
out_field
|
FloatFieldIJ
|
A 2D field to save values in |
required |
k_select
|
IntFieldIJ
|
the k-value to extract from in_field |
required |
set_value(field, value)
Sets every element of a field to a single value.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
field
|
FloatField
|
output field |
required |
value
|
Float
|
value of Float type |
required |
subtract(minuend, subtrahend, difference)
Subtract subtrahend from minuend, output to a new field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
minuend
|
FloatField
|
input field |
required |
subtrahend
|
FloatField
|
input field |
required |
difference
|
FloatField
|
output field |
required |
subtract_from_self(field, subtrahend)
Subtract a subtrahend from a field.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
field
|
FloatField
|
field to be modified |
required |
subtrahend
|
FloatField
|
modification to be made |
required |