URI:
       tMakefile - cngf-pf-exp1 - experiments for first paper with continuum granular model
  HTML git clone git://src.adamsgaard.dk/manus_continuum_granular1_exp
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
       tMakefile (2077B)
       ---
            1 BIN = ../cngf-pf/cngf-pf
            2 FIG != basename $(PWD)
            3 
            4 default: ../$(FIG).pdf
            5 
            6 sim.output00000.txt: $(BIN)
            7         /bin/sh -c '\
            8         ./$(BIN) -L 8.0 \
            9         -n 200e3 \
           10         -s $$( echo "1000/(365*24*60*60)" | bc -l ) \
           11         -d 1e-3 \
           12         -F \
           13         -k 2e-17 \
           14         -O 100e3 \
           15         -a 80e3 \
           16         -q $$( echo "1.0/(3600*24)" | bc -l ) \
           17         -I $$( echo "60*10" | bc -l ) \
           18         -e $$( echo "3600*24*7" | bc -l ) sim'
           19 
           20 timeseries.txt: sim.output00000.txt
           21         /bin/sh -c '\
           22         rm -f $@; \
           23         for f in sim.output*.txt; do \
           24                 tail -n 1 "$$f" | cut -f2- >> $@; \
           25         done'
           26 
           27 max_strainrate_depth.txt: sim.output00000.txt
           28         /bin/sh -c '\
           29         rm -f $@; \
           30         for f in sim.output*.txt; do \
           31                 awk " \
           32                         BEGIN{getline; depth=8.0; max=0.0} \
           33                         NF{ \
           34                                 if (\$$6 >= max && \$$6+0 > 1e-300) \
           35                                 { \
           36                                         max=\$$6; \
           37                                         depth=\$$1; \
           38                                 } \
           39                         } \
           40                         END{ \
           41                                 print depth,\"\t\",max \
           42                         }" \
           43                         "$$f" >> $@; \
           44         done'
           45 
           46 # central finite differences
           47 sediment_flux.txt: sim.output00000.txt
           48         /bin/sh -c '\
           49         rm -f $@; \
           50         for f in sim.output*.txt; do \
           51                 awk " \
           52                         BEGIN{getline; integral=0.0} \
           53                         NF{ \
           54                                 if (NR > 1) \
           55                                 { \
           56                                         integral+=(\$$2+v_prev)/2.0*(\$$1-z_prev); \
           57                                 } \
           58                                 z_prev=\$$1; \
           59                                 v_prev=\$$2; \
           60                         } \
           61                         END{ \
           62                                 print integral \
           63                         }" \
           64                         "$$f" >> $@; \
           65         done'
           66 
           67 ../$(FIG).pdf: fig.gp timeseries.txt max_strainrate_depth.txt sediment_flux.txt
           68         gnuplot fig.gp > $@
           69 
           70 max_pressure_gradient.pdf: max_pressure_gradient.txt
           71         gnuplot -e "set t pdfcairo; \
           72                 set xlabel 'output file [-]'; \
           73                 set ylabel 'max. norm. eff. stress gradient [kPa/m]'; \
           74                 plot 'max_pressure_gradient.txt' u 0:(\$$1/1e3) w l t ''" \
           75                 > $@
           76 
           77 max_pressure_gradient.txt: sim.output00000.txt
           78         > "$@"
           79         for f in sim.output*.txt; do \
           80                 awk ' \
           81                         function abs(x) \
           82                         { \
           83                                 return (x >= 0.0) ? x : -x; \
           84                         } \
           85                         { \
           86                                 if (NR > 1) { \
           87                                         dN_norm = abs(($$3 - N_prev)/($$1 - z_prev)); \
           88                                         if (dN_norm > dN_dx_norm_max) { \
           89                                                 dN_dx_norm_max = dN_norm; \
           90                                         } \
           91                                 } \
           92                                 z_prev = $$1; \
           93                                 N_prev = $$3; \
           94                         } \
           95                         END { \
           96                                 print dN_dx_norm_max \
           97                         }' "$$f" >> "$@"; done
           98 
           99 clean:
          100         rm -f *.txt
          101         rm -f ../$(FIG).pdf
          102 
          103 .PHONY: default clean