ceed-operator.c (f04ea552c0bc984e9734ef5cac4fa0e4550ba0f1) ceed-operator.c (e9b533fb9793b92fee16c1660fbf6414c678b8a7)
1// Copyright (c) 2017, Lawrence Livermore National Security, LLC. Produced at
2// the Lawrence Livermore National Laboratory. LLNL-CODE-734707. All Rights
3// reserved. See files LICENSE and NOTICE for details.
4//
5// This file is part of CEED, a collection of benchmarks, miniapps, software
6// libraries and APIs for efficient high-order finite element and spectral
7// element discretizations for exascale applications. For more information and
8// source code availability see http://github.com/ceed.

--- 833 unchanged lines hidden (view full) ---

842 and sets the CeedOperator as immutable.
843
844 @param op CeedOperator
845 @param[out] input_fields Variable to store input_fields
846 @param[out] output_fields Variable to store output_fields
847
848 @return An error code: 0 - success, otherwise - failure
849
1// Copyright (c) 2017, Lawrence Livermore National Security, LLC. Produced at
2// the Lawrence Livermore National Laboratory. LLNL-CODE-734707. All Rights
3// reserved. See files LICENSE and NOTICE for details.
4//
5// This file is part of CEED, a collection of benchmarks, miniapps, software
6// libraries and APIs for efficient high-order finite element and spectral
7// element discretizations for exascale applications. For more information and
8// source code availability see http://github.com/ceed.

--- 833 unchanged lines hidden (view full) ---

