TIP-SAMPLE ADHESION

Remove["Global`*"]

Highlights

Abstract

Introduction

Needs["Graphics`PlotField`"]

Off[General::"spell", General::"spell1"]; Needs["Graphics`Arrow`"]; tera = (10^12); micro = (1/(10^6)); giga = (10^9); nano = (1/(10^9)); mega = (10^6); pico = (1/(10^12)); kilo = (10^3); femto = (1/(10^15)); milli = (1/(10.^3)); atto = (1/(10^18)); NSub
       = {c -> 2.99792458 (10^8), e -> (1.6021773/(10^19)), 
        h -> (6.6260755/(10.^34)), hbar -> (1.05457/(10.^34)), 
        K -> (1.380658/(10^23)), me -> (9.109389/(10^31)), 
        mu0 -> ((4. π)/(10^7)), eps0 -> (8.85419/(10^12))}; ESi = 0.179 tera; rhoSi = 2330; nuSi = 0.28; ESiO2 = 0.06 tera; rhoSiO2 = 2200; nuSiO2 = 0.3; ESi3N4 = 0.15 tera; rhoSi3N4 = 3100; nuSi3N4 = 0.24; EAu = 0.08 tera; rhoAu = 19300; nuAu = 0.42; ENi = 0.207 tera; rhoNi = 8900; nuNi = 0.41; EW = 0.345 tera; rhoW = 19300; nuW = 0.28; EPt = 0.17 tera; rhoPt = 21400; nuPt = 0.39; EIr = 0.52 tera; rhoIr = 22500; nuIr = 0.3; EHOPG = 0.2 tera; rhoHOPG = 2250; nuHOPG = 0.3; EPol = 0.001 tera; rhoPol = 1000; nuPol = 0.3; xx = 0.8; EPtIr = xx 0.8 EPt + (1 - xx) EIr; rhoPtIr = xx rhoPt + (1 - xx) rhoIr; nuPtIr = 0.3; opt
       = {PlotRange -> All, AxesOrigin -> {0, 0}, 
        Frame -> True, GridLines -> Automatic, 
        DefaultFont -> {"Times-Roman", 8}, 
        PlotStyle 
          -> {Dashing[{.0001}], Dashing[{.0500}], Dashing[{.0200}], 
            Dashing[{.002}]}};

Operating Conditions

Operating Conditions

case
       = {R1 -> 100 nano, R2 -> 100 micro, E1 -> ESi, 
        E2 -> EPol, nu1 -> 0.28, nu2 -> 0.3, 
        sigma -> 0.4125 nano, A -> 0.0135 atto};

Evaluation of Operating Constants

R = ((R1 R2)/(R1 + R2));

Print["R  = ", N[(R/nano) /. case], " [nm]"]

D0 = (sigma/2.5) /. case; gamma = (A/(24 π (D0^2))); W12 = 2 gamma;

Print["D0    = ", (D0/nano) /. case, " [nm]"]Print["gamma = ", N[kilo gamma] /. case, " [mJ/m^2]"]Print["W12   = ", N[kilo W12] /. case, " [mJ/m^2]"]

kappa1 = ((1 - (nu1^2))/(π E1)); kappa2 = ((1 - (nu2^2))/(π E2)); kappaeff = kappa1 + kappa2;

Print["kappa1   = ", N[(kappa1/nano)] /. case, " [m^2/nN]"]Print["kappa2   = ", N[(kappa2/nano)] /. case, " [m^2/nN]"]Print["kappaeff = ", N[(kappaeff/nano)] /. case, " [m^2/nN]"]

Indentation as a Function of the Contact Force

Contact Radius and the Contact Force

k = (4/(3 π kappaeff));

Print["k = ", N[k nano] /. case, " [nN/m^2]"]

Clear[funr]; q = 3 π R W12; funr[F_] := 
      (((((R (F + q + (Sqrt[(q^2) + 2 q F])))/k)))^(1/3));

Clear[funr0]; funr0[F_] := If[F > 0, (((((R F)/k)))^(1/3)), 0];

r0 = N[funr[0]] /. case;

Print["r(F=0) = ", (r0/nano), " [nm]"]

Print["r0/R = ", (r0/R) /. case]

Fs = N[-(3/2) π R W12] /. case;

Print["Fs = ", (Fs/nano), " [nN]"]

rs = N[Re[funr[Fs]]] /. case;

Print["rs = ", (rs/nano), " [nm]"]

Fig5x2 = 
      Plot[{funr[F nano]/nano /. case, funr0[F nano]/nano /. case}, {F, 
          -(Fs/nano), ((.99 Fs)/nano)}, 
        FrameLabel -> {"F in nN", "r in nm"}, Evaluate[opt]];

Indentation and the Contact Radius

Clear[fund1, fund2]; fund1[r_] := 
      -((r^2)/R) + ((2 (r0^(3/2)) (Sqrt[r]))/(3 R)) /. case; fund2[r_] := If[r ≤ rs, 0, fund1[r]]

Clear[fund20]; fund20[r_] := If[r < 0, 0, -((r^2)/R) /. case];

