ABA=abaqus ABAMK=$(ABA) make FILSRC=filread.f FILEXE=$(FILSRC:.f=.exe) DISP=disp COORD=coord DISP1=disp1 DISP2=disp2 OUT1=data OUT2=$(OUT1).grid all: $(DISP) $(COORD) $(OUT1) $(OUT2) $(FILEXE): $(FILSRC) $(ABAMK) -j $(FILSRC) $(DISP) $(COORD): $(FILEXE) $(ABA) $(FILEXE) $(OUT1): $(DISP1) $(DISP2) $(COORD) paste $(DISP2) $(DISP1) > tmp1 awk '{printf "%20.15f\t %20.15f\n", $$2-$$5, $$3-$$6}' tmp1 > tmp2 paste $(COORD) tmp2 > tmp3 awk '{if ($$3%1 != 0) print $$1, $$2, $$3, $$4, $$5 }' tmp3 | sort -n -k3 -n -k2 > $@ $(OUT2): $(OUT1) awk 'BEGIN{z=$$3} (z!=$$3){print ""; z=$$3} {print $$0}' $< > $@ clean: rm $(FILEXE)