I am trying to do some error propagation using mathematica. This is my second day using the program.
I am trying to take the derivative of a numerical function that is made up of the following lists.
f = Log[(currentI/Inot) + 1]
currentI = nfordata[[All, 2]]
{1.6*10^-10, 2.6*10^-10, 5.8*10^-10, 1.02*10^-9, 1.74*10^-9, 6.1*10^-9, 2.86*10^-8, 67/1000000000, 4.93*10^-7, 1.65*10^-6, 0.00001092, 0.0001216, 0.000628, 0.00134, 0.00358, \ 0.00591, 0.012696, 0.01901}
Inot = newnrev[[All]]
{2.01496*10^-10, 1.97487*10^-10, 1.91907*10^-10, 1.87144*10^-10, 1.82655*10^-10, 1.80109*10^-10, 1.92204*10^-10, 2.08256*10^-10, 2.60135*10^-10, 2.95558*10^-10, 3.27915*10^-10, 3.45166*10^-10, 3.47394*10^-10, 3.61041*10^-10, 4.10134*10^-10, 4.01291*10^-10, 3.60103*10^-10, 4.64213*10^-10}
errorI = {0.05*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.15*^-9, 0.1*^-9, 0.1*^-9, 0.001*^-6, 0.01*^-6, 0.1*^-6, 0.2*^-6, 0.001*^-3, 0.01*^-3,0.01*^-3, 0.01*^-3, 0.01*^-3, 0.01*^-3}
errorInot = {0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.01*^-9, 0.1*^-9, 0.01*^-9, 0.01*^-9, 0.02*^-9, 0.02*^-9, 0.02*^-9, 0.02*^-9, 0.02*^-9, 0.02*^-9, 0.02*^-9}
This is so that I can find the uncertainty of the function f, at many points on my curve of the function.
Uncert =
N[Block[{currentI, errorI, Inot, errorInot},
Sqrt[(D[f, Inot]*errorInot)^2 + (D[f, currentI]*errorI)^2]]]
{0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.} Is there any way to get non-zero values from this function?
ErrorBarPlots. If the help pages are no help, I can post more suggestions. – xsk8rat Jun 14 '15 at 01:23fbyf[u_, v_] := Log[(u/v) + 1](which I think you should do), and evaluateN[Block[{currentI, errorI, Inot, errorInot}, Sqrt[(D[f[currentI, Inot], Inot]*errorInot)^2 + (D[f[currentI, Inot], currentI]*errorI)^2]]]you will get{0.140047, 0.036138, ... 0.0555452, 0.0430869}, which I believe is what you are looking for. – m_goldberg Jun 15 '15 at 01:36