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

◆ IM2_FreeModule_get_degrees()

M2_arrayint IM2_FreeModule_get_degrees ( const FreeModule * F)

Definition at line 87 of file freemodule.cpp.

88{
89 auto D = F->get_ring()->degree_monoid();
90 auto n = D->n_vars();
91 auto r = F->rank();
93 for (int i = 0; i < r; i++)
94 D->to_expvector(F->degree(i), result->array + i * n);
95 return result;
96}
const Ring * get_ring() const
Definition freemod.hpp:102
const_monomial degree(int i) const
Definition freemod.hpp:104
int rank() const
Definition freemod.hpp:105
int n_vars() const
Definition monoid.hpp:207
const Monoid * degree_monoid() const
Definition ring.cpp:13
VALGRIND_MAKE_MEM_DEFINED & result(result)
M2_arrayint M2_makearrayint(int n)
Definition m2-types.cpp:6

References FreeModule::degree(), Ring::degree_monoid(), FreeModule::get_ring(), M2_makearrayint(), Monoid::n_vars(), FreeModule::rank(), and result().