Fig5x3 = 
      Plot[Evaluate[{fund2[r nano]/nano, fund20[r nano]/nano}], {r, 0, 
          (r0/nano)}, FrameLabel -> {"r in nm", "d in nm"}, 
        Evaluate[opt]];

r1 = 
      FindRoot[fund1[r]/nano == 0, {r, 9 nano}][[1, 2
        ]];

Print["r1 = ", (r1/nano), " [nm]"]

d0 = N[fund1[r0]]; ds = N[fund1[rs]];

Print["d0 = ", (d0/nano), " [nm]"]Print["ds = ", (ds/nano), " [nm]"]

Indentation and the Contact Force

Clear[fund3]; fund3[F_] := 
      If[F ≤ Fs, 0, fund2[r] /. r -> funr[F] /. case];

Clear[fund30]; fund30[F_] := fund20[r] /. r -> funr0[F] /. case;

Fig5x4 = 
      Plot[{fund3[F nano]/nano, fund30[F nano]/nano}, {F, 
          -((2 Fs)/nano), ((2 Fs)/nano)}, 
        FrameLabel -> {"F in nN", "d in nm"}, Evaluate[opt]];

F1 = 
      FindRoot[fund3[F nano]/nano == 0, {F, -5.6, -5.4}]
            [[1, 2]] nano;

Print["F1 = ", (F1/nano), " [nm]"]

lista = {(rs/nano), (ds/nano), (Fs/nano)}; listb = {(r1/nano), 0, (F1/nano)}; listc = {(r0/nano), (d0/nano), 0};

tbl1 = 
      TableForm[{lista, listb, listc}, 
        TableHeadings 
          -> {{"at d=ds", "at d=0", "at F=0"}, {
              "r [nm]", "d [nm]", "F [nN]"}}]

Inverted Functions

Contact Force and the Contact Radius

Clear[eq11]; eq11 = 
      (((((RR (F + qq + (Sqrt[(qq^2) + 2 qq F])))/kk)))^(1/3));

Print["funF(r) = ", 
      Simplify[Solve[eq11 == r, F][[1, 1, 2]]]]

Clear[funF]; funF[r_] := ((k (r^3))/R) - (Sqrt[((2 k q)/R)]) (r^(3/2));

Clear[funF0]; funF0[r_] := ((k (r^3))/R);

Fig5x5 = 
      Plot[Evaluate[{funF[r nano]/nano /. case, 
            funF0[r nano]/nano /. case}], {r, funr[-Fs]/nano /. case, 
          (rs/nano)}, 
        AxesOrigin -> {funr[-Fs]/nano /. case, -(rs/nano)}, 
        DefaultFont -> {"Times-Roman", 8}, 
        FrameLabel -> {"r in nm", "F in nN"}, Evaluate[opt]];

Contact Radius and the Indentation

Clear[funr1, a, b, z]; funr1[y_] := 
      Solve[a z + b (z^4) == y, z][[2, 1, 2
        ]];

Clear[funr2a]; funr2a[d_] = 
      N[funr1[d]]^2 /. a -> ((2 (r0^(3/2)))/(3 R)) /. 
          b -> -(1/R) /. case;

Clear[funr2]; funr2[d_] = If[d == 0, Re[funr2a[.01 nano]], Re[funr2a[d]]];

Clear[funr20]funr20[d_] := If[d < 0, (Sqrt[-d R]), 0];

Print["r(ds) = ", N[Re[funr2[ds]/nano]] /. case, " [nm]"]Print["rs    = ", N[(rs/nano)], " [nm]"]

Fig5x6 = 
      Plot[{funr2[d nano]/nano /. case, funr20[d nano]/nano /. case}, {d, 
          ((2 d0)/nano), (ds/nano)}, 
        AxesOrigin -> {((2 d0)/nano), 0}, 
        FrameLabel -> {"d in nN", "r in nm"}, Evaluate[opt]];

Contact Force and the Indentation

Clear[funF1a]; funF1a[d_] := funF[funr2[d]] /. case;

Clear[funF1, funF2]; funF1[d_] := 
      If[Abs[d] ≤ .001 nano, funF1a[.001 nano], funF1a[d]]; funF2[d_] := If[d < ds, funF1[d], 0]

Clear[funF10]; funF10[d_] = If[d < 0, k (Sqrt[R]) (((-d))^(3/2)), 0] /. case;

Fig5x7 = 
      Plot[{funF2[d nano]/nano /. case, funF10[d nano]/nano /. case}, {d, 
          (d0/nano), ((2 ds)/nano)}, AxesOrigin -> {(d0/nano), 0}, 
        DefaultFont -> {"Times-Roman", 8}, 
        FrameLabel -> {"d in nm", "F in nN"}, Evaluate[opt]];

Check of the Inversion Codes

Print["rs       = ", N[(rs/nano)], " [nm]"]Print["r(ds)    = ", N[Re[funr2[ds]/nano]], " [nm]"]Print["ds       = ", N[(ds/nano)], " [nm]"]Print["d(r(Fs)) = ", Re[N[fund1[funr[Fs]]]/nano], " [nm]"]Print["Fs       = ", N[(Fs/nano)], " [nm]"]Print["F(r(ds)) = ", N[Re[funF[funr2[ds]]/nano]] /. case, 
      " [nm]"]Print["F(ds)    = ", N[Re[funF1[ds]]/nano], " [nm]"]

