Mathematica Stack Exchange is a question and answer site for users of Mathematica. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I get this error when trying to integrate a seemingly simple expression:

eradius = 2.8179403267*10^-15;
n = 10^-10/(1.6*10^-19);
gamma = 1600/0.511;
lb = 0.549267;
theta2 = 0.046892183133281855;
eta3 = -(theta1*lb) - (theta1*d);
rho2 = lb/theta2;

CSR3linear = 
  (0.22*eradius*n)/(gamma*rho2^(2/3)*(s/lb (sigma3end - sigma3beg) + sigma3beg)^(4/3));

kick3 = NIntegrate[(eta3 + s^2/(2 rho2))*CSR3linear, {s, 0, lb}] /. 
        {theta1 -> {0.06}, 
         d -> {8.60435},
         sigma3beg -> {1.300512*10^-004},
         sigma3end -> {1.472289*10^-005}};

NIntegrate::inumr: The integrand has evaluated to non-numerical values for all sampling points in the region with boundaries {{0,0.549267}}.

What am I doing wrong here? Also, the choice to have the parameters theta1, d sigma3beg and sigma3end as lists in the integration is because its actually a long list of numbers for each parameter (~20) that would take forever to input separately and record each output; would much prefer the solution to outputed in one list.

share|improve this question

You try to integrate before theta1 etc. are given numeric values. If I understand correctly how you wish to deal with the lists of parameters, then use Map to apply NIntegrate to each integrand:

kick3 = Map[
  NIntegrate[#, {s, 0, lb}] &,
  (eta3 + s^2/(2 rho2))*
    CSR3linear /. {theta1 -> {0.06}, d -> {8.60435}, 
    sigma3beg -> {1.300512*10^-004}, sigma3end -> {1.472289*10^-005}}
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.