MCPcopy Create free account
hub / github.com/AMReX-Astro/Castro / FaceValue

Function FaceValue

Source/radiation/HypreExtMultiABec.cpp:118–146  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

116}
117
118static void
119FaceValue(AuxVarBox& evalue, AuxVarBox& cintrp,
120 const Mask& msk, const Box& reg,
121 const IntVect& vin, int r, int bho, int flevel)
122{
123 if (bho == 1) {
124 Real efacb = 3.0 / ((1 + r) * (3 + r));
125 Real efac1 = ( 1.5 * r) / (1 + r);
126 Real efac2 = (-0.5 * r) / (3 + r);
127 IntVect vi2 = 2 * vin;
128 for (IntVect v = reg.smallEnd(); v <= reg.bigEnd(); reg.next(v)) {
129 if (msk(v) == RadBndryData::not_covered) {
130 evalue(v).push(&cintrp(v), efacb);
131 evalue(v).push(flevel, v-vin, efac1);
132 evalue(v).push(flevel, v-vi2, efac2);
133 }
134 }
135 }
136 else {
137 Real efacb = 1.0 / (1 + r);
138 Real efac1 = r / (1.0 + r);
139 for (IntVect v = reg.smallEnd(); v <= reg.bigEnd(); reg.next(v)) {
140 if (msk(v) == RadBndryData::not_covered) {
141 evalue(v).push(&cintrp(v), efacb);
142 evalue(v).push(flevel, v-vin, efac1);
143 }
144 }
145 }
146}
147
148void HypreExtMultiABec::loadMatrix()
149{

Callers 1

loadMatrixMethod · 0.85

Calls 1

pushMethod · 0.80

Tested by

no test coverage detected