#include <stdio.h>
#include "../include/pdh_conv_diff_problem.h"
Go to the source code of this file.
Functions | |
void | pdr_time_integration (int Problem_id, char *Work_dir, FILE *interactive_input, FILE *interactive_output) |
int | pdr_adapt (int Problem_id, char *Work_dir, FILE *Interactive_input, FILE *Interactive_output) |
double | pdr_zzhu_error (int Field_id, FILE *interactive_output) |
double | pdr_zzhu_error_small (int Field_id, FILE *interactive_output) |
pdt_conv_diff_problem * | pdr_select_problem (int Problem_id) |
int | pdr_bc_val (int Problem_id, int Num, double *Val) |
int | pdr_ic_val (int Problem_id, int Num, double *Val) |
int | pdr_time_i_params (int Problem_id, int Num) |
double | pdr_time_d_params (int Problem_id, int Num) |
void | pdr_set_time_i_params (int Problem_id, int Num, int Value) |
void | pdr_set_time_d_params (int Problem_id, int Num, double Value) |
int | pdr_lins_i_params (int Problem_id, int Num) |
double | pdr_lins_d_params (int Problem_id, int Num) |
double | pdr_conv_diff_error_test (int Field_id, FILE *Interactive_output) |
double | pdr_conv_diff_post_process (int Field_id, FILE *Interactive_input, FILE *Interactive_output) |
double | pdr_average_sol_el (int Problem_id, int El) |
int | pdr_conv_diff_exact_sol (int Flag, double X, double Y, double Z, double Time, double *Exact, double *Exact_x, double *Exact_y, double *Exact_z, double *Lapl) |
int | pdr_slope_limit (int Problem_id) |
void | pdr_fa_coeff (int Face, int BC_flag, int Elem, int Mat_num, double Hsize, double Time, int Pdeg, double *Xcoor, double *Vec_norm, double *U_val, double *U_x, double *U_y, double *U_z, double *Anx, double *Any, double *Anz, double *Bn, double *Fval, double *Gval, double *Qn, double *Vel_norm) |
int | pdr_get_bc_type (int Fa_bc) |
void | pdr_pde_coeff (int Mat_num, double *Xcoor, double Time, double *U_val, double *U_x, double *U_y, double *U_z, 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 *Mval, double *Lval, double *Sval, double *Qx, double *Qy, double *Qz) |
void | pdr_bc_diri_coeff (int Face, int Mat_num, double *Xcoor, double *Vec_norm, double Time, double *U_val, double *U_x, double *U_y, double *U_z, double *Fval) |
void | pdr_bc_neum_coeff (int Face, int Mat_num, double *Xcoor, double *Vec_norm, double Time, double *U_val, double *U_x, double *U_y, double *U_z, double *Gval) |
void | pdr_bc_mixed_coeff (int Face, int Mat_num, double *Xcoor, double *Vec_norm, double Time, double *U_val, double *U_x, double *U_y, double *U_z, double *Fval, double *Kr) |
Variables | |
int | pdv_conv_diff_nr_problems |
int | pdv_conv_diff_current_problem_id |
pdt_conv_diff_problem | pdv_conv_diff_problems [PDC_CONV_DIFF_MAX_NUM_PROB] |
int pdr_adapt | ( | int | Problem_id, | |
char * | Work_dir, | |||
FILE * | Interactive_input, | |||
FILE * | Interactive_output | |||
) |
-------------------------------------------------------- pdr_adapt - to enforce adaptation strategy for a given problem ---------------------------------------------------------
double pdr_average_sol_el | ( | int | Problem_id, | |
int | El | |||
) |
-------------------------------------------------------- pdr_average_sol_el - to compute the average of solution over element ----------------------------------------------------------
void pdr_bc_diri_coeff | ( | int | Face, | |
int | Mat_num, | |||
double * | Xcoor, | |||
double * | Vec_norm, | |||
double | Time, | |||
double * | U_val, | |||
double * | U_x, | |||
double * | U_y, | |||
double * | U_z, | |||
double * | Fval | |||
) |
-------------------------------------------------------- pdr_bc_diri_coeff - to return DIRICHLET boundary coeficients (routine substitutes only non-zero values) ----------------------------------------------------------
void pdr_bc_mixed_coeff | ( | int | Face, | |
int | Mat_num, | |||
double * | Xcoor, | |||
double * | Vec_norm, | |||
double | Time, | |||
double * | U_val, | |||
double * | U_x, | |||
double * | U_y, | |||
double * | U_z, | |||
double * | Fval, | |||
double * | Kr | |||
) |
-------------------------------------------------------- pdr_bc_mixed_coeff - to return ROBIN (mixed) boundary coeficients ----------------------------------------------------------
void pdr_bc_neum_coeff | ( | int | Face, | |
int | Mat_num, | |||
double * | Xcoor, | |||
double * | Vec_norm, | |||
double | Time, | |||
double * | U_val, | |||
double * | U_x, | |||
double * | U_y, | |||
double * | U_z, | |||
double * | Gval | |||
) |
-------------------------------------------------------- pdr_bc_neum_coeff - to return NEUMANN boundary coeficients (routine substitutes only non-zero values) ----------------------------------------------------------
int pdr_bc_val | ( | int | Problem_id, | |
int | Num, | |||
double * | Val | |||
) |
------------------------------------------------------------------------- pdr_bc_val - to get the boundary condition values ---------------------------------------------------------------------------
double pdr_conv_diff_error_test | ( | int | Field_id, | |
FILE * | Interactive_output | |||
) |
-------------------------------------------------------- pdr_conv_diff_error_test - to compute error norm for test examples ----------------------------------------------------------
int pdr_conv_diff_exact_sol | ( | int | Flag, | |
double | X, | |||
double | Y, | |||
double | Z, | |||
double | Time, | |||
double * | Exact, | |||
double * | Exact_x, | |||
double * | Exact_y, | |||
double * | Exact_z, | |||
double * | Lapl | |||
) |
-------------------------------------------------------- pdr_conv_diff_exact_sol - to return values and derivatives at a point for functions used as exact solutions for test problems ----------------------------------------------------------
double pdr_conv_diff_post_process | ( | int | Field_id, | |
FILE * | Interactive_input, | |||
FILE * | Interactive_output | |||
) |
-------------------------------------------------------- pdr_conv_diff_post_process - to privide simple interactive post-processing ----------------------------------------------------------
void pdr_fa_coeff | ( | int | Face, | |
int | BC_flag, | |||
int | Elem, | |||
int | Mat_num, | |||
double | Hsize, | |||
double | Time, | |||
int | Pdeg, | |||
double * | Xcoor, | |||
double * | Vec_norm, | |||
double * | U_val, | |||
double * | U_x, | |||
double * | U_y, | |||
double * | U_z, | |||
double * | Anx, | |||
double * | Any, | |||
double * | Anz, | |||
double * | Bn, | |||
double * | Fval, | |||
double * | Gval, | |||
double * | Qn, | |||
double * | Vel_norm | |||
) |
-------------------------------------------------------- pdr_fa_coeff - to return coefficients for face integrals ----------------------------------------------------------
int pdr_get_bc_type | ( | int | Fa_bc | ) |
----------------------------------------------------------- pdr_get_bc_type - to get BC type given BC flag from mesh data structure !!! according to some adopted convention !!! ------------------------------------------------------------
int pdr_ic_val | ( | int | Problem_id, | |
int | Num, | |||
double * | Val | |||
) |
------------------------------------------------------------------------- pdr_ic_val - to get the initial condition values ---------------------------------------------------------------------------
void pdr_pde_coeff | ( | int | Mat_num, | |
double * | Xcoor, | |||
double | Time, | |||
double * | U_val, | |||
double * | U_x, | |||
double * | U_y, | |||
double * | U_z, | |||
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 * | Mval, | |||
double * | Lval, | |||
double * | Sval, | |||
double * | Qx, | |||
double * | Qy, | |||
double * | Qz | |||
) |
-------------------------------------------------------- pdr_pde_coeff - to return coefficients of the original pdes ----------------------------------------------------------
!!!!!!!!! OLD OBSOLETE INTERFACE !!!!!!!!!!!!
pdt_conv_diff_problem* pdr_select_problem | ( | int | Problem_id | ) |
-------------------------------------------------------- pdr_select_problem - to select the proper problem ---------------------------------------------------------
int pdr_slope_limit | ( | int | Problem_id | ) |
-------------------------------------------------------- pdr_slope_limit - to limit the slope of linear solution ---------------------------------------------------------
void pdr_time_integration | ( | int | Problem_id, | |
char * | Work_dir, | |||
FILE * | interactive_input, | |||
FILE * | interactive_output | |||
) |
----------------------------------------------------------- pdr_time_integration - time integration driver. ------------------------------------------------------------
double pdr_zzhu_error | ( | int | Field_id, | |
FILE * | interactive_output | |||
) |
-------------------------------------------------------- pdr_zzhu_error - to get Zienkiewicz-Zhu error estimator ----------------------------------------------------------
double pdr_zzhu_error_small | ( | int | Field_id, | |
FILE * | interactive_output | |||
) |
-------------------------------------------------------- pdr_zzhu_error_small - to get Zienkiewicz-Zhu error based on small patches ----------------------------------------------------------
pdt_conv_diff_problem pdv_conv_diff_problems[PDC_CONV_DIFF_MAX_NUM_PROB] |