Hello, in my code, i have the following expr (This is the worst one):
a2_ij = π*_KHS*(1+_χ)*_ρ_S*ϵ^2*dij3*_C^2*
(x_0ij^(2*λa)*(@f(aS_1,2*λa,ζₓ)+@f(B,2*λa,x_0effij,ζₓ))-
x_0ij^(λa+λr)*2*(@f(aS_1,λa+λr,ζₓ)+@f(B,λa+λr,x_0effij,ζₓ))+
x_0ij^(2*λr)*(@f(aS_1,2*λr,ζₓ)+@f(B,2*λr,x_0effij,ζₓ))+
x_0ij^(2*λa+2)*2*Q1λa*(@f(aS_1,2*λa+2,ζₓ)+@f(B,2*λa+2,x_0effij,ζₓ))*Dij+
x_0ij^(2*λr+2)*2*Q1λr*(@f(aS_1,2*λr+2,ζₓ)+@f(B,2*λr+2,x_0effij,ζₓ))*Dij-
x_0ij^(λa+λr+2)*2*(Q1λa+Q1λr)*(@f(aS_1,λa+λr+2,ζₓ)+@f(B,λa+λr+2,x_0effij,ζₓ))*Dij+
x_0ij^(2*λa+4)*Q1λa^2*(@f(aS_1,2*λa+4,ζₓ)+@f(B,2*λa+4,x_0effij,ζₓ))*Dij^2+
x_0ij^(2*λr+4)*Q1λr^2*(@f(aS_1,2*λr+4,ζₓ)+@f(B,2*λr+4,x_0effij,ζₓ))*Dij^2-
x_0ij^(λa+λr+4)*(2*Q1λa*Q1λr)*(@f(aS_1,λa+λr+4,ζₓ)+@f(B,λa+λr+4,x_0effij,ζₓ))*Dij^2+
x_0ij^(2*λa+4)*2*Q2λa*(@f(aS_1,2*λa+4,ζₓ)+@f(B,2*λa+4,x_0effij,ζₓ))*Dij^2+
x_0ij^(2*λr+4)*2*Q2λr*(@f(aS_1,2*λr+4,ζₓ)+@f(B,2*λr+4,x_0effij,ζₓ))*Dij^2-
x_0ij^(λa+λr+4)*2*(Q2λa+Q2λr)*(@f(aS_1,λa+λr+4,ζₓ)+@f(B,λa+λr+4,x_0effij,ζₓ))*Dij^2+
x_0ij^(2*λa+6)*2*(Q1λa*Q2λa)*(@f(aS_1,2*λa+6,ζₓ)+@f(B,2*λa+6,x_0effij,ζₓ))*Dij^3+
x_0ij^(2*λr+6)*2*(Q1λr*Q2λr)*(@f(aS_1,2*λr+6,ζₓ)+@f(B,2*λr+6,x_0effij,ζₓ))*Dij^3-
x_0ij^(λa+λr+6)*2*(Q1λr*Q2λa+Q1λa*Q2λr)*(@f(aS_1,λa+λr+6,ζₓ)+@f(B,λa+λr+6,x_0effij,ζₓ))*Dij^3+
x_0ij^(2*λa+8)*Q2λa^2*(@f(aS_1,2*λa+8,ζₓ)+@f(B,2*λa+8,x_0effij,ζₓ))*Dij^4+
x_0ij^(2*λr+8)*Q2λr^2*(@f(aS_1,2*λr+8,ζₓ)+@f(B,2*λr+8,x_0effij,ζₓ))*Dij^4-
x_0ij^(λa+λr+8)*(2*Q2λa*Q2λr)*(@f(aS_1,λa+λr+8,ζₓ)+@f(B,λa+λr+8,x_0effij,ζₓ))*Dij^4)
codecov only marks the first line as covered. Is there something i can do about that? (from the codecov side :sweat_smile: )
I don't think so, because IIRC julia will report that as a 1-line expression.
the obvious thing to do is separate the monstrosity into multiple named subexpressions
That's incredible.
With julia currently lacking Common Subexpression Elimination you really want to refactor the code to reduce duplication. https://github.com/JuliaLang/julia/pull/51120 would help, but we're far from it at the moment
Last updated: Jul 01 2025 at 04:54 UTC