Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Graph plotting and "The precision of the argument function is less

  • To: mathgroup at smc.vnet.net
  • Subject: [mg126871] Graph plotting and "The precision of the argument function is less
  • From: jdm <james.d.mclaughlin at gmail.com>
  • Date: Thu, 14 Jun 2012 05:33:40 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

I've got a function, integratedadvthirdaltb, that I'm trying to use in
plotting some graphs:

thirdaltb[KP_, Ps_, C_, M_] :=
 NSolve[Sqrt[2*M]*b +
    InverseCDF[NormalDistribution[0, 1], Ps]*
     Sqrt[4*(InverseCDF[NormalDistribution[0, 1], Ps]^2) +
       4*Sqrt[2*M]*b + (2.785398163397448309616)*M] ==
   KP*C - 2*(InverseCDF[NormalDistribution[0, 1], Ps]^2), b,
  WorkingPrecision -> 20]

directadv[b_] := -Log2[1 - CDF[NormalDistribution[0, 1], b]]

integratedadvthirdaltb[KP_, Ps_, C_, M_] :=
 directadv[b /. thirdaltb[KP, Ps, C, M]]

So far so good. However, the first graph I've tried to plot is giving
me a lot of "The precision of the argument function ({6.6073 +4\
Sqrt[2]\ \
b+1.83842\ Sqrt[58.0856 +16\Sqrt[2]\b]}\\n) is less than \
WorkingPrecision" errors (in fact, that's not the only argument
function that apparently has less than WorkingPrecision.) Having
WorkingPrecision->20 in the definition of the thirdaltb function, I'm
at a loss as to why I'm getting these errors.

That said, the first graph does get plotted. Here's the instruction to
do so

LogLinearPlot[{integratedadvthirdaltb[x, 0.967, 2^(-5.35614381),
   2^(4)]}, {x, 2^(9), 2^(13)}, AxesLabel -> {KPs, advantage},
 PlotLabel ->
  Style["HEYSFIRST6622NONLINEAR - theoretical advantage with Ps = \
0.97"], PlotRange -> {0, 12}, PlotStyle -> {Blue},
 Ticks -> {{{2^(9), Superscript[2, Log2[2^(9)]]}, {2^(10),
     Superscript[2, Log2[2^(10)]]}, {2^(11),
     Superscript[2, Log2[2^(11)]]}, {2^(12),
     Superscript[2, Log2[2^(12)]]}, {2^(13),
     Superscript[2, Log2[2^(13)]]}}, Automatic},
 WorkingPrecision -> 20]

The next graph I've tried to plot, however, is completely blank. Only
the axes and heading/labels appear on screen. And I'm getting a lot
more "The precision of the argument function ... is less than Working
Precision" messages than I was for its predecessor:

LogLinearPlot[{integratedadvthirdaltb[x, 0.967, 2^(-8), 1]}, {x,
  2^(9), 2^(13)}, AxesLabel -> {KPs, advantage},
 PlotLabel ->
  Style["CRYPRACTHREEFOURROUNDSTWELVEBITS - theoretical advantage \
with Ps = 0.97"], PlotRange -> {0, 12}, PlotStyle -> {Red},
 Ticks -> {{{2^(9), Superscript[2, Log2[2^(9)]]}, {2^(10),
     Superscript[2, Log2[2^(10)]]}, {2^(11),
     Superscript[2, Log2[2^(11)]]}, {2^(12),
     Superscript[2, Log2[2^(12)]]}, {2^(13),
     Superscript[2, Log2[2^(13)]]}}, Automatic},
 WorkingPrecision -> 20]

Does anyone have any ideas as to what I'm doing wrong and how I can
put it right?

Thanks!

James McLaughlin.



  • Prev by Date: Re: Varying a constant in an ODE to Manipulate solution
  • Next by Date: Re: Can't work with Mathematica 8
  • Previous by thread: Re: Varying a constant in an ODE to Manipulate solution
  • Next by thread: Re: Can't work with Mathematica 8