tried to get rid of warnings - unsuccessfully

This commit is contained in:
jakob.schratter 2026-01-27 15:47:54 +01:00
commit 56af4f4bef
3 changed files with 67 additions and 32 deletions

View file

@ -77,7 +77,7 @@ void Mesh::Init_Solution_mult(std::vector<double> &v,
for (int e = 0; e < Nelems(); ++e) // loop over all elements
{
int sd = ElementSubdomains[e]; // get subdomain of element e
int sd = _elementSubdomains[e]; // get subdomain of element e
if (sd == target_sd) // if is target subdomain then
{
int base = e * _nvert_e; // get starting index of element in coordinate vector
@ -506,7 +506,7 @@ double Mesh::AverageVectorFunction_perSubdomain(std::vector<double> &v, int targ
int subdomain_element_counter = 0;
for (int e = 0; e < Nelems(); ++e) // loop over all elements
{
int sd = ElementSubdomains[e]; // get subdomain of element e
int sd = _elementSubdomains[e]; // get subdomain of element e
if (sd == target_sd) // if is target subdomain then
{
subdomain_element_counter++;
@ -534,7 +534,7 @@ double Mesh::CheckTemp_mult(std::vector<double> &v, int target_sd, double goal_t
int subdomain_element_counter = 0;
for (int e = 0; e < Nelems(); ++e) // loop over all elements
{
int sd = ElementSubdomains[e]; // get subdomain of element e
int sd = _elementSubdomains[e]; // get subdomain of element e
if (sd == target_sd) // if is target subdomain then
{
subdomain_element_counter++;
@ -822,31 +822,56 @@ const std::vector<int> Mesh::BoundaryEdgeNodes() const
return _bedges;
}
const std::vector<int> Mesh::OuterEdges() const
{
return _outerEdges;
}
const std::vector<int> Mesh::OuterEdgesNodes() const
{
return _outerEdgesNodes;
}
const std::vector<int> Mesh::OuterEdgesSubdomains() const
{
return _outerEdgesSubdomains;
}
const std::vector<int> Mesh::ElementSubdomains() const
{
return _elementSubdomains;
}
const std::vector<int> Mesh::EdgeSubdomains() const
{
return _edgeSubdomains;
}
// Only the outer edges for Robin BC
void Mesh::InitializeOuterEdges()
{
assert(EdgeSubdomains.size() == 2*_ebedges.size());
assert(_edgeSubdomains.size() == 2*_ebedges.size());
for (size_t k = 0; k < _ebedges.size(); ++k) // loop over all boundary edges
{
if (EdgeSubdomains[2*k] == -1)
if (_edgeSubdomains[2*k] == -1)
{
OuterEdges.push_back(_ebedges[k]);
OuterEdgesSubdomains.push_back(EdgeSubdomains[2*k + 1]);
OuterEdgesNodes.push_back(_bedges[2*k]);
OuterEdgesNodes.push_back(_bedges[2*k + 1]);
_outerEdges.push_back(_ebedges[k]);
_outerEdgesSubdomains.push_back(_edgeSubdomains[2*k + 1]);
_outerEdgesNodes.push_back(_bedges[2*k]);
_outerEdgesNodes.push_back(_bedges[2*k + 1]);
}
if (EdgeSubdomains[2*k + 1] == -1)
if (_edgeSubdomains[2*k + 1] == -1)
{
OuterEdges.push_back(_ebedges[k]);
OuterEdgesSubdomains.push_back(EdgeSubdomains[2*k]);
OuterEdgesNodes.push_back(_bedges[2*k]);
OuterEdgesNodes.push_back(_bedges[2*k + 1]);
_outerEdges.push_back(_ebedges[k]);
_outerEdgesSubdomains.push_back(_edgeSubdomains[2*k]);
_outerEdgesNodes.push_back(_bedges[2*k]);
_outerEdgesNodes.push_back(_bedges[2*k + 1]);
}
}
cout << "All boundary edges: " << _ebedges.size() << endl;
cout << "Outer boundary edges: " << OuterEdges.size() << endl;
cout << "Outer boundary edges: " << _outerEdges.size() << endl;
}
@ -1088,8 +1113,9 @@ Mesh::Mesh(std::string const &fname)
// Constructor with subdomain support
Mesh::Mesh(std::string const &filename, std::string const &subdomain_filename) : Mesh(filename)
{
ElementSubdomains = ReadElementSubdomains(subdomain_filename);
_elementSubdomains = ReadElementSubdomains(subdomain_filename);
InitializeOuterEdges();
}
@ -1181,11 +1207,11 @@ void Mesh::ReadVertexBasedMesh(std::string const &fname)
}
// Store edge adjacent subdomains
EdgeSubdomains.resize(nbedges * 2);
_edgeSubdomains.resize(nbedges * 2);
for (int k = 0; k < nbedges * 2; ++k)
{
ifs >> EdgeSubdomains[k];
EdgeSubdomains[k] -= OFFSET;
ifs >> _edgeSubdomains[k];
_edgeSubdomains[k] -= OFFSET;
}
}
else