# ReplaceAll of a function and all his derivatives

My program is

B := {B1[t, x, y, z], B2[t, x, y, z], B3[t, x, y, z]};

g := {{1+ Φ[t, x, y, z],               B[[1]],              B[[2]],       B[[3]] },
{           B[[1]], 1/(1+ Φ[t, x, y, z]),                   0,            0 },
{           B[[2]],                    0, 1/(1+ Φ[t, x, y, z],            0 },
{           B[[3]],                    0,                   0, 1/(1+ Φ[t, x, y, z]}};

xx = {t, x, y, z};

TaylorExpantion[h_] :=
Block[{res},
res = ReplaceAll[h, Φ[t, x, y,z] :> ε Φ[t, x, y,z];
res = ReplaceAll[res, B[[1]] -> ε^2 B[[1]]];
res = ReplaceAll[res, B[[2]] -> ε^2 B[[2]]];
res = ReplaceAll[res, B[[3]] -> ε^2 B[[3]]];
Simplify[Normal[Series[res, {ε, 0, 2}]] /. ε -> 1]
]

InverseMetric[g_] :=
Block[{res},
res = Inverse[g];
res = TaylorExpantion[res]
]

ChristoffelSymbol[g_, xx_] :=
Block[{d, res},
d = 4;
res = Table[(1/2)*(D[g[[m, n]], xx[[l]]] + D[g[[m, l]], xx[[n]]]
-D[g[[n, l]], xx[[m]]]),
{m, 1, d}, {n, 1, d}, {l, 1, d}];
res = TaylorExpantion[res]
]

RicciTensor[g_, xx_] :=
Block[{d, Chr, res},
d = 4; Chr = ChristoffelSymbol[g, xx]; ig = InverseMetric[g];
res = Table[Sum[D[ig[[l, s]]*Chr[[s, m, n]], xx[[l]]]
- D[ig[[l, s]]*Chr[[s, m, l]], xx[[n]]], {s, 1, d}, {l, 1,d}]
+ Sum[ig[[a, b]]*Chr[[b, m, n]]*ig[[l, s]]*Chr[[s, l, a]]
-ig[[a, b]]*Chr[[b, m, l]]*ig[[l, s]]*Chr[[s, n, a]],
{s, 1, d}, {l, 1, d}, {a, 1, d}, {b, 1, d}],
{m, 1, d}, {n, 1, d}];
res = TaylorExpantion[res]
]


Now the problem is when I print one component of Ricci Tensor (i.e Part[RicciTensor[g,xx],1,2]]), the derivatives of the Φ and B does not treated as perturbations, as should be due to the ReplaceAll. How can I make the program to make the replacement f(x)->ε f(x) for the function and all the derivatives. I don't want to use res = ReplaceAll[h, f_[t, x, y,z] :> ε f[t, x, y,z];, because Φ and B are first and second order in perturbation respectively.

ReplaceAll[h, x:(Φ|Derivative[_][Φ])[t, x, y,z] :> ε x[t, x, y,z]]

(and similar for B).
ReplaceAll[h, Φ :> Function[{t,x,y,z}, ε Φ[t, x, y,z]]