Q:

ODE and BVP: NDSolve errors

The mathematical problem is shown here. I tried to solve writing the 
A0 = 2.0377638272727268`;
A1 = -7.105521894545453`;
A2 = 9.234000147272726`;
A3 = -5.302489919999999`;
A4 = 1.1362478399999998`;
h0 = 45.5;
σM = 0.00592251
λ1 = 1.025;
λ2 = 1.308;

f1[y_, x_] = A1 + 2 A2 y[x] + 3 A3 y[x]^2 + 4 A4 y[x]^3
b[y_, x_] = h0^2/12 (5 A1 + 8 A2 y[x] + 9 A3 y[x]^2 + 8 A4 y[x]^3)/y[x]^6
g[y_, x_] = -(h0^2/12) (A1 + 2 A2 y[x] + 3 A3 y[x]^2 + 4 A4 y[x]^3)/y[x]^5

Sys = First@NDSolve[{
f1[y, x] + b[y, x] y'[x]^2 + g y''[x] == σM,
y[0] == λ1,
y[15] == λ2
}, y, {x, 0, 15}]

When I evaluate this code, Mathematica answers with the following errors:

Power::infy: Infinite expression 1/0.^6 encountered. >>
  Infinity::indet: Indeterminate expression 0. ComplexInfinity encountered. >>
Power::infy: Infinite expression 1/0.^6 encountered. >>
Infinity::indet: Indeterminate expression 0. ComplexInfinity encountered. >>
Power::infy: Infinite expression 1/0.^7 encountered. >>
General::stop: Further output of Power::infy will be suppressed during this calculation. >>
Infinity::indet: Indeterminate expression 0. ComplexInfinity encountered. >>
General::stop: Further output of Infinity::indet will be suppressed during this calculation. >>
NDSolve::ndnum: Encountered non-numerical value for a derivative at x == 0.`. >>

As suggested here (section: "StartingInitialConditions") I tried to wrote:
Sys = First@NDSolve[{
      f1[y, x] + b[y, x] y'[x]^2 + g y''[x] == σM,
      y[0] == λ1,
      y[15] == λ2}, y, {x, 0, 15}, 
      Method -> {"Shooting","StartingInitialConditions" -> {y[0] == λ1, y'[0] == 0.1}}]

followed by the following error:

NDSolve::ndnum: Encountered non-numerical value for a derivative at x == 0.`. >>

How can I overtake this errors? What am I doing something wrong?

A:

There's a g in your differential equation, I think you actually mean g[y, x], right? This is the root of your problem. By the way, why do you make y an argument for functions f1, b, g? (It doesn't hurt though…) In fact, I think it will be conciser not to use function definitions in this case.
Then, your "StartingInitialConditions" for Shooting isn't so proper, I found a better one:
A0 = 2.0377638272727268`;
A1 = -7.105521894545453`;
A2 = 9.234000147272726`;
A3 = -5.302489919999999`;
A4 = 1.1362478399999998`;
h0 = 45.5;
σM = 0.00592251;
λ1 = 1.025;
λ2 = 1.308;

f1 = A1 + 2 A2 y[x] + 3 A3 y[x]^2 + 4 A4 y[x]^3;
b = h0^2/12 (5 A1 + 8 A2 y[x] + 9 A3 y[x]^2 + 8 A4 y[x]^3)/y[x]^6;
g = -(h0^2/12) (A1 + 2 A2 y[x] + 3 A3 y[x]^2 + 4 A4 y[x]^3)/y[x]^5;
eqn = f1 + b y'[x]^2 + g y''[x] - σM;

sol = NDSolve[{eqn == 0 , y[0] == λ1, y[15] == λ2}, y, {x, 0, 15}, 
               Method -> {"Shooting", "StartingInitialConditions" -> 
                          {y[15] == λ2, y'[15] == 0}}]
Plot[y[x] /. sol, {x, 0, 15}]
Plot[eqn /. sol, {x, 0, 15}, PlotRange -> All]

Edit
Some warnings will be generated when running the code above, but as shown in the second picture, the error of the solution is quite small, the only defect is, it doesn't match the left BC 囧. (Sorry I didn't notice it yesterday. ) But now I've got a really proper initial condition:
sol = NDSolve[{eqn == 0 , y[0] == λ1, y[15] == λ2}, y, {x, 0, 15}, 
               Method -> {"Shooting", "StartingInitialConditions" -> 
                          {y[15] == λ2, y'[15] == 1/10 + 1/100 + 2/1000}}]
Plot[y[x] /. sol, {x, 0, 15}, PlotRange -> All, 
     Epilog -> {PointSize[Large], Point[{{0, λ1}, {15, λ2}}]}]
Plot[eqn /. sol, {x, 0, 15}, PlotRange -> All]
(y[0] /. sol) - λ1

{4.45117*10^-6}

I still found it by trial and error (with the help of Table). 

