diff --git a/MoReFEM.xcodeproj/project.pbxproj b/MoReFEM.xcodeproj/project.pbxproj index dfc9e3ded5c406d82a35da1ea3d7e0becff4e6e6..4d3f05538593c2708f14afc8cc92c64c9b29fa93 100644 --- a/MoReFEM.xcodeproj/project.pbxproj +++ b/MoReFEM.xcodeproj/project.pbxproj @@ -3653,6 +3653,7 @@ 0A2CBE961D05B87A007262F2 /* RefineMesh.hxx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = RefineMesh.hxx; sourceTree = ""; }; 0ACDD43A1CE4800800D60602 /* RefineMesh */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = RefineMesh; sourceTree = BUILT_PRODUCTS_DIR; }; 0ACDD4601CE4823F00D60602 /* main_refined_mesh_output.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = main_refined_mesh_output.cpp; sourceTree = ""; }; + 130000801FFFDDA7005F0CCC /* morefem_common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = morefem_common.xcconfig; sourceTree = ""; }; 1318A4701C2045CF00C56983 /* QuadrangleQ1.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = QuadrangleQ1.cpp; sourceTree = ""; }; 1318A4711C2045F700C56983 /* QuadrangleQ1.hpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.h; path = QuadrangleQ1.hpp; sourceTree = ""; }; 131D43911B4407ED0015EBF9 /* ReactionCoefficient.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = ReactionCoefficient.cpp; path = Reaction/ReactionCoefficient.cpp; sourceTree = ""; }; @@ -8393,6 +8394,7 @@ BE3024D81EA74C9100F2B39F /* XCodeConfig */ = { isa = PBXGroup; children = ( + 130000801FFFDDA7005F0CCC /* morefem_common.xcconfig */, BE6D0AAE1FE4714500CB5DD5 /* morefem_debug.xcconfig */, BE6D0AAF1FE4714500CB5DD5 /* morefem_release.xcconfig */, ); diff --git a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/Bidomain.cpp b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/Bidomain.cpp index 61023c936e410f323110cebc50e2428b4749212d..a35fa8957f2d961ceec8ee2589576b5a1c5397d9 100644 --- a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/Bidomain.cpp +++ b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/Bidomain.cpp @@ -269,9 +269,9 @@ namespace MoReFEM } // Then report it into the elementary matrix. - for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_unknown1; ++node_unknown1_index_j) + for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_test_unknown1; ++node_unknown1_index_j) { - for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_test_unknown1; ++node_unknown1_index_i) + for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_unknown1; ++node_unknown1_index_i) { const double value1 = block_matrix1(node_unknown1_index_i, node_unknown1_index_j); @@ -279,29 +279,29 @@ namespace MoReFEM } } - for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_unknown2; ++node_unknown2_index_j) + for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_test_unknown2; ++node_unknown2_index_j) { - for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_test_unknown2; ++node_unknown2_index_i) + for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_unknown2; ++node_unknown2_index_i) { const double value2 = block_matrix2(node_unknown2_index_i, node_unknown2_index_j); - matrix_result(node_unknown2_index_i + Nnode_for_unknown1, node_unknown2_index_j + Nnode_for_unknown1) += value2; + matrix_result(node_unknown2_index_i + Nnode_for_unknown1, node_unknown2_index_j + Nnode_for_test_unknown1) += value2; } } - for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_unknown2; ++node_unknown2_index_j) + for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_test_unknown2; ++node_unknown2_index_j) { - for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_test_unknown1; ++node_unknown1_index_i) + for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_unknown1; ++node_unknown1_index_i) { const double value3 = block_matrix3(node_unknown1_index_i, node_unknown2_index_j); - matrix_result(node_unknown1_index_i, node_unknown2_index_j + Nnode_for_unknown1) += value3; + matrix_result(node_unknown1_index_i, node_unknown2_index_j + Nnode_for_test_unknown1) += value3; } } - for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_unknown1; ++node_unknown1_index_j) + for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_test_unknown1; ++node_unknown1_index_j) { - for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_test_unknown2; ++node_unknown2_index_i) + for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_unknown2; ++node_unknown2_index_i) { const double value4 = block_matrix4(node_unknown2_index_i, node_unknown1_index_j); diff --git a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/GradPhiTauTauGradPhi.cpp b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/GradPhiTauTauGradPhi.cpp index f8f8d4a1448c989e76b7c733515c6bb3b4975cdd..98088e8dc63b62b815a111e8596e116fdd2d75f9 100644 --- a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/GradPhiTauTauGradPhi.cpp +++ b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/GradPhiTauTauGradPhi.cpp @@ -100,6 +100,8 @@ namespace MoReFEM assert(Ncomponent == 1u && "GradPhiTauTauGradPhi operator limited to scalar unknowns."); + static_cast(Ncomponent); + const auto& transverse_diffusion_tensor = GetTransverseDiffusionTensor(); const auto& fiber_diffusion_tensor = GetFiberDiffusionTensor(); diff --git a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/SurfacicBidomain.cpp b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/SurfacicBidomain.cpp index 126b181440d1a3d1ce69970d3017b6da4413b58f..86a479e0edb4f8f08e65a53a9eb8fb7263a21405 100644 --- a/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/SurfacicBidomain.cpp +++ b/Sources/OperatorInstances/VariationalOperator/BilinearForm/Local/SurfacicBidomain.cpp @@ -223,8 +223,8 @@ namespace MoReFEM assert(dphi_test.GetM() == Nnode_for_test_unknown1); assert(dpsi_test.GetM() == Nnode_for_test_unknown2); - Wrappers::Seldon::Transpose(dphi, transposed_dphi_test); - Wrappers::Seldon::Transpose(dpsi, transposed_dpsi_test); + Wrappers::Seldon::Transpose(dphi_test, transposed_dphi_test); + Wrappers::Seldon::Transpose(dpsi_test, transposed_dpsi_test); block_matrix1.Zero(); block_matrix2.Zero(); @@ -366,7 +366,7 @@ namespace MoReFEM } // Then report it into the elementary matrix. - for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_unknown1; ++node_unknown1_index_j) + for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_test_unknown1; ++node_unknown1_index_j) { for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_unknown1; ++node_unknown1_index_i) { @@ -376,27 +376,27 @@ namespace MoReFEM } } - for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_unknown2; ++node_unknown2_index_j) + for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_test_unknown2; ++node_unknown2_index_j) { for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_unknown2; ++node_unknown2_index_i) { const double value2 = block_matrix2(node_unknown2_index_i, node_unknown2_index_j); - matrix_result(node_unknown2_index_i + Nnode_for_unknown1, node_unknown2_index_j + Nnode_for_unknown1) += value2; + matrix_result(node_unknown2_index_i + Nnode_for_unknown1, node_unknown2_index_j + Nnode_for_test_unknown1) += value2; } } - for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_unknown2; ++node_unknown2_index_j) + for (int node_unknown2_index_j = 0; node_unknown2_index_j < Nnode_for_test_unknown2; ++node_unknown2_index_j) { for (int node_unknown1_index_i = 0; node_unknown1_index_i < Nnode_for_unknown1; ++node_unknown1_index_i) { const double value3 = block_matrix3(node_unknown1_index_i, node_unknown2_index_j); - matrix_result(node_unknown1_index_i, node_unknown2_index_j + Nnode_for_unknown1) += value3; + matrix_result(node_unknown1_index_i, node_unknown2_index_j + Nnode_for_test_unknown1) += value3; } } - for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_unknown1; ++node_unknown1_index_j) + for (int node_unknown1_index_j = 0; node_unknown1_index_j < Nnode_for_test_unknown1; ++node_unknown1_index_j) { for (int node_unknown2_index_i = 0; node_unknown2_index_i < Nnode_for_unknown2; ++node_unknown2_index_i) { diff --git a/Sources/OperatorInstances/VariationalOperator/NonlinearForm/Local/SecondPiolaKirchhoffStressTensor/ViscoelasticityPolicy/Viscoelasticity.hxx b/Sources/OperatorInstances/VariationalOperator/NonlinearForm/Local/SecondPiolaKirchhoffStressTensor/ViscoelasticityPolicy/Viscoelasticity.hxx index c4cef47679822fd90c5217f48772a9b71a7b1689..26a8ce070eabb72844c58ffb13d48526d725f036 100644 --- a/Sources/OperatorInstances/VariationalOperator/NonlinearForm/Local/SecondPiolaKirchhoffStressTensor/ViscoelasticityPolicy/Viscoelasticity.hxx +++ b/Sources/OperatorInstances/VariationalOperator/NonlinearForm/Local/SecondPiolaKirchhoffStressTensor/ViscoelasticityPolicy/Viscoelasticity.hxx @@ -42,7 +42,7 @@ namespace MoReFEM : matrix_parent(), vector_parent(), time_manager_(time_manager), - viscosity_(solid.GetParameter()) + viscosity_(solid.GetViscosity()) { std::pair identity_size; const unsigned int square_Ncomponent = NumericNS::Square(Ncomponent); diff --git a/Sources/Operators/LocalVariationalOperator/CauchyAndInvariant/InvariantComputation.cpp b/Sources/Operators/LocalVariationalOperator/CauchyAndInvariant/InvariantComputation.cpp index 4b502cd1c8405e6d5878c58a44418c15f80ae4d4..bd2aa767952bb075196cb1adf5894ec990a15693 100644 --- a/Sources/Operators/LocalVariationalOperator/CauchyAndInvariant/InvariantComputation.cpp +++ b/Sources/Operators/LocalVariationalOperator/CauchyAndInvariant/InvariantComputation.cpp @@ -81,6 +81,9 @@ namespace MoReFEM { assert(out.GetLength() == 1); assert(tensor.GetSize() == 1); + + static_cast(tensor); + out(0) = 2.; } @@ -122,6 +125,9 @@ namespace MoReFEM { assert(out.GetLength() == 1); assert(tensor.GetSize() == 1); + + static_cast(tensor); + out(0) = 1.; } diff --git a/Sources/ParameterInstances/GradientBasedElasticityTensor/Internal/ComputeGradientBasedElasticityTensor.cpp b/Sources/ParameterInstances/GradientBasedElasticityTensor/Internal/ComputeGradientBasedElasticityTensor.cpp index ba9f530ea6a1007b1cd74d63e28bcc9890f39a07..caeb5466a68167b8ffbaf54a5ec0dc6403e0ab28 100644 --- a/Sources/ParameterInstances/GradientBasedElasticityTensor/Internal/ComputeGradientBasedElasticityTensor.cpp +++ b/Sources/ParameterInstances/GradientBasedElasticityTensor/Internal/ComputeGradientBasedElasticityTensor.cpp @@ -110,6 +110,7 @@ namespace MoReFEM const LocalMatrix& ComputeGradientBasedElasticityTensor<::MoReFEM::ParameterNS::GradientBasedElasticityTensorConfiguration::dim1> ::ComputeEngineeringElasticityTensor(const double young_modulus, const double poisson_ratio) { + static_cast(poisson_ratio); assert(NumericNS::AreEqual(poisson_ratio, 0.)); auto& engineering_elasticity_tensor = GetNonCstEngineeringElasticityTensor(); diff --git a/ThirdPartyXCodeProjects/Seldon.xcodeproj/project.pbxproj b/ThirdPartyXCodeProjects/Seldon.xcodeproj/project.pbxproj index ddf41c430d4b55f9ea8cfbfa6afc9aac49d3cf24..8c7a539db1f360e72bd96a32e4585ea3caffdc1e 100644 --- a/ThirdPartyXCodeProjects/Seldon.xcodeproj/project.pbxproj +++ b/ThirdPartyXCodeProjects/Seldon.xcodeproj/project.pbxproj @@ -1323,6 +1323,7 @@ SELDON_WITH_COMPILED_LIBRARY, "_LIBCPP_DEBUG2=0", SELDON_WITHOUT_TO_STR_CHECKDIM, + SELDON_WITH_BLAS, ); GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -1383,6 +1384,7 @@ SELDON_WITH_COMPILED_LIBRARY, NDEBUG, SELDON_WITHOUT_TO_STR_CHECKDIM, + SELDON_WITH_BLAS, ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;