Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions include/PolarGrid/polargrid.inl
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#pragma once

#include <iterator>

#include "polargrid.h"

inline int PolarGrid::nr() const
Expand All @@ -18,13 +20,13 @@ inline int PolarGrid::numberOfNodes() const

inline double PolarGrid::radius(const int r_index) const
{
assert(r_index >= 0 && static_cast<size_t>(r_index) < radii_.size());
assert(r_index >= 0 && r_index < std::ssize(radii_));
return radii_[r_index];
}

inline double PolarGrid::theta(const int theta_index) const
{
assert(theta_index >= 0 && static_cast<size_t>(theta_index) < angles_.size());
assert(theta_index >= 0 && theta_index < std::ssize(angles_));
return angles_[theta_index];
}

Expand Down Expand Up @@ -57,7 +59,7 @@ inline int PolarGrid::numberRadialSmootherNodes() const

inline double PolarGrid::radialSpacing(const int r_index) const
{
assert(r_index >= 0 && static_cast<size_t>(r_index) < radial_spacings_.size());
assert(r_index >= 0 && r_index < std::ssize(radial_spacings_));
return radial_spacings_[r_index];
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

#include "../../../include/common/geometry_helper.h"

#include <iterator>

#ifdef GMGPOLAR_USE_MUMPS

/* ----------------------- */
Expand Down Expand Up @@ -123,7 +125,7 @@ void DirectSolverGive::applySymmetryShiftOuterBoundary(Vector<double> x) const
// clang-format off
void DirectSolverGive::applySymmetryShift(Vector<double> x) const
{
assert(x.size() == grid_.numberOfNodes());
assert(std::ssize(x) == grid_.numberOfNodes());
assert(grid_.nr() >= 4);

if (num_omp_threads_ == 1) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
#include "../../../include/DirectSolver/DirectSolver-COO-MUMPS-Take/directSolverTake.h"

#include <iterator>

#ifdef GMGPOLAR_USE_MUMPS

/* ----------------------- */
Expand Down Expand Up @@ -80,7 +82,7 @@ void DirectSolverTake::applySymmetryShiftOuterBoundary(Vector<double> x) const

void DirectSolverTake::applySymmetryShift(Vector<double> x) const
{
assert(x.size() == grid_.numberOfNodes());
assert(std::ssize(x) == grid_.numberOfNodes());
assert(grid_.nr() >= 4);

if (num_omp_threads_ == 1) {
Expand Down
4 changes: 2 additions & 2 deletions src/GMGPolar/build_rhs_f.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ void GMGPolar::build_rhs_f(const Level& level, Vector<double> rhs_f, const Bound
const SourceTerm& source_term)
{
const PolarGrid& grid = level.grid();
assert(rhs_f.size() == static_cast<uint>(grid.numberOfNodes()));
assert(std::ssize(rhs_f) == grid.numberOfNodes());

#pragma omp parallel
{
Expand Down Expand Up @@ -55,7 +55,7 @@ void GMGPolar::build_rhs_f(const Level& level, Vector<double> rhs_f, const Bound
void GMGPolar::discretize_rhs_f(const Level& level, Vector<double> rhs_f)
{
const PolarGrid& grid = level.grid();
assert(rhs_f.size() == static_cast<uint>(grid.numberOfNodes()));
assert(std::ssize(rhs_f) == grid.numberOfNodes());

if (level.levelCache().cacheDomainGeometry()) {
/* DomainGeometry is cached */
Expand Down
6 changes: 3 additions & 3 deletions src/GMGPolar/solver.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -319,8 +319,8 @@ void GMGPolar::extrapolatedResidual(const int current_level, Vector<double> resi
const PolarGrid& fineGrid = levels_[current_level].grid();
const PolarGrid& coarseGrid = levels_[current_level + 1].grid();

assert(residual.size() == static_cast<uint>(fineGrid.numberOfNodes()));
assert(residual_next_level.size() == static_cast<uint>(coarseGrid.numberOfNodes()));
assert(std::ssize(residual) == fineGrid.numberOfNodes());
assert(std::ssize(residual_next_level) == coarseGrid.numberOfNodes());

#pragma omp parallel num_threads(max_omp_threads_)
{
Expand Down Expand Up @@ -397,7 +397,7 @@ std::pair<double, double> GMGPolar::computeExactError(Level& level, ConstVector<
const LevelCache& levelCache = level.levelCache();

assert(solution.size() == error.size());
assert(solution.size() == static_cast<uint>(grid.numberOfNodes()));
assert(std::ssize(solution) == grid.numberOfNodes());

#pragma omp parallel num_threads(max_omp_threads_)
{
Expand Down
2 changes: 1 addition & 1 deletion src/GMGPolar/writeToVTK.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ void GMGPolar::writeToVTK(const std::filesystem::path& file_path, const Level& l
const PolarGrid& grid = level.grid();
const LevelCache& level_cache = level.levelCache();

assert(static_cast<uint>(grid.numberOfNodes()) == grid_function.size());
assert(std::ssize(grid_function) == grid.numberOfNodes());

const auto filename = file_path.stem().string() + ".vtu";

Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/extrapolated_prolongation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,8 @@
void Interpolation::applyExtrapolatedProlongation(const PolarGrid& coarse_grid, const PolarGrid& fine_grid,
Vector<double> fine_result, ConstVector<double> coarse_values) const
{
assert(coarse_values.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(fine_result.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(std::ssize(coarse_values) == coarse_grid.numberOfNodes());
assert(std::ssize(fine_result) == fine_grid.numberOfNodes());

/* We split the loops into two regions to better respect the */
/* access patterns of the smoother and improve cache locality. */
Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/extrapolated_restriction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@
void Interpolation::applyExtrapolatedRestriction(const PolarGrid& fine_grid, const PolarGrid& coarse_grid,
Vector<double> coarse_result, ConstVector<double> fine_values) const
{
assert(fine_values.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(coarse_result.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(std::ssize(fine_values) == fine_grid.numberOfNodes());
assert(std::ssize(coarse_result) == coarse_grid.numberOfNodes());

/* We split the loops into two regions to better respect the */
/* access patterns of the smoother and improve cache locality. */
Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/fmg_interpolation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -231,8 +231,8 @@
void Interpolation::applyFMGInterpolation(const PolarGrid& coarse_grid, const PolarGrid& fine_grid,
Vector<double> fine_result, ConstVector<double> coarse_values) const
{
assert(coarse_values.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(fine_result.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(std::ssize(coarse_values) == coarse_grid.numberOfNodes());
assert(std::ssize(fine_result) == fine_grid.numberOfNodes());

#pragma omp parallel num_threads(max_omp_threads_)
{
Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/injection.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@
void Interpolation::applyInjection(const PolarGrid& fine_grid, const PolarGrid& coarse_grid,
Vector<double> coarse_result, ConstVector<double> fine_values) const
{
assert(fine_values.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(coarse_result.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(std::ssize(fine_values) == fine_grid.numberOfNodes());
assert(std::ssize(coarse_result) == coarse_grid.numberOfNodes());

#pragma omp parallel num_threads(max_omp_threads_)
{
Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/prolongation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,8 @@
void Interpolation::applyProlongation(const PolarGrid& coarse_grid, const PolarGrid& fine_grid,
Vector<double> fine_result, ConstVector<double> coarse_values) const
{
assert(coarse_values.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(fine_result.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(std::ssize(coarse_values) == coarse_grid.numberOfNodes());
assert(std::ssize(fine_result) == fine_grid.numberOfNodes());

/* We split the loops into two regions to better respect the */
/* access patterns of the smoother and improve cache locality. */
Expand Down
4 changes: 2 additions & 2 deletions src/Interpolation/restriction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,8 @@
void Interpolation::applyRestriction(const PolarGrid& fine_grid, const PolarGrid& coarse_grid,
Vector<double> coarse_result, ConstVector<double> fine_values) const
{
assert(fine_values.size() == static_cast<uint>(fine_grid.numberOfNodes()));
assert(coarse_result.size() == static_cast<uint>(coarse_grid.numberOfNodes()));
assert(std::ssize(fine_values) == fine_grid.numberOfNodes());
assert(std::ssize(coarse_result) == coarse_grid.numberOfNodes());

/* We split the loops into two regions to better respect the */
/* access patterns of the smoother and improve cache locality. */
Expand Down
2 changes: 1 addition & 1 deletion src/Stencil/stencil.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ Stencil::Stencil(std::initializer_list<int> init)
{
std::copy(init.begin(), init.end(), values_.begin());
stencil_size_ = 0;
for (int i = 0; i < static_cast<int>(init.size()); i++) {
for (int i = 0; i < std::ssize(init); i++) {
if (values_[i] != -1)
stencil_size_++;
}
Expand Down
2 changes: 1 addition & 1 deletion src/convergence_order.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,7 @@ int main(int argc, char* argv[])
// Print the table rows with data
for (int i = 0; i < MAX_DIVIDE_BY_2; i++) {
// Start the row
std::cout << std::setw(6) << table_nr[i] << " x " << table_ntheta[i] << std::setw(7.5) << table_iterations[i]
std::cout << std::setw(6) << table_nr[i] << " x " << table_ntheta[i] << std::setw(7) << table_iterations[i]
<< std::setw(9) << table_reduction_factor[i];

// Print ||err||_2/sqrt(m) in scientific notation
Expand Down
2 changes: 1 addition & 1 deletion tests/test_tools.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ inline Vector<double> generate_random_sample_data(const PolarGrid& grid, unsigne
Vector<double> x("x", grid.numberOfNodes());
std::mt19937 gen(seed);
std::uniform_real_distribution<double> dist(min_val, max_val);
for (uint i = 0; i < x.size(); ++i) {
for (std::size_t i = 0; i < x.size(); ++i) {
x(i) = dist(gen);
}
return x;
Expand Down