31#include "../variables/CAdjEulerVariable.hpp"
119 unsigned short iMesh,
120 unsigned long Iteration)
override;
171 unsigned short iMesh,
172 unsigned short iRKStep)
final;
186 unsigned short iMesh)
final;
200 unsigned short iMesh)
override;
214 unsigned short iMesh)
final;
233 unsigned long val_vertex,
234 unsigned short val_var,
236 DonorAdjVar[val_marker][val_vertex][val_var] = val_value;
246 unsigned long val_vertex,
247 unsigned short val_var)
const {
248 return DonorAdjVar[val_marker][val_vertex][val_var];
266 unsigned long val_vertex,
267 unsigned long val_index)
final {
290 unsigned short iMesh,
306 unsigned short val_marker)
override;
322 unsigned short val_marker)
final;
338 unsigned short val_marker)
final;
355 unsigned short val_marker,
356 bool val_inlet_surface)
final;
372 unsigned short val_marker)
final;
388 unsigned short val_marker)
final;
404 unsigned short val_marker)
final;
420 unsigned short val_marker)
final;
435 unsigned short val_marker)
final;
451 unsigned short val_marker)
final;
468 unsigned short val_marker)
final;
484 unsigned short val_marker)
final;
496 unsigned short iRKStep)
final;
530 unsigned short iMesh,
531 unsigned short iRKStep,
532 unsigned short RunTime_EqSystem,
533 bool Output)
override;
566 unsigned long val_vertex)
const final{
577 unsigned long val_vertex,
637 unsigned short iRKStep,
638 unsigned short iMesh,
639 unsigned short RunTime_EqSystem)
final;
651 unsigned long TimeIter)
final;
665 bool val_update_geo)
final;
Headers of the CSolver class which is inherited by all of the other solvers.
Main class for defining the Euler's adjoint flow solver.
Definition CAdjEulerSolver.hpp:39
void SetAuxVar_Surface_Gradient(CGeometry *geometry, const CConfig *config)
Compute the Least Squares gradient of an auxiliar variable on the profile surface.
Definition CAdjEulerSolver.cpp:3936
su2double * FlowPrimVar_i
Store the flow solution at point i.
Definition CAdjEulerSolver.hpp:64
void BC_Engine_Inflow(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the engine inflow adjoint boundary condition.
Definition CAdjEulerSolver.cpp:3345
su2double PsiRho_Inf
PsiRho variable at the infinity.
Definition CAdjEulerSolver.hpp:42
su2double GetTotal_Sens_Mach() const final
Set the total Mach number sensitivity coefficient.
Definition CAdjEulerSolver.hpp:594
su2double GetTotal_Sens_Temp() const final
Set the total farfield temperature sensitivity coefficient.
Definition CAdjEulerSolver.hpp:615
su2double GetPsiRho_Inf(void) const final
Compute adjoint density at the infinity.
Definition CAdjEulerSolver.hpp:143
void BC_Sym_Plane(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose via the residual the adjoint symmetry boundary condition.
Definition CAdjEulerSolver.cpp:2369
void Upwind_Residual(CGeometry *geometry, CSolver **solver_container, CNumerics **numerics_container, CConfig *config, unsigned short iMesh) final
Compute the spatial integration using a upwind scheme.
Definition CAdjEulerSolver.cpp:1077
su2double GetPhi_Inf(unsigned short val_dim) const final
Compute Phi (adjoint velocity) at the infinity.
Definition CAdjEulerSolver.hpp:156
void BC_Supersonic_Outlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the supersonic outlet boundary condition.
Definition CAdjEulerSolver.cpp:2755
void Centered_Residual(CGeometry *geometry, CSolver **solver_container, CNumerics **numerics_container, CConfig *config, unsigned short iMesh, unsigned short iRKStep) final
Compute the spatial integration using a centered scheme for the adjoint equations.
Definition CAdjEulerSolver.cpp:1002
su2double * Phi_Inf
Phi vector at the infinity.
Definition CAdjEulerSolver.hpp:44
~CAdjEulerSolver(void) override
Destructor of the class.
Definition CAdjEulerSolver.cpp:339
su2double * Sens_AoA
Angle of attack sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:47
void BC_Supersonic_Inlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the supersonic inlet boundary condition.
Definition CAdjEulerSolver.cpp:2636
su2double * Sens_BPress
Back pressure sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:51
su2double * Sens_Press
Pressure sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:49
void BC_Engine_Exhaust(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the engine exhaust boundary condition.
Definition CAdjEulerSolver.cpp:3468
unsigned long GetDonorGlobalIndex(unsigned short val_marker, unsigned long val_vertex) const final
Value of the characteristic global index at the boundaries.
Definition CAdjEulerSolver.hpp:257
su2double PsiE_Inf
PsiE variable at the infinity.
Definition CAdjEulerSolver.hpp:43
void LoadRestart(CGeometry **geometry, CSolver ***solver, CConfig *config, int val_iter, bool val_update_geo) final
Load a solution from a restart file.
Definition CAdjEulerSolver.cpp:3834
void SetFarfield_AoA(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh, bool Output)
Update the AoA and freestream velocity at the farfield.
Definition CAdjEulerSolver.cpp:2118
su2double GetTotal_Sens_Geo() const final
Provide the total shape sensitivity coefficient.
Definition CAdjEulerSolver.hpp:587
su2double Total_Sens_Geo
Total shape sensitivity coefficient for all the boundaries.
Definition CAdjEulerSolver.hpp:56
su2double ** CSensitivity
Shape sensitivity coefficient for each boundary and vertex.
Definition CAdjEulerSolver.hpp:52
void BC_Outlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the outlet boundary condition.
Definition CAdjEulerSolver.cpp:3054
su2double * Sens_Geo
Shape sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:48
void Preprocessing(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh, unsigned short iRKStep, unsigned short RunTime_EqSystem, bool Output) override
Initialize the residual vectors.
Definition CAdjEulerSolver.cpp:913
void BC_ActDisk_Inlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose an actuator disk inlet boundary condition.
Definition CAdjEulerSolver.cpp:3546
void SetResidual_DualTime(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iRKStep, unsigned short iMesh, unsigned short RunTime_EqSystem) final
Set the total residual adding the term that comes from the Dual Time Strategy.
Definition CAdjEulerSolver.cpp:3773
su2double Total_Sens_BPress
Total sensitivity to back pressure.
Definition CAdjEulerSolver.hpp:59
void SetDonorAdjVar(unsigned short val_marker, unsigned long val_vertex, unsigned short val_var, su2double val_value)
Value of the characteristic variables at the boundaries.
Definition CAdjEulerSolver.hpp:232
su2double ** Jacobian_Axisymmetric
Storage for axisymmetric Jacobian.
Definition CAdjEulerSolver.hpp:61
su2double GetCSensitivity(unsigned short val_marker, unsigned long val_vertex) const final
Get the shape sensitivity coefficient.
Definition CAdjEulerSolver.hpp:565
su2double Gamma
Fluid's Gamma constant (ratio of specific heats).
Definition CAdjEulerSolver.hpp:62
void ExplicitRK_Iteration(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iRKStep) final
Update the solution using a Runge-Kutta strategy.
Definition CAdjEulerSolver.cpp:1364
vector< vector< vector< su2double > > > DonorAdjVar
Value of the donor variables at each boundary.
Definition CAdjEulerSolver.hpp:53
bool Update_ACoeff
Definition CAdjEulerSolver.hpp:72
su2double ACoeff_old
Definition CAdjEulerSolver.hpp:71
void Set_MPI_ActDisk(CSolver **solver_container, CGeometry *geometry, CConfig *config)
Parallelization of Undivided Laplacian.
Definition CAdjEulerSolver.cpp:378
su2double Total_Sens_Press
Total farfield sensitivity to pressure.
Definition CAdjEulerSolver.hpp:57
CAdjEulerVariable * nodes
The highest level in the variable hierarchy this solver can safely use.
Definition CAdjEulerSolver.hpp:74
su2double GetDonorAdjVar(unsigned short val_marker, unsigned long val_vertex, unsigned short val_var) const
Value of the characteristic variables at the boundaries.
Definition CAdjEulerSolver.hpp:245
su2double * FlowPrimVar_j
Store the flow solution at point j.
Definition CAdjEulerSolver.hpp:65
void BC_Euler_Wall(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) override
Impose via the residual the adjoint Euler wall boundary condition.
Definition CAdjEulerSolver.cpp:2225
su2double pnorm
Definition CAdjEulerSolver.hpp:68
void BC_ActDisk_Outlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose an actuator disk outlet boundary condition.
Definition CAdjEulerSolver.cpp:3677
void Source_Template(CGeometry *geometry, CSolver **solver_container, CNumerics *numerics, CConfig *config, unsigned short iMesh) final
Source term integration.
Definition CAdjEulerSolver.cpp:1324
void Inviscid_Sensitivity(CGeometry *geometry, CSolver **solver_container, CNumerics *numerics, CConfig *config) final
Compute the inviscid sensitivity of the functional.
Definition CAdjEulerSolver.cpp:1516
vector< vector< unsigned long > > DonorGlobalIndex
Value of the donor global index.
Definition CAdjEulerSolver.hpp:66
su2double Total_Sens_Mach
Total mach sensitivity coefficient for all the boundaries.
Definition CAdjEulerSolver.hpp:54
su2double GetTotal_Sens_BPress() const final
Get the total Back pressure number sensitivity coefficient.
Definition CAdjEulerSolver.hpp:623
void Smooth_Sensitivity(CGeometry *geometry, CSolver **solver_container, CNumerics *numerics, CConfig *config) final
Smooth the inviscid sensitivity of the functional.
Definition CAdjEulerSolver.cpp:1986
void ImplicitEuler_Iteration(CGeometry *geometry, CSolver **solver_container, CConfig *config) final
Update the solution using an implicit solver.
Definition CAdjEulerSolver.cpp:1437
void SetTime_Step(CGeometry *geometry, CSolver **solver_container, CConfig *config, unsigned short iMesh, unsigned long Iteration) override
A virtual member.
Definition CAdjEulerSolver.cpp:368
void SetDonorGlobalIndex(unsigned short val_marker, unsigned long val_vertex, unsigned long val_index) final
Value of the characteristic global index at the boundaries.
Definition CAdjEulerSolver.hpp:265
su2double GetTotal_Sens_Press() const final
Set the total farfield pressure sensitivity coefficient.
Definition CAdjEulerSolver.hpp:608
const su2double * GetDonorAdjVar(unsigned short val_marker, unsigned long val_vertex) const
Value of the characteristic variables at the boundaries.
Definition CAdjEulerSolver.hpp:222
void SetForceProj_Vector(CGeometry *geometry, CSolver **solver_container, CConfig *config) final
Created the force projection vector for adjoint boundary conditions.
Definition CAdjEulerSolver.cpp:661
void ExplicitEuler_Iteration(CGeometry *geometry, CSolver **solver_container, CConfig *config) final
Update the solution using a explicit Euler scheme.
Definition CAdjEulerSolver.cpp:1402
su2double ACoeff
Definition CAdjEulerSolver.hpp:71
su2double Gamma_Minus_One
Fluids's Gamma - 1.0 .
Definition CAdjEulerSolver.hpp:63
su2double Total_Sens_AoA
Total angle of attack sensitivity coefficient for all the boundaries.
Definition CAdjEulerSolver.hpp:55
void BC_Far_Field(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the boundary condition to the far field using characteristics.
Definition CAdjEulerSolver.cpp:2528
su2double * Sens_Mach
Mach sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:46
su2double ACoeff_inc
Definition CAdjEulerSolver.hpp:71
su2double Total_Sens_Temp
Total farfield sensitivity to temperature.
Definition CAdjEulerSolver.hpp:58
CVariable * GetBaseClassPointerToNodes() override
Return nodes to allow CSolver::base_nodes to be set.
Definition CAdjEulerSolver.hpp:79
CAdjEulerSolver(void)
Constructor of the class.
Definition CAdjEulerSolver.cpp:32
void Source_Residual(CGeometry *geometry, CSolver **solver_container, CNumerics **numerics_container, CConfig *config, unsigned short iMesh) override
Source term integration.
Definition CAdjEulerSolver.cpp:1218
void BC_Inlet(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker) final
Impose the inlet boundary condition.
Definition CAdjEulerSolver.cpp:2874
su2double GetPsiE_Inf(void) const final
Compute the adjoint energy at the infinity.
Definition CAdjEulerSolver.hpp:149
void SetCSensitivity(unsigned short val_marker, unsigned long val_vertex, su2double val_sensitivity) final
Set the shape sensitivity coefficient.
Definition CAdjEulerSolver.hpp:576
su2double * Sens_Temp
Temperature sensitivity coefficient for each boundary.
Definition CAdjEulerSolver.hpp:50
void BC_ActDisk(CGeometry *geometry, CSolver **solver_container, CNumerics *conv_numerics, CNumerics *visc_numerics, CConfig *config, unsigned short val_marker, bool val_inlet_surface) final
Impose an actuator disk inlet boundary condition.
Definition CAdjEulerSolver.cpp:3767
bool space_centered
True if space centered scheeme used.
Definition CAdjEulerSolver.hpp:60
void SetInitialCondition(CGeometry **geometry, CSolver ***solver_container, CConfig *config, unsigned long TimeIter) final
Set the initial condition for the Euler Equations.
Definition CAdjEulerSolver.cpp:885
void SetCentered_Dissipation_Sensor(CGeometry *geometry, CConfig *config)
Compute the sensor for higher order dissipation control in rotating problems.
Definition CAdjEulerSolver.cpp:1329
su2double Area_Monitored
Store the total area of the monitored outflow surface (used for normalization in continuous adjoint o...
Definition CAdjEulerSolver.hpp:69
su2double GetTotal_Sens_AoA() const final
Set the total angle of attack sensitivity coefficient.
Definition CAdjEulerSolver.hpp:601
Main class for defining the variables of the adjoint Euler solver.
Definition CAdjEulerVariable.hpp:38
Main class for defining the problem; basically this class reads the configuration file,...
Definition CConfig.hpp:64
Parent class for defining the geometry of the problem (complete geometry, multigrid agglomerated geom...
Definition CGeometry.hpp:75
Class for defining the numerical methods.
Definition CNumerics.hpp:48
Definition CSolver.hpp:71
Main class for defining the variables.
Definition CVariable.hpp:50
passivedouble su2double
Definition code_config.hpp:181