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

◆ degree_of_expvector()

template<typename T>
void Monoid::degree_of_expvector ( const T * expvector,
monomial result ) const
inline

Definition at line 293 of file monoid.hpp.

294 {
295 mDegreeMonoid->one(result);
296 monomial mon1 = mDegreeMonoid->make_one();
297 for (int i=0; i<n_vars(); i++)
298 {
299 if (expvector[i] != 0)
300 {
301 mDegreeMonoid->power(mDegreeOfVar[i], expvector[i], mon1);
302 mDegreeMonoid->mult(result, mon1, result);
303 }
304 }
305 mDegreeMonoid->remove(mon1);
306 }
const Monoid * mDegreeMonoid
Definition monoid.hpp:90
int n_vars() const
Definition monoid.hpp:207
gc_vector< const_monomial > mDegreeOfVar
Definition monoid.hpp:113
VALGRIND_MAKE_MEM_DEFINED & result(result)
int * monomial
Definition monoid.hpp:58

References mDegreeMonoid, mDegreeOfVar, n_vars(), result(), and T.

Referenced by ResF4toM2Interface::to_M2_freemodule().