Skip to content
Snippets Groups Projects
Commit 20eb8e7e authored by Sander, Oliver's avatar Sander, Oliver
Browse files

Merge branch 'fix-minor-issues' into 'master'

Fix minor issues

See merge request !89
parents db55393b b8f762bf
No related branches found
No related tags found
1 merge request!89Fix minor issues
Pipeline #7200 passed
...@@ -119,7 +119,7 @@ public: ...@@ -119,7 +119,7 @@ public:
{ {
using namespace Dune::TypeTree::Indices; using namespace Dune::TypeTree::Indices;
std::vector<RigidBodyMotion<double,3>> xRBM(basis.size()); std::vector<RigidBodyMotion<double,3>> xRBM(basis.size());
for (int i = 0; i < basis.size(); i++) { for (std::size_t i = 0; i < basis.size(); i++) {
for (int j = 0; j < 3; j ++) // Displacement part for (int j = 0; j < 3; j ++) // Displacement part
xRBM[i].r[j] = configuration[_0][i][j]; xRBM[i].r[j] = configuration[_0][i][j];
xRBM[i].q = configuration[_1][i]; // Rotation part xRBM[i].q = configuration[_1][i]; // Rotation part
......
...@@ -5,10 +5,6 @@ ...@@ -5,10 +5,6 @@
#include <dune/gfe/parallel/globalmapper.hh> #include <dune/gfe/parallel/globalmapper.hh>
#include <dune/gfe/parallel/globalmapper.hh>
#include <dune/gfe/parallel/globalmapper.hh>
namespace Dune { namespace Dune {
template <class Basis> template <class Basis>
......
...@@ -38,8 +38,6 @@ setup(const GridType& grid, ...@@ -38,8 +38,6 @@ setup(const GridType& grid,
double initialRegularization, double initialRegularization,
bool instrumented) bool instrumented)
{ {
int rank = grid.comm().rank();
grid_ = &grid; grid_ = &grid;
assembler_ = assembler; assembler_ = assembler;
x_ = x; x_ = x;
...@@ -255,7 +253,7 @@ void RiemannianProximalNewtonSolver<Basis,TargetSpace,Assembler>::solve() ...@@ -255,7 +253,7 @@ void RiemannianProximalNewtonSolver<Basis,TargetSpace,Assembler>::solve()
if (rank==0) if (rank==0)
{ {
// Add the regularization - Identity Matrix for now // Add the regularization - Identity Matrix for now
for(int i=0; i<stiffnessMatrix.N(); i++) for (std::size_t i=0; i<stiffnessMatrix.N(); i++)
for(int j=0; j<blocksize; j++) for(int j=0; j<blocksize; j++)
stiffnessMatrix[i][i][j][j] += regularization; stiffnessMatrix[i][i][j][j] += regularization;
......
...@@ -305,7 +305,7 @@ void RiemannianTrustRegionSolver<Basis,TargetSpace,Assembler>::solve() ...@@ -305,7 +305,7 @@ void RiemannianTrustRegionSolver<Basis,TargetSpace,Assembler>::solve()
#if HAVE_MPI #if HAVE_MPI
MaxNormTrustRegion<blocksize> trustRegion(globalMapper_->size(), initialTrustRegionRadius_); MaxNormTrustRegion<blocksize> trustRegion(globalMapper_->size(), initialTrustRegionRadius_);
#else #else
const Basis& basis = assembler_->basis_; const Basis& basis = assembler_->getBasis();
MaxNormTrustRegion<blocksize> trustRegion(basis.size(), initialTrustRegionRadius_); MaxNormTrustRegion<blocksize> trustRegion(basis.size(), initialTrustRegionRadius_);
#endif #endif
trustRegion.set(initialTrustRegionRadius_, scaling_); trustRegion.set(initialTrustRegionRadius_, scaling_);
......
...@@ -77,7 +77,7 @@ namespace Dune::GFE { ...@@ -77,7 +77,7 @@ namespace Dune::GFE {
// Extract values at this element // Extract values at this element
std::vector<double> localConfiguration(nDofsOrderD); std::vector<double> localConfiguration(nDofsOrderD);
for (int i=0; i<nDofsOrderD; i++) for (size_t i=0; i<nDofsOrderD; i++)
localConfiguration[i] = xFlat[localViewOrderD.index(i)]; //localViewOrderD.index(i) is a multi-index localConfiguration[i] = xFlat[localViewOrderD.index(i)]; //localViewOrderD.index(i) is a multi-index
//Store the reference gradient and the gradients for this element //Store the reference gradient and the gradients for this element
...@@ -216,7 +216,7 @@ namespace Dune::GFE { ...@@ -216,7 +216,7 @@ namespace Dune::GFE {
// Extract local configuration at this element // Extract local configuration at this element
std::vector<double> localConfiguration(nDofsOrderD); std::vector<double> localConfiguration(nDofsOrderD);
std::vector<double> localConfigurationInitial(nDofsOrderD); std::vector<double> localConfigurationInitial(nDofsOrderD);
for (int i=0; i<nDofsOrderD; i++) { for (size_t i=0; i<nDofsOrderD; i++) {
localConfiguration[i] = xFlat[localViewOrderD.index(i)]; localConfiguration[i] = xFlat[localViewOrderD.index(i)];
localConfigurationInitial[i] = xInitialFlat[localViewOrderD.index(i)]; localConfigurationInitial[i] = xInitialFlat[localViewOrderD.index(i)];
} }
...@@ -231,7 +231,7 @@ namespace Dune::GFE { ...@@ -231,7 +231,7 @@ namespace Dune::GFE {
localViewOrderR.bind(element); localViewOrderR.bind(element);
const auto& lFEOrderR = localViewOrderR.tree().child(0).finiteElement(); const auto& lFEOrderR = localViewOrderR.tree().child(0).finiteElement();
VectorR localConfigurationRot(lFEOrderR.size()); VectorR localConfigurationRot(lFEOrderR.size());
for (int i=0; i<localConfigurationRot.size(); i++) for (std::size_t i=0; i<localConfigurationRot.size(); i++)
localConfigurationRot[i] = rot[localViewOrderR.index(i)[0]];//localViewOrderR.index(i) is a multiindex, its first entry is the actual index localConfigurationRot[i] = rot[localViewOrderR.index(i)[0]];//localViewOrderR.index(i) is a multiindex, its first entry is the actual index
typedef LocalGeodesicFEFunction<dim, double, decltype(lFEOrderR), TargetSpaceR> LocalGFEFunctionType; typedef LocalGeodesicFEFunction<dim, double, decltype(lFEOrderR), TargetSpaceR> LocalGFEFunctionType;
LocalGFEFunctionType localGeodesicFEFunction(lFEOrderR,localConfigurationRot); LocalGFEFunctionType localGeodesicFEFunction(lFEOrderR,localConfigurationRot);
......
...@@ -107,8 +107,8 @@ auto findSupportingElement(const GridType& sourceGrid, ...@@ -107,8 +107,8 @@ auto findSupportingElement(const GridType& sourceGrid,
// Find the corresponding coarse grid element on the adaptive grid. // Find the corresponding coarse grid element on the adaptive grid.
// This is a linear algorithm, but we expect the coarse grid to be small. // This is a linear algorithm, but we expect the coarse grid to be small.
////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////
LevelMultipleCodimMultipleGeomTypeMapper<GridType> sourceP0Mapper (sourceGrid, 0, mcmgElementLayout()); MultipleCodimMultipleGeomTypeMapper<typename GridType::LevelGridView> sourceP0Mapper (sourceGrid.levelGridView(0), mcmgElementLayout());
LevelMultipleCodimMultipleGeomTypeMapper<GridType> targetP0Mapper(targetGrid, 0, mcmgElementLayout()); MultipleCodimMultipleGeomTypeMapper<typename GridType::LevelGridView> targetP0Mapper(targetGrid.levelGridView(0), mcmgElementLayout());
const auto coarseIndex = sourceP0Mapper.index(element); const auto coarseIndex = sourceP0Mapper.index(element);
auto targetLevelView = targetGrid.levelGridView(0); auto targetLevelView = targetGrid.levelGridView(0);
......
...@@ -51,7 +51,7 @@ using ValueType = adouble; ...@@ -51,7 +51,7 @@ using ValueType = adouble;
int main (int argc, char *argv[]) try int main (int argc, char *argv[]) try
{ {
MPIHelper& mpiHelper = MPIHelper::instance(argc, argv); MPIHelper::instance(argc, argv);
// Start Python interpreter // Start Python interpreter
Python::start(); Python::start();
...@@ -196,7 +196,7 @@ int main (int argc, char *argv[]) try ...@@ -196,7 +196,7 @@ int main (int argc, char *argv[]) try
Functions::interpolate(basisOrderD, x, [](FieldVector<double,dim> x){ return x; }); Functions::interpolate(basisOrderD, x, [](FieldVector<double,dim> x){ return x; });
Functions::interpolate(basisOrderD, xInitial, [](FieldVector<double,dim> x){ return x; }); Functions::interpolate(basisOrderD, xInitial, [](FieldVector<double,dim> x){ return x; });
for (int i = 0; i < basisOrderD.size(); i++) { for (std::size_t i = 0; i < basisOrderD.size(); i++) {
std::stringstream stream; std::stringstream stream;
stream << x[i]; stream << x[i];
//Look up the displacement for this vertex in the deformationMap //Look up the displacement for this vertex in the deformationMap
...@@ -223,7 +223,7 @@ int main (int argc, char *argv[]) try ...@@ -223,7 +223,7 @@ int main (int argc, char *argv[]) try
rot_director[1].resize(basisOrderR.size()); rot_director[1].resize(basisOrderR.size());
rot_director[2].resize(basisOrderR.size()); rot_director[2].resize(basisOrderR.size());
for (int i = 0; i < basisOrderR.size(); i++) { for (std::size_t i = 0; i < basisOrderR.size(); i++) {
std::stringstream stream; std::stringstream stream;
stream << xOrderR[i]; stream << xOrderR[i];
Rotation<double,dim> rotation(rotationMap.at(stream.str())); Rotation<double,dim> rotation(rotationMap.at(stream.str()));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment