@@ -40,45 +40,28 @@ void CConjugateHeatInterface::GetDonor_Variable(CSolver *donor_solution, CGeomet
4040 const CConfig *donor_config, unsigned long Marker_Donor,
4141 unsigned long Vertex_Donor, unsigned long Point_Donor) {
4242
43- unsigned short nDim, iDim;
44- unsigned long iPoint, PointNormal;
43+ const auto nDim = donor_geometry->GetnDim ();
4544
46- su2double *Coord, *Coord_Normal, *Normal, *Edge_Vector, dist, dist2, Area,
47- Twall, Tnormal, dTdn, rho_cp_solid, Prandtl_Lam, laminar_viscosity,
45+ su2double Twall, Tnormal, dTdn, rho_cp_solid, Prandtl_Lam, laminar_viscosity,
4846 thermal_diffusivity, thermal_conductivity=0.0 , thermal_conductivityND,
4947 heat_flux_density=0.0 , conductivity_over_dist=0.0 ;
5048
51- nDim = donor_geometry->GetnDim ();
52-
53- Edge_Vector = new su2double[nDim];
54-
5549 /* --- Check whether the current zone is a solid zone or a fluid zone ---*/
5650
57- bool compressible_flow = ((donor_config->GetKind_Solver () == NAVIER_STOKES)
58- || (donor_config->GetKind_Solver () == RANS)
59- || (donor_config->GetKind_Solver () == DISC_ADJ_NAVIER_STOKES)
60- || (donor_config->GetKind_Solver () == DISC_ADJ_RANS));
61- bool incompressible_flow = (((donor_config->GetKind_Solver () == INC_NAVIER_STOKES)
62- || (donor_config->GetKind_Solver () == INC_RANS)
63- || (donor_config->GetKind_Solver () == DISC_ADJ_INC_NAVIER_STOKES)
64- || (donor_config->GetKind_Solver () == DISC_ADJ_INC_RANS))
65- && (donor_config->GetEnergy_Equation ()));
66- bool heat_equation = ((donor_config->GetKind_Solver () == HEAT_EQUATION)
67- || (donor_config->GetKind_Solver () == DISC_ADJ_HEAT));
51+ const bool compressible_flow = (donor_config->GetKind_Regime () == COMPRESSIBLE);
52+ const bool incompressible_flow = (donor_config->GetKind_Regime () == INCOMPRESSIBLE) && donor_config->GetEnergy_Equation ();
53+ const bool heat_equation = (donor_config->GetKind_Solver () == HEAT_EQUATION) ||
54+ (donor_config->GetKind_Solver () == DISC_ADJ_HEAT);
6855
69- Coord = donor_geometry->nodes ->GetCoord (Point_Donor);
56+ const auto Coord = donor_geometry->nodes ->GetCoord (Point_Donor);
57+ const auto PointNormal = donor_geometry->vertex [Marker_Donor][Vertex_Donor]->GetNormal_Neighbor ();
58+ const auto Coord_Normal = donor_geometry->nodes ->GetCoord (PointNormal);
7059
71- Normal = donor_geometry->vertex [Marker_Donor][Vertex_Donor]->GetNormal ();
72- PointNormal = donor_geometry->vertex [Marker_Donor][Vertex_Donor]->GetNormal_Neighbor ();
73- Coord_Normal = donor_geometry->nodes ->GetCoord (PointNormal);
60+ Twall = 0.0 ; Tnormal = 0.0 ; dTdn = 0.0 ;
7461
75- Twall = 0.0 ; Tnormal = 0.0 ; dTdn = 0.0 ; dist2 = 0.0 ; Area = 0.0 ;
76-
77- for (iDim = 0 ; iDim < nDim; iDim++) {
78- Edge_Vector[iDim] = Coord_Normal[iDim] - Coord[iDim];
79- }
80- dist = GeometryToolbox::Norm (nDim, Edge_Vector);
81- Area = GeometryToolbox::Norm (nDim, Normal);
62+ su2double Edge_Vector[3 ] = {0.0 };
63+ GeometryToolbox::Distance (nDim, Coord_Normal, Coord, Edge_Vector);
64+ su2double dist = GeometryToolbox::Norm (nDim, Edge_Vector);
8265
8366 /* --- Retrieve temperature solution and its gradient ---*/
8467
@@ -101,6 +84,8 @@ void CConjugateHeatInterface::GetDonor_Variable(CSolver *donor_solution, CGeomet
10184 Tnormal = donor_solution->GetNodes ()->GetSolution (PointNormal,0 );
10285
10386 // TODO: Check if these improve accuracy, if needed at all
87+ // const auto Normal = donor_geometry->vertex[Marker_Donor][Vertex_Donor]->GetNormal();
88+ // su2double Area = GeometryToolbox::Norm(nDim, Normal);
10489 // for (iDim = 0; iDim < nDim; iDim++) {
10590 // dTdn += (Twall - Tnormal)/dist * (Edge_Vector[iDim]/dist) * (Normal[iDim]/Area);
10691 // }
@@ -136,7 +121,7 @@ void CConjugateHeatInterface::GetDonor_Variable(CSolver *donor_solution, CGeomet
136121 }
137122 else if (incompressible_flow) {
138123
139- iPoint = donor_geometry->vertex [Marker_Donor][Vertex_Donor]->GetNode ();
124+ const auto iPoint = donor_geometry->vertex [Marker_Donor][Vertex_Donor]->GetNode ();
140125
141126 thermal_conductivityND = donor_solution->GetNodes ()->GetThermalConductivity (iPoint);
142127 heat_flux_density = thermal_conductivityND*dTdn;
@@ -188,10 +173,6 @@ void CConjugateHeatInterface::GetDonor_Variable(CSolver *donor_solution, CGeomet
188173 Donor_Variable[3 ] = Tnormal*donor_config->GetTemperature_Ref ();
189174 }
190175
191-
192-
193- delete [] Edge_Vector;
194-
195176}
196177
197178void CConjugateHeatInterface::SetTarget_Variable (CSolver *target_solution, CGeometry *target_geometry,
0 commit comments