Skip to content

Commit df024a9

Browse files
committed
iMultiFab
1 parent 63dbf81 commit df024a9

File tree

3 files changed

+27
-0
lines changed

3 files changed

+27
-0
lines changed

src/Base/CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ foreach(D IN LISTS AMReX_SPACEDIM)
2323
FabArray.cpp
2424
FArrayBox.cpp
2525
Geometry.cpp
26+
iMultiFab.cpp
2627
IndexType.cpp
2728
IntVect.cpp
2829
RealVect.cpp

src/Base/iMultiFab.cpp

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/* Copyright 2021-2022 The AMReX Community
2+
*
3+
* Authors: Axel Huebl
4+
* License: BSD-3-Clause-LBNL
5+
*/
6+
#include "pyAMReX.H"
7+
#include "MultiFab.H"
8+
9+
#include <AMReX_FabArray.H>
10+
#include <AMReX_IArrayBox.H>
11+
#include <AMReX_iMultiFab.H>
12+
13+
14+
void init_iMultiFab(py::module &m)
15+
{
16+
using namespace amrex;
17+
18+
py::class_< iMultiFab, FabArray<IArrayBox> > py_iMultiFab(m, "iMultiFab");
19+
make_MultiFab(py_iMultiFab, "iMultiFab");
20+
21+
m.def("copy_mfab", py::overload_cast< iMultiFab &, iMultiFab const &, int, int, int, int >(&iMultiFab::Copy), py::arg("dst"), py::arg("src"), py::arg("srccomp"), py::arg("dstcomp"), py::arg("numcomp"), py::arg("nghost"))
22+
.def("copy_mfab", py::overload_cast< iMultiFab &, iMultiFab const &, int, int, int, IntVect const & >(&iMultiFab::Copy), py::arg("dst"), py::arg("src"), py::arg("srccomp"), py::arg("dstcomp"), py::arg("numcomp"), py::arg("nghost"));
23+
}

src/pyAMReX.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ void init_DistributionMapping(py::module&);
2828
void init_FabArray(py::module &);
2929
void init_FArrayBox(py::module&);
3030
void init_Geometry(py::module&);
31+
void init_iMultiFab(py::module&);
3132
void init_IndexType(py::module &);
3233
void init_IntVect(py::module &);
3334
void init_MFInfo(py::module &);
@@ -73,6 +74,7 @@ PYBIND11_MODULE(amrex_3d_pybind, m) {
7374
BoxArray
7475
Dim3
7576
FArrayBox
77+
iMultiFab
7678
IntVect
7779
IndexType
7880
RealVect
@@ -119,6 +121,7 @@ PYBIND11_MODULE(amrex_3d_pybind, m) {
119121
py::class_< amrex::MFIter > py_MFIter(m, "MFIter", py::dynamic_attr());
120122
init_FabArray(m);
121123
init_MFInfo(m);
124+
init_iMultiFab(m);
122125
init_MultiFab(m, py_MFIter);
123126
init_ParallelDescriptor(m);
124127
init_PODVector(m);

0 commit comments

Comments
 (0)