•Checks

Options[UPerturb] = {ExpansionOrder -> {1}} ;

UPerturb :: badlim = "Error: `1` is not a valid summation limit" ;

UPerturb[exp_, opts___Rule] := Block[{or, lim, quants, ruls, subs, a, b, i, summ}, or = ExpansionOrder /. {opts} /. Options[UPerturb] ; lim = Which[NumericQ[or], {i, 0, or}, Head[or] === List && (Length[or] === 1 || Length[or] === 2) && (And @@ (NumericQ /@ or)), {i, Sequence @@ or}, True, Message[UPerturb :: badlim, or] ; Return[]] ; quants = {USmall, UChiPlus, UChiMinus, UFPLus, UFMinus} ; subs = (#[a__][b__] -> #[a, b]) & /@ quants ; ruls = ((#[a__] -> ((summ[Coeff[#][i][a], lim])) & /@ quants) /. summ -> Sum) ; exp /. subs /. ruls] ;

UPerturb[USmall[μ][x], ExpansionOrder -> {0, 2}]

-(2^(1/2) ∇ _ μ(Overscript[ξ^( ), ->] · Overscript[σ, ->]))/f + (Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 (u _ μ '6 Overscript[ξ^( ), ->] · Overscript[σ, ->] - Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 u _ μ) - (u _ μ '6 Overscript[ξ^( ), ->] · Overscript[σ, ->] - Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 u _ μ) '6 Overscript[ξ^( ), ->] · Overscript[σ, ->])/(4 f^2) + u _ μ

SetOptions[CovariantNabla, Explicit -> False]

{Explicit -> False}

UPerturb[USmall[μ][x], ExpansionOrder -> {0, 2}]

-(2^(1/2) ∇ _ μ(Overscript[ξ^( ), ->] · Overscript[σ, ->]))/f _ ϕ^(ó    ) + (Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 (u _ μ '6 Overscript[ξ^( ), ->] · Overscript[σ, ->] - Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 u _ μ) - (u _ μ '6 Overscript[ξ^( ), ->] · Overscript[σ, ->] - Overscript[ξ^( ), ->] · Overscript[σ, ->] '6 u _ μ) '6 Overscript[ξ^( ), ->] · Overscript[σ, ->])/(4 (f _ ϕ^(ó    ))^2) + u _ μ


Converted by Mathematica  (July 10, 2003)