|
YAC 3.12.0
Yet Another Coupler
|

Go to the source code of this file.
Functions | |
| int | yac_interp_operator_is_source (struct yac_interp_operator *interp) |
| Checks if the current process holds source data for the interpolation operator. | |
| int | yac_interp_operator_is_target (struct yac_interp_operator *interp) |
| Checks if the current process holds target data for the interpolation operator. | |
| void | yac_interp_operator_execute (struct yac_interp_operator *interp, double ***src_fields, double ***src_frac_masks, double **tgt_field, double frac_mask_fallback_value, double scale_factor, double scale_summand) |
| void | yac_interp_operator_execute_put (struct yac_interp_operator *interp, double ***src_fields, double ***src_frac_masks, int is_target, double frac_mask_fallback_value, double scale_factor, double scale_summand) |
| void | yac_interp_operator_execute_get (struct yac_interp_operator *interp, double **tgt_field, double frac_mask_fallback_value, double scale_factor, double scale_summand) |
| void | yac_interp_operator_execute_get_async (struct yac_interp_operator *interp, double **tgt_field, double frac_mask_fallback_value, double scale_factor, double scale_summand) |
| enum YAC_INTERP_TEST_STATUS | yac_interp_operator_execute_put_test (struct yac_interp_operator *interp) |
| Test whether the put phase has completed. | |
| enum YAC_INTERP_TEST_STATUS | yac_interp_operator_execute_get_test (struct yac_interp_operator *interp) |
| Test whether the get phase has completed. | |
| void | yac_interp_operator_execute_wait (struct yac_interp_operator *interp) |
| Wait for all pending put/get operations to finish. | |
| struct yac_interp_operator * | yac_interp_operator_copy (struct yac_interp_operator *interp) |
| Create a deep copy of the interpolation operator. | |
| void | yac_interp_operator_delete (struct yac_interp_operator *interp) |
| Delete the interpolation operator and free resources. | |
| struct yac_interp_operator * yac_interp_operator_copy | ( | struct yac_interp_operator * | interp | ) |
Create a deep copy of the interpolation operator.
This function produces a new interpolation object with the same internal state as interp. The returned object can be modified or executed independently.
| [in] | interp | Interpolation object to copy. |
Definition at line 67 of file interp_operator.c.

| void yac_interp_operator_delete | ( | struct yac_interp_operator * | interp | ) |
Delete the interpolation operator and free resources.
This function releases all memory and handles associated with the interpolation object. After calling this function, the object must no longer be used.
| [in] | interp | Interpolation object to delete. |
Definition at line 72 of file interp_operator.c.

| void yac_interp_operator_execute | ( | struct yac_interp_operator * | interp, |
| double *** | src_fields, | ||
| double *** | src_frac_masks, | ||
| double ** | tgt_field, | ||
| double | frac_mask_fallback_value, | ||
| double | scale_factor, | ||
| double | scale_summand ) |
Execute interpolation synchronously and write results to target fields.
| [in,out] | interp | Interpolation object. |
| [in] | src_fields | Source field data. dimensions: [collection_idx][field_idx][local_idx] |
| [in] | src_frac_masks | Fractional mask data. dimensions: [collection_idx][field_idx][local_idx] |
| [in,out] | tgt_field | Target field data. dimensions: [collection_idx][local_idx] |
| [in] | frac_mask_fallback_value | Value for targets for which the sum of fractional mask value of associated source points is zero. |
| [in] | scale_factor | Scaling factor for interpolated targets. |
| [in] | scale_summand | Summand added to interpolated targets. |
Definition at line 15 of file interp_operator.c.

| void yac_interp_operator_execute_get | ( | struct yac_interp_operator * | interp, |
| double ** | tgt_field, | ||
| double | frac_mask_fallback_value, | ||
| double | scale_factor, | ||
| double | scale_summand ) |
Complete the get phase synchronously and write results to target fields.
| [in,out] | interp | Interpolation object. |
| [out] | tgt_field | Target field data. dimensions: [collection_idx][local_idx] |
| [in] | frac_mask_fallback_value | Fallback value for fractional masks. |
| [in] | scale_factor | Scaling factor for interpolated targets. |
| [in] | scale_summand | Summand added to interpolated targets. |
Definition at line 35 of file interp_operator.c.

| void yac_interp_operator_execute_get_async | ( | struct yac_interp_operator * | interp, |
| double ** | tgt_field, | ||
| double | frac_mask_fallback_value, | ||
| double | scale_factor, | ||
| double | scale_summand ) |
Execute get phase asynchronously.
| [in,out] | interp | Interpolation object. |
| [out] | tgt_field | Target field data. dimensions: [collection_idx][local_idx] |
| [in] | frac_mask_fallback_value | Fallback value for fractional masks. |
| [in] | scale_factor | Scaling factor for interpolated targets. |
| [in] | scale_summand | Summand added to interpolated targets. |
Definition at line 44 of file interp_operator.c.

| enum YAC_INTERP_TEST_STATUS yac_interp_operator_execute_get_test | ( | struct yac_interp_operator * | interp | ) |
Test whether the get phase has completed.
This function returns the current status of the asynchronous get phase. It does not block; the caller can use it to poll completion before calling execute_wait or accessing the target data.
| [in] | interp | Interpolation object. |
Definition at line 58 of file interp_operator.c.

| void yac_interp_operator_execute_put | ( | struct yac_interp_operator * | interp, |
| double *** | src_fields, | ||
| double *** | src_frac_masks, | ||
| int | is_target, | ||
| double | frac_mask_fallback_value, | ||
| double | scale_factor, | ||
| double | scale_summand ) |
Execute the put phase asynchronously.
| [in,out] | interp | Interpolation object. |
| [in] | src_fields | Source field data. dimensions: [collection_idx][field_idx][local_idx]. |
| [in] | src_frac_masks | Fractional mask data. dimensions: [collection_idx][field_idx][local_idx]. |
| [in] | is_target | Nonzero if process holds target data. |
| [in] | frac_mask_fallback_value | Fallback value for fractional masks. |
| [in] | scale_factor | Scaling factor for interpolated targets. |
| [in] | scale_summand | Summand added to interpolated targets. |
Definition at line 25 of file interp_operator.c.

| enum YAC_INTERP_TEST_STATUS yac_interp_operator_execute_put_test | ( | struct yac_interp_operator * | interp | ) |
Test whether the put phase has completed.
This function returns the current status of the asynchronous put phase. It does not block; the caller can use it to poll completion before calling execute_get or execute_wait.
| [in] | interp | Interpolation object. |
Definition at line 53 of file interp_operator.c.

| void yac_interp_operator_execute_wait | ( | struct yac_interp_operator * | interp | ) |
Wait for all pending put/get operations to finish.
This function blocks until any outstanding asynchronous put and get phases associated with the interpolation object have completed. It ensures the target fields are safe to access.
| [in] | interp | Interpolation object. |
Definition at line 63 of file interp_operator.c.

| int yac_interp_operator_is_source | ( | struct yac_interp_operator * | interp | ) |
Checks if the current process holds source data for the interpolation operator.
This function determines whether the calling process is responsible for providing source data in the context of the given interpolation operator.
| interp | Pointer to the interpolation operator structure. |
Definition at line 7 of file interp_operator.c.

| int yac_interp_operator_is_target | ( | struct yac_interp_operator * | interp | ) |
Checks if the current process holds target data for the interpolation operator.
This function determines whether the calling process is responsible for receiving or processing target data in the context of the given interpolation operator.
| interp | Pointer to the interpolation operator structure. |
Definition at line 11 of file interp_operator.c.
