@@ -121,6 +121,12 @@ void SimpleMortarMapperProcess<TDim, TNumNodes, TVarType, TNumNodesMaster>:: Exe
121121{
122122 KRATOS_TRY;
123123
124+ // We reset the database if needed
125+ const bool update_interface = mThisParameters [" update_interface" ].GetBool ();
126+ if (update_interface) {
127+ this ->UpdateInterface ();
128+ }
129+
124130 if (mpThisLinearSolver == nullptr )
125131 ExecuteExplicitMapping ();
126132 else
@@ -883,6 +889,28 @@ void SimpleMortarMapperProcess<TDim, TNumNodes, TVarType, TNumNodesMaster>::Exec
883889/* **********************************************************************************/
884890/* **********************************************************************************/
885891
892+ template < SizeType TDim, SizeType TNumNodes, class TVarType , const SizeType TNumNodesMaster >
893+ void SimpleMortarMapperProcess<TDim, TNumNodes, TVarType, TNumNodesMaster>::UpdateInterface()
894+ {
895+ // Iterate in the conditions
896+ auto &r_destination_conditions_array = mDestinationModelPart .Conditions ();
897+ #pragma omp parallel for
898+ for (int i = 0 ; i < static_cast <int >(r_destination_conditions_array.size ()); ++i) {
899+ auto it_cond = r_destination_conditions_array.begin () + i;
900+ // Reset the index set
901+ if (it_cond->Has (INDEX_SET)) {
902+ (it_cond->GetValue (INDEX_SET))->clear ();
903+ }
904+ // Reset the index set
905+ if (it_cond->Has (INDEX_MAP)) {
906+ (it_cond->GetValue (INDEX_SET))->clear ();
907+ }
908+ }
909+ }
910+
911+ /* **********************************************************************************/
912+ /* **********************************************************************************/
913+
886914template < SizeType TDim, SizeType TNumNodes, class TVarType , const SizeType TNumNodesMaster >
887915Parameters SimpleMortarMapperProcess<TDim, TNumNodes, TVarType, TNumNodesMaster>::GetDefaultParameters()
888916{
@@ -901,6 +929,7 @@ Parameters SimpleMortarMapperProcess<TDim, TNumNodes, TVarType, TNumNodesMaster>
901929 "destination_variable" : "",
902930 "origin_variable_historical" : true,
903931 "destination_variable_historical" : true,
932+ "update_interface" : false,
904933 "search_parameters" : {
905934 "allocation_size" : 1000,
906935 "bucket_size" : 4,
0 commit comments