Macaulay2 Engine
Loading...
Searching...
No Matches

◆ DegreeZeroMapGenerator()

DegreeZeroMapGenerator::DegreeZeroMapGenerator ( SchreyerFrame & C,
int slanted_degree,
int lev )
inline

Definition at line 400 of file res-f4-m2-interface.cpp.

401 : mSchreyerFrame(C),
402 mThisLevel(C.level(lev)),
403 mDegree(slanted_degree+lev),
404 mLevel(lev),
405 mNumRows(0),
406 mNumColumns(0)
407 {
408 if (lev <= 0 or lev > C.maxLevel())
409 {
410 return;
411 }
412 int degree = slanted_degree + lev;
413 for (auto p = mThisLevel.begin(); p != mThisLevel.end(); ++p)
414 {
415 if (p->mDegree == degree) mNumColumns++;
416 }
417
418 auto& prevlevel = C.level(lev - 1);
419 mComponentTranslation.resize(prevlevel.size());
420 for (int i = 0; i < prevlevel.size(); i++)
421 {
422 if (prevlevel[i].mDegree == mDegree)
424 else
425 mComponentTranslation[i] = -1;
426 }
427 }
std::vector< SchreyerFrameTypes::FrameElement > & mThisLevel
std::vector< int > mComponentTranslation
std::vector< FrameElement > & level(int lev)
int p

References SchreyerFrame::level(), SchreyerFrame::maxLevel(), mComponentTranslation, mDegree, mLevel, mNumColumns, mNumRows, mSchreyerFrame, mThisLevel, and p.

Referenced by DegreeZeroMapGenerator::iterator::iterator(), and DegreeZeroMapGenerator::iterator::iterator().