Try this change:
solForAlphaNN[alpha0_] :=
NDSolve[{eq1, eq2, eq3, ics, bcs} /. alpha -> alpha0, {f, theta,
phi}, {eta, 0, 7}, MaxStepSize -> 0.5, MaxSteps -> 10^3,
Method -> {"StiffnessSwitching",
Method -> {"ExplicitRungeKutta", Automatic}}];
Also, N[b] = 0.1
is probably not what you meant. N
is a system function, and N[b] = 0.1
sets an NValue for the symbol b
. If you don't know what that means, then it is certainly not what you intended. I usually avoid starting my variable and function names with capital letters, and I especially avoid using single capitals, since several are used by the system. Like N
. Sometimes when I want the variable to resemble traditional notation found in journals, I will compromise and use a double letter, like NN[b] = 0.1
; similarly for, say, GG[r] = 5
. But that's up to you. Just know that some things such as N[t] = 0.1
have a special meaning and may break your code.