TPZIntelGen<TSHAPE>::TPZIntelGen(TPZCompMesh &mesh, TPZGeoEl *gel, int &index) : TPZInterpolatedElement(mesh,gel,index) { int i; fPreferredOrder = mesh.GetDefaultOrder(); for(i=0;i<TSHAPE::NSides-TSHAPE::NCornerNodes;i++) { // fSideOrder[i] = gOrder; } for(i=0; i<TSHAPE::NSides; i++) fConnectIndexes[i]=-1; // RemoveSideRestraintsII(EInsert); gel->SetReference(this); for(i=0;i<TSHAPE::NCornerNodes;i++) { fConnectIndexes[i] = CreateMidSideConnect(i); mesh.ConnectVec()[fConnectIndexes[i]].IncrementElConnected(); } for(;i<TSHAPE::NSides;i++) { fConnectIndexes[i] = CreateMidSideConnect(i); mesh.ConnectVec()[fConnectIndexes[i]].IncrementElConnected(); IdentifySideOrder(i); } int sideorder = SideOrder(TSHAPE::NSides-1); sideorder = 2*sideorder; if (sideorder > fIntRule.GetMaxOrder()) sideorder = fIntRule.GetMaxOrder(); // TPZManVector<int,3> order(3,2*sideorder+2); TPZManVector<int,3> order(3,sideorder); //TPZManVector<int,3> order(3,20); fIntRule.SetOrder(order); }
TPZCompElHDivFull<TSHAPE>::TPZCompElHDivFull(TPZCompMesh &mesh, TPZGeoEl *gel, int64_t &index) : TPZRegisterClassId(&TPZCompElHDivFull::ClassId), TPZCompElHDiv<TSHAPE>(mesh,gel,index) { int i; int nconflux= TPZCompElHDiv<TSHAPE>::NConnects(); this->fConnectIndexes.Resize(nconflux); gel->SetReference(this); for(i=0;i< nconflux;i++) { int sideaux= i + TSHAPE::NCornerNodes; this->fConnectIndexes[i] = this->CreateMidSideConnect(sideaux); #ifdef LOG4CXX if (logger->isDebugEnabled()) { std::stringstream sout; sout << "After creating last flux connect " << i << std::endl; // this->Print(sout); LOGPZ_DEBUG(logger,sout.str()) } #endif mesh.ConnectVec()[this->fConnectIndexes[i]].IncrementElConnected(); this->IdentifySideOrder(sideaux); }