Definition at line 919 of file matpol.cc.
◆ mp_permmatrix() [1/3]
mp_permmatrix::mp_permmatrix |
( |
| ) |
|
|
inline |
◆ mp_permmatrix() [2/3]
mp_permmatrix::mp_permmatrix |
( |
matrix | A, |
|
|
ring | R ) |
◆ mp_permmatrix() [3/3]
Definition at line 966 of file matpol.cc.
967{
970
978 {
982 {
985 {
987 }
988 }
989 }
990}
static poly p_Copy(poly p, const ring r)
returns a copy of p
◆ ~mp_permmatrix()
mp_permmatrix::~mp_permmatrix |
( |
| ) |
|
Definition at line 992 of file matpol.cc.
993{
995
997 {
1001 {
1005 }
1006 }
1007}
#define omFreeSize(addr, size)
static void p_Delete(poly *p, const ring r)
◆ mpColAdr()
poly * mp_permmatrix::mpColAdr |
( |
int | c | ) |
|
|
inlineprivate |
◆ mpColReorder()
void mp_permmatrix::mpColReorder |
( |
| ) |
|
Definition at line 1092 of file matpol.cc.
1093{
1095
1098 else
1101 {
1104 {
1106 j2 = 0;
1107 while (
qcol[j2] !=
j) j2++;
1109 }
1110 }
1111}
◆ mpColSwap()
void mp_permmatrix::mpColSwap |
( |
int | j1, |
|
|
int | j2 ) |
|
private |
Definition at line 1065 of file matpol.cc.
1066{
1069
1073 {
1077 }
1078}
◆ mpColWeight()
void mp_permmatrix::mpColWeight |
( |
float * | wcol | ) |
|
|
private |
Definition at line 1011 of file matpol.cc.
1012{
1016
1018 {
1022 {
1026 }
1028 }
1029}
static float mp_PolyWeight(poly p, const ring r)
int status int void size_t count
◆ mpDelElem()
void mp_permmatrix::mpDelElem |
( |
int | , |
|
|
int | ) |
◆ mpElimBareiss()
void mp_permmatrix::mpElimBareiss |
( |
poly | div | ) |
|
Definition at line 1238 of file matpol.cc.
1239{
1240 poly piv, elim, q1, q2, *ap, *a;
1242
1246 {
1250 {
1253 {
1257 {
1260 {
1264 }
1265 }
1266 else if (a[jj] !=
NULL)
1267 {
1269 }
1272 a[jj] = q2;
1273 }
1275 }
1276 else
1277 {
1279 {
1282 {
1287 a[jj] = q2;
1288 }
1289 }
1290 }
1291 }
1292}
static poly p_Neg(poly p, const ring r)
static poly p_Add_q(poly p, poly q, const ring r)
◆ mpGetCdim()
int mp_permmatrix::mpGetCdim |
( |
| ) |
|
|
inline |
◆ mpGetCol()
int mp_permmatrix::mpGetCol |
( |
| ) |
|
◆ mpGetElem()
poly mp_permmatrix::mpGetElem |
( |
int | r, |
|
|
int | c ) |
◆ mpGetRdim()
int mp_permmatrix::mpGetRdim |
( |
| ) |
|
|
inline |
◆ mpGetRow()
int mp_permmatrix::mpGetRow |
( |
| ) |
|
◆ mpGetSign()
int mp_permmatrix::mpGetSign |
( |
| ) |
|
|
inline |
◆ mpInitMat()
void mp_permmatrix::mpInitMat |
( |
| ) |
|
|
private |
◆ mpPivotBareiss()
Definition at line 1153 of file matpol.cc.
1154{
1156 int i,
j, iopt, jopt;
1157 float sum, f1, f2, fo, r, ro, lp;
1158 float *dr = C->
wrow, *dc = C->
wcol;
1159
1160 fo = 1.0e20;
1161 ro = 0.0;
1162 iopt = jopt = -1;
1163
1167 return 0;
1169 {
1171 {
1174 {
1176 if (f1 < fo)
1177 {
1178 fo = f1;
1179 if (iopt >= 0)
1182 }
1183 else
1185 }
1186 }
1187 if (iopt >= 0)
1189 return 0;
1190 }
1193 sum = 0.0;
1197 {
1201 {
1204 {
1206 ro = r - lp;
1207 f1 = ro * (dc[
j]-lp);
1208 if (f1 != 0.0)
1209 {
1210 f2 = lp * (sum - ro - dc[
j]);
1211 f2 += f1;
1212 }
1213 else
1215 if (f2 < fo)
1216 {
1217 fo = f2;
1220 }
1221 }
1222 }
1223 }
1224 if (iopt < 0)
1225 return 0;
1228 return 1;
1229}
void mpColWeight(float *)
void mpRowWeight(float *)
static void mpReplace(int j, int n, int &sign, int *perm)
◆ mpPivotRow()
◆ mpRowAdr()
poly * mp_permmatrix::mpRowAdr |
( |
int | r | ) |
|
|
inlineprivate |
◆ mpRowReorder()
void mp_permmatrix::mpRowReorder |
( |
| ) |
|
Definition at line 1113 of file matpol.cc.
1114{
1116
1119 else
1122 {
1125 {
1127 i2 = 0;
1128 while (
qrow[i2] !=
i) i2++;
1130 }
1131 }
1132}
◆ mpRowSwap()
void mp_permmatrix::mpRowSwap |
( |
int | i1, |
|
|
int | i2 ) |
|
private |
Definition at line 1050 of file matpol.cc.
1051{
1054
1057 for (
j=
a_n-1;
j>= 0;
j--)
1058 {
1062 }
1063}
◆ mpRowWeight()
void mp_permmatrix::mpRowWeight |
( |
float * | wrow | ) |
|
|
private |
Definition at line 1030 of file matpol.cc.
1031{
1035
1037 {
1041 {
1045 }
1047 }
1048}
◆ mpSaveArray()
void mp_permmatrix::mpSaveArray |
( |
| ) |
|
|
inline |
◆ mpSetElem()
void mp_permmatrix::mpSetElem |
( |
poly | , |
|
|
int | , |
|
|
int | ) |
◆ mpSetSearch()
void mp_permmatrix::mpSetSearch |
( |
int | s | ) |
|
◆ mpToIntvec()
void mp_permmatrix::mpToIntvec |
( |
intvec * | | ) |
|
◆ _R
◆ a_m
◆ a_n
◆ piv_s
◆ qcol
int * mp_permmatrix::qcol |
|
private |
◆ qrow
◆ s_m
◆ s_n
◆ sign
◆ Xarray
poly* mp_permmatrix::Xarray |
|
private |
The documentation for this class was generated from the following file: