Skip to content

Commit 46f4317

Browse files
authored
Merge pull request #1 from numgeom/jiao/dev
regenerated code with support of use_dag
2 parents 960b11a + 8d15f7c commit 46f4317

8 files changed

+10582
-3627
lines changed

src/rrqr_trunc.cpp

+8-7
Original file line numberDiff line numberDiff line change
@@ -47,12 +47,13 @@ boolean_T rrqr_trunc(const ::coder::array<unsigned char, 2U> &dag, int *n1,
4747
// to be called by wls::rrqr_factor in C++ automatically.
4848
//
4949
//
50-
// See also rrqr_factor, gen_vander_1d_dag, gen_vander_2d_dag,
51-
// gen_vander_3d_dag Force to be column major
52-
n = dag.size(1) - 1;
50+
// See also rrqr_factor, gen_vander_dag
51+
// Force to be column major
52+
n = dag.size(1) - 2;
53+
// Last column of dag is for signature
5354
// Resize work space if needed
54-
if (work.size(1) < dag.size(1)) {
55-
work.set_size(4, dag.size(1));
55+
if (work.size(1) < dag.size(1) - 1) {
56+
work.set_size(4, dag.size(1) - 1);
5657
}
5758
// compute inverse permutation and tag whether each column is truncated
5859
for (i = 0; i <= n; i++) {
@@ -124,14 +125,14 @@ boolean_T rrqr_trunc(const ::coder::array<unsigned char, 2U> &dag, int *n1,
124125
int n2;
125126
// permute the truncated columns to the end
126127
*n1 = 0;
127-
n2 = dag.size(1);
128+
n2 = dag.size(1) - 2;
128129
for (i = 0; i <= n; i++) {
129130
// i is original ids
130131
if (work[4 * i + 1] == 0) {
131132
(*n1)++;
132133
p[*n1 - 1] = i + 1;
133134
} else {
134-
p[n2 - 1] = i + 1;
135+
p[n2] = i + 1;
135136
n2--;
136137
}
137138
}

0 commit comments

Comments
 (0)