Commit 8b92ccaf authored by Mario Morales Hernandez's avatar Mario Morales Hernandez
Browse files

Implement cross sections for discharge computation

- Add linear cross-section support with user-defined transects and
uniform sampling points

- Parse cross-section definitions from config (cross_section_flag,
cross_section_loc_file, shared print_observation)

- Implement MPI-compatible point assignment and global indexing for
cross-section sampling across subdomains

- Compute discharge by projecting fluxes (qx, qy) onto the cross-section
normal and integrating along the transect

- Add time-series output of integrated discharge per cross-section
to Q_at_CrossSection.txt

- Add example files in allatoona and paraboloid test cases
parent ec35bc4b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -7,3 +7,4 @@ doc/_build
*.swp
doc/doxygen_output
doc/api
cid
+6 −0
Original line number Diff line number Diff line
@@ -49,6 +49,12 @@ extbc_file="input/allatoona/allatoona.extbc"
time_series_flag=1
observation_loc_file="input/allatoona/allatoona.obs"

#---------------------------------------------------------------------------
# cross_section_flag=1 to activate cross-section discharge output
#---------------------------------------------------------------------------
cross_section_flag=1
cross_section_loc_file="input/allatoona/allatoona.xsecs"


#---------------------------------------------------------------------------
# print_option=h to output just the h, huv to output all h,u and v
+3 −0
Original line number Diff line number Diff line
%Format: x1, y1, x2, y2, npoints
730000,3779121,729600,3778644,100
727300,3772500,727500,3772500,100

input/allatoona/allatoona_1.cfg

deleted100755 → 0
+0 −83
Original line number Diff line number Diff line
#---------------------------------------------------------------------------
# Triton config file - Allatoona
#---------------------------------------------------------------------------
# Input Data
#---------------------------------------------------------------------------
# Topography 
dem_filename="input/allatoona/allatoona.dem"

# Manning input files
n_infile="input/allatoona/allatoona.mann"
const_mann=0.035

# Hydrograph and flow locations information
num_sources=2
src_loc_file="input/allatoona/allatoona.src"
hydrograph_row_size=41
hydrograph_filename="input/allatoona/allatoona.hyg"

# Runoff related information
runoff_row_size=41
runoff_map="input/runoff/allatoona.rmap"
num_runoffs=156
runoff_filename="input/runoff/allatoona.roff"
#---------------------------------------------------------------------------
# Output Control
#---------------------------------------------------------------------------
# print_option=h to output just the h, huv to output all h,u and v
print_option=h

# Print interval in seconds of simulation time
print_interval=1800

# time_series_flag=1 to activate, 0 to deactivate
observation_loc_file="input/obs/case5.obs"
time_series_flag=0

#---------------------------------------------------------------------------
# Simulation Control
#---------------------------------------------------------------------------
# Start and duration of simulation time in seconds
sim_start_time=0
sim_duration=432000

# If checkpoint_id is 0 that means a clean start
checkpoint_id=0

# time_increment_fixed=0 is for variable dt, 1 for constant dt
time_increment_fixed=0
time_step=0.01

# Initial input files
h_infile=""
qx_infile=""
qy_infile=""

#---------------------------------------------------------------------------
# Input Output File Settings
#---------------------------------------------------------------------------
# File Format=BIN or ASC
# File Output Option=PAR or SEQ

input_format=ASC
output_format=ASC
outfile_pattern="%s/%s/%s_%02d_%02d"
output_option=SEQ
#---------------------------------------------------------------------------
# External boundaries
#---------------------------------------------------------------------------
num_extbc=2
extbc_file="input/allatoona/allatoona.extbc"

#---------------------------------------------------------------------------
# Other variables
#---------------------------------------------------------------------------
it_count=0
# Courant Number
courant=0.5

hextra=0.001
gpu_direct_flag=0
domain_decomposition=static
open_boundaries=0
+7 −1
Original line number Diff line number Diff line
@@ -49,6 +49,12 @@ extbc_file=""
observation_loc_file="input/paraboloid/paraboloid.obs"
time_series_flag=1

#---------------------------------------------------------------------------
# cross_section_flag=1 to activate cross-section discharge output
#---------------------------------------------------------------------------
cross_section_flag=1
cross_section_loc_file="input/paraboloid/paraboloid.xsecs"

#---------------------------------------------------------------------------
# print_option=h to output just the h, huv to output all h,u and v
#---------------------------------------------------------------------------
@@ -75,7 +81,7 @@ time_step=0.01
# Spatial/temporal print (in seconds) & iteration output
#---------------------------------------------------------------------------
print_interval=1.121425
print_observation=4.4857
print_observation=0.1
it_print=400
#---------------------------------------------------------------------------
# Initial input files
Loading