cat << EOT > awk_ss.awk BEGIN{ fcu=35 rm=1.5 cu=0.67*fcu/rm ey=0.00024*sqrt(fcu/rm) dx=0.00005 eu=0.0035 nn=eu/dx for(i=0;i<=nn;i++){ xx=i*dx sig=-cu/ey/ey*(xx-ey)**2+cu if(ey<=xx)sig=cu print xx,sig } } EOT awk -f awk_ss.awk > _ss.txt fig=fig_gmt_ss_con.eps gmt set FONT_LABEL 20p gmt set MAP_TICK_LENGTH_PRIMARY -0.1c gmt psxy _ss.txt -R0/0.0040/0/18 -JX15/10 -W2 -Bxf0.0035+l'Strain' -Byf15.633+l'Stress' -BSW -P -K > $fig gmt pstext -R -J -F+f+a+j -N -O -K << EOT >> $fig 0.0012093 2 16p 90 LT 0.00024(f@-cu@-/@~g@~@-m@-)@+1/2@+ 0.0035500 2 16p 90 LT 0.0035 0.0002 16.133 16p 0 LB 0.67 f@-cu@-/@~g@~@-m@- 0.0001 0.5 16p 0 LB 5.5(f@-cu@-/@~g@~@-m@-)@+1/2@+ 0.0001 1.5 16p 0 LB Initial gradient EOT echo '0 15.633 0.0011593 15.633' | gmt psxy -R -J -Sv0.05+s -W0.75,#777777,3_3:0 -O -K >> $fig echo '0.0011593 0 0.0011593 15.633' | gmt psxy -R -J -Sv0.05+s -W0.75,#777777,3_3:0 -O -K >> $fig echo '0.0035000 0 0.0035000 15.633' | gmt psxy -R -J -Sv0.05+s -W0.75,#777777,3_3:0 -O >> $fig fig=fig_gmt_ss_steel.eps gmt set FONT_LABEL 20p gmt set MAP_TICK_LENGTH_PRIMARY -0.1c gmt psxy -R-0.0080/0.0080/-550/550 -JX15/10 -W2 -P -K << EOT > $fig -0.0070 -460 -0.0023 -460 0.0023 460 0.0070 460 EOT gmt pstext -R -J -F+f+a+j -N -O -K << EOT >> $fig 0.0040 -10 20p 0 CT Strain -0.0002 250 20p 90 CB Stress 0.0050 480 16p 0 CB Tension -0.0050 -480 16p 0 CT Compression -0.0001 460 16p 0 RM f@-y@-/@~g@~@-m@- 0.0001 -460 16p 0 LM f@-y@-/@~g@~@-m@- 0.0006 60 16p 61 LT 200kN/mm@+2@+ EOT echo '-0.0080 0 0.0080 0' | gmt psxy -R -J -Sv0.05+s -W0.75,#000000 -O -K >> $fig echo '0 -550 0 550' | gmt psxy -R -J -Sv0.05+s -W0.75,#000000 -O -K >> $fig echo '0 460 0.0023 460' | gmt psxy -R -J -Sv0.05+s -W0.75,#777777,3_3:0 -O -K >> $fig echo '0 -460 -0.0023 -460' | gmt psxy -R -J -Sv0.05+s -W0.75,#777777,3_3:0 -O >> $fig