My Mathematica skill is still rusty, so kindly bear with me.
I'm having problem formatting expression to compile
the function correctly:
$\sum _{g=1}^G \sum _{n=1}^{\text{Ns}} -\frac{e^{\frac{\text{Kg}}{P \gamma _{g,n}}} \text{Kg} \beta _{g,n}}{\text{Log}[2]} \text{ExpIntegralEi}\left[-\frac{\text{Kg}}{P \gamma _{g,n}}\right]$
All variables are known except $\beta_{g,n}$ which is an optimization variable. Here's what I've done to express it usingcompile[]
function.
costFxn =
Compile[{{P, _Real}, {Ns, _Integer}, {gh, _Real}, {Kg, _Integer}, {G, _Integer},
{\beta_{g, n}, _Integer}},
Sum[-Exp[Kg/(P gh[[g,n]])](Kg \beta_{g,n})/Log[2] ExpIntegalEi[-Kg/(P gh[[g,n]])], {g,1,G},{n,1,Ns}]
]
when I try executing this snippet, I get part spec error.
'Compile::part: "Part specification gh[[1,1]] cannot be compiled since the argument is not a tensor of sufficient rank. Evaluation will use the uncompiled function."'
I've been rummaging through the help file but not quite sure of how to correct this error.
ExpIntegalEi
incorrectly. $\endgroup$