My Project
programmer's documentation
|
#include "cs_base.h"
#include "cs_basis_func.h"
#include "cs_cdo_connect.h"
#include "cs_sdm.h"
#include "cs_xdef.h"
Go to the source code of this file.
Data Structures | |
struct | cs_hho_builder_t |
Functions | |
cs_hho_builder_t * | cs_hho_builder_create (int order, int n_fc) |
Allocate a cs_hho_builder_t structure. More... | |
void | cs_hho_builder_free (cs_hho_builder_t **p_builder) |
Free a cs_hho_builder_t structure. More... | |
void | cs_hho_builder_cellwise_setup (const cs_cell_mesh_t *cm, cs_cell_builder_t *cb, cs_hho_builder_t *hhob) |
Set-up the basis functions related to a cell, its gradient and to the faces of this cell. Compute cell and face projection and its related modified Cholesky factorization. More... | |
static void | cs_hho_builder_cellbasis_setup (const cs_cell_mesh_t *cm, cs_cell_builder_t *cb, cs_hho_builder_t *hhob) |
Set-up the basis functions related to a cell only. More... | |
void | cs_hho_builder_compute_grad_reco (const cs_cell_mesh_t *cm, cs_cell_builder_t *cb, cs_hho_builder_t *hhob) |
Compute the gradient operator stemming from the relation stiffness * grad_op = rhs where stiffness is a square matrix of size grd_size rhs is matrix of size (n_fc*f_size + c_size) * grd_size Hence, grad_op a matrix grd_size * (n_fc*f_size + c_size) More... | |
void | cs_hho_builder_diffusion (const cs_cell_mesh_t *cm, cs_cell_builder_t *cb, cs_hho_builder_t *hhob) |
Compute the diffusion operator. The gradient reconstruction operator has to be built just before this call (cb->aux stores the rhs) More... | |
void | cs_hho_builder_reduction_from_analytic (const cs_xdef_t *def, const cs_cell_mesh_t *cm, cs_real_t t_eval, cs_cell_builder_t *cb, cs_hho_builder_t *hhob, cs_real_t red[]) |
Compute the reduction onto the polynomial spaces (cell and faces) of a function defined by an analytical expression depending on the location and the current time red array has to be allocated before calling this function. More... | |
void | cs_hho_builder_reduction_from_analytic_v (const cs_xdef_t *def, const cs_cell_mesh_t *cm, cs_real_t t_eval, cs_cell_builder_t *cb, cs_hho_builder_t *hhob, cs_real_t red[]) |
Compute the reduction onto the polynomial spaces (cell and faces) of a function defined by an analytical expression depending on the location and the current time This function handles the vector case. More... | |
void | cs_hho_builder_compute_dirichlet (const cs_xdef_t *def, short int f, const cs_cell_mesh_t *cm, cs_real_t t_eval, cs_cell_builder_t *cb, cs_hho_builder_t *hhob, cs_real_t res[]) |
Compute the projection of the Dirichlet boundary conditions onto the polynomial spaces on faces. More... | |
void | cs_hho_builder_compute_dirichlet_v (const cs_xdef_t *def, short int f, const cs_cell_mesh_t *cm, cs_real_t t_eval, cs_cell_builder_t *cb, cs_hho_builder_t *hhob, cs_real_t res[]) |
Compute the projection of the Dirichlet boundary conditions onto the polynomial spaces on faces. Vector case. More... | |
|
inlinestatic |
Set-up the basis functions related to a cell only.
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
void cs_hho_builder_cellwise_setup | ( | const cs_cell_mesh_t * | cm, |
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob | ||
) |
Set-up the basis functions related to a cell, its gradient and to the faces of this cell. Compute cell and face projection and its related modified Cholesky factorization.
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
void cs_hho_builder_compute_dirichlet | ( | const cs_xdef_t * | def, |
short int | f, | ||
const cs_cell_mesh_t * | cm, | ||
cs_real_t | t_eval, | ||
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob, | ||
cs_real_t | res[] | ||
) |
Compute the projection of the Dirichlet boundary conditions onto the polynomial spaces on faces.
[in] | def | pointer to a cs_xdef_t structure |
[in] | f | local face id in the cellwise view of the mesh |
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | t_eval | time at which one performs the evaluation |
[in,out] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
[in,out] | res | vector containing the result |
void cs_hho_builder_compute_dirichlet_v | ( | const cs_xdef_t * | def, |
short int | f, | ||
const cs_cell_mesh_t * | cm, | ||
cs_real_t | t_eval, | ||
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob, | ||
cs_real_t | res[] | ||
) |
Compute the projection of the Dirichlet boundary conditions onto the polynomial spaces on faces. Vector case.
[in] | def | pointer to a cs_xdef_t structure |
[in] | f | local face id in the cellwise view of the mesh |
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | t_eval | time at which one performs the evaluation |
[in,out] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
[in,out] | res | vector containing the result |
void cs_hho_builder_compute_grad_reco | ( | const cs_cell_mesh_t * | cm, |
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob | ||
) |
Compute the gradient operator stemming from the relation stiffness * grad_op = rhs where stiffness is a square matrix of size grd_size rhs is matrix of size (n_fc*f_size + c_size) * grd_size Hence, grad_op a matrix grd_size * (n_fc*f_size + c_size)
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
cs_hho_builder_t* cs_hho_builder_create | ( | int | order, |
int | n_fc | ||
) |
Allocate a cs_hho_builder_t structure.
[in] | order | order of the polynomial basis function |
[in] | n_fc | max. number of faces in a cell |
void cs_hho_builder_diffusion | ( | const cs_cell_mesh_t * | cm, |
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob | ||
) |
Compute the diffusion operator. The gradient reconstruction operator has to be built just before this call (cb->aux stores the rhs)
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
void cs_hho_builder_free | ( | cs_hho_builder_t ** | p_builder | ) |
Free a cs_hho_builder_t structure.
[in,out] | p_builder | pointer of pointer on a cs_hho_builder_t struct. |
void cs_hho_builder_reduction_from_analytic | ( | const cs_xdef_t * | def, |
const cs_cell_mesh_t * | cm, | ||
cs_real_t | t_eval, | ||
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob, | ||
cs_real_t | red[] | ||
) |
Compute the reduction onto the polynomial spaces (cell and faces) of a function defined by an analytical expression depending on the location and the current time red array has to be allocated before calling this function.
[in] | def | pointer to a cs_xdef_t structure |
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | t_eval | time at which one performs the evaluation |
[in,out] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
[in,out] | red | vector containing the reduction |
void cs_hho_builder_reduction_from_analytic_v | ( | const cs_xdef_t * | def, |
const cs_cell_mesh_t * | cm, | ||
cs_real_t | t_eval, | ||
cs_cell_builder_t * | cb, | ||
cs_hho_builder_t * | hhob, | ||
cs_real_t | red[] | ||
) |
Compute the reduction onto the polynomial spaces (cell and faces) of a function defined by an analytical expression depending on the location and the current time This function handles the vector case.
red array has to be allocated before calling this function.
[in] | def | pointer to a cs_xdef_t structure |
[in] | cm | pointer to a cs_cell_mesh_t structure |
[in] | t_eval | time at which one performs the evaluation |
[in,out] | cb | pointer to a cell builder_t structure |
[in,out] | hhob | pointer to a cs_hho_builder_t structure |
[in,out] | red | vector containing the reduction |