Definitions

Rs[f_,α_,V0_][m_]:=((-m(1-(m^2)))/(2(((f[1]-(1-(m^2))f'[1]))^2)))(α (V0^2)f'[1]+(2-α)f[1](((f[1])/(1-(m^2)))-f'[1])-α(Sqrt[((4(V0^2))/α)f[1]f'[1](((f[1])/(1-(m^2)))-f'[1])+((((((f[1])^2)/(1-(m^2)))-((V0^2)+f[1])f'[1]))^2)]))
𝒮Ω[f_,α_,V0_][m_]:=-(α/2)(Log[1-((f[1])/(f'[1]))((1+m/Rs[f,α,V0][m])/(1-(m^2)))]+((V0^2)/(f[1]))(((1-((f'[1])/(f[1]))((1-(m^2))/(1+m/Rs[f,α,V0][m]))))^(-1)))+(1/2)Log[((-m)/(Rs[f,α,V0][m]))]

Von[f_,α_]:=(Sqrt[((1-α+(Sqrt[1-α]))/α)f[1]])
Vsh[f_,α_]:=(Sqrt[((2(1+(Sqrt[1-α]))-α)/α)f[1](1-((f[1])/(f'[1])))])
VSATs[f_,α_]:=(Sqrt[((f'[1])/α)-f[1]])
VSAT[f_,α_?NumericQ]:=V0/.FindRoot[𝒮Ω[f,α,V0][(10^(-15))],{V0,VSATs[f,α]}]

mMin[f_,α_,V0_]:=(Sqrt[((-(V0^2) (-2+α) f[1] (f[1]-2 f'[1]) f'[1]+(V0^4) α ((f'[1])^2)+2 (Sqrt[-(V0^4) (-1+α) ((f[1])^4) ((f'[1])^2)])+α ((f[1])^2) f'[1] (-f[1]+f'[1]))/(((V0^4) α+2 (V0^2) (-2+α) f[1]+α ((f[1])^2)) ((f'[1])^2)))])

ms[f_,α_,V0_]:=((Sqrt[-(V0^2) α-α f[1]+f'[1]])/(Sqrt[f'[1]]))

mMax[f_,α_?NumericQ,V0_?NumericQ]:=m/.FindRoot[𝒮Ω[f,α,V0][m],{m,ms[f,α,V0]}]

f3=Function[q,(1/2)(q^3)];

Plots

Action examples

actionPlot1=Plot[Evaluate[Function[V0,𝒮Ω[Function[q,q],1/2,V0][m]]/@Range[0,4/3,1/3]],{m,-1,1},Frame->True,FrameStyle->Black,FrameLabel->{m,(Subscript[𝒮, Ω])[m]},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},Epilog->{Inset[LineLegend[ColorData[97]/@Range[5],NumberForm[#,{∞,3}]&/@N[Range[0,4/3,1/3]],LegendLayout->{"Column",1},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},LegendFunction->Panel,LegendLabel->(Subscript[V, 0])],Scaled[{0.2,0.32}]],Text[Style["f(q) = q",FontFamily->"BitstreamCharter",FontSize->12,Black,ScriptLevel->1],Scaled[{0.85,0.91}]]},ImageSize->590/2+22,AspectRatio->9/10,PlotRange->{{-0.025,1.025},{-0.249,0.049}},Prolog->{Line[{{-1,0},{2,0}}],Line[{{0,-4},{0,1}}],Line[{{1,-4},{1,1}}]}]

es={0,2(Sqrt[(1/2)+(1/(Sqrt[2]))])/3,(Sqrt[(1/2)+(1/(Sqrt[2]))]),1.25`,1.3250000000000002`,1.375,(Sqrt[1+((2 (Sqrt[2]))/3)]),1.42,1.44042348655380148084529792564829760627`20.,1.46};
actionPlot3=Plot[Evaluate[Function[V0,𝒮Ω[Function[q,(1/2)(q^3)],1/2,V0][m]]/@es],{m,-0.2,1},Frame->True,FrameStyle->Black,FrameLabel->{m,Style[(Subscript[𝒮, Ω])[m],FontOpacity->0]},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},Prolog->{Line[{{-1,0},{2,0}}],Line[{{0,-4},{0,1}}],Line[{{1,-4},{1,1}}]},PlotRange->{{-0.025,1.025},{-0.249,0.049}},Epilog->{Inset[LineLegend[ColorData[97]/@Range[10],NumberForm[#,{∞,3}]&/@N[es],LegendLabel->(Subscript[V, 0]),LegendLayout->{"Column",2},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},LegendFunction->Panel],Scaled[{0.32,0.32}]],Text[Style["f(q) = (1/2)(q^3)",FontFamily->"BitstreamCharter",FontSize->12,Black,ScriptLevel->1],Scaled[{0.83,0.91}]]},ImageSize->590/2+22,AspectRatio->9/10,FrameTicksStyle->{{FontOpacity->0,Automatic},{Automatic,Automatic}}]

SetDirectory[NotebookDirectory[]];
Export["figs/action_1.pdf",actionPlot1];
Export["figs/action_3.pdf",actionPlot3];

Action in different regimes

es=0.5;
regimePlot1=Plot[𝒮Ω[f3,es,1/2][m],{m,-0.2,1},Frame->True,FrameStyle->Black,FrameLabel->{m,(Subscript[𝒮, Ω])[m]},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},Prolog->{Line[{{-1,0},{2,0}}],Line[{{0,-4},{0,1}}],Line[{{1,-4},{1,1}}],{Dashed,Line[{{mMin[f3,1/2,es],-0.175},{mMin[f3,1/2,es],𝒮Ω[f3,1/2,es][mMin[f3,1/2,es]]}}]},{Dashed,Line[{{ms[f3,1/2,es],-0.135},{ms[f3,1/2,es],0}}]},Text[Style[(Subscript[m, min]),FontFamily->"BitstreamCharter",FontSize->12,Black],{0.025+mMin[f3,1/2,es],-0.185}],Text[Style[(SuperStar[m]),FontFamily->"BitstreamCharter",FontSize->12,Black],{0.02+ms[f3,1/2,es],-0.145}]},PlotRange->{{-0.025,1.025},{-0.249,0.049}},Epilog->{Text[Style[(Subscript[V, 0])==0.5,FontFamily->"BitstreamCharter",FontSize->12,Black,ScriptLevel->1],Scaled[{0.94,0.97}],ImageScaled[{1,1}]],Text[Style["Connected regime",FontFamily->"BitstreamCharter",FontSize->12,Black,Bold],Scaled[{0.035,0.005}],ImageScaled[{0,0}]]},ImageSize->590/3+22,AspectRatio->1]

es=1.37;
regimePlot2=Plot[𝒮Ω[f3,1/2,es][m],{m,-0.2,1},Frame->True,FrameStyle->Black,FrameLabel->{m,Style[(Subscript[𝒮, Ω])[m],FontOpacity->0]},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},Prolog->{Line[{{-1,0},{2,0}}],Line[{{0,-4},{0,1}}],Line[{{1,-4},{1,1}}],{Dashed,Line[{{mMin[f3,1/2,es],-0.175},{mMin[f3,1/2,es],𝒮Ω[f3,1/2,es][mMin[f3,1/2,es]]}}]},{Dashed,Line[{{mMax[f3,1/2,es],-0.135},{mMax[f3,1/2,es],0}}]},Text[Style[(Subscript[m, min]),FontFamily->"BitstreamCharter",FontSize->12,Black],{0.025+mMin[f3,1/2,es],-0.185}],Text[Style[(Subscript[m, max]),FontFamily->"BitstreamCharter",FontSize->12,Black],{0.04+mMax[f3,1/2,es],-0.145}]},PlotRange->{{-0.025,1.025},{-0.249,0.049}},Epilog->{Text[Style[(Subscript[V, 0])==1.37,FontFamily->"BitstreamCharter",FontSize->12,Black,ScriptLevel->1],Scaled[{0.94,0.97}],ImageScaled[{1,1}]],Text[Style["Onset regime",FontFamily->"BitstreamCharter",FontSize->12,Black,Bold],Scaled[{0.035,0.005}],ImageScaled[{0,0}]]},ImageSize->590/3+22,AspectRatio->1,FrameTicksStyle->{{FontOpacity->0,Automatic},{Automatic,Automatic}}]

es=1.4;
regimePlot3=Plot[𝒮Ω[f3,1/2,es][m],{m,-0.2,1},Frame->True,FrameStyle->Black,FrameLabel->{m,Style[(Subscript[𝒮, Ω])[m],FontOpacity->0]},LabelStyle->{FontFamily->"BitstreamCharter",FontSize->12,Black},Prolog->{Line[{{-1,0},{2,0}}],Line[{{0,-4},{0,1}}],Line[{{1,-4},{1,1}}],{Dashed,Line[{{mMax[f3,1/2,es],-0.135},{mMax[f3,1/2,es],0}}]},Text[Style[(Subscript[m, max]),FontFamily->"BitstreamCharter",FontSize->12,Black],{0.04+mMax[f3,1/2,es],-0.145}]},PlotRange->{{-0.025,1.025},{-0.249,0.049}},Epilog->{Text[Style[(Subscript[V, 0])==1.4,FontFamily->"BitstreamCharter",FontSize->12,Black,ScriptLevel->1],Scaled[{0.94,0.97}],ImageScaled[{1,1}]],Text[Style["Shattered regime",FontFamily->"BitstreamCharter",FontSize->12,Black,Bold],Scaled[{0.035,0.005}],ImageScaled[{0,0}]]},ImageSize->590/3+22,AspectRatio->1,FrameTicksStyle->{{FontOpacity->0,Automatic},{Automatic,Automatic}}]

SetDirectory[NotebookDirectory[]];
Export["figs/regime_1.pdf",regimePlot1];
Export["figs/regime_2.pdf",regimePlot2];
Export["figs/regime_3.pdf",regimePlot3];

Phase diagrams

phasesPlot1=Plot[Evaluate[Reverse@{VSATs[f,α],VSATs[f,α]}/(α^(-1/2))/.f->Function[q,((q^1))]],{α,0,1},Frame->True,FrameStyle->Black,Prolog->{Line[{{0,-1},{0,2}}],Line[{{1,-1},{1,2}}],Line[{{-1,0},{2,0}}]},PlotRange->{{-0.06,1+0.06},{-0.075,1.275}},Epilog->{Inset[LineLegend[ColorData[97]/@Reverse@Range[3],{(Subscript[V, Style["sat",FontVariations->{"CapsType"->"SmallCaps"}]]),(Subscript[V, sh]),(Subscript[V, on])},LabelStyle->{FontFamily->"Bitstream Charter",FontSize->12,Black}],Scaled[{0.75,0.75}]],Text[Style["f(q) = q",{FontFamily->"Bitstream Charter",FontSize->12,Black,ScriptLevel->2}],Scaled[{0.25,0.15}]]},FrameLabel->{α,"(Subscript[V, 0]) (α^(1/2))"},Filling->{1->Axis},LabelStyle->{FontFamily->"Bitstream Charter",FontSize->12,Black},ImageSize->590/3+25,AspectRatio->1,PlotStyle->{ColorData[97][1],ColorData[97][3]}]

phasesPlot2=Plot[Evaluate[Reverse@{VSAT[f,α],Vsh[f,α],Von[f,α]}/(α^(-1/2))/.f->Function[q,(1/2)((q^2))]],{α,0,1},Frame->True,FrameStyle->Black,Prolog->{Line[{{0,-1},{0,2}}],Line[{{1,-1},{1,2}}],Line[{{-1,0},{2,0}}]},PlotRange->{{-0.06,1+0.06},{-0.075,1.275}},Epilog->{Text[Style["f(q) = (1/2)(q^2)",{FontFamily->"Bitstream Charter",FontSize->12,Black,ScriptLevel->2}],Scaled[{0.3,0.15}]]},FrameLabel->{α,Style["(Subscript[V, 0]) (α^(1/2))",FontOpacity->0]},Filling->{1->Axis,2->{1},3->{2}},LabelStyle->{FontFamily->"Bitstream Charter",FontSize->12,Black},ImageSize->590/3+25,AspectRatio->1,FrameTicksStyle->{{FontOpacity->0,Automatic},{Automatic,Automatic}}]

phasesPlot3=Plot[Evaluate[Reverse@{VSAT[f,α],Vsh[f,α],Von[f,α]}/(α^(-1/2))/.f->Function[q,(1/2)((q^3))]],{α,0,1},Frame->True,FrameStyle->Black,Prolog->{Line[{{0,-1},{0,2}}],Line[{{1,-1},{1,2}}],Line[{{-1,0},{2,0}}]},PlotRange->{{-0.06,1+0.06},{-0.075,1.275}},Epilog->{Line[{{0.23,1.1716747792652888`},{-0.0,1.1716747792652888`}}],Line[{{0.35,(Sqrt[4/3])-0.06},{0.23,(Sqrt[4/3])-0.06},{0.23,(Sqrt[4/3])},{-0.0,(Sqrt[4/3])}}],,Text[Style["(Subscript[E, gs])",{FontFamily->"Bitstream Charter",FontSize->12,Black}],{0.3,1.165}],Text[Style["(Subscript[E, th])",{FontFamily->"Bitstream Charter",FontSize->12,Black}],{0.43,1.1}],Text[Style["f(q) = (1/2)(q^3)",{FontFamily->"Bitstream Charter",FontSize->12,Black,ScriptLevel->2}],Scaled[{0.3,0.15}]]},FrameLabel->{α,Style["(Subscript[V, 0]) (α^(1/2))",FontOpacity->0]},Filling->{1->Axis,2->{1},3->{2}},LabelStyle->{FontFamily->"Bitstream Charter",FontSize->12,Black},ImageSize->590/3+25,AspectRatio->1,FrameTicksStyle->{{FontOpacity->0,Automatic},{Automatic,Automatic}}]

SetDirectory[NotebookDirectory[]];
Export["figs/phases_1.pdf",phasesPlot1];
Export["figs/phases_2.pdf",phasesPlot2];
Export["figs/phases_3.pdf",phasesPlot3];