-
Lionel GUEZ authored
This makes the program `eddy_graph` heavier but it makes sense because there can be no connection between the two graphs, and we need to make the graphs as small as possible for large spatio-temporal domains.
Lionel GUEZ authoredThis makes the program `eddy_graph` heavier but it makes sense because there can be no connection between the two graphs, and we need to make the graphs as small as possible for large spatio-temporal domains.
eddy_graph_in.sh 1.79 KiB
#!/bin/bash
# Note: no need to sort number_eddies.csv, already sorted by construction.
if (($# != 2))
then
echo "Usage: eddy_graph.sh N_PROC INPUT_SHP_TRIPLET"
exit 1
fi
set -e
##set -x
rank=0
while ((rank < $1))
do
rm -rf SHP_triplet_$rank
mkdir SHP_triplet_$rank
((rank += 1))
done
${mpiexec:-mpiexec} -n $1 @CMAKE_BINARY_DIR@/eddy_graph $2
cat >number_eddies.csv <<EOF
"date subscript" "number of visible extrema" "number of interpolated eddies"
k number_vis_extr n_interp
EOF
rm -f isolated_nodes.txt
rank=0
while ((rank < $1))
do
cat number_eddies_$rank.csv >>number_eddies.csv
cat edgelist_cyclo_$rank.csv >>edgelist_cyclo_no_header.csv
cat edgelist_anti_$rank.csv >>edgelist_anti_no_header.csv
cat isolated_nodes_$rank.txt >>isolated_nodes.txt
rm number_eddies_$rank.csv edgelist_@(cyclo|anti)_$rank.csv \
isolated_nodes_$rank.txt
((rank += 1))
done
# Sort for easier comparison between runs:
for orientation in cyclo anti
do
cat >edgelist_$orientation.csv <<EOF
"predecessor date subscript" "predecessor eddy subscript" "successor date subscript" "successor eddy subscript"
k1 i1 k2 i2 weight
$(sort --key=1 --key=2 --numeric-sort edgelist_${orientation}_no_header.csv)
EOF
rm edgelist_${orientation}_no_header.csv
done
echo "Created files \"number_eddies.csv\", \"edgelist_cyclo.csv\", " \
"\"edgelist_anti.csv\" and \"isolated_nodes.txt\"."
rm -rf SHP_triplet
mv SHP_triplet_0 SHP_triplet
rank=1
while ((rank < $1))
do
for my_base in extremum outermost_contour max_speed_contour
do
shpcat SHP_triplet_$rank/$my_base SHP_triplet/$my_base
dbfcat SHP_triplet_$rank/$my_base SHP_triplet/$my_base
done
rm -r SHP_triplet_$rank
((rank += 1))
done
cp $2/grid_nml.txt SHP_triplet
echo "Created directory \"SHP_triplet\"."