void BasalGravitationalWaterPotential<EvalT, Traits>:: evaluateFields (typename Traits::EvalData workset) { if (stokes) { const Albany::SideSetList& ssList = *(workset.sideSets); Albany::SideSetList::const_iterator it_ss = ssList.find(basalSideName); if (it_ss==ssList.end()) return; const std::vector<Albany::SideStruct>& sideSet = it_ss->second; std::vector<Albany::SideStruct>::const_iterator iter_s; for (const auto& it : sideSet) { // Get the local data of side and cell const int cell = it.elem_LID; const int side = it.side_local_id; for (int node=0; node<numNodes; ++node) { phi_0 (cell,side,node) = rho_w*g*(z_s(cell,side,node) - H(cell,side,node)); } } } else { for (int cell=0; cell<workset.numCells; ++cell) { for (int node=0; node<numNodes; ++node) { phi_0 (cell,node) = rho_w*g*(z_s(cell,node) - H(cell,node)); } } } }
void EffectivePressure<EvalT, Traits>::evaluateFields (typename Traits::EvalData workset) { if (has_phi) { for (int cell=0; cell < workset.numCells; ++cell) { for (int node=0; node < numNodes; ++node) { N (cell,node) = rho_w*g*(z_s(cell,node)-H(cell,node)) + rho_i*g*H(cell,node) - phi(cell,node); } } } else { } }