My Project
programmer's documentation
|
#include "cs_defs.h"
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <math.h>
#include "bft_error.h"
#include "bft_mem.h"
#include "bft_printf.h"
#include "fvm_io_num.h"
#include "cs_boundary_zone.h"
#include "cs_domain.h"
#include "cs_domain_setup.h"
#include "cs_equation.h"
#include "cs_mesh_builder.h"
#include "cs_mesh_group.h"
#include "cs_parall.h"
#include "cs_mesh_deform.h"
Functions | |
bool | cs_mesh_deform_is_activated (void) |
Test if mesh deformation is activated. More... | |
void | cs_mesh_deform_activate (void) |
Activate the future mesh deformation. More... | |
void | cs_mesh_deform_define_dirichlet_bc_zones (cs_lnum_t n_boundary_zones, const int boundary_zone_ids[]) |
Define the boundary zones on which mesh deformation is prescribed. More... | |
void | cs_mesh_deform_setup (cs_domain_t *domain) |
Setup the equations related to mesh deformation. More... | |
void | cs_mesh_deform_prescribe_displacement (cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_3_t displacement[]) |
Prescribe the displacement vector for a set of vertices. More... | |
void | cs_mesh_deform_force_displacements (cs_lnum_t n_vertices, const cs_lnum_t vertex_ids[], const cs_real_3_t displacement[]) |
Define a fixed displacement vector for given vertices. More... | |
void | cs_mesh_deform_solve_displacement (cs_domain_t *domain) |
Compute displacement for mesh deformation. More... | |
const cs_real_3_t * | cs_mesh_deform_get_displacement (void) |
Return pointer to current mesh displacement vector. More... | |
void | cs_mesh_deform_finalize (void) |
Free structures used fo mesh deformation. More... | |
void cs_mesh_deform_activate | ( | void | ) |
Activate the future mesh deformation.
void cs_mesh_deform_define_dirichlet_bc_zones | ( | cs_lnum_t | n_boundary_zones, |
const int | boundary_zone_ids[] | ||
) |
Define the boundary zones on which mesh deformation is prescribed.
Only those values at vertices matching boundary zones with prescribed displacement will really be used.
[in] | n_boundary_zones | number of boundary zones at which to prescribe displacements |
[in] | boundary_zone_ids | ids of boundary zones at which to prescribe displacements |
void cs_mesh_deform_finalize | ( | void | ) |
Free structures used fo mesh deformation.
void cs_mesh_deform_force_displacements | ( | cs_lnum_t | n_vertices, |
const cs_lnum_t | vertex_ids[], | ||
const cs_real_3_t | displacement[] | ||
) |
Define a fixed displacement vector for given vertices.
This displacement is enforced at all given vertices, including interior vertices.
If this function is called multiple times, the previous definitions are overwritten, so all displacements of this type must be defined in a single call to this function.
[in] | n_vertices | number of vertices at which to prescribe displacements |
[in] | vertex_ids | ids of vertices at which to prescribe displacements, or NULL if [0, ... n_vertices-1] |
[in] | displacement | pointer to prescribed displacements, or NULL for no displacement |
const cs_real_3_t* cs_mesh_deform_get_displacement | ( | void | ) |
Return pointer to current mesh displacement vector.
bool cs_mesh_deform_is_activated | ( | void | ) |
Test if mesh deformation is activated.
void cs_mesh_deform_prescribe_displacement | ( | cs_lnum_t | n_vertices, |
const cs_lnum_t | vertex_ids[], | ||
const cs_real_3_t | displacement[] | ||
) |
Prescribe the displacement vector for a set of vertices.
Only those values at vertices matching boundary zones with prescribed displacement will really be used, as defined by cs_mesh_deform_define_dirichlet_bc_zones.
When calling this function multiple times for different vertex sets, the most recently defined values are used for vertices belonging to multiple sets.
[in] | n_vertices | number of vertices at which to prescribe displacements |
[in] | vertex_ids | ids of vertices at which to prescribe displacements, or NULL if [0, ... n_vertices-1] |
[in] | displacement | pointer to prescribed displacements |
void cs_mesh_deform_setup | ( | cs_domain_t * | domain | ) |
Setup the equations related to mesh deformation.
[in,out] | domain | pointer to a cs_domain_t structure |
void cs_mesh_deform_solve_displacement | ( | cs_domain_t * | domain | ) |
Compute displacement for mesh deformation.
[in,out] | domain | pointer to a cs_domain_t structure |