TheBoussinesqModel
3.2.1
|
#include "turtle.h"
#include "t_alloc.h"
#include "t_utilities.h"
#include "rw_maps.h"
#include "geometry.h"
#include "g_raster2plvector.h"
#include "bigcells2.h"
#include "geometry2.h"
#include "b_utilities.h"
#include "b_solver.h"
#include "keywords_file_b.h"
#include "b_volumes.h"
#include "b_v_advection.h"
Go to the source code of this file.
Macros | |
#define | VELOCITY_INITIALIZATION_VALUE -9999 |
Functions | |
double | F1_coefficient (long j, double velocity, double wet_vert_area) |
double | b_advection (long i) |
double | t_st_advection_operator_element (long i, DOUBLEVECTOR *eta, double cond_dirichlet) |
double | symmetric_surface_velocity (long j, double forcing) |
double | asymmetric_surface_velocity (long j, double eta_previous) |
int | update_velocity (DOUBLEVECTOR *eta) |
int | update_F1_wet_vert_area () |
Variables | |
STRINGBIN * | filenames |
DOUBLERASTER_MAP * | draster |
DOUBLE_GRID * | dgrid |
PARAM * | param |
FLAG * | flag |
DOUBLEVECTOR * | elevation_bottom_fine |
DOUBLEVECTOR * | elevation_bottom_coarse |
DOUBLEVECTOR * | elevation_bottom_flines |
DOUBLEVECTOR * | elevation_bottom_bottom |
DOUBLEVECTOR * | elevation_terrain_fine |
DOUBLEVECTOR * | elevation_terrain_flines |
DOUBLEVECTOR * | outlet_coefficient |
DOUBLEVECTOR * | porosity_fine |
DOUBLEVECTOR * | runoff_coefficient |
DOUBLEVECTOR * | water_surface_elevation |
extern DOUBLEVECTOR runoff_coefficient; /!<map of the coefficient of the rating curve in the outlet q_discharge=C*h_sup^m */ More... | |
DOUBLEVECTOR * | water_mass_error |
DOUBLEVECTOR * | surface_water_velocity |
DOUBLEVECTOR * | F1_wet_vert_area |
DOUBLEVECTOR * | dirichlet |
This file is part of Boussinesq.
Boussinesq is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Boussinesq is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Boussinesq. If not, see http://www.gnu.org/licenses/.
Definition in file b_v_advection.c.
#define VELOCITY_INITIALIZATION_VALUE -9999 |
Definition at line 73 of file b_v_advection.c.
Referenced by update_F1_wet_vert_area(), and update_velocity().
double asymmetric_surface_velocity | ( | long | j, |
double | eta_previous | ||
) |
j | (long) line index |
area_vert;
Definition at line 234 of file b_v_advection.c.
Referenced by b_advection(), and update_velocity().
double b_advection | ( | long | i) |
j | - (long) index of the polygon |
(global)velocity | - (DOUBLEVECTOR *) eulerian velocity thourg the line |
(global)wat_vert_area | - (DOUBLEVECTOR *) - water vertical area over the j-th line multiplied by F1 |
Definition at line 103 of file b_v_advection.c.
References asymmetric_surface_velocity(), GRID::boundary_indicator, DOUBLE_GRID::coarse, polygon_connection_attributes::connections, PARAM::dt, POLYGON::edge_indices, POLYGONVECTOR::element, polygon_connection_attribute_array::element, GRID::lines, GRID::links, LINEVECTOR::nh, POLYGONVECTOR::nh, DOUBLEVECTOR::nh, LINEVECTOR::nl, POLYGONVECTOR::nl, LONGVECTOR::nl, GRID::polygons, vertical_area_surf(), and water_surface_elevation_mean().
Referenced by time_loop().
double F1_coefficient | ( | long | j, |
double | velocity, | ||
double | wet_vert_area | ||
) |
j | - (long) index of the line |
velocity | - (double) eulerian velocity thourg the line |
wat_vert_area | - (double) - water vertical area over the j-th line |
Definition at line 75 of file b_v_advection.c.
References DOUBLE_GRID::coarse, PARAM::dt, LINEVECTOR::element, LINE::length2d, GRID::lines, and PARAM::p_runoff.
Referenced by update_F1_wet_vert_area().
double symmetric_surface_velocity | ( | long | j, |
double | forcing | ||
) |
j | - (long) index of the line \ |
eta | - (DOUBLEVECTOR *) water surface elevation |
Definition at line 216 of file b_v_advection.c.
References PARAM::dt, and PARAM::gravity.
Referenced by t_st_advection_operator_element(), and update_velocity().
double t_st_advection_operator_element | ( | long | i, |
DOUBLEVECTOR * | eta, | ||
double | cond_dirichlet | ||
) |
Definition at line 161 of file b_v_advection.c.
References GRID::boundary_indicator, DOUBLE_GRID::coarse, polygon_connection_attributes::connections, polygon_connection_attributes::d_connections, PARAM::dt, POLYGON::edge_indices, POLYGONVECTOR::element, polygon_connection_attribute_array::element, GRID::lines, GRID::links, LINEVECTOR::nh, POLYGONVECTOR::nh, DOUBLEVECTOR::nh, LINEVECTOR::nl, POLYGONVECTOR::nl, LONGVECTOR::nl, GRID::polygons, symmetric_surface_velocity(), vertical_area_surf(), and water_surface_elevation_mean().
Referenced by t_st_operator_element(), and t_st_operator_element_no_dirichlet().
int update_F1_wet_vert_area | ( | ) |
eta | - (DOUBLEVECTOR *) water srface pressure |
Definition at line 333 of file b_v_advection.c.
References GRID::boundary_indicator, DOUBLE_GRID::coarse, polygon_connection_attributes::connections, POLYGON::edge_indices, POLYGONVECTOR::element, polygon_connection_attribute_array::element, F1_coefficient(), GRID::lines, GRID::links, LINEVECTOR::nh, POLYGONVECTOR::nh, LONGVECTOR::nh, DOUBLEVECTOR::nh, LINEVECTOR::nl, POLYGONVECTOR::nl, DOUBLEVECTOR::nl, GRID::polygons, VELOCITY_INITIALIZATION_VALUE, vertical_area_surf(), and water_surface_elevation_mean().
Referenced by time_loop().
int update_velocity | ( | DOUBLEVECTOR * | eta) |
NOO
(DOUBLEVECTOR | *) - eta water surface |
Definition at line 254 of file b_v_advection.c.
References asymmetric_surface_velocity(), GRID::boundary_indicator, DOUBLE_GRID::coarse, polygon_connection_attributes::connections, polygon_connection_attributes::d_connections, POLYGON::edge_indices, POLYGONVECTOR::element, polygon_connection_attribute_array::element, free_doublevector(), GRID::lines, GRID::links, new_doublevector(), LINEVECTOR::nh, POLYGONVECTOR::nh, LONGVECTOR::nh, DOUBLEVECTOR::nh, LINEVECTOR::nl, POLYGONVECTOR::nl, DOUBLEVECTOR::nl, GRID::polygons, symmetric_surface_velocity(), VELOCITY_INITIALIZATION_VALUE, and water_surface_elevation_mean().
Referenced by time_loop().
DOUBLE_GRID* dgrid |
DOUBLEVECTOR* dirichlet |
coefficient F1 for surface flow as reported in Casulli,2008
Definition at line 71 of file b_solver.c.
DOUBLERASTER_MAP* draster |
DOUBLEVECTOR* elevation_bottom_bottom |
DOUBLEVECTOR* elevation_bottom_coarse |
DOUBLEVECTOR* elevation_bottom_fine |
DOUBLEVECTOR* elevation_bottom_flines |
DOUBLEVECTOR* elevation_terrain_fine |
DOUBLEVECTOR* elevation_terrain_flines |
DOUBLEVECTOR* F1_wet_vert_area |
DOUBLEVECTOR* outlet_coefficient |
PARAM* param |
DOUBLEVECTOR* porosity_fine |
DOUBLEVECTOR* runoff_coefficient |
DOUBLEVECTOR* surface_water_velocity |
DOUBLEVECTOR* water_mass_error |
DOUBLEVECTOR* water_surface_elevation |
extern DOUBLEVECTOR runoff_coefficient; /!<map of the coefficient of the rating curve in the outlet q_discharge=C*h_sup^m */
map of porosity defined on the pixels of the fine grid