Skip to content

Commit

Permalink
Merge Pull Request #6142 from trilinos/Trilinos/master_merge_20191023…
Browse files Browse the repository at this point in the history
…_111521

Automatically Merged using Trilinos Master Merge AutoTester
PR Title: Trilinos Master Merge PR Generator: Auto PR created to promote from master_merge_20191023_111521 branch to master
PR Author: trilinos-autotester
  • Loading branch information
trilinos-autotester authored Oct 23, 2019
2 parents 6605279 + ade2a2a commit c45b818
Show file tree
Hide file tree
Showing 294 changed files with 2,773 additions and 9,615 deletions.
9,597 changes: 0 additions & 9,597 deletions doc/DocumentingParameterLists/webfiles/js/jquery.js

This file was deleted.

8 changes: 8 additions & 0 deletions packages/muelu/doc/UsersGuide/masterList.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1017,6 +1017,14 @@
<visible>false</visible>
</parameter>

<parameter>
<name>tentative: constant column sums</name>
<type>bool</type>
<default>false</default>
<description>If true, scale the column sums to one (before applying nullspace).</description>
<visible>false</visible>
</parameter>

<parameter>
<name>tentative: build coarse coordinates</name>
<type>bool</type>
Expand Down
2 changes: 2 additions & 0 deletions packages/muelu/doc/UsersGuide/paramlist_hidden.tex
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,8 @@

\cbb{tentative: calculate qr}{bool}{true}{If false, skip local QR decomposition phase of smoothed aggregation.}

\cbb{tentative: constant column sums}{bool}{false}{If true, scale the column sums to one (before applying nullspace).}

\cbb{tentative: build coarse coordinates}{bool}{true}{If false, skip the calculation of coarse coordinates.}

