#include <stdio.h>
Go to the source code of this file.
Functions | |
int | pdr_ns_supg_select_el_coeff_vect (int Problem_id, int *Coeff_vect_ind) |
double * | pdr_ns_supg_select_el_coeff (int Problem_id, double **Mval, double **Axx, double **Axy, double **Axz, double **Ayx, double **Ayy, double **Ayz, double **Azx, double **Azy, double **Azz, double **Bx, double **By, double **Bz, double **Tx, double **Ty, double **Tz, double **Cval, double **Lval, double **Qx, double **Qy, double **Qz, double **Sval) |
int | pdr_ns_supg_el_coeff (int Problem_id, int Elem, int Mat_num, double Hsize, int Pdeg, double *X_loc, double *Base_phi, double *Base_dphix, double *Base_dphiy, double *Base_dphiz, double *Xcoor, double *Uk_val, double *Uk_x, double *Uk_y, double *Uk_z, double *Un_val, double *Un_x, double *Un_y, double *Un_z, double *Mval, double *Axx, double *Axy, double *Axz, double *Ayx, double *Ayy, double *Ayz, double *Azx, double *Azy, double *Azz, double *Bx, double *By, double *Bz, double *Tx, double *Ty, double *Tz, double *Cval, double *Lval, double *Qx, double *Qy, double *Qz, double *Sval, double Tk, double Dynamic_viscosity, double Density, double Reference_density, double Reference_velocity, double Delta_t, double Implicitness_coeff, double Body_force_x, double Body_force_y, double Body_force_z) |
int | pdr_ns_supg_comp_el_stiff_mat (int Problem_id, int El_id, int Comp_sm, int Pdeg_in, int *Nrdofs_loc, double *Stiff_mat, double *Rhs_vect, char *Rewr_dofs) |
int | pdr_ns_supg_comp_fa_stiff_mat (int Problem_id, int Fa_id, int Comp_sm, int Pdeg_in, int *Nrdofs_loc, double *Stiff_mat, double *Rhs_vect, char *Rewr_dofs) |
int | pdr_ns_supg_compute_CFL (int Problem_id, double *CFL_min_p, double *CFL_max_p, double *CFL_ave_p) |
int | pdr_ns_supg_get_velocity_at_point (int Problem_id, int El_id, double *X_loc, double *Base_phi, double *Base_dphix, double *Base_dphiy, double *Base_dphiz, double *Velocity, double *DVel_dx, double *DVel_dy, double *DVel_dz) |
int | pdr_ns_supg_give_me_temperature_at_point (int Problem_id, int El_id, double *X_loc, double *Base_phi, double *Base_dphix, double *Base_dphiy, double *Base_dphiz, double *Temp, double *DTemp_dx, double *DTemp_dy, double *DTemp_dz) |
int pdr_ns_supg_comp_el_stiff_mat | ( | int | Problem_id, | |
int | El_id, | |||
int | Comp_sm, | |||
int | Pdeg_in, | |||
int * | Nrdofs_loc, | |||
double * | Stiff_mat, | |||
double * | Rhs_vect, | |||
char * | Rewr_dofs | |||
) |
----------------------------------------------------------- pdr_ns_supg_comp_el_stiff_mat - to construct a stiffness matrix and a load vector for an element ------------------------------------------------------------
!! coarse element dofs should be supplied by calling routine !!!
int pdr_ns_supg_comp_fa_stiff_mat | ( | int | Problem_id, | |
int | Fa_id, | |||
int | Comp_sm, | |||
int | Pdeg_in, | |||
int * | Nrdofs_loc, | |||
double * | Stiff_mat, | |||
double * | Rhs_vect, | |||
char * | Rewr_dofs | |||
) |
----------------------------------------------------------- pdr_ns_supg_comp_fa_stiff_mat - to construct a stiffness matrix and a load vector for a face ------------------------------------------------------------
!! need some trick for coarse solve with different Pdeg !!!
DIAGNOSTICS - uncomment !
-------------------------------------------------------------------!
------------- FLOW BOUNDARY CONDITIONS - THEORY -------------------!
-------------------------------------------------------------------!
-------------------------------------------------------------------!
------------------ FLOW BOUNDARY CONDITIONS -----------------------!
-------------------------------------------------------------------!
-------------------------------------------------------------------!
-------------------------- PRESSURE PINS --------------------------!
DIAGNOSTICS - uncomment !
-------------------------------------------------------------------!
-------------------------- VELOCITY PINS --------------------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
-------------------------------------------------------------------!
--------------------------- BC_NS_SUPG_CONTACT --------------------!
-------------------------------------------------------------------!
--------------------------- BC_NS_SUPG_SYMM ----------------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
-------------------------------------------------------------------!
--------------------------- BC_NS_SUPG_FREE_SLIP ----------------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
------------------------------------------------------------------!
-------------------------- BC_NS_SUPG_VEL -----------------------!
------------------------ BC_NS_SUPG_NOSLIP ----------------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
------------------------------------------------------------------!
-------------------- BC_NS_SUPG_INFLOW_CIRCLE3D -----------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment ! */
------------------------------------------------------------------!
-------------------- BC_NS_SUPG_INFLOW_RECT2D -------------------!
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
DIAGNOSTICS - uncomment !
-------------------------------------------------------------------!
----------------------- BC_NS_SUPG_OUTFLOW -----------------------!
-------------------------------------------------------------------!
-------------------------- MARANGONI ------------------------------!
int pdr_ns_supg_compute_CFL | ( | int | Problem_id, | |
double * | CFL_min_p, | |||
double * | CFL_max_p, | |||
double * | CFL_ave_p | |||
) |
----------------------------------------------------------- pdr_ns_supg_compute_CFL - to compute global CFL numbers (for a subdomain) ------------------------------------------------------------
int pdr_ns_supg_el_coeff | ( | int | Problem_id, | |
int | Elem, | |||
int | Mat_num, | |||
double | Hsize, | |||
int | Pdeg, | |||
double * | X_loc, | |||
double * | Base_phi, | |||
double * | Base_dphix, | |||
double * | Base_dphiy, | |||
double * | Base_dphiz, | |||
double * | Xcoor, | |||
double * | Uk_val, | |||
double * | Uk_x, | |||
double * | Uk_y, | |||
double * | Uk_z, | |||
double * | Un_val, | |||
double * | Un_x, | |||
double * | Un_y, | |||
double * | Un_z, | |||
double * | Mval, | |||
double * | Axx, | |||
double * | Axy, | |||
double * | Axz, | |||
double * | Ayx, | |||
double * | Ayy, | |||
double * | Ayz, | |||
double * | Azx, | |||
double * | Azy, | |||
double * | Azz, | |||
double * | Bx, | |||
double * | By, | |||
double * | Bz, | |||
double * | Tx, | |||
double * | Ty, | |||
double * | Tz, | |||
double * | Cval, | |||
double * | Lval, | |||
double * | Qx, | |||
double * | Qy, | |||
double * | Qz, | |||
double * | Sval, | |||
double | Tk, | |||
double | Dynamic_viscosity, | |||
double | Density, | |||
double | Reference_density, | |||
double | Reference_velocity, | |||
double | Delta_t, | |||
double | Implicitness_coeff, | |||
double | Body_force_x, | |||
double | Body_force_y, | |||
double | Body_force_z | |||
) |
-------------------------------------------------------- pdr_ns_supg_el_coeff - to return coefficients for element integrals ----------------------------------------------------------
----------------------------------------------------------------------!
------------ CALCULATE ELEM. "SIZE" (h_k) AT GAUSS POINT----------- --!
----------------------------------------------------------------------!
----------------------------------------------------------------------!
--------- CALCULATE STABILIZATION COEFFS FRANCA/FREY -- ----------- --!
----------------------------------------------------------------------!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
----------------------------------------------------------------------!
---------- CALCULATE STABILIZATION COEFFS TEZDUYAR ---------------- --!
----------------------------------------------------------------------!
!!!!!!!!!!!! Tezduyar, Hughes version: tau_pres based on h_size and u_ref
!!!!!!!!!!!! HANSBO version !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
----------------------------------------------------------------------!
---------- CALCULATE STABILIZATION COEFFS ------------------------- --!
----------------------------------------------------------------------!
!!!!!!!!!!!! yet another Tazduyar version !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
----------------------------------------------------------------------!
---------- CALCULATE STABILIZATION COEFFS ------------------------- --!
----------------------------------------------------------------------!
----------------------------------------------------------------------!
SPLITTING OF TERMS INTO LHS AND RHS FOR ALPHA TIME INTEGRATION SCHEME !
----------------------------------------------------------------------!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
----------------------------------------------------------------------!
------ CALCULATE MATRICES OF WEAK FORM COEFFICIENTS FOR LHS ----------!
----------------------------------------------------------------------!
!! ---- EACH matrix has to have proper dimension so that the corrersponding --- !!!
!! ---- term in the weak formulation has the final dimension [kg/(m*s^3)] ----- !!!
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*(tau_pres/Delta_t)
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres * Uk_val[0]
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres * Uk_val[1]
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres * Uk_val[2]
!!!!!!!!!!!! Franca and Frey version: -1.0 * tau / Density
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres/Density
----------------------------------------------------------------------!
------ CALCULATE TIME DERIVATIVE AND STABILIZATION TERMS FOR RHS -----!
----------------------------------------------------------------------!
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres/Delta_t
----------------------------------------------------------------------!
---------------- CALCULATE BODY FORCES TERMS FOR RHS -----------------!
----------------------------------------------------------------------!
!!!!!!!!!!!! Franca and Frey version: -1.0 * tau * Body_force_x / Density
!!!!!!!!!!!! Tezduyar, Hughes version: +1.0*tau_pres * Body_force_x/Density
----------------------------------------------------------------------!
--- SPLIT TERMS INTO LHS AND RHS FOR ALPHA TIME INTEGRATION SCHEME ---!
----------------------------------------------------------------------!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
int pdr_ns_supg_get_velocity_at_point | ( | int | Problem_id, | |
int | El_id, | |||
double * | X_loc, | |||
double * | Base_phi, | |||
double * | Base_dphix, | |||
double * | Base_dphiy, | |||
double * | Base_dphiz, | |||
double * | Velocity, | |||
double * | DVel_dx, | |||
double * | DVel_dy, | |||
double * | DVel_dz | |||
) |
----------------------------------------------------------- pdr_ns_supg_get_velocity_at_point - to provide the velocity and its gradient at a particular point given its local coordinates within an element MODULE PROVIDES IMPLEMENTATION FOR ALL OTHER MODULES (in pds_ns_supg_weakform.c) ------------------------------------------------------------
int pdr_ns_supg_give_me_temperature_at_point | ( | int | Problem_id, | |
int | El_id, | |||
double * | X_loc, | |||
double * | Base_phi, | |||
double * | Base_dphix, | |||
double * | Base_dphiy, | |||
double * | Base_dphiz, | |||
double * | Temp, | |||
double * | DTemp_dx, | |||
double * | DTemp_dy, | |||
double * | DTemp_dz | |||
) |
----------------------------------------------------------- pdr_ns_supg_give_me_temperature_at_point - to provide the temperature and its gradient at a particular point given its local coordinates within an element NS_SUPG MODULE ASKS FOR IMPLEMENTATION - it has to be provided by procedures defined in ls_intf directory of the problem module that uses ns_supg as submodule HERE: ns_supg gives itself trivial solution ------------------------------------------------------------
double* pdr_ns_supg_select_el_coeff | ( | int | Problem_id, | |
double ** | Mval, | |||
double ** | Axx, | |||
double ** | Axy, | |||
double ** | Axz, | |||
double ** | Ayx, | |||
double ** | Ayy, | |||
double ** | Ayz, | |||
double ** | Azx, | |||
double ** | Azy, | |||
double ** | Azz, | |||
double ** | Bx, | |||
double ** | By, | |||
double ** | Bz, | |||
double ** | Tx, | |||
double ** | Ty, | |||
double ** | Tz, | |||
double ** | Cval, | |||
double ** | Lval, | |||
double ** | Qx, | |||
double ** | Qy, | |||
double ** | Qz, | |||
double ** | Sval | |||
) |
!!!!! OLD OBSOLETE VERSION !!!!!! ----------------------------------------------------------- pdr_ns_supg_select_el_coeff - to select coefficients returned to approximation routines for element integrals ------------------------------------------------------------
!!!!! OLD OBSOLETE VERSION !!!!!!
int pdr_ns_supg_select_el_coeff_vect | ( | int | Problem_id, | |
int * | Coeff_vect_ind | |||
) |
----------------------------------------------------------- pdr_ns_supg_select_el_coeff_vect - to select coefficients returned to approximation routines for element integrals ------------------------------------------------------------