tMakefile - cngf-pf-exp1 - experiments for first paper with continuum granular model
(HTM) git clone git://src.adamsgaard.dk/manus_continuum_granular1_exp
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
tMakefile (4130B)
---
1 BIN = ../cngf-pf/cngf-pf
2 SHEARFLUX = ../cngf-pf/shear_flux
3 MAXDEPTH = ../cngf-pf/max_depth_simple_shear
4
5 # grounding-line width [m]
6 WIDTH = 100e3
7
8 # average ice-flow velocity [m/s]
9 VEL != echo 1000.0/365.0/24.0/3600.0 | bc -l
10
11 POROSITY = 0.35
12 DIFFUSIVITY = 1e-8
13 FREQ_DAILY != echo 1.0/3600.0/24.0 | bc -l
14 FREQ_WEEKLY != echo 1.0/3600.0/24.0/7.0 | bc -l
15 FREQ_MONTHLY != echo 1.0/3600.0/24.0/30.0 | bc -l
16 FREQ_YEARLY != echo 1.0/3600.0/24.0/365.0 | bc -l
17 FREQ_DECADAL != echo 1.0/3600.0/24.0/365.0/10.0 | bc -l
18 FREQ_CENTENNIAL != echo 1.0/3600.0/24.0/365.0/100.0 | bc -l
19 FREQ=$(FREQ_WEEKLY)
20 T_END != echo 3600.0*24.0*14.0 | bc -l
21 FLAGS = -m 0.45 -c 3e3 -n 100e3 -d 1e-3 -s $(VEL) -L 4.0 -p $(POROSITY) -D $(DIFFUSIVITY) -q $(FREQ) -I 1800.0
22
23 TARGET_VOL = 5.34e11
24
25 default: \
26 steady_flux \
27 def_depth
28
29 steady.txt:
30 $(BIN) $(FLAGS) > $@
31
32 def_depth:
33 for q in $(FREQ_DAILY) $(FREQ_WEEKLY) $(FREQ_MONTHLY) $(FREQ_YEARLY) $(FREQ_DECADAL) $(FREQ_CENTENNIAL); do \
34 printf '%s\t' "$$q"; \
35 $(MAXDEPTH) -p $(POROSITY) -D $(DIFFUSIVITY) -q $$q -a 50e3;\
36 done
37
38 steady_flux: steady.txt
39 # steady-state hydrology
40 @avg_spec_flux=$$($(SHEARFLUX) steady.txt) && \
41 avg_flux=$$(awk -v avg_spec_flux="$$avg_spec_flux" "BEGIN { print $(WIDTH)*avg_spec_flux }" ) && \
42 yearly_volume=$$(awk -v avg_flux="$$avg_flux" "BEGIN { print avg_flux*3600.0*24.0*365.0 }" ) && \
43 duration=$$(awk -v target_vol=$(TARGET_VOL) -v yearly_volume="$$yearly_volume" "BEGIN { print target_vol/yearly_volume }" ) && \
44 printf 'Specific flux: %.5g m^2/s\n' "$$avg_spec_flux" && \
45 printf ' %.5g m^2/a\n' "$$(awk -v q="$$avg_spec_flux" 'BEGIN {print q*3600.0*24.0*365.0}')" && \
46 printf 'Avg. flux: %.5g m^3/s\n' "$$avg_flux" && \
47 printf 'Yearly volume: %.5g m^3/a\n' "$$yearly_volume" && \
48 printf 'Duration: %.5g a\n' "$$duration"
49
50 variable.output00095.txt:
51 $(BIN) $(FLAGS) \
52 -F -a 10e3 \
53 -e $(T_END) \
54 variable
55
56 variable_flux: variable.output00095.txt
57 # variable water-pressure, low amplitude
58 @avg_spec_flux=$$($(SHEARFLUX) variable.output*.txt | awk '{sum+=$$1} END{print sum/NR}') && \
59 avg_flux=$$(awk -v avg_spec_flux="$$avg_spec_flux" "BEGIN { print $(WIDTH)*avg_spec_flux }" ) && \
60 yearly_volume=$$(awk -v avg_flux="$$avg_flux" "BEGIN { print avg_flux*3600.0*24.0*365.0 }" ) && \
61 duration=$$(awk -v target_vol=$(TARGET_VOL) -v yearly_volume="$$yearly_volume" "BEGIN { print target_vol/yearly_volume }" ) && \
62 printf 'Specific flux: %.5g m^2/s\n' "$$avg_spec_flux" && \
63 printf ' %.5g m^2/a\n' "$$(awk -v q="$$avg_spec_flux" 'BEGIN {print q*3600.0*24.0*365.0}')" && \
64 printf 'Avg. flux: %.5g m^3/s\n' "$$avg_flux" && \
65 printf 'Yearly volume: %.5g m^3/a\n' "$$yearly_volume" && \
66 printf 'Duration: %.5g a\n' "$$duration"
67
68
69 # -a 50e3 is now 79 m^2/a
70 # -a 99e3 is now 102 m^2/a
71 variable_hi.output00095.txt:
72 $(BIN) $(FLAGS) \
73 -F -a 50e3 \
74 -e $(T_END) \
75 variable_hi
76
77 variable_flux_hi: variable_hi.output00095.txt
78 # variable water-pressure, high amplitude
79 @avg_spec_flux=$$($(SHEARFLUX) variable_hi.output*.txt | awk '{sum+=$$1} END{print sum/NR}') && \
80 avg_flux=$$(awk -v avg_spec_flux="$$avg_spec_flux" "BEGIN { print $(WIDTH)*avg_spec_flux }" ) && \
81 yearly_volume=$$(awk -v avg_flux="$$avg_flux" "BEGIN { print avg_flux*3600.0*24.0*365.0 }" ) && \
82 duration=$$(awk -v target_vol=$(TARGET_VOL) -v yearly_volume="$$yearly_volume" "BEGIN { print target_vol/yearly_volume }" ) && \
83 printf 'Specific flux: %.5g m^2/s\n' "$$avg_spec_flux" && \
84 printf ' %.5g m^2/a\n' "$$(awk -v q="$$avg_spec_flux" 'BEGIN {print q*3600.0*24.0*365.0}')" && \
85 printf 'Avg. flux: %.5g m^3/s\n' "$$avg_flux" && \
86 printf 'Yearly volume: %.5g m^3/a\n' "$$yearly_volume" && \
87 printf 'Duration: %.5g a\n' "$$duration"
88
89
90 truffer_comparison:
91 for A in 10e3 20e3 40e3 80e3 160e3 320e3 640e3 1000e3; do \
92 printf '%s\t' "$$A"; \
93 $(MAXDEPTH) -D 1.5e-5 -a $$A -q $(FREQ_YEARLY); \
94 done
95
96 clean:
97 rm -f steady.txt
98 find . -type f -name 'variable*.output*.txt' -delete
99
100 .PHONY: default clean steady_flux variable_flux variable_flux_hi amplitude_dependence truffer_comparison