\cbb{repartition: enable}{bool}{false}{Rebalancing on/off switch.}
Expand Down
4 changes: 4 additions & 0 deletions packages/muelu/src/MueCentral/MueLu_MasterList.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,7 @@ namespace MueLu {
if (name == "pcoarsen: lo basis") { ss << "<Parameter name=\"pcoarsen: lo basis\" type=\"string\" value=" << value << "/>"; return ss.str(); }
if (name == "smoother: neighborhood type") { ss << "<Parameter name=\"smoother: neighborhood type\" type=\"string\" value=" << value << "/>"; return ss.str(); }
if (name == "tentative: calculate qr") { ss << "<Parameter name=\"tentative: calculate qr\" type=\"bool\" value=" << value << "/>"; return ss.str(); }
if (name == "tentative: constant column sums") { ss << "<Parameter name=\"tentative: constant column sums\" type=\"bool\" value=" << value << "/>"; return ss.str(); }
if (name == "repartition: enable") { ss << "<Parameter name=\"repartition: enable\" type=\"bool\" value=" << value << "/>"; return ss.str(); }
if (name == "repartition: start level") { ss << "<Parameter name=\"repartition: start level\" type=\"int\" value=" << value << "/>"; return ss.str(); }
if (name == "repartition: node repartition level") { ss << "<Parameter name=\"repartition: node repartition level\" type=\"int\" value=" << value << "/>"; return ss.str(); }
Expand Down Expand Up @@ -257,6 +258,7 @@ namespace MueLu {
"<Parameter name=\"emin: pattern\" type=\"string\" value=\"AkPtent\"/>"
"<Parameter name=\"emin: pattern order\" type=\"int\" value=\"1\"/>"
"<Parameter name=\"tentative: calculate qr\" type=\"bool\" value=\"true\"/>"
"<Parameter name=\"tentative: constant column sums\" type=\"bool\" value=\"false\"/>"
"<Parameter name=\"tentative: build coarse coordinates\" type=\"bool\" value=\"true\"/>"
"<Parameter name=\"repartition: enable\" type=\"bool\" value=\"false\"/>"
"<Parameter name=\"repartition: partitioner\" type=\"string\" value=\"zoltan2\"/>"
Expand Down Expand Up @@ -682,6 +684,8 @@ namespace MueLu {

("tentative: calculate qr","tentative: calculate qr")

("tentative: constant column sums","tentative: constant column sums")

("tentative: build coarse coordinates","tentative: build coarse coordinates")

("repartition: enable","repartition: enable")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ namespace MueLu {
#define SET_VALID_ENTRY(name) validParamList->setEntry(name, MasterList::getEntry(name))
SET_VALID_ENTRY("tentative: calculate qr");
SET_VALID_ENTRY("tentative: build coarse coordinates");
SET_VALID_ENTRY("tentative: constant column sums");
#undef SET_VALID_ENTRY
validParamList->set< std::string >("Nullspace name", "Nullspace", "Name for the input nullspace");

Expand Down Expand Up @@ -272,6 +273,16 @@ namespace MueLu {

const GO numAggs = aggregates->GetNumAggregates();
const size_t NSDim = fineNullspace->getNumVectors();
ArrayRCP<LO> aggSizes = aggregates->ComputeAggregateSizes();


// Sanity checking
const ParameterList& pL = GetParameterList();
const bool &doQRStep = pL.get<bool>("tentative: calculate qr");
const bool &constantColSums = pL.get<bool>("tentative: constant column sums");

TEUCHOS_TEST_FOR_EXCEPTION(doQRStep && constantColSums,Exceptions::RuntimeError,
"MueLu::TentativePFactory::MakeTentative: cannot use 'constant column sums' and 'calculate qr' at the same time");

// Aggregates map is based on the amalgamated column map
// We can skip global-to-local conversion if LIDs in row map are
Expand All @@ -297,9 +308,6 @@ namespace MueLu {

coarseNullspace = MultiVectorFactory::Build(coarseMap, NSDim);

const ParameterList& pL = GetParameterList();
const bool &doQRStep = pL.get<bool>("tentative: calculate qr");

// Pull out the nullspace vectors so that we can have random access.
ArrayRCP<ArrayRCP<const SC> > fineNS (NSDim);
ArrayRCP<ArrayRCP<SC> > coarseNS(NSDim);
Expand Down Expand Up @@ -469,7 +477,7 @@ namespace MueLu {
} else {
GetOStream(Runtime1) << "TentativePFactory : bypassing local QR phase" << std::endl;
if (NSDim>1)
GetOStream(Warnings0) << "TentativePFactor : for nontrivial nullspace, this may degrade performance" << std::endl;
GetOStream(Warnings0) << "TentativePFactory : for nontrivial nullspace, this may degrade performance" << std::endl;
/////////////////////////////
// "no-QR" option //
/////////////////////////////
Expand All @@ -496,7 +504,8 @@ namespace MueLu {

for (size_t k = 0, lnnz = 0; k < NSDim; k++) {
// Skip zeros (there may be plenty of them, i.e., NSDim > 1 or boundary conditions)
const SC qr_jk = fineNS[k][aggToRowMapLO[aggStart[agg]+j]];
SC qr_jk = fineNS[k][aggToRowMapLO[aggStart[agg]+j]];
if(constantColSums) qr_jk = qr_jk / (double)aggSizes[agg];
if (qr_jk != zero) {
ja [rowStart+lnnz] = offset + k;
val[rowStart+lnnz] = qr_jk;
Expand All @@ -520,7 +529,8 @@ namespace MueLu {

for (size_t k = 0, lnnz = 0; k < NSDim; k++) {
// Skip zeros (there may be plenty of them, i.e., NSDim > 1 or boundary conditions)
const SC qr_jk = fineNS[k][rowMap->getLocalElement(aggToRowMapGO[aggStart[agg]+j])];
SC qr_jk = fineNS[k][rowMap->getLocalElement(aggToRowMapGO[aggStart[agg]+j])];
if(constantColSums) qr_jk = qr_jk / (double)aggSizes[agg];
if (qr_jk != zero) {
ja [rowStart+lnnz] = offset + k;
val[rowStart+lnnz] = qr_jk;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -428,6 +432,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -157,6 +158,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -250,6 +252,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -343,6 +346,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -155,6 +156,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -246,6 +248,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down Expand Up @@ -337,6 +340,7 @@ Domain GID offsets = {0} [default]

tentative: calculate qr = 1 [default]
tentative: build coarse coordinates = 1 [default]
tentative: constant column sums = 0 [default]
Nullspace name = Nullspace [default]
matrixmatrix: kernel params ->
[empty list]
Expand Down
Loading

0 comments on commit c45b818

Please sign in to comment.