KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Classes | Namespaces | Typedefs | Functions
potential_flow_utilities.h File Reference
#include "containers/array_1d.h"
#include "includes/ublas_interface.h"
#include "utilities/geometry_utilities.h"
Include dependency graph for potential_flow_utilities.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Kratos::PotentialFlowUtilities::ElementalData< TNumNodes, TDim >
 

Namespaces

 Kratos
 REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
 
 Kratos::PotentialFlowUtilities
 

Typedefs

typedef Node Kratos::PotentialFlowUtilities::NodeType
 
typedef Geometry< NodeTypeKratos::PotentialFlowUtilities::GeometryType
 

Functions

template<int Dim, int NumNodes>
array_1d< double, NumNodes > Kratos::PotentialFlowUtilities::GetWakeDistances (const Element &rElement)
 
template<int Dim, int NumNodes>
BoundedVector< double, NumNodes > Kratos::PotentialFlowUtilities::GetPotentialOnNormalElement (const Element &rElement)
 
template<int Dim, int NumNodes>
BoundedVector< double, 2 *NumNodes > Kratos::PotentialFlowUtilities::GetPotentialOnWakeElement (const Element &rElement, const array_1d< double, NumNodes > &rDistances)
 
template<int Dim, int NumNodes>
BoundedVector< double, NumNodes > Kratos::PotentialFlowUtilities::GetPotentialOnUpperWakeElement (const Element &rElement, const array_1d< double, NumNodes > &rDistances)
 
template<int Dim, int NumNodes>
BoundedVector< double, NumNodes > Kratos::PotentialFlowUtilities::GetPotentialOnLowerWakeElement (const Element &rElement, const array_1d< double, NumNodes > &rDistances)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputeVelocityNormalElement (const Element &rElement)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputeVelocityUpperWakeElement (const Element &rElement)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputeVelocityLowerWakeElement (const Element &rElement)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputeVelocity (const Element &rElement)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputePerturbedVelocity (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
array_1d< double, Dim > Kratos::PotentialFlowUtilities::ComputePerturbedVelocityLowerElement (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeMaximumVelocitySquared (const ProcessInfo &rCurrentProcessInfo)
 
double Kratos::PotentialFlowUtilities::ComputeVacuumVelocitySquared (const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeClampedVelocitySquared (const array_1d< double, Dim > &rVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeVelocityMagnitude (const double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeIncompressiblePressureCoefficient (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputePerturbationIncompressiblePressureCoefficient (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeCompressiblePressureCoefficient (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputePerturbationCompressiblePressureCoefficient (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeLocalSpeedOfSound (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeLocalSpeedofSoundSquared (const array_1d< double, Dim > &rVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeSquaredSpeedofSoundFactor (const double localVelocitySquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputePerturbationLocalSpeedOfSound (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeLocalMachNumber (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeLocalMachNumberSquared (const array_1d< double, Dim > &rVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeDerivativeLocalMachSquaredWRTVelocitySquared (const array_1d< double, Dim > &rVelocity, const double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputePerturbationLocalMachNumber (const Element &rElement, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindFactor (double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::SelectMaxUpwindFactor (const array_1d< double, Dim > &rCurrentVelocity, const array_1d< double, Dim > &rUpwindVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
size_t Kratos::PotentialFlowUtilities::ComputeUpwindFactorCase (array_1d< double, 3 > &rUpwindFactorOptions)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindFactorDerivativeWRTMachSquared (const double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindFactorDerivativeWRTVelocitySquared (const array_1d< double, Dim > &rVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeDensity (const double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindedDensity (const array_1d< double, Dim > &rCurrentVelocity, const array_1d< double, Dim > &rUpwindVelocity, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeDensityDerivativeWRTVelocitySquared (const double localMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindedDensityDerivativeWRTVelocitySquaredSupersonicAccelerating (const array_1d< double, Dim > &rCurrentVelocity, const double currentMachNumberSquared, const double upwindMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindedDensityDerivativeWRTVelocitySquaredSupersonicDeaccelerating (const double currentMachNumberSquared, const double upwindMachSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindedDensityDerivativeWRTUpwindVelocitySquaredSupersonicAccelerating (const double currentMachNumberSquared, const double upwindMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
double Kratos::PotentialFlowUtilities::ComputeUpwindedDensityDerivativeWRTUpwindVelocitySquaredSupersonicDeaccelerating (const array_1d< double, Dim > &rUpwindVelocity, const double currentMachNumberSquared, const double upwindMachNumberSquared, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
bool Kratos::PotentialFlowUtilities::CheckIfElementIsCutByDistance (const BoundedVector< double, NumNodes > &rNodalDistances)
 
bool Kratos::PotentialFlowUtilities::CheckIfElementIsTrailingEdge (const Element &rElement)
 
template<int Dim>
void Kratos::PotentialFlowUtilities::CheckIfWakeConditionsAreFulfilled (const ModelPart &rWakeModelPart, const double &rTolerance, const int &rEchoLevel)
 
template<int Dim, int NumNodes>
bool Kratos::PotentialFlowUtilities::CheckWakeCondition (const Element &rElement, const double &rTolerance, const int &rEchoLevel)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::GetSortedIds (std::vector< size_t > &Ids, const GeometryType &rGeom)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::GetNodeNeighborElementCandidates (GlobalPointersVector< Element > &ElementCandidates, const GeometryType &rGeom)
 
template<int Dim>
Vector Kratos::PotentialFlowUtilities::ComputeKuttaNormal (const double angle)
 
template<class TContainerType >
double Kratos::PotentialFlowUtilities::CalculateArea (TContainerType &rContainer)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::ComputePotentialJump (ModelPart &rWakeModelPart)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::AddKuttaConditionPenaltyTerm (const Element &rElement, Matrix &rLeftHandSideMatrix, Vector &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::AddKuttaConditionPenaltyPerturbationRHS (const Element &rElement, Vector &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::AddKuttaConditionPenaltyPerturbationLHS (const Element &rElement, Matrix &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
 
template<int Dim, int NumNodes>
void Kratos::PotentialFlowUtilities::AddPotentialGradientStabilizationTerm (Element &rElement, Matrix &rLeftHandSideMatrix, Vector &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)