Skip to content

Commit 833b2c4

Browse files
committed
remove degas2xgc c/fortran API
Since XGC won't have osh file in real life, it is pointless for now.
1 parent 0f09569 commit 833b2c4

File tree

5 files changed

+2
-138
lines changed

5 files changed

+2
-138
lines changed

src/pcms/capi/interpolator.cpp

Lines changed: 2 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -34,57 +34,6 @@ PcmsInterpolatorHandle pcms_create_point_based_interpolator(
3434
return {reinterpret_cast<void*>(interpolator)};
3535
}
3636

37-
PcmsInterpolatorHandle pcms_create_degas2xgc_interpolator(
38-
const char* xgc_mesh_filename, const char* dg2_mesh_filename, double radius,
39-
int degree, int min_req_supports, double lambda, double decay_factor)
40-
{
41-
// use the xgc_mesh_nodes as source points and
42-
// dg2 element centroids as target points
43-
// then, create a point based interpolator like above
44-
auto xgc_fname = std::string(xgc_mesh_filename);
45-
auto dg2_fname = std::string(dg2_mesh_filename);
46-
47-
// trim the filenames since they are coming from c or fortran api which may
48-
// have extra spaces at the end
49-
xgc_fname = xgc_fname.erase(xgc_fname.find_last_not_of(" \n\r\t") + 1);
50-
dg2_fname = dg2_fname.erase(dg2_fname.find_last_not_of(" \n\r\t") + 1);
51-
pcms::printInfo(
52-
"The interpolator got xgc mesh file: %s and dg2 mesh file: %s\n",
53-
xgc_fname.c_str(), dg2_fname.c_str());
54-
55-
// read the meshes
56-
auto xgc_mesh_lib = Omega_h::Library(nullptr, nullptr, MPI_COMM_SELF);
57-
auto xgc_mesh = Omega_h::binary::read(xgc_fname, xgc_mesh_lib.world());
58-
auto dg2_mesh_lib = Omega_h::Library(nullptr, nullptr, MPI_COMM_SELF);
59-
auto dg2_mesh = Omega_h::binary::read(dg2_fname, dg2_mesh_lib.world());
60-
61-
auto xgc_nodes = xgc_mesh.coords();
62-
auto xgc_num_nodes = xgc_mesh.nverts();
63-
OMEGA_H_CHECK_PRINTF(xgc_mesh.dim() == 2, "XGC mesh dimension is not 2D %d\n",
64-
xgc_mesh.dim());
65-
OMEGA_H_CHECK_PRINTF(
66-
xgc_num_nodes * 2 == xgc_nodes.size(),
67-
"XGC mesh nodes size does not match the number of vertices %d != %d\n",
68-
xgc_num_nodes * 2, xgc_nodes.size());
69-
OMEGA_H_CHECK_PRINTF(dg2_mesh.dim() == 2, "DG2 mesh dimension is not 2D %d\n",
70-
dg2_mesh.dim());
71-
72-
auto dg2_num_elems = dg2_mesh.nelems();
73-
auto dg2_elem_centroids = getCentroids(dg2_mesh);
74-
OMEGA_H_CHECK_PRINTF(dg2_num_elems * 2 == dg2_elem_centroids.size(),
75-
"DG2 mesh element centroids size does not match the "
76-
"number of elements %d != %d\n",
77-
dg2_num_elems * 2, dg2_elem_centroids.size());
78-
79-
Omega_h::HostRead<Omega_h::Real> xgc_nodes_host(xgc_nodes);
80-
Omega_h::HostRead<Omega_h::Real> dg2_elem_centroids_host(dg2_elem_centroids);
81-
82-
return pcms_create_point_based_interpolator(
83-
(void*)dg2_elem_centroids_host.data(), dg2_elem_centroids.size(),
84-
(void*)xgc_nodes_host.data(), xgc_nodes.size(), radius, degree,
85-
min_req_supports, lambda, decay_factor);
86-
}
87-
8837
Omega_h::HostRead<Omega_h::Real> read_mesh_centroids(const char* mesh_filename,
8938
int& num_elements)
9039
{
@@ -128,7 +77,7 @@ PcmsInterpolatorHandle pcms_create_degas2xgcnode_interpolator(
12877
// available
12978

13079
int dg2_num_elems = 0;
131-
auto dg2_elem_centroids_host =
80+
Omega_h::HostRead<Omega_h::Real> dg2_elem_centroids_host =
13281
read_mesh_centroids(dg2_mesh_filename, dg2_num_elems);
13382
write_void_int_pointer(dg2_elem_count, dg2_num_elems);
13483

@@ -144,7 +93,7 @@ PcmsInterpolatorHandle pcms_create_xgcnodedegas2_interpolator(
14493
double lambda, double decay_factor)
14594
{
14695
int dg2_num_elems = 0;
147-
auto dg2_elem_centroids_host =
96+
Omega_h::HostRead<Omega_h::Real> dg2_elem_centroids_host =
14897
read_mesh_centroids(dg2_mesh_filename, dg2_num_elems);
14998
write_void_int_pointer(dg2_elem_count, dg2_num_elems);
15099

src/pcms/capi/interpolator.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,6 @@ PcmsInterpolatorHandle pcms_create_point_based_interpolator(
3434
void* source_points, int source_points_size, void* target_points,
3535
int target_points_size, double radius, int degree, int min_req_supports,
3636
double lambda, double decay_factor);
37-
PcmsInterpolatorHandle pcms_create_degas2xgc_interpolator(
38-
const char* xgc_mesh_filename, const char* dg2_mesh_filename, double radius,
39-
int degree, int min_req_supports, double lambda, double decay_factor);
4037
PcmsInterpolatorHandle pcms_create_degas2xgcnode_interpolator(
4138
void* target_points, int target_points_size, const char* dg2_mesh_filename,
4239
double radius, void* dg2_elem_count, int degree, int min_req_supports,

src/pcms/fortranapi/interpolator.i

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ typedef struct PcmsInterpolatorHandle PcmsInterpolatorHandle;
2323

2424
PcmsInterpolatorHandle pcms_create_point_based_interpolator(void* source_points, int source_points_size,
2525
void* target_points, int target_points_size, double radius, int degree, int min_req_supports, double lambda, double decay_factor);
26-
PcmsInterpolatorHandle pcms_create_degas2xgc_interpolator(const char* xgc_mesh_filename, const char* dg2_mesh_filename, double radius, int degree, int min_req_supports, double lambda, double decay_factor);
2726
PcmsInterpolatorHandle pcms_create_degas2xgcnode_interpolator(void* target_points, int target_points_size,
2827
const char* dg2_mesh_filename, double radius, void* dg2_elem_count, int degree, int min_req_supports, double lambda, double decay_factor);
2928
PcmsInterpolatorHandle pcms_create_xgcnodedegas2_interpolator(const char* dg2_mesh_filename, void* source_points, int source_points_size,

src/pcms/fortranapi/interpolator_wrap.c

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -498,36 +498,6 @@ SWIGEXPORT SwigClassWrapper _wrap_pcms_create_point_based_interpolator(
498498
return fresult;
499499
}
500500

501-
SWIGEXPORT SwigClassWrapper _wrap_pcms_create_degas2xgc_interpolator(
502-
SwigArrayWrapper* farg1, SwigArrayWrapper* farg2, double const* farg3,
503-
int const* farg4, int const* farg5, double const* farg6, double const* farg7)
504-
{
505-
SwigClassWrapper fresult;
506-
char* arg1 = (char*)0;
507-
char* arg2 = (char*)0;
508-
double arg3;
509-
int arg4;
510-
int arg5;
511-
double arg6;
512-
double arg7;
513-
PcmsInterpolatorHandle result;
514-
515-
arg1 = (char*)(farg1->data);
516-
arg2 = (char*)(farg2->data);
517-
arg3 = (double)(*farg3);
518-
arg4 = (int)(*farg4);
519-
arg5 = (int)(*farg5);
520-
arg6 = (double)(*farg6);
521-
arg7 = (double)(*farg7);
522-
result = pcms_create_degas2xgc_interpolator(
523-
(char const*)arg1, (char const*)arg2, arg3, arg4, arg5, arg6, arg7);
524-
fresult.cptr = (PcmsInterpolatorHandle*)memcpy(
525-
(PcmsInterpolatorHandle*)calloc(1, sizeof(PcmsInterpolatorHandle)), &result,
526-
sizeof(PcmsInterpolatorHandle));
527-
fresult.cmemflags = SWIG_MEM_RVALUE | SWIG_MEM_OWN;
528-
return fresult;
529-
}
530-
531501
SWIGEXPORT SwigClassWrapper _wrap_pcms_create_degas2xgcnode_interpolator(
532502
void const** farg1, int const* farg2, SwigArrayWrapper* farg3,
533503
double const* farg4, void const** farg5, int const* farg6, int const* farg7,

src/pcms/fortranapi/pcms_interpolator.f90

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ module pcms_interpolator
4343
type(C_PTR), public :: data = C_NULL_PTR
4444
integer(C_SIZE_T), public :: size = 0
4545
end type
46-
public :: pcms_create_degas2xgc_interpolator
4746
public :: pcms_create_degas2xgcnode_interpolator
4847
public :: pcms_create_xgcnodedegas2_interpolator
4948
public :: pcms_create_interpolator
@@ -176,22 +175,6 @@ function swigc_pcms_create_point_based_interpolator(farg1, farg2, farg3, farg4,
176175
type(SwigClassWrapper) :: fresult
177176
end function
178177

179-
function swigc_pcms_create_degas2xgc_interpolator(farg1, farg2, farg3, farg4, farg5, farg6, farg7) &
180-
bind(C, name="_wrap_pcms_create_degas2xgc_interpolator") &
181-
result(fresult)
182-
use, intrinsic :: ISO_C_BINDING
183-
import :: swigarraywrapper
184-
import :: swigclasswrapper
185-
type(SwigArrayWrapper) :: farg1
186-
type(SwigArrayWrapper) :: farg2
187-
real(C_DOUBLE), intent(in) :: farg3
188-
integer(C_INT), intent(in) :: farg4
189-
integer(C_INT), intent(in) :: farg5
190-
real(C_DOUBLE), intent(in) :: farg6
191-
real(C_DOUBLE), intent(in) :: farg7
192-
type(SwigClassWrapper) :: fresult
193-
end function
194-
195178
function swigc_pcms_create_degas2xgcnode_interpolator(farg1, farg2, farg3, farg4, farg5, farg6, farg7, farg8, farg9) &
196179
bind(C, name="_wrap_pcms_create_degas2xgcnode_interpolator") &
197180
result(fresult)
@@ -493,40 +476,6 @@ subroutine SWIGTM_fin_char_Sm_(finp, iminp, temp)
493476
iminp%size = len(finp, kind=C_SIZE_T)
494477
end subroutine
495478

496-
function pcms_create_degas2xgc_interpolator(xgc_mesh_filename, dg2_mesh_filename, radius, degree, min_req_supports, lambda, &
497-
decay_factor) &
498-
result(swig_result)
499-
use, intrinsic :: ISO_C_BINDING
500-
type(PcmsInterpolatorHandle) :: swig_result
501-
character(len=*), intent(in) :: xgc_mesh_filename
502-
character(len=*), intent(in) :: dg2_mesh_filename
503-
real(C_DOUBLE), intent(in) :: radius
504-
integer(C_INT), intent(in) :: degree
505-
integer(C_INT), intent(in) :: min_req_supports
506-
real(C_DOUBLE), intent(in) :: lambda
507-
real(C_DOUBLE), intent(in) :: decay_factor
508-
type(SwigClassWrapper) :: fresult
509-
character(kind=C_CHAR), dimension(:), allocatable, target :: farg1_temp
510-
type(SwigArrayWrapper) :: farg1
511-
character(kind=C_CHAR), dimension(:), allocatable, target :: farg2_temp
512-
type(SwigArrayWrapper) :: farg2
513-
real(C_DOUBLE) :: farg3
514-
integer(C_INT) :: farg4
515-
integer(C_INT) :: farg5
516-
real(C_DOUBLE) :: farg6
517-
real(C_DOUBLE) :: farg7
518-
519-
call SWIGTM_fin_char_Sm_(xgc_mesh_filename, farg1, farg1_temp)
520-
call SWIGTM_fin_char_Sm_(dg2_mesh_filename, farg2, farg2_temp)
521-
farg3 = radius
522-
farg4 = degree
523-
farg5 = min_req_supports
524-
farg6 = lambda
525-
farg7 = decay_factor
526-
fresult = swigc_pcms_create_degas2xgc_interpolator(farg1, farg2, farg3, farg4, farg5, farg6, farg7)
527-
swig_result%swigdata = fresult
528-
end function
529-
530479
function pcms_create_degas2xgcnode_interpolator(target_points, target_points_size, dg2_mesh_filename, radius, dg2_elem_count, &
531480
degree, min_req_supports, lambda, decay_factor) &
532481
result(swig_result)

0 commit comments

Comments
 (0)