842 and sets the CeedOperator as immutable.
843
844 @param op CeedOperator
845 @param[out] input_fields Variable to store input_fields
846 @param[out] output_fields Variable to store output_fields
847
848 @return An error code: 0 - success, otherwise - failure
849
850 @ref Backend
850 @ref Advanced
851**/
852int CeedOperatorGetFields(CeedOperator op, CeedInt *num_input_fields,
853 CeedOperatorField **input_fields,
854 CeedInt *num_output_fields,
855 CeedOperatorField **output_fields) {
856 int ierr;
857
858 if (op->is_composite)

--- 13 unchanged lines hidden (view full) ---

872/**
873 @brief Get the name of a CeedOperatorField
874
875 @param op_field CeedOperatorField
876 @param[out] field_name Variable to store the field name
877
878 @return An error code: 0 - success, otherwise - failure
879
851**/
852int CeedOperatorGetFields(CeedOperator op, CeedInt *num_input_fields,
853 CeedOperatorField **input_fields,
854 CeedInt *num_output_fields,
855 CeedOperatorField **output_fields) {
856 int ierr;
857
858 if (op->is_composite)

--- 13 unchanged lines hidden (view full) ---

872/**
873 @brief Get the name of a CeedOperatorField
874
875 @param op_field CeedOperatorField
876 @param[out] field_name Variable to store the field name
877
878 @return An error code: 0 - success, otherwise - failure
879
880 @ref Backend
880 @ref Advanced
881**/
882int CeedOperatorFieldGetName(CeedOperatorField op_field, char **field_name) {
883 *field_name = (char *)op_field->field_name;
884 return CEED_ERROR_SUCCESS;
885}
886
887/**
888 @brief Get the CeedElemRestriction of a CeedOperatorField
889
890 @param op_field CeedOperatorField
891 @param[out] rstr Variable to store CeedElemRestriction
892
893 @return An error code: 0 - success, otherwise - failure
894
881**/
882int CeedOperatorFieldGetName(CeedOperatorField op_field, char **field_name) {
883 *field_name = (char *)op_field->field_name;
884 return CEED_ERROR_SUCCESS;
885}
886
887/**
888 @brief Get the CeedElemRestriction of a CeedOperatorField
889
890 @param op_field CeedOperatorField
891 @param[out] rstr Variable to store CeedElemRestriction
892
893 @return An error code: 0 - success, otherwise - failure
894
895 @ref Backend
895 @ref Advanced
896**/
897int CeedOperatorFieldGetElemRestriction(CeedOperatorField op_field,
898 CeedElemRestriction *rstr) {
899 *rstr = op_field->elem_restr;
900 return CEED_ERROR_SUCCESS;
901}
902
903/**
904 @brief Get the CeedBasis of a CeedOperatorField
905
906 @param op_field CeedOperatorField
907 @param[out] basis Variable to store CeedBasis
908
909 @return An error code: 0 - success, otherwise - failure
910
896**/
897int CeedOperatorFieldGetElemRestriction(CeedOperatorField op_field,
898 CeedElemRestriction *rstr) {
899 *rstr = op_field->elem_restr;
900 return CEED_ERROR_SUCCESS;
901}
902
903/**
904 @brief Get the CeedBasis of a CeedOperatorField
905
906 @param op_field CeedOperatorField
907 @param[out] basis Variable to store CeedBasis
908
909 @return An error code: 0 - success, otherwise - failure
910
911 @ref Backend
911 @ref Advanced
912**/
913int CeedOperatorFieldGetBasis(CeedOperatorField op_field, CeedBasis *basis) {
914 *basis = op_field->basis;
915 return CEED_ERROR_SUCCESS;
916}
917
918/**
919 @brief Get the CeedVector of a CeedOperatorField
920
921 @param op_field CeedOperatorField
922 @param[out] vec Variable to store CeedVector
923
924 @return An error code: 0 - success, otherwise - failure
925
912**/
913int CeedOperatorFieldGetBasis(CeedOperatorField op_field, CeedBasis *basis) {
914 *basis = op_field->basis;
915 return CEED_ERROR_SUCCESS;
916}
917
918/**
919 @brief Get the CeedVector of a CeedOperatorField
920
921 @param op_field CeedOperatorField
922 @param[out] vec Variable to store CeedVector
923
924 @return An error code: 0 - success, otherwise - failure
925
926 @ref Backend
926 @ref Advanced
927**/
928int CeedOperatorFieldGetVector(CeedOperatorField op_field, CeedVector *vec) {
929 *vec = op_field->vec;
930 return CEED_ERROR_SUCCESS;
931}
932
933/**
934 @brief Add a sub-operator to a composite CeedOperator

--- 38 unchanged lines hidden (view full) ---

973 field has a collocated basis. This function cannot be used for
974 composite CeedOperators.
975
976 @param op CeedOperator
977 @param num_qpts Number of quadrature points to set
978
979 @return An error code: 0 - success, otherwise - failure
980
927**/
928int CeedOperatorFieldGetVector(CeedOperatorField op_field, CeedVector *vec) {
929 *vec = op_field->vec;
930 return CEED_ERROR_SUCCESS;
931}
932
933/**
934 @brief Add a sub-operator to a composite CeedOperator

--- 38 unchanged lines hidden (view full) ---

973 field has a collocated basis. This function cannot be used for
974 composite CeedOperators.
975
976 @param op CeedOperator
977 @param num_qpts Number of quadrature points to set
978
979 @return An error code: 0 - success, otherwise - failure
980
981 @ref Backend
981 @ref Advanced
982**/
983
984int CeedOperatorSetNumQuadraturePoints(CeedOperator op, CeedInt num_qpts) {
985 if (op->is_composite)
986 // LCOV_EXCL_START
987 return CeedError(op->ceed, CEED_ERROR_MINOR,
988 "Not defined for composite operator");
989 // LCOV_EXCL_STOP

--- 240 unchanged lines hidden ---
982**/
983
984int CeedOperatorSetNumQuadraturePoints(CeedOperator op, CeedInt num_qpts) {
985 if (op->is_composite)
986 // LCOV_EXCL_START
987 return CeedError(op->ceed, CEED_ERROR_MINOR,
988 "Not defined for composite operator");
989 // LCOV_EXCL_STOP

--- 240 unchanged lines hidden ---