My Project
programmer's documentation
Functions
cs_face_viscosity.c File Reference

Face viscosity. More...

#include "cs_defs.h"
#include <assert.h>
#include <errno.h>
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
#include <math.h>
#include <float.h>
#include "bft_error.h"
#include "bft_mem.h"
#include "bft_printf.h"
#include "cs_math.h"
#include "cs_blas.h"
#include "cs_halo.h"
#include "cs_halo_perio.h"
#include "cs_internal_coupling.h"
#include "cs_log.h"
#include "cs_mesh.h"
#include "cs_field.h"
#include "cs_field_pointer.h"
#include "cs_gradient.h"
#include "cs_gradient_perio.h"
#include "cs_ext_neighborhood.h"
#include "cs_mesh_quantities.h"
#include "cs_parall.h"
#include "cs_parameters.h"
#include "cs_prototypes.h"
#include "cs_timer.h"
#include "cs_face_viscosity.h"
Include dependency graph for cs_face_viscosity.c:

Functions

void CS_PROCF (viscfa, VISCFA) const
 
void CS_PROCF (vistnv, VISTNV) const
 
void CS_PROCF (vitens, VITENS)
 
void cs_face_viscosity (const cs_mesh_t *m, const cs_mesh_quantities_t *fvq, const int visc_mean_type, cs_real_t *restrict c_visc, cs_real_t *restrict i_visc, cs_real_t *restrict b_visc)
 Compute the diffusion velocity at faces. More...
 
void cs_face_anisotropic_viscosity_vector (const cs_mesh_t *m, const cs_mesh_quantities_t *fvq, const int visc_mean_type, cs_real_6_t *restrict c_visc, cs_real_33_t *restrict i_visc, cs_real_t *restrict b_visc)
 Compute the equivalent tensor viscosity at faces for a 3x3 symetric tensor. More...
 
void cs_face_anisotropic_viscosity_scalar (const cs_mesh_t *m, const cs_mesh_quantities_t *fvq, cs_real_6_t *restrict c_visc, const int iwarnp, cs_real_2_t *restrict weighf, cs_real_t *restrict weighb, cs_real_t *restrict i_visc, cs_real_t *restrict b_visc)
 Compute the equivalent viscosity at faces for a 3x3 symetric tensor, always using a harmonic mean. More...
 

Detailed Description

Face viscosity.

Function Documentation

◆ cs_face_anisotropic_viscosity_scalar()

void cs_face_anisotropic_viscosity_scalar ( const cs_mesh_t m,
const cs_mesh_quantities_t fvq,
cs_real_6_t *restrict  c_visc,
const int  iwarnp,
cs_real_2_t *restrict  weighf,
cs_real_t *restrict  weighb,
cs_real_t *restrict  i_visc,
cs_real_t *restrict  b_visc 
)

Compute the equivalent viscosity at faces for a 3x3 symetric tensor, always using a harmonic mean.

Parameters
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]c_visccell viscosity symmetric tensor
[in]iwarnpverbosity
[out]weighfinner face weight between cells i and j $ \frac{\vect{IF} \cdot \tens{K}_\celli} {\norm{\tens{K}_\celli \cdot \vect{S}}^2} $ and $ \frac{\vect{FJ} \cdot \tens{K}_\cellj} {\norm{\tens{K}_\cellj \cdot \vect{S}}^2} $
[out]weighbboundary face weight $ \frac{\vect{IF} \cdot \tens{K}_\celli} {\norm{\tens{K}_\celli \cdot \vect{S}}^2} $
[out]i_viscinner face viscosity (times surface divided by distance)
[out]b_viscboundary face viscosity (surface, must be consistent with flux BCs)

◆ cs_face_anisotropic_viscosity_vector()

void cs_face_anisotropic_viscosity_vector ( const cs_mesh_t m,
const cs_mesh_quantities_t fvq,
const int  visc_mean_type,
cs_real_6_t *restrict  c_visc,
cs_real_33_t *restrict  i_visc,
cs_real_t *restrict  b_visc 
)

Compute the equivalent tensor viscosity at faces for a 3x3 symetric tensor.

Parameters
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]visc_mean_typemethod to compute the viscosity at faces:
  • 0: arithmetic
  • 1: harmonic
[in]c_visccell viscosity symmetric tensor
[out]i_viscinner face tensor viscosity (times surface divided by distance)
[out]b_viscboundary face viscosity (surface, must be consistent with flux BCs)

◆ cs_face_viscosity()

void cs_face_viscosity ( const cs_mesh_t m,
const cs_mesh_quantities_t fvq,
const int  visc_mean_type,
cs_real_t *restrict  c_visc,
cs_real_t *restrict  i_visc,
cs_real_t *restrict  b_visc 
)

Compute the diffusion velocity at faces.

Compute the diffusion velocity at faces. i_visc,b_visc = viscosity*surface/distance, homogeneous to a rate of flow in kg/s.

i_visc,b_visc = viscosity*surface/distance, homogeneous to a rate of flow in kg/s.

Please refer to the viscfa section of the theory guide for more informations.

Remarks
: a priori, no need of reconstruction techniques (to improve if necessary).
Parameters
[in]mpointer to mesh
[in]fvqpointer to finite volume quantities
[in]visc_mean_typemethod to compute the viscosity at faces:
  • 0 arithmetical
  • 1 harmonic
[in]c_visccell viscosity (scalar)
[out]i_viscinner face viscosity (times surface divided by distance)
[out]b_viscboundary face viscosity (surface, must be consistent with flux BCs)

◆ CS_PROCF() [1/3]

void CS_PROCF ( viscfa  ,
VISCFA   
) const

◆ CS_PROCF() [2/3]

void CS_PROCF ( vistnv  ,
VISTNV   
) const

◆ CS_PROCF() [3/3]

void CS_PROCF ( vitens  ,
VITENS   
)