Limits of Adhesion Parameters

Clear[W12max]; W12max[RR_] := ((RR k)/(6 π))

Fig5x8 = 
      Plot[Evaluate[W12max[RR nano] /. case], {RR, 10, (R/nano) /. case}, 
        FrameLabel -> {"R in nm", "W12max in J/m^2"}, 
        Evaluate[opt]];

Clear[Amax]; Amax[RR_] := 12 π (D0^2) W12max[RR]

Fig5x9 = 
      Plot[Evaluate[Amax[RR nano]/(nano^2) /. case], {RR, 10, 100}, 
        FrameLabel -> {"R in nm", "Amax in aJ"}, Evaluate[opt]];

Contact Pressure

Maximum Contact Pressure

Clear[P0max, P1max]; P0max[r_] := ((3 k r)/(2 π R)); P1max[r_] := (Sqrt[((3 k W12)/(2 π r))]);

Fig5x10 = 
      Plot[{P0max[r nano] nano /. case, P1max[r nano] nano /. case}, {
          r, .1, 10}, FrameLabel -> {"r in nm", "Pmax in GPa"}, 
        Evaluate[opt]];

rp = 
      Solve[((3 kk rr)/(2 pi RR)) == 
            (Sqrt[((3 kk W)/(2 pi rr))]), rr][[1, 1, 
        2]]; Print["rp = ", ((((rp^3)))^(1/3))]

rp = (((((2 π (R^2) W12)/(3 k))))^(1/3)) /. case; Print["rp = ", N[(rp/nano)], " [nm]"]

Distribution of the Contact Pressure

Clear[P0, P1]; P1[r_, x_] := ((Sqrt[((3 k W12)/(2 π r))])/(Sqrt[1 - (x^2)])); 
    P0[r_, x_] := ((3 k r (Sqrt[1 - (x^2)]))/(2 π R));

Fig5x11 = 
      Plot[{P0[rp, x] nano /. case, P1[rp, x] nano /. case}, {x, 
          -.9, .9}, 
        FrameLabel -> {"x in nm", "Pmax in GPa"}, 
        Evaluate[opt]];

Lennard-Jones Potential

Clear[Wb, WLJ]; Wa = ((R1 A)/(6 sigma)); Wb[s_] := (1/210) ((((sigma/s)))^7) - (sigma/s); WLJ[s_] := Wa Wb[s] /. case;

Clear[FLJ]; FLJ[s_] = -(∂_s) WLJ[s];

sFzero = 
      Solve[FLJ[s] == 0, s][[6, 1, 2
          ]] /. case; Print["sFzero = ", N[(sFzero/nano)], " [nm]"]

sFmin = 
      Solve[(∂_s) FLJ[s] == 0, s][[6, 1, 2
        ]]; Print["sFmin = ", N[(sFmin/nano) /. case], " [nm]"]

Clear[FLJ1]; FLJ1[s_] := If[s ≥ 0, FLJ[s + sFzero], 0];

Fig5x12 = 
      Plot[FLJ1[s nano]/nano /. case, {s, 
          -((1.9 (sFmin - sFzero))/nano), 
          ((1.9 (sFmin - sFzero))/nano)}, 
        FrameLabel -> {"d in nm", "FLJ in nN"}, Evaluate[opt]];

Total Force as a Function of the Indentation

Push-in Region

dmax = Max[((4 (sFmin - sFzero))/nano), ((4 ds)/nano)];

Force with No Adhesion Present

Clear[funF0In]; funF0In[d_] := Re[If[d ≤ 0, funF10[d], FLJ1[d]]];

Fig5x13 = 
      Plot[funF0In[d nano]/nano /. case, {d, -dmax, dmax}, 
        FrameLabel -> {"d in nm", "F in nN"}, Evaluate[opt]];

Force with Adhesion Present

Clear[funFIn]; funFIn[d_] = If[d < 0, funF1[d], FLJ1[d]] /. case;

Fig5x14 = 
      Plot[funFIn[d nano]/nano, {d, -dmax, dmax}, 
        FrameLabel -> {"d in nm", "F in nN"}, Evaluate[opt]];

Pull-out Region

Force with No Adhesion Present

Clear[funF0Out]; funF0Out[d_] := If[d < 0, funF10[d], FLJ1[d]];

Force with Adhesion Present

Clear[funFOut]; funFOut[d_] := If[d < ds, funF1[d], FLJ1[d]];

Hysteresis Loop

Fig5x15 = 
      Plot[{funFIn[d nano]/nano, funFOut[d nano]/nano}, {d, -dmax, 
          dmax}, PlotRange 
          -> {((1.5 Fs)/nano), -((1.5 Fs)/nano)}, 
        AxesOrigin -> {-dmax, ((3 Fs)/nano)}, 
        FrameLabel -> {"d in nm", "F in nN"}, Evaluate[opt]];