Open bsrunnels opened 4 years ago
Yes, I think it's doable. I will give it a try next week.
I'm looking into implementing this now. I believe templating these functions would require moving the definitions into the header file and inlining them. Are there any issues with doing that?
I have actually started this. I need to do more testing before merging.
Oh, ok great. What branch are you working on? I can start toying with integrating now - can also help with testing if that would be useful.
I am currently trying to figure out why in some places template deduction fails.
I have a meeting this morning. I will try to push it this afternoon for you to test.
Could you try weiqun/dev
branch?
Working on it now. Will let you know. Thanks!
Many of the utility functions used for regridding in
AMReX_FillPatchUtil.cpp
(InterpFromCoarseLevel
,InterpFromCoarseLevel
, etc) are implemented forMultiFab
s. We fairly extensively useFabArray
s ofBaseFab<T>
for a variety ofT
types (vectors, material models, etc., all of which have the appropriate arithmetic operators.)However, without the Fill Patch routines, all of our custom
FabArray
s currently have to be torn down and rebuilt from scratch after every regridding step. Would it be possible to extend the currentFillPatchUtil
utilities so that they are templated for anyFabArray<BaseFab<T>>
instead of justMultiFab
s?(Or is there another way to do this that I'm not thinking of?)