diff --git a/CMakeLists.txt b/CMakeLists.txt index 23af1248c13..9eebfb2ccc7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,6 +38,11 @@ if(POLICY CMP0135) cmake_policy(SET CMP0135 NEW) endif(POLICY CMP0135) +# Path normalization +if(POLICY CMP0177) + cmake_policy(SET CMP0177 NEW) +endif(POLICY CMP0177) + # Set here the version number **** only update upon tagging a release! set (KratosMultiphysics_MAJOR_VERSION 10) set (KratosMultiphysics_MINOR_VERSION 1) @@ -198,9 +203,13 @@ else( ${CMAKE_BUILD_TYPE} MATCHES "Release" ) set (KratosMultiphysics_BUILD_SUFFIX "-${CMAKE_BUILD_TYPE}" ) endif( ${CMAKE_BUILD_TYPE} MATCHES "Release" ) +# Set visibility preset +set(CMAKE_CXX_VISIBILITY_PRESET hidden) +set(CMAKE_VISIBILITY_INLINES_HIDDEN "YES") + # Set compiler flags if(${CMAKE_COMPILER_IS_GNUCXX}) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funroll-loops -Wall -Wl,--no-as-needed -ldl -Wsuggest-override") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funroll-loops -Wall -Wl,--no-as-needed -ldl -Wsuggest-override -Wno-error=attributes") if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8.0) message( "DEPRECATED: detected compiler as GCC " ${CMAKE_CXX_COMPILER_VERSION} ) message( FATAL_ERROR "Please use Version 8 or greater") @@ -220,14 +229,14 @@ message(STATUS "CMAKE_CXX_COMPILER_ID = ${CMAKE_CXX_COMPILER_ID}") if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") if(${CMAKE_SYSTEM_NAME} MATCHES "Windows") if(${CMAKE_CXX_COMPILER_ID} MATCHES Clang) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funroll-loops -Wall -Wno-unused-local-typedef -Wno-unknown-pragmas ") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -funroll-loops -Wall -Wno-unused-local-typedef -Wno-unknown-pragmas") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -funroll-loops -Wall -Wno-unknown-pragmas ") set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined") message(STATUS "Additional default options were set for LLVM/Clang compiler") endif(${CMAKE_CXX_COMPILER_ID} MATCHES Clang) else(${CMAKE_SYSTEM_NAME} MATCHES "Windows") if(${CMAKE_CXX_COMPILER_ID} MATCHES Clang) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -funroll-loops -Wall -Wno-unused-local-typedef -Wno-unknown-pragmas ") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC -funroll-loops -Wall -Wno-unused-local-typedef -Wno-unknown-pragmas") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC -funroll-loops -Wall -Wno-unknown-pragmas ") set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined") message(STATUS "Additional default options were set for LLVM/Clang compiler") diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_isotropic_plasticity.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_isotropic_plasticity.cpp index aefd1c59e80..d6ef29c7c98 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_isotropic_plasticity.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_isotropic_plasticity.cpp @@ -506,28 +506,28 @@ int GenericFiniteStrainIsotropicPlasticity:: /***********************************************************************************/ /***********************************************************************************/ -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; -template class GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainIsotropicPlasticity>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_kinematic_plasticity.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_kinematic_plasticity.cpp index 4b612f11c09..509ce4738b0 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_kinematic_plasticity.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/finite_strains/plasticity/generic_finite_strain_kinematic_plasticity.cpp @@ -519,28 +519,28 @@ int GenericFiniteStrainKinematicPlasticity:: /***********************************************************************************/ /***********************************************************************************/ -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; -template class GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericFiniteStrainKinematicPlasticity>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_d_plus_d_minus_damage.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_d_plus_d_minus_damage.cpp index 47d726bbcc5..dab081933fd 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_d_plus_d_minus_damage.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_d_plus_d_minus_damage.cpp @@ -697,99 +697,99 @@ int GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; - -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; -template class GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainDplusDminusDamage>>, GenericCompressionConstitutiveLawIntegratorDplusDminusDamage>>>; } // Namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage.cpp index d77c135ae05..ca5315d8bc8 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage.cpp @@ -457,35 +457,35 @@ int GenericSmallStrainIsotropicDamage::Check( /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; - -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; - -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; - -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; -template class GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamage >>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage_plane_stress.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage_plane_stress.cpp index 6ebab836e3e..299becdc06d 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage_plane_stress.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_isotropic_damage_plane_stress.cpp @@ -65,12 +65,12 @@ Matrix& GenericSmallStrainIsotropicDamagePlaneStress::C /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicDamagePlaneStress >>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_orthotropic_damage.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_orthotropic_damage.cpp index 93d2abd198b..5fd42015843 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_orthotropic_damage.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/damage/generic_small_strain_orthotropic_damage.cpp @@ -656,72 +656,72 @@ void GenericSmallStrainOrthotropicDamage::CalculateRota /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; - -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; -template class GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainOrthotropicDamage>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/fatigue/generic_small_strain_high_cycle_fatigue_law.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/fatigue/generic_small_strain_high_cycle_fatigue_law.cpp index 413e733b728..d0cccc748b3 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/fatigue/generic_small_strain_high_cycle_fatigue_law.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/fatigue/generic_small_strain_high_cycle_fatigue_law.cpp @@ -624,12 +624,12 @@ Matrix& GenericSmallStrainHighCycleFatigueLaw::Calculat /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; -template class GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainHighCycleFatigueLaw >>>; } // namespace Kratos \ No newline at end of file diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/associative_plastic_damage_model.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/associative_plastic_damage_model.cpp index c45893118b9..3f527348e9a 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/associative_plastic_damage_model.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/associative_plastic_damage_model.cpp @@ -1268,9 +1268,9 @@ void AssociativePlasticDamageModel::CalculateTangentTensor( /***********************************************************************************/ /***********************************************************************************/ -template class AssociativePlasticDamageModel>>; -template class AssociativePlasticDamageModel>>; -template class AssociativePlasticDamageModel>>; -template class AssociativePlasticDamageModel>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AssociativePlasticDamageModel>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AssociativePlasticDamageModel>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AssociativePlasticDamageModel>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AssociativePlasticDamageModel>>; } // Namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/generic_small_strain_plastic_damage_model.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/generic_small_strain_plastic_damage_model.cpp index dec7ab99b8e..289c63ff9a0 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/generic_small_strain_plastic_damage_model.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plastic_damage/generic_small_strain_plastic_damage_model.cpp @@ -881,8 +881,8 @@ CalculatePlasticDenominator( } /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainPlasticDamageModel>>, GenericConstitutiveLawIntegratorDamage>>>; -template class GenericSmallStrainPlasticDamageModel>>, GenericConstitutiveLawIntegratorDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainPlasticDamageModel>>, GenericConstitutiveLawIntegratorDamage>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainPlasticDamageModel>>, GenericConstitutiveLawIntegratorDamage>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_isotropic_plasticity.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_isotropic_plasticity.cpp index 058723fa41f..ec3fc94dde7 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_isotropic_plasticity.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_isotropic_plasticity.cpp @@ -622,52 +622,52 @@ int GenericSmallStrainIsotropicPlasticity::Check( /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; - -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; -template class GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainIsotropicPlasticity>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_kinematic_plasticity.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_kinematic_plasticity.cpp index d460d4156c6..3716cc0e0dc 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_kinematic_plasticity.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/small_strains/plasticity/generic_small_strain_kinematic_plasticity.cpp @@ -618,52 +618,52 @@ int GenericSmallStrainKinematicPlasticity::Check( /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; - -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; -template class GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainKinematicPlasticity>>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage.cpp index 4780edcbd7a..05c7dea31b6 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage.cpp @@ -265,19 +265,19 @@ int GenericSmallStrainThermalIsotropicDamage::Check( /***********************************************************************************/ /***********************************************************************************/ -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; - -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; -template class GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamage >>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage_plane_stress.cpp b/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage_plane_stress.cpp index 267155c03ef..52f8c61b037 100644 --- a/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage_plane_stress.cpp +++ b/applications/ConstitutiveLawsApplication/custom_constitutive/thermal/small_strains/damage/generic_small_strain_thermal_isotropic_damage_plane_stress.cpp @@ -174,19 +174,19 @@ void GenericSmallStrainThermalIsotropicDamagePlaneStress>>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; - -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; -template class GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) GenericSmallStrainThermalIsotropicDamagePlaneStress >>>; } // namespace Kratos diff --git a/applications/ConstitutiveLawsApplication/custom_utilities/automatic_differentiation_tangent_utilities.cpp b/applications/ConstitutiveLawsApplication/custom_utilities/automatic_differentiation_tangent_utilities.cpp index ee00d3cb7d5..8f92bb2d4d4 100644 --- a/applications/ConstitutiveLawsApplication/custom_utilities/automatic_differentiation_tangent_utilities.cpp +++ b/applications/ConstitutiveLawsApplication/custom_utilities/automatic_differentiation_tangent_utilities.cpp @@ -3840,69 +3840,69 @@ CalculateTangentTensorIsotropicDamage( /***********************************************************************************/ // 3D exponential -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; - -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; // 3D Linear -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; - -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; // 2D exponential -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; - -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Exponential)>; // 2D Linear -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; - -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; -template class AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; + +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; +template class KRATOS_API(CONSTITUTIVE_LAWS_APPLICATION) AutomaticDifferentiationTangentUtilities>, static_cast(SofteningType::Linear)>; } // namespace Kratos \ No newline at end of file diff --git a/applications/DEMApplication/custom_constitutive/DEM_D_Linear_Simple_Coulomb_CL.h b/applications/DEMApplication/custom_constitutive/DEM_D_Linear_Simple_Coulomb_CL.h index 35cae548cb3..9be0d20573e 100644 --- a/applications/DEMApplication/custom_constitutive/DEM_D_Linear_Simple_Coulomb_CL.h +++ b/applications/DEMApplication/custom_constitutive/DEM_D_Linear_Simple_Coulomb_CL.h @@ -69,7 +69,7 @@ namespace Kratos { double LocalElasticContactForce[3], const double LocalDeltDisp[3], bool& sliding, - SphericParticle* const element, + Element* const element, NeighbourClassType* const neighbour) { // Compute shear force LocalElasticContactForce[0] = OldLocalElasticContactForce[0] - mKt * LocalDeltDisp[0]; diff --git a/applications/GeoMechanicsApplication/custom_elements/compressibility_calculator.h b/applications/GeoMechanicsApplication/custom_elements/compressibility_calculator.h index e321ea48757..3f2abb42b6c 100644 --- a/applications/GeoMechanicsApplication/custom_elements/compressibility_calculator.h +++ b/applications/GeoMechanicsApplication/custom_elements/compressibility_calculator.h @@ -23,7 +23,7 @@ namespace Kratos { -class CompressibilityCalculator : public ContributionCalculator +class KRATOS_API(GEO_MECHANICS_APPLICATION) CompressibilityCalculator : public ContributionCalculator { public: class InputProvider diff --git a/applications/GeoMechanicsApplication/custom_elements/permeability_calculator.h b/applications/GeoMechanicsApplication/custom_elements/permeability_calculator.h index 86ffbee6800..e48a45cd7bb 100644 --- a/applications/GeoMechanicsApplication/custom_elements/permeability_calculator.h +++ b/applications/GeoMechanicsApplication/custom_elements/permeability_calculator.h @@ -20,7 +20,7 @@ namespace Kratos { -class PermeabilityCalculator : public ContributionCalculator +class KRATOS_API(GEO_MECHANICS_APPLICATION) PermeabilityCalculator : public ContributionCalculator { public: class InputProvider diff --git a/applications/HDF5Application/custom_io/hdf5_container_component_io.cpp b/applications/HDF5Application/custom_io/hdf5_container_component_io.cpp index 6d5c60d4848..ea801cd6738 100644 --- a/applications/HDF5Application/custom_io/hdf5_container_component_io.cpp +++ b/applications/HDF5Application/custom_io/hdf5_container_component_io.cpp @@ -827,8 +827,8 @@ void SetItemDataValues(Variable> const& rVariable, // template instantiations -template class ContainerComponentIO; -template class ContainerComponentIO; +template class KRATOS_API(HDF5_APPLICATION) ContainerComponentIO>, Variable, @@ -836,8 +836,8 @@ template class ContainerComponentIO>, Variable>>; -template class ContainerComponentIO; -template class ContainerComponentIO; +template class KRATOS_API(HDF5_APPLICATION) ContainerComponentIO>, Variable, @@ -845,15 +845,15 @@ template class ContainerComponentIO>, Variable>>; -template class ContainerComponentIO; -template class ContainerComponentIO; +template class KRATOS_API(HDF5_APPLICATION) ContainerComponentIO>, Variable, Variable, Variable>, Variable>>; -template class ContainerComponentIO>, Variable, diff --git a/applications/HDF5Application/custom_utilities/factor_elements_and_conditions_utility.h b/applications/HDF5Application/custom_utilities/factor_elements_and_conditions_utility.h index 6cd6a0d8d2d..4129049bbb3 100644 --- a/applications/HDF5Application/custom_utilities/factor_elements_and_conditions_utility.h +++ b/applications/HDF5Application/custom_utilities/factor_elements_and_conditions_utility.h @@ -44,15 +44,15 @@ typedef PointerVectorSet ConditionsContainerType; * each container on a process are local. If a process has no local elements * corresponding to the ith container, it is empty. */ -std::vector FactorElements(ElementsContainerType const& rElements); +KRATOS_API(HDF5_APPLICATION) std::vector FactorElements(ElementsContainerType const& rElements); -void FactorElements(ElementsContainerType const& rElements, +KRATOS_API(HDF5_APPLICATION) void FactorElements(ElementsContainerType const& rElements, std::vector& rNames, std::vector& rFactoredElements); -std::vector FactorConditions(ConditionsContainerType const& rConditions); +KRATOS_API(HDF5_APPLICATION) std::vector FactorConditions(ConditionsContainerType const& rConditions); -void FactorConditions(ConditionsContainerType const& rConditions, +KRATOS_API(HDF5_APPLICATION) void FactorConditions(ConditionsContainerType const& rConditions, std::vector& rNames, std::vector& rFactoredConditions); diff --git a/applications/MappingApplication/custom_utilities/mapper_utilities.h b/applications/MappingApplication/custom_utilities/mapper_utilities.h index ea739815166..fcdcdfe5649 100644 --- a/applications/MappingApplication/custom_utilities/mapper_utilities.h +++ b/applications/MappingApplication/custom_utilities/mapper_utilities.h @@ -258,18 +258,18 @@ void EraseNodalVariable(ModelPart& rModelPart, const Variable& rVaria KRATOS_CATCH(""); } -void KRATOS_API(MAPPING_APPLICATION) FillBufferBeforeLocalSearch(const MapperLocalSystemPointerVector& rMapperLocalSystems, +KRATOS_API(MAPPING_APPLICATION) void FillBufferBeforeLocalSearch(const MapperLocalSystemPointerVector& rMapperLocalSystems, const std::vector& rBoundingBoxes, const SizeType BufferSizeEstimate, std::vector>& rSendBuffer, std::vector& rSendSizes); -void KRATOS_API(MAPPING_APPLICATION) CreateMapperInterfaceInfosFromBuffer(const std::vector>& rRecvBuffer, +KRATOS_API(MAPPING_APPLICATION) void CreateMapperInterfaceInfosFromBuffer(const std::vector>& rRecvBuffer, const MapperInterfaceInfoUniquePointerType& rpRefInterfaceInfo, const int CommRank, MapperInterfaceInfoPointerVectorType& rMapperInterfaceInfosContainer); -void FillBufferAfterLocalSearch(MapperInterfaceInfoPointerVectorType& rMapperInterfaceInfosContainer, +KRATOS_API(MAPPING_APPLICATION) void FillBufferAfterLocalSearch(MapperInterfaceInfoPointerVectorType& rMapperInterfaceInfosContainer, const MapperInterfaceInfoUniquePointerType& rpRefInterfaceInfo, const int CommRank, std::vector>& rSendBuffer, @@ -278,7 +278,7 @@ void FillBufferAfterLocalSearch(MapperInterfaceInfoPointerVectorType& rMapperInt void AssignInterfaceInfosAfterRemoteSearch(const MapperInterfaceInfoPointerVectorType& rMapperInterfaceInfosContainer, MapperLocalSystemPointerVectorPointer& rpMapperLocalSystems); -void DeserializeMapperInterfaceInfosFromBuffer( +KRATOS_API(MAPPING_APPLICATION) void DeserializeMapperInterfaceInfosFromBuffer( const std::vector>& rSendBuffer, const MapperInterfaceInfoUniquePointerType& rpRefInterfaceInfo, const int CommRank, diff --git a/applications/MeshingApplication/custom_processes/mmg/mmg_process.cpp b/applications/MeshingApplication/custom_processes/mmg/mmg_process.cpp index 1853be2c8ed..57690505897 100755 --- a/applications/MeshingApplication/custom_processes/mmg/mmg_process.cpp +++ b/applications/MeshingApplication/custom_processes/mmg/mmg_process.cpp @@ -1530,8 +1530,8 @@ const Parameters MmgProcess::GetDefaultParameters() const /***********************************************************************************/ /***********************************************************************************/ -template class MmgProcess; -template class MmgProcess; -template class MmgProcess; +template class KRATOS_API(MESHING_APPLICATION) MmgProcess; +template class KRATOS_API(MESHING_APPLICATION) MmgProcess; +template class KRATOS_API(MESHING_APPLICATION) MmgProcess; }// namespace Kratos. diff --git a/applications/MeshingApplication/custom_processes/parmmg/pmmg_process.cpp b/applications/MeshingApplication/custom_processes/parmmg/pmmg_process.cpp index 9bcfe2a3c7a..d947a7107ad 100755 --- a/applications/MeshingApplication/custom_processes/parmmg/pmmg_process.cpp +++ b/applications/MeshingApplication/custom_processes/parmmg/pmmg_process.cpp @@ -596,6 +596,6 @@ const Parameters ParMmgProcess::GetDefaultParameters() const /***********************************************************************************/ /***********************************************************************************/ -template class ParMmgProcess; +template class KRATOS_API(MESHING_APPLICATION) ParMmgProcess; }// namespace Kratos. diff --git a/applications/MetisApplication/metis_application.h b/applications/MetisApplication/metis_application.h index 6d31e8a6a46..76fc5652f6c 100755 --- a/applications/MetisApplication/metis_application.h +++ b/applications/MetisApplication/metis_application.h @@ -47,7 +47,7 @@ namespace Kratos /// Short class definition. /** Detail class definition. */ -class KratosMetisApplication : public KratosApplication +class KRATOS_API(METIS_APPLICATION) KratosMetisApplication : public KratosApplication { public: ///@name Type Definitions diff --git a/applications/ShallowWaterApplication/custom_processes/apply_perturbation_function_process.cpp b/applications/ShallowWaterApplication/custom_processes/apply_perturbation_function_process.cpp index 0be71ed0156..2086e5349aa 100644 --- a/applications/ShallowWaterApplication/custom_processes/apply_perturbation_function_process.cpp +++ b/applications/ShallowWaterApplication/custom_processes/apply_perturbation_function_process.cpp @@ -133,6 +133,6 @@ void ApplyPerturbationFunctionProcess::ValidateParameters(Parameters& mHalfWaveNumber = std::acos(-1) / mInfluenceDistance; } -template class ApplyPerturbationFunctionProcess>; +template class KRATOS_API(SHALLOW_WATER_APPLICATION) ApplyPerturbationFunctionProcess>; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_conditions/axisym_line_load_condition_2d.h b/applications/StructuralMechanicsApplication/custom_conditions/axisym_line_load_condition_2d.h index dcb0ec1ea8e..993160df3fe 100644 --- a/applications/StructuralMechanicsApplication/custom_conditions/axisym_line_load_condition_2d.h +++ b/applications/StructuralMechanicsApplication/custom_conditions/axisym_line_load_condition_2d.h @@ -43,7 +43,7 @@ namespace Kratos * Implements a line load condition for structural analysis. */ -class AxisymLineLoadCondition2D +class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AxisymLineLoadCondition2D : public LineLoadCondition<2> { public: diff --git a/applications/StructuralMechanicsApplication/custom_conditions/axisym_point_load_condition.h b/applications/StructuralMechanicsApplication/custom_conditions/axisym_point_load_condition.h index 27b5b9e46a5..b5476766caa 100644 --- a/applications/StructuralMechanicsApplication/custom_conditions/axisym_point_load_condition.h +++ b/applications/StructuralMechanicsApplication/custom_conditions/axisym_point_load_condition.h @@ -43,7 +43,7 @@ namespace Kratos * Implements a point load condition for structural analysis. */ -class AxisymPointLoadCondition +class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AxisymPointLoadCondition : public PointLoadCondition { public: diff --git a/applications/StructuralMechanicsApplication/custom_elements/nodal_elements/mass_element.h b/applications/StructuralMechanicsApplication/custom_elements/nodal_elements/mass_element.h index 1e4de546da1..9970fc669c6 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/nodal_elements/mass_element.h +++ b/applications/StructuralMechanicsApplication/custom_elements/nodal_elements/mass_element.h @@ -23,7 +23,7 @@ namespace Kratos ///@name Kratos Classes ///@{ -class MassElement : public Element +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) MassElement : public Element { public: diff --git a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/base_shell_element.cpp b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/base_shell_element.cpp index b211de574be..4baf859c519 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/base_shell_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/base_shell_element.cpp @@ -921,9 +921,9 @@ void BaseShellElement::load(Serializer& rSerializer) mIntegrationMethod = (IntegrationMethod)temp; } -template class BaseShellElement< ShellT3_CoordinateTransformation >; -template class BaseShellElement< ShellT3_CorotationalCoordinateTransformation >; -template class BaseShellElement< ShellQ4_CoordinateTransformation >; -template class BaseShellElement< ShellQ4_CorotationalCoordinateTransformation >; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) BaseShellElement< ShellT3_CoordinateTransformation >; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) BaseShellElement< ShellT3_CorotationalCoordinateTransformation >; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) BaseShellElement< ShellQ4_CoordinateTransformation >; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) BaseShellElement< ShellQ4_CorotationalCoordinateTransformation >; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D3N.cpp b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D3N.cpp index 23c21d83f31..9fae9f0ab69 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D3N.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D3N.cpp @@ -1775,6 +1775,6 @@ void ShellThickElement3D3N::load(Serializer& rSerializer) KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class ShellThickElement3D3N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThickElement3D3N; } // namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D4N.cpp b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D4N.cpp index 32846598767..b56543abd14 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D4N.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thick_element_3D4N.cpp @@ -1661,7 +1661,7 @@ void ShellThickElement3D4N::load(Serializer& rSerializer) rSerializer.load("EAS", mEASStorage); } -template class ShellThickElement3D4N; -template class ShellThickElement3D4N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThickElement3D4N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThickElement3D4N; } diff --git a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D3N.cpp b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D3N.cpp index bf25261300e..909ff5120a1 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D3N.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D3N.cpp @@ -1414,7 +1414,7 @@ void ShellThinElement3D3N::load(Serializer& rSerializer) KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class ShellThinElement3D3N; -template class ShellThinElement3D3N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThinElement3D3N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThinElement3D3N; } diff --git a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D4N.cpp b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D4N.cpp index d4f2e9b4f74..26938b26052 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D4N.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/shell_elements/shell_thin_element_3D4N.cpp @@ -1996,6 +1996,6 @@ void ShellThinElement3D4N::load(Serializer& rSerializer) KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class ShellThinElement3D4N; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) ShellThinElement3D4N; } diff --git a/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.cpp b/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.cpp index 0c85503a38b..9dfcb5a9782 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.cpp @@ -405,7 +405,7 @@ void SmallDisplacementShiftedBoundaryElement::CalculateCBProjectionLineari } } -template class SmallDisplacementShiftedBoundaryElement<2>; -template class SmallDisplacementShiftedBoundaryElement<3>; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) SmallDisplacementShiftedBoundaryElement<2>; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) SmallDisplacementShiftedBoundaryElement<3>; } // Namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.h b/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.h index a77d112f5e2..a3e9a340d32 100644 --- a/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.h +++ b/applications/StructuralMechanicsApplication/custom_elements/solid_elements/small_displacement_shifted_boundary_element.h @@ -43,7 +43,7 @@ namespace Kratos ///@{ template -class SmallDisplacementShiftedBoundaryElement : public SmallDisplacement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) SmallDisplacementShiftedBoundaryElement : public SmallDisplacement { public: ///@name Type Definitions diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_base_condition.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_base_condition.cpp index a764dac0d8c..e99226f04a3 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_base_condition.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_base_condition.cpp @@ -424,12 +424,11 @@ namespace Kratos KRATOS_CATCH("") } - // TODO find out what to do with KRATOS_API - template class AdjointSemiAnalyticBaseCondition; - template class AdjointSemiAnalyticBaseCondition; - template class AdjointSemiAnalyticBaseCondition; - template class AdjointSemiAnalyticBaseCondition>; - template class AdjointSemiAnalyticBaseCondition>; + template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticBaseCondition; + template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticBaseCondition; + template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticBaseCondition; + template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticBaseCondition>; + template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticBaseCondition>; } // Namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.cpp index f060340a10c..0cd53a1ea22 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.cpp @@ -56,7 +56,7 @@ namespace Kratos } // TODO find out what to do with KRATOS_API - template class AdjointSemiAnalyticPointLoadCondition; + template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticPointLoadCondition; } // Namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.h index a68b56095d0..a0b9dbf36b6 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_conditions/adjoint_semi_analytic_point_load_condition.h @@ -43,7 +43,7 @@ namespace Kratos ///@{ template -class AdjointSemiAnalyticPointLoadCondition +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointSemiAnalyticPointLoadCondition : public AdjointSemiAnalyticBaseCondition { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_base_element.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_base_element.cpp index 89cb7d2ecce..a8f41720796 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_base_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_base_element.cpp @@ -706,12 +706,12 @@ void AdjointFiniteDifferencingBaseElement::load(Serializer& rSer } -template class AdjointFiniteDifferencingBaseElement>; -template class AdjointFiniteDifferencingBaseElement; -template class AdjointFiniteDifferencingBaseElement; -template class AdjointFiniteDifferencingBaseElement; -template class AdjointFiniteDifferencingBaseElement; -template class AdjointFiniteDifferencingBaseElement>; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement>; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingBaseElement>; } // namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.cpp index 8414f73a193..9a3662cea81 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.cpp @@ -132,7 +132,7 @@ void AdjointFiniteDifferenceCrBeamElement::load(Serializer& rSer KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class AdjointFiniteDifferenceCrBeamElement; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceCrBeamElement; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.h index e4af2d14e5e..d8e28047446 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_cr_beam_element_3D2N.h @@ -18,7 +18,7 @@ namespace Kratos { template -class AdjointFiniteDifferenceCrBeamElement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceCrBeamElement : public AdjointFiniteDifferencingBaseElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.cpp index aa0b957246b..ceecfe365d7 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.cpp @@ -177,7 +177,7 @@ void AdjointFiniteDifferencingShellElement::load(Serializer& rSe } -template class AdjointFiniteDifferencingShellElement>; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingShellElement>; } // namespace Kratos diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.h index 5b29df4ccb3..89a122778b0 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_shell_element.h @@ -47,7 +47,7 @@ namespace Kratos * It overwrites some functions necessary to do proper finite differencing with shell elements */ template -class AdjointFiniteDifferencingShellElement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingShellElement : public AdjointFiniteDifferencingBaseElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.cpp index 741cf7ea0dd..dcef7d522aa 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.cpp @@ -189,7 +189,7 @@ void AdjointFiniteDifferencingSmallDisplacementElement::load(Ser KRATOS_SERIALIZE_LOAD_BASE_CLASS( rSerializer, BaseType); } -template class AdjointFiniteDifferencingSmallDisplacementElement; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingSmallDisplacementElement; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.h index d5fe0226f6a..bd4ee43c28c 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_small_displacement_element.h @@ -25,7 +25,7 @@ namespace Kratos * It overwrites some functions necessary to do proper finite differencing with small displacement elements */ template -class AdjointFiniteDifferencingSmallDisplacementElement : public AdjointFiniteDifferencingBaseElement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferencingSmallDisplacementElement : public AdjointFiniteDifferencingBaseElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.cpp index 681e5609e80..52b6e9f5e8c 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.cpp @@ -138,7 +138,7 @@ void AdjointFiniteDifferenceSpringDamperElement::load(Serializer KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class AdjointFiniteDifferenceSpringDamperElement>; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceSpringDamperElement>; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.h index bbd8d6c0f37..e10c1a896dd 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_spring_damper_element_3D2N.h @@ -23,7 +23,7 @@ namespace Kratos * sensitivity analysis. */ template -class AdjointFiniteDifferenceSpringDamperElement: public AdjointFiniteDifferencingBaseElement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceSpringDamperElement: public AdjointFiniteDifferencingBaseElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.cpp index 370902e9a55..6d69cd56d70 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.cpp @@ -227,8 +227,8 @@ void AdjointFiniteDifferenceTrussElement::load(Serializer& rSeri KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class AdjointFiniteDifferenceTrussElement; -template class AdjointFiniteDifferenceTrussElement; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceTrussElement; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceTrussElement; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.h index 68752e9bdcb..cd955fe0cfd 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_3D2N.h @@ -24,7 +24,7 @@ namespace Kratos * sensitivity analysis. */ template -class AdjointFiniteDifferenceTrussElement +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceTrussElement : public AdjointFiniteDifferencingBaseElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.cpp index be87934e415..1909a30f74d 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.cpp @@ -91,7 +91,7 @@ void AdjointFiniteDifferenceTrussElementLinear::load(Serializer& KRATOS_SERIALIZE_LOAD_BASE_CLASS(rSerializer, BaseType); } -template class AdjointFiniteDifferenceTrussElementLinear; +template class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceTrussElementLinear; } // namespace Kratos. diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.h b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.h index 08cede236fb..6f788865843 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.h +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_finite_difference_truss_element_linear_3D2N.h @@ -24,7 +24,7 @@ namespace Kratos * sensitivity analysis. */ template -class AdjointFiniteDifferenceTrussElementLinear +class KRATOS_API(KRATOS_STRUCTURAL_MECHANICS_APPLICATION) AdjointFiniteDifferenceTrussElementLinear : public AdjointFiniteDifferenceTrussElement { public: diff --git a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_solid_element.cpp b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_solid_element.cpp index b50e53c0369..ff374ff52cd 100644 --- a/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_solid_element.cpp +++ b/applications/StructuralMechanicsApplication/custom_response_functions/adjoint_elements/adjoint_solid_element.cpp @@ -330,6 +330,6 @@ void AdjointSolidElement::CalculateSensitivityMatrix( KRATOS_CATCH(""); } -template class AdjointSolidElement; +template class KRATOS_API(STRUCTURAL_MECHANICS_APPLICATION) AdjointSolidElement; } // namespace Kratos. diff --git a/applications/SwimmingDEMApplication/python_scripts/derivative_recovery/L2_projection_recoverer.py b/applications/SwimmingDEMApplication/python_scripts/derivative_recovery/L2_projection_recoverer.py index 798a6a80d1a..66304eacc32 100644 --- a/applications/SwimmingDEMApplication/python_scripts/derivative_recovery/L2_projection_recoverer.py +++ b/applications/SwimmingDEMApplication/python_scripts/derivative_recovery/L2_projection_recoverer.py @@ -41,7 +41,7 @@ def CreateCPluPlusStrategies(self, echo_level = 1): if self.use_lumped_mass_matrix: linear_solver = SuperLUIterativeSolver() else: - linear_solver = Kratos.AMGCLSolver(amgcl_smoother, amgcl_krylov_type, tolerance, max_iterations, verbosity,gmres_size) + linear_solver = Kratos.r(amgcl_smoother, amgcl_krylov_type, tolerance, max_iterations, verbosity,gmres_size) self.recovery_strategy = Kratos.ResidualBasedDerivativeRecoveryStrategy(self.recovery_model_part, scheme, linear_solver, False, True, False, False) self.recovery_strategy.SetEchoLevel(echo_level) diff --git a/applications/TrilinosApplication/external_includes/amgcl_mpi_solve_functions.h b/applications/TrilinosApplication/external_includes/amgcl_mpi_solve_functions.h index 4e8da27c067..950adc83a29 100644 --- a/applications/TrilinosApplication/external_includes/amgcl_mpi_solve_functions.h +++ b/applications/TrilinosApplication/external_includes/amgcl_mpi_solve_functions.h @@ -6,7 +6,7 @@ namespace Kratos { -void AMGCLSolve( +KRATOS_API(TRILINOS_APPLICATION) void AMGCLSolve( int block_size, TrilinosSpace::MatrixType& rA, TrilinosSpace::VectorType& rX, diff --git a/applications/TrilinosApplication/external_includes/amgcl_mpi_solver_impl.cpp b/applications/TrilinosApplication/external_includes/amgcl_mpi_solver_impl.cpp index 094a1e0bf83..a35cc183a93 100644 --- a/applications/TrilinosApplication/external_includes/amgcl_mpi_solver_impl.cpp +++ b/applications/TrilinosApplication/external_includes/amgcl_mpi_solver_impl.cpp @@ -38,6 +38,7 @@ // Project includes #include "trilinos_space.h" #include "custom_utilities/trilinos_solver_utilities.h" +#include "external_includes/amgcl_mpi_solve_functions.h" namespace Kratos { diff --git a/kratos/conditions/mesh_condition.h b/kratos/conditions/mesh_condition.h index 8efb5ee2c22..7f8df395a2f 100644 --- a/kratos/conditions/mesh_condition.h +++ b/kratos/conditions/mesh_condition.h @@ -42,7 +42,7 @@ namespace Kratos * @details Inherits all method from base condition, and overrides the Clone() and Create() methods * @author Vicente Mataix Ferrandiz */ -class MeshCondition +class KRATOS_API(KRATOS_CORE) MeshCondition : public Condition { public: diff --git a/kratos/elements/embedded_nodal_variable_calculation_element_simplex.cpp b/kratos/elements/embedded_nodal_variable_calculation_element_simplex.cpp index 86506afbea9..8e14523923c 100644 --- a/kratos/elements/embedded_nodal_variable_calculation_element_simplex.cpp +++ b/kratos/elements/embedded_nodal_variable_calculation_element_simplex.cpp @@ -21,8 +21,7 @@ #include "elements/embedded_nodal_variable_calculation_element_simplex.h" -namespace Kratos -{ +namespace Kratos { template void EmbeddedNodalVariableCalculationElementSimplex::CalculateLocalSystem( @@ -34,29 +33,8 @@ void EmbeddedNodalVariableCalculationElementSimplex::CalculateLocalSys this->CalculateRightHandSide(rRightHandSideVector, rCurrentProcessInfo); } -template <> -int EmbeddedNodalVariableCalculationElementSimplex::Check(const ProcessInfo &rCurrentProcessInfo) const -{ - KRATOS_TRY - - // Perform basic element checks - int ErrorCode = Kratos::Element::Check(rCurrentProcessInfo); - if(ErrorCode != 0) { - return ErrorCode; - } - - // Check that the element's nodes contain all required SolutionStepData and Degrees of freedom - for(auto &r_node : this->GetGeometry()) { - KRATOS_ERROR_IF(!r_node.SolutionStepsDataHas(NODAL_MAUX)) << "Missing NODAL_MAUX variable on solution step data for node " << r_node.Id() << std::endl;; - } - - return 0; - - KRATOS_CATCH(""); -} - -template <> -int EmbeddedNodalVariableCalculationElementSimplex>::Check(const ProcessInfo &rCurrentProcessInfo) const +template +int EmbeddedNodalVariableCalculationElementSimplex::Check(const ProcessInfo &rCurrentProcessInfo) const { KRATOS_TRY @@ -68,7 +46,13 @@ int EmbeddedNodalVariableCalculationElementSimplex>::Check(co // Check that the element's nodes contain all required SolutionStepData and Degrees of freedom for(auto &r_node : this->GetGeometry()) { - KRATOS_ERROR_IF(!r_node.SolutionStepsDataHas(NODAL_VAUX)) << "Missing NODAL_VAUX variable on solution step data for node " << r_node.Id() << std::endl;; + if constexpr (std::is_same_v) { + KRATOS_ERROR_IF(!r_node.SolutionStepsDataHas(NODAL_MAUX)) << "Missing NODAL_MAUX variable on solution step data for node " << r_node.Id() << std::endl;; + } else if constexpr (std::is_same_v>) { + KRATOS_ERROR_IF(!r_node.SolutionStepsDataHas(NODAL_VAUX)) << "Missing NODAL_VAUX variable on solution step data for node " << r_node.Id() << std::endl;; + } else { + KRATOS_ERROR << "Unsupported variable type" << std::endl; + } } return 0; @@ -76,41 +60,28 @@ int EmbeddedNodalVariableCalculationElementSimplex>::Check(co KRATOS_CATCH(""); } -template <> -void EmbeddedNodalVariableCalculationElementSimplex::CalculateLeftHandSide( +template +void EmbeddedNodalVariableCalculationElementSimplex::CalculateLeftHandSide( MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) { - // Check size - if (rLeftHandSideMatrix.size1() != 2 || rLeftHandSideMatrix.size2() != 2) { - rLeftHandSideMatrix.resize(2, 2, false); - } - - // Get the element shape function values from the normalized distance to node 0 - const auto &rN = this->GetDistanceBasedShapeFunctionValues(); + std::size_t expected_matrix_size = 0; - // Compute the Gramm matrix and gradient penalty term - const double penalty = rCurrentProcessInfo[GRADIENT_PENALTY_COEFFICIENT]; - std::array aux_penalty{{penalty, -penalty}}; - for (unsigned int i = 0; i < 2; ++i) { - for (unsigned int j = 0; j < 2; ++j) { - rLeftHandSideMatrix(i, j) = rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]; - } + if constexpr (std::is_same_v) { + expected_matrix_size = 2; + } else if constexpr (std::is_same_v>) { + expected_matrix_size = 6; + } else { + KRATOS_ERROR << "Unsupported variable type" << std::endl; } -} -template <> -void EmbeddedNodalVariableCalculationElementSimplex>::CalculateLeftHandSide( - MatrixType &rLeftHandSideMatrix, - const ProcessInfo &rCurrentProcessInfo) -{ // Check size - if (rLeftHandSideMatrix.size1() != 6 || rLeftHandSideMatrix.size2() != 6) { - rLeftHandSideMatrix.resize(6, 6, false); + if (rLeftHandSideMatrix.size1() != expected_matrix_size || rLeftHandSideMatrix.size2() != expected_matrix_size) { + rLeftHandSideMatrix.resize(expected_matrix_size, expected_matrix_size, false); } // Initialize LHS. This is required since not all the entries of the matrix are iterated - rLeftHandSideMatrix = ZeroMatrix(6,6); + rLeftHandSideMatrix = ZeroMatrix(expected_matrix_size,expected_matrix_size); // Get the element shape function values from the normalized distance to node 0 const auto &rN = this->GetDistanceBasedShapeFunctionValues(); @@ -118,129 +89,134 @@ void EmbeddedNodalVariableCalculationElementSimplex>::Calcula // Compute the Gramm matrix and gradient penalty term const double penalty = rCurrentProcessInfo[GRADIENT_PENALTY_COEFFICIENT]; std::array aux_penalty{{penalty, -penalty}}; - for (unsigned int i = 0; i < 2; ++i) { - for (unsigned int j = 0; j < 2; ++j) { - for (unsigned int k = 0; k < 3; ++k) { - rLeftHandSideMatrix(i * 3 + k, j * 3 + k) = rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]; + if constexpr (std::is_same_v) { + for (unsigned int i = 0; i < 2; ++i) { + for (unsigned int j = 0; j < 2; ++j) { + rLeftHandSideMatrix(i, j) = rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]; + } + } + } else if constexpr (std::is_same_v>) { + for (unsigned int i = 0; i < 2; ++i) { + for (unsigned int j = 0; j < 2; ++j) { + for (unsigned int k = 0; k < 3; ++k) { + rLeftHandSideMatrix(i * 3 + k, j * 3 + k) = rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]; + } } } } } -template <> -void EmbeddedNodalVariableCalculationElementSimplex::CalculateRightHandSide( +template +void EmbeddedNodalVariableCalculationElementSimplex::CalculateRightHandSide( VectorType &rRigthHandSideVector, const ProcessInfo &rCurrentProcessInfo) { - // Check size - if (rRigthHandSideVector.size() != 2) { - rRigthHandSideVector.resize(2, false); - } - - // Get the element shape function values from the normalized distance to node 0 - const auto &r_geom = this->GetGeometry(); - const double &rData = this->GetValue(NODAL_MAUX); - const auto &rN = this->GetDistanceBasedShapeFunctionValues(); + std::size_t expected_matrix_size = 0; - // Compute the data and penalty Right Hand Side contributions - const double penalty = rCurrentProcessInfo[GRADIENT_PENALTY_COEFFICIENT]; - std::array aux_penalty{{penalty, -penalty}}; - for (unsigned int i = 0; i < 2; ++i) { - rRigthHandSideVector(i) = rN[i] * rData; - for (unsigned int j = 0; j < 2; ++j) { - rRigthHandSideVector(i) -= (rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]) * r_geom[j].FastGetSolutionStepValue(NODAL_MAUX); - } + if constexpr (std::is_same_v) { + expected_matrix_size = 2; + } else if constexpr (std::is_same_v>) { + expected_matrix_size = 6; + } else { + KRATOS_ERROR << "Unsupported variable type" << std::endl; } -} -template <> -void EmbeddedNodalVariableCalculationElementSimplex>::CalculateRightHandSide( - VectorType &rRigthHandSideVector, - const ProcessInfo &rCurrentProcessInfo) -{ // Check size - if (rRigthHandSideVector.size() != 6) { - rRigthHandSideVector.resize(6, false); + if (rRigthHandSideVector.size() != expected_matrix_size) { + rRigthHandSideVector.resize(expected_matrix_size, false); } // Get the element shape function values from the normalized distance to node 0 const auto &r_geom = this->GetGeometry(); - const array_1d &rData = this->GetValue(NODAL_VAUX); const auto &rN = this->GetDistanceBasedShapeFunctionValues(); // Compute the data and penalty Right Hand Side contributions const double penalty = rCurrentProcessInfo[GRADIENT_PENALTY_COEFFICIENT]; std::array aux_penalty{{penalty, -penalty}}; - for (unsigned int i = 0; i < 2; ++i) { - const auto &r_aux = r_geom[i].FastGetSolutionStepValue(NODAL_VAUX); - for (unsigned int k = 0; k < 3; ++k) { - rRigthHandSideVector(i * 3 + k) = rN[i] * rData(k); + + if constexpr (std::is_same_v) { + const double &rData = this->GetValue(NODAL_MAUX); + for (unsigned int i = 0; i < 2; ++i) { + rRigthHandSideVector(i) = rN[i] * rData; for (unsigned int j = 0; j < 2; ++j) { - rRigthHandSideVector(i * 3 + k) -= (rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]) * r_aux[k]; + rRigthHandSideVector(i) -= (rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]) * r_geom[j].FastGetSolutionStepValue(NODAL_MAUX); + } + } + } else if constexpr (std::is_same_v>) { + const array_1d &rData = this->GetValue(NODAL_VAUX); + for (unsigned int i = 0; i < 2; ++i) { + const auto &r_aux = r_geom[i].FastGetSolutionStepValue(NODAL_VAUX); + for (unsigned int k = 0; k < 3; ++k) { + rRigthHandSideVector(i * 3 + k) = rN[i] * rData(k); + for (unsigned int j = 0; j < 2; ++j) { + rRigthHandSideVector(i * 3 + k) -= (rN[i] * rN[j] + aux_penalty[i] * aux_penalty[j]) * r_aux[k]; + } } } } } -template <> -void EmbeddedNodalVariableCalculationElementSimplex::EquationIdVector( +template +void EmbeddedNodalVariableCalculationElementSimplex::EquationIdVector( EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const { - if (rResult.size() != 2) { - rResult.resize(2, false); - } + std::size_t expected_matrix_size = 0; - const unsigned int pos = (this->GetGeometry())[0].GetDofPosition(NODAL_MAUX); - for (unsigned int i = 0; i < 2; i++) { - rResult[i] = (this->GetGeometry())[i].GetDof(NODAL_MAUX, pos).EquationId(); + if constexpr (std::is_same_v) { + expected_matrix_size = 2; + } else if constexpr (std::is_same_v>) { + expected_matrix_size = 6; + } else { + KRATOS_ERROR << "Unsupported variable type" << std::endl; } -} -template <> -void EmbeddedNodalVariableCalculationElementSimplex>::EquationIdVector( - EquationIdVectorType &rResult, - const ProcessInfo &rCurrentProcessInfo) const -{ - if (rResult.size() != 6) { - rResult.resize(6, false); + if (rResult.size() != expected_matrix_size) { + rResult.resize(expected_matrix_size, false); } - const unsigned int x_pos = (this->GetGeometry())[0].GetDofPosition(NODAL_VAUX_X); - for (unsigned int i = 0; i < 2; i++) { - rResult[i * 3] = GetGeometry()[i].GetDof(NODAL_VAUX_X, x_pos).EquationId(); - rResult[i * 3 + 1] = GetGeometry()[i].GetDof(NODAL_VAUX_Y, x_pos + 1).EquationId(); - rResult[i * 3 + 2] = GetGeometry()[i].GetDof(NODAL_VAUX_Z, x_pos + 2).EquationId(); + if constexpr (std::is_same_v) { + const unsigned int pos = (this->GetGeometry())[0].GetDofPosition(NODAL_MAUX); + for (unsigned int i = 0; i < 2; i++) { + rResult[i] = (this->GetGeometry())[i].GetDof(NODAL_MAUX, pos).EquationId(); + } + } else if constexpr (std::is_same_v>) { + const unsigned int x_pos = (this->GetGeometry())[0].GetDofPosition(NODAL_VAUX_X); + for (unsigned int i = 0; i < 2; i++) { + rResult[i * 3] = GetGeometry()[i].GetDof(NODAL_VAUX_X, x_pos).EquationId(); + rResult[i * 3 + 1] = GetGeometry()[i].GetDof(NODAL_VAUX_Y, x_pos + 1).EquationId(); + rResult[i * 3 + 2] = GetGeometry()[i].GetDof(NODAL_VAUX_Z, x_pos + 2).EquationId(); + } } } -template <> -void EmbeddedNodalVariableCalculationElementSimplex::GetDofList( +template +void EmbeddedNodalVariableCalculationElementSimplex::GetDofList( DofsVectorType &rElementalDofList, const ProcessInfo &rCurrentProcessInfo) const { - if (rElementalDofList.size() != 2) { - rElementalDofList.resize(2); - } + std::size_t expected_matrix_size = 0; - for (unsigned int i = 0; i < 2; i++) { - rElementalDofList[i] = (this->GetGeometry())[i].pGetDof(NODAL_MAUX); + if constexpr (std::is_same_v) { + expected_matrix_size = 2; + } else if constexpr (std::is_same_v>) { + expected_matrix_size = 6; + } else { + KRATOS_ERROR << "Unsupported variable type" << std::endl; } -} -template <> -void EmbeddedNodalVariableCalculationElementSimplex>::GetDofList( - DofsVectorType &rElementalDofList, - const ProcessInfo &rCurrentProcessInfo) const -{ - if (rElementalDofList.size() != 6) { - rElementalDofList.resize(6); + if (rElementalDofList.size() != expected_matrix_size) { + rElementalDofList.resize(expected_matrix_size); } for (unsigned int i = 0; i < 2; i++) { - rElementalDofList[i * 3] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_X); - rElementalDofList[i * 3 + 1] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_Y); - rElementalDofList[i * 3 + 2] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_Z); + if constexpr (std::is_same_v) { + rElementalDofList[i] = (this->GetGeometry())[i].pGetDof(NODAL_MAUX); + } else if constexpr (std::is_same_v>) { + rElementalDofList[i * 3] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_X); + rElementalDofList[i * 3 + 1] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_Y); + rElementalDofList[i * 3 + 2] = (this->GetGeometry())[i].pGetDof(NODAL_VAUX_Z); + } } } @@ -254,7 +230,7 @@ const array_1d EmbeddedNodalVariableCalculationElementSimplex; -template class EmbeddedNodalVariableCalculationElementSimplex>; +template class KRATOS_API(KRATOS_CORE) EmbeddedNodalVariableCalculationElementSimplex; +template class KRATOS_API(KRATOS_CORE) EmbeddedNodalVariableCalculationElementSimplex>; } // namespace Kratos. diff --git a/kratos/elements/mesh_element.h b/kratos/elements/mesh_element.h index b2fdb58b2cb..56b4137ae84 100644 --- a/kratos/elements/mesh_element.h +++ b/kratos/elements/mesh_element.h @@ -42,7 +42,7 @@ namespace Kratos * @details Inherits all method from base element, and overrides the Clone() and Create() methods * @author Vicente Mataix Ferrandiz */ -class MeshElement +class KRATOS_API(KRATOS_CORE) MeshElement : public Element { public: diff --git a/kratos/expression/binary_expression.cpp b/kratos/expression/binary_expression.cpp index 88e0646a290..840cb9be869 100644 --- a/kratos/expression/binary_expression.cpp +++ b/kratos/expression/binary_expression.cpp @@ -130,10 +130,10 @@ std::string BinaryExpression::Info() const } // template instantiations -template class BinaryExpression; -template class BinaryExpression; -template class BinaryExpression; -template class BinaryExpression; -template class BinaryExpression; +template class KRATOS_API(KRATOS_CORE) BinaryExpression; +template class KRATOS_API(KRATOS_CORE) BinaryExpression; +template class KRATOS_API(KRATOS_CORE) BinaryExpression; +template class KRATOS_API(KRATOS_CORE) BinaryExpression; +template class KRATOS_API(KRATOS_CORE) BinaryExpression; } // namespace Kratos \ No newline at end of file diff --git a/kratos/expression/container_expression.cpp b/kratos/expression/container_expression.cpp index 0c7a90bd80e..197fe6132d3 100644 --- a/kratos/expression/container_expression.cpp +++ b/kratos/expression/container_expression.cpp @@ -329,7 +329,7 @@ KRATOS_DEFINE_BINARY_CONTAINER_EXPRESSION_OPERATOR(operator/) } #define KRATOS_INSTANTIATE_CONTAINER_EXPRESSION_OPERATOR_GROUP(CONTAINER_TYPE, MESH_TYPE) \ - template class ContainerExpression; \ + template class KRATOS_API(KRATOS_CORE) ContainerExpression; \ KRATOS_INSTANTIATE_BINARY_CONTAINER_EXPRESSION_OPERATOR(operator+, CONTAINER_TYPE, MESH_TYPE) \ KRATOS_INSTANTIATE_BINARY_CONTAINER_EXPRESSION_OPERATOR(operator-, CONTAINER_TYPE, MESH_TYPE) \ KRATOS_INSTANTIATE_BINARY_CONTAINER_EXPRESSION_OPERATOR(operator*, CONTAINER_TYPE, MESH_TYPE) \ diff --git a/kratos/expression/variable_expression_data_io.cpp b/kratos/expression/variable_expression_data_io.cpp index 55e7e3449ae..bc4b21eb6b3 100644 --- a/kratos/expression/variable_expression_data_io.cpp +++ b/kratos/expression/variable_expression_data_io.cpp @@ -539,22 +539,22 @@ void VariableExpressionDataIO>::Read( } // template instantiations -template class VariableExpressionDataIO; -template class VariableExpressionDataIO; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO; -template class VariableExpressionDataIO; - -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>>; -template class VariableExpressionDataIO>>; -template class VariableExpressionDataIO>>; -template class VariableExpressionDataIO>>; -template class VariableExpressionDataIO>; -template class VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO; + +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; +template class KRATOS_API(KRATOS_CORE) VariableExpressionDataIO>; } // namespace Kratos \ No newline at end of file diff --git a/kratos/mpi/CMakeLists.txt b/kratos/mpi/CMakeLists.txt index 822ad2ad5b1..cd6a2bea2fa 100644 --- a/kratos/mpi/CMakeLists.txt +++ b/kratos/mpi/CMakeLists.txt @@ -39,7 +39,7 @@ endif(${KRATOS_BUILD_TESTING} MATCHES ON) ## Define library for the C++ layer add_library(KratosMPICore SHARED ${KRATOS_MPI_SOURCES}) target_link_libraries(KratosMPICore PUBLIC KratosCore ${MPI_LIBRARIES} ) -#set_target_properties(KratosMPICore PROPERTIES COMPILE_DEFINITIONS "KRATOS_MPI_CORE=IMPORT,API") +set_target_properties(KratosMPICore PROPERTIES COMPILE_DEFINITIONS "KRATOS_MPI_CORE=IMPORT,API") ## Define library for the Python interface layer pybind11_add_module(KratosMPI MODULE THIN_LTO ${KRATOS_MPI_PYTHON_SOURCES}) diff --git a/kratos/mpi/tests/test_utilities/mpi_test_environment.h b/kratos/mpi/tests/test_utilities/mpi_test_environment.h index 4a7b97390b4..c9069c4ae3a 100644 --- a/kratos/mpi/tests/test_utilities/mpi_test_environment.h +++ b/kratos/mpi/tests/test_utilities/mpi_test_environment.h @@ -27,7 +27,7 @@ namespace Kratos::Testing * This Fixture creates a new kernel instance for kratos, so the test is able to interact with the database. * Its called this way to that all tests belong to a existing kernel fixture */ -class KratosMpiTestEnv : public ::testing::Environment +class KRATOS_API(KRATOS_MPI_CORE) KratosMpiTestEnv : public ::testing::Environment { public: ~KratosMpiTestEnv() override {} diff --git a/kratos/mpi/tests/test_utilities/mpi_test_suite.h b/kratos/mpi/tests/test_utilities/mpi_test_suite.h index 22658fe8f15..e911e133391 100644 --- a/kratos/mpi/tests/test_utilities/mpi_test_suite.h +++ b/kratos/mpi/tests/test_utilities/mpi_test_suite.h @@ -25,7 +25,7 @@ namespace Kratos::Testing /* * Suite for the mpi testing environment (mKernel(true)) */ -class KratosMPICoreFastSuite : public KratosCoreFastSuite +class KRATOS_API(KRATOS_MPI_CORE) KratosMPICoreFastSuite : public KratosCoreFastSuite { public: void TearDown() override; diff --git a/kratos/mpi/utilities/data_communicator_factory.h b/kratos/mpi/utilities/data_communicator_factory.h index 41a32241ed4..f14c4ce4723 100644 --- a/kratos/mpi/utilities/data_communicator_factory.h +++ b/kratos/mpi/utilities/data_communicator_factory.h @@ -47,7 +47,7 @@ namespace DataCommunicatorFactory * @param rNewCommunicatorName The name to register the new DataCommunicator with. * @return A reference to the duplicate DataCommunicator. */ -const DataCommunicator& DuplicateAndRegister( +KRATOS_API(KRATOS_MPI_CORE) const DataCommunicator& DuplicateAndRegister( const DataCommunicator& rOriginalCommunicator, const std::string& rNewCommunicatorName); @@ -74,7 +74,7 @@ const DataCommunicator& DuplicateAndRegister( * @param rNewCommunicatorName The name to register the new DataCommunicator with. * @return A reference to the split DataCommunicator. */ -const DataCommunicator& SplitAndRegister( +KRATOS_API(KRATOS_MPI_CORE) const DataCommunicator& SplitAndRegister( const DataCommunicator& rOriginalCommunicator, int Color, int Key, @@ -92,7 +92,7 @@ const DataCommunicator& SplitAndRegister( * @param rNewCommunicatorName The name to register the new DataCommunicator with. * @return A reference to the new DataCommunicator. */ -const DataCommunicator& CreateFromRanksAndRegister( +KRATOS_API(KRATOS_MPI_CORE) const DataCommunicator& CreateFromRanksAndRegister( const DataCommunicator& rOriginalCommunicator, const std::vector& rRanks, const std::string& rNewCommunicatorName); @@ -114,7 +114,7 @@ const DataCommunicator& CreateFromRanksAndRegister( * @param rNewCommunicatorName The name to register the new DataCommunicator with. * @return A reference to the new DataCommunicator. */ -const DataCommunicator& CreateUnionAndRegister( +KRATOS_API(KRATOS_MPI_CORE) const DataCommunicator& CreateUnionAndRegister( const DataCommunicator& rFirstDataCommunicator, const DataCommunicator& rSecondDataCommunicator, const DataCommunicator& rParentDataCommunicator, @@ -137,7 +137,7 @@ const DataCommunicator& CreateUnionAndRegister( * @param rNewCommunicatorName The name to register the new DataCommunicator with. * @return A reference to the new DataCommunicator. */ -const DataCommunicator& CreateIntersectionAndRegister( +KRATOS_API(KRATOS_MPI_CORE) const DataCommunicator& CreateIntersectionAndRegister( const DataCommunicator& rFirstDataCommunicator, const DataCommunicator& rSecondDataCommunicator, const DataCommunicator& rParentDataCommunicator, diff --git a/kratos/mpi/utilities/distributed_model_part_initializer.h b/kratos/mpi/utilities/distributed_model_part_initializer.h index a9b062fba5c..3c2d3f95278 100644 --- a/kratos/mpi/utilities/distributed_model_part_initializer.h +++ b/kratos/mpi/utilities/distributed_model_part_initializer.h @@ -42,7 +42,7 @@ namespace Kratos * Note that all the entities are still only on the source rank, * no partitioning is done! */ -class DistributedModelPartInitializer +class KRATOS_API(KRATOS_MPI_CORE) DistributedModelPartInitializer { public: ///@name Type Definitions diff --git a/kratos/processes/find_global_nodal_entity_neighbours_process.cpp b/kratos/processes/find_global_nodal_entity_neighbours_process.cpp index 65d50748817..9959e12395f 100644 --- a/kratos/processes/find_global_nodal_entity_neighbours_process.cpp +++ b/kratos/processes/find_global_nodal_entity_neighbours_process.cpp @@ -33,28 +33,28 @@ namespace Kratos { -template <> -ModelPart::ConditionsContainerType& FindGlobalNodalEntityNeighboursProcess::GetContainer(ModelPart& rModelPart) +template +TContainerType& FindGlobalNodalEntityNeighboursProcess::GetContainer(ModelPart& rModelPart) { - return rModelPart.Conditions(); -} - -template <> -ModelPart::ElementsContainerType& FindGlobalNodalEntityNeighboursProcess::GetContainer(ModelPart& rModelPart) -{ - return rModelPart.Elements(); -} - -template <> -const Variable::GlobalEntityPointersVectorType>& FindGlobalNodalEntityNeighboursProcess::GetDefaultOutputVariable() -{ - return NEIGHBOUR_CONDITIONS; + if constexpr (std::is_same_v) { + return rModelPart.Elements(); + } else if constexpr (std::is_same_v) { + return rModelPart.Conditions(); + } else { + KRATOS_ERROR << "Unsupported container type" << std::endl; + } } -template <> -const Variable::GlobalEntityPointersVectorType>& FindGlobalNodalEntityNeighboursProcess::GetDefaultOutputVariable() +template +const Variable::GlobalEntityPointersVectorType>& FindGlobalNodalEntityNeighboursProcess::GetDefaultOutputVariable() { - return NEIGHBOUR_ELEMENTS; + if constexpr (std::is_same_v) { + return NEIGHBOUR_ELEMENTS; + } else if constexpr (std::is_same_v) { + return NEIGHBOUR_CONDITIONS; + } else { + KRATOS_ERROR << "Unsupported container type" << std::endl; + } } template @@ -97,6 +97,14 @@ FindGlobalNodalEntityNeighboursProcess::FindGl mModelPartName = rModelPart.FullName(); } +template +FindGlobalNodalEntityNeighboursProcess::FindGlobalNodalEntityNeighboursProcess( + ModelPart& rModelPart) + : mrModel(rModelPart.GetModel()) +{ + KRATOS_ERROR << "Invalid Container" << std::endl; +} + template FindGlobalNodalEntityNeighboursProcess::FindGlobalNodalEntityNeighboursProcess( ModelPart& rModelPart, @@ -248,7 +256,7 @@ typename FindGlobalNodalEntityNeighboursProcess::IdMapType FindG } // template instantiations -template class FindGlobalNodalEntityNeighboursProcess; -template class FindGlobalNodalEntityNeighboursProcess; +template class KRATOS_API(KRATOS_CORE) FindGlobalNodalEntityNeighboursProcess; +template class KRATOS_API(KRATOS_CORE) FindGlobalNodalEntityNeighboursProcess; } // namespace Kratos. diff --git a/kratos/processes/find_global_nodal_neighbours_for_entities_process.cpp b/kratos/processes/find_global_nodal_neighbours_for_entities_process.cpp index aba429bb257..9f25f64a52d 100644 --- a/kratos/processes/find_global_nodal_neighbours_for_entities_process.cpp +++ b/kratos/processes/find_global_nodal_neighbours_for_entities_process.cpp @@ -35,40 +35,40 @@ namespace Kratos { -template <> -ModelPart::ElementsContainerType& FindNodalNeighboursForEntitiesProcess::GetContainer() -{ - return this->mrModelPart.Elements(); -} -template <> -ModelPart::ConditionsContainerType& FindNodalNeighboursForEntitiesProcess::GetContainer() +template +TContainerType& FindNodalNeighboursForEntitiesProcess::GetContainer() { - return this->mrModelPart.Conditions(); + if constexpr (std::is_same_v) { + return this->mrModelPart.Elements(); + } else if constexpr (std::is_same_v) { + return this->mrModelPart.Conditions(); + } else { + KRATOS_ERROR << "Unsupported container type" << std::endl; + } } -template <> -void FindNodalNeighboursForEntitiesProcess::AddHangingNodeIds( +template +void FindNodalNeighboursForEntitiesProcess::AddHangingNodeIds( std::unordered_map>>& rNeighbourIds) const { - // do nothing in here since mettis partitioner is based on elements, there + // do nothing for elements here since mettis partitioner is based on elements, there // cannot be any hanging nodes. If metis partitioner is based on conditions, then // this process need not to be used with elements, so this method won't be called. -} -template <> -void FindNodalNeighboursForEntitiesProcess::AddHangingNodeIds( - std::unordered_map>>& rNeighbourIds) const -{ - // if the metis partitioner is based on conditions, this will still work, - // but with this additional cost of checking. - - // this loop cannot run in parallel, since std::unordered_maps adds the key if it - // is not found, otherwise do nothing. - for (const NodeType& rNode : mrModelPart.Nodes()) { - const int i_owner_rank = rNode.FastGetSolutionStepValue(PARTITION_INDEX); - const auto node_id = rNode.Id(); - rNeighbourIds[i_owner_rank][node_id]; + if constexpr (std::is_same_v) { + // if the metis partitioner is based on conditions, this will still work, + // but with this additional cost of checking. + + // this loop cannot run in parallel, since std::unordered_maps adds the key if it + // is not found, otherwise do nothing. + for (const NodeType& rNode : mrModelPart.Nodes()) { + const int i_owner_rank = rNode.FastGetSolutionStepValue(PARTITION_INDEX); + const auto node_id = rNode.Id(); + rNeighbourIds[i_owner_rank][node_id]; + } + } else { + KRATOS_ERROR << "Unsupported container type" << std::endl; } } @@ -320,7 +320,7 @@ void FindNodalNeighboursForEntitiesProcess::AddUnique( // template instantiations -template class FindNodalNeighboursForEntitiesProcess; -template class FindNodalNeighboursForEntitiesProcess; +template class KRATOS_API(KRATOS_CORE) FindNodalNeighboursForEntitiesProcess; +template class KRATOS_API(KRATOS_CORE) FindNodalNeighboursForEntitiesProcess; } // namespace Kratos. diff --git a/kratos/processes/simple_mortar_mapper_process.cpp b/kratos/processes/simple_mortar_mapper_process.cpp index 4e7d664b9a9..2ec7a368c2e 100644 --- a/kratos/processes/simple_mortar_mapper_process.cpp +++ b/kratos/processes/simple_mortar_mapper_process.cpp @@ -1211,16 +1211,16 @@ const Parameters SimpleMortarMapperProcess>; -template class SimpleMortarMapperProcess<3, 3, Variable>; -template class SimpleMortarMapperProcess<3, 4, Variable>; -template class SimpleMortarMapperProcess<3, 3, Variable, 4>; -template class SimpleMortarMapperProcess<3, 4, Variable, 3>; - -template class SimpleMortarMapperProcess<2, 2, Variable>>; -template class SimpleMortarMapperProcess<3, 3, Variable>>; -template class SimpleMortarMapperProcess<3, 4, Variable>>; -template class SimpleMortarMapperProcess<3, 3, Variable>, 4>; -template class SimpleMortarMapperProcess<3, 4, Variable>, 3>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<2, 2, Variable>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 3, Variable>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 4, Variable>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 3, Variable, 4>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 4, Variable, 3>; + +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<2, 2, Variable>>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 3, Variable>>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 4, Variable>>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 3, Variable>, 4>; +template class KRATOS_API(KRATOS_CORE) SimpleMortarMapperProcess<3, 4, Variable>, 3>; } // namespace Kratos. \ No newline at end of file diff --git a/kratos/spatial_containers/point_object.cpp b/kratos/spatial_containers/point_object.cpp index d72c9e42303..8cba8fec569 100644 --- a/kratos/spatial_containers/point_object.cpp +++ b/kratos/spatial_containers/point_object.cpp @@ -100,10 +100,10 @@ void PointObject::Check() const /***********************************************************************************/ /***********************************************************************************/ -template class PointObject; -template class PointObject; -template class PointObject; -template class PointObject; -template class PointObject>; +template class KRATOS_API(KRATOS_CORE) PointObject; +template class KRATOS_API(KRATOS_CORE) PointObject; +template class KRATOS_API(KRATOS_CORE) PointObject; +template class KRATOS_API(KRATOS_CORE) PointObject; +template class KRATOS_API(KRATOS_CORE) PointObject>; } // namespace Kratos. \ No newline at end of file diff --git a/kratos/utilities/divide_geometry.cpp b/kratos/utilities/divide_geometry.cpp index e52af65c20d..ffdef64e382 100644 --- a/kratos/utilities/divide_geometry.cpp +++ b/kratos/utilities/divide_geometry.cpp @@ -162,6 +162,6 @@ namespace Kratos return mNegativeInterfacesParentIds; } - template class DivideGeometry; - template class DivideGeometry; + template class KRATOS_API(KRATOS_CORE) DivideGeometry; + template class KRATOS_API(KRATOS_CORE) DivideGeometry; }; diff --git a/kratos/utilities/divide_tetrahedra_3d_4.cpp b/kratos/utilities/divide_tetrahedra_3d_4.cpp index 68178969c33..f0a33d9c69f 100644 --- a/kratos/utilities/divide_tetrahedra_3d_4.cpp +++ b/kratos/utilities/divide_tetrahedra_3d_4.cpp @@ -361,7 +361,7 @@ namespace Kratos return NodeKey >= num_nodes || mNodeIsCut[NodeKey]; } - template class DivideTetrahedra3D4; - template class DivideTetrahedra3D4; + template class KRATOS_API(KRATOS_CORE) DivideTetrahedra3D4; + template class KRATOS_API(KRATOS_CORE) DivideTetrahedra3D4; }; diff --git a/kratos/utilities/divide_triangle_2d_3.cpp b/kratos/utilities/divide_triangle_2d_3.cpp index 03e140239a1..775c99ead89 100644 --- a/kratos/utilities/divide_triangle_2d_3.cpp +++ b/kratos/utilities/divide_triangle_2d_3.cpp @@ -377,7 +377,6 @@ namespace Kratos } - template class DivideTriangle2D3; - template class DivideTriangle2D3; - + template class KRATOS_API(KRATOS_CORE) DivideTriangle2D3; + template class KRATOS_API(KRATOS_CORE) DivideTriangle2D3; }; diff --git a/kratos/utilities/divide_triangle_3d_3.cpp b/kratos/utilities/divide_triangle_3d_3.cpp index 5fb8d084365..27fdde7baae 100644 --- a/kratos/utilities/divide_triangle_3d_3.cpp +++ b/kratos/utilities/divide_triangle_3d_3.cpp @@ -50,7 +50,7 @@ typename DivideTriangle3D3::IndexedPointGeometryPointerType DivideTr this->mAuxPointsContainer(I1)); } -template class DivideTriangle3D3; -template class DivideTriangle3D3; +template class KRATOS_API(KRATOS_CORE) DivideTriangle3D3; +template class KRATOS_API(KRATOS_CORE) DivideTriangle3D3; }; diff --git a/kratos/utilities/entities_utilities.cpp b/kratos/utilities/entities_utilities.cpp index b0e632102c8..ae360043d84 100755 --- a/kratos/utilities/entities_utilities.cpp +++ b/kratos/utilities/entities_utilities.cpp @@ -186,8 +186,8 @@ void EntitityIdentifier::GenerateTemplatedTypes(const std::string& rNam /***********************************************************************************/ /***********************************************************************************/ -template class EntitityIdentifier; -template class EntitityIdentifier; +template class KRATOS_API(KRATOS_CORE) EntitityIdentifier; +template class KRATOS_API(KRATOS_CORE) EntitityIdentifier; /***********************************************************************************/ /***********************************************************************************/