Just to clarify, this is the normal behavior
In[7]:= Length@Table[x, {x, 0, 1, .1}]
Out[7]= 11
When you do something drastic like
$PreRead = (# /.
s_String /;
StringMatchQ[s, NumberString] &&
Precision@ToExpression@s == MachinePrecision :>
s <> "`50." &);
then you need to be ready for the consequences, among which is
In[10]:= Length@Table[x, {x, 0, 1, .1}]
Out[10]= 10
Since you want your answers to such a high number of digits, why not just keep everything as rational and use N
at the end?
skew[Amp_, ?mp_, ?mp_, ?mp_] :=
Module[{A = Rationalize@Amp, ? =
Rationalize@?mp, ? =
Rationalize@?mp, ? =
Rationalize@?mp}, (2 Sqrt[?] (((-1 +
A) A (? - ?)^2 (A^2 (? - ?)^2 -
A (? - ?) (? - ? - ?) \
+ ? (? + ?)) (-(-1 +
A) ? ? + ? (? +
A ?)))/(((-1 + A) ? - A ? -
3 ?) ((-1 + A) ? - A ? -
2 ?) (? - A ? +
A ? + ?)^3) + (-3 (-1 +
A) ? ? + ? (? +
3 A ?))/(? - A ? + A ? +
3 ?) - ((-1 +
A) A (? - ?)^2 (-3 (-1 +
A) ? ? + ? (2 ? +
3 A ?)))/((? - A ? +
A ? + ?) (? - A ? + A ? +
2 ?) (? - A ? + A ? +
3 ?))))/(((-1 +
A) A (? - ?)^2 (-(-1 +
A) ? ? + ? (? +
A ?)))/(((-1 + A) ? - A ? -
2 ?) (? - A ? +
A ? + ?)^2) + (-2 (-1 +
A) ? ? + ? (? +
2 A ?))/(? - A ? + A ? +
2 ?))^(3/2)
];
In[2]:= Table[skew[A, 20.1, 2.98, 0.015], {A, 0, 1, 0.1}] // N[#, 50] &
Length[%]
Out[2]= {0.14189513095212063367049531962987546141568326643434, \
0.13920344101328578263969756404215809382766534147239, \
0.13592716321563841983794812006874993948237693570027, \
0.13185917327785972103954298320739470452252943280392, \
0.12667686295955584799447506972227890015016781166517, \
0.11984973711991386295060361312735642563028850992476, \
0.11044152395284289944251345711595700385738865557709, \
0.096634643366104288816678293713331415198513960340867, \
0.074400586745371447280910852144971096789513221053062, \
0.033185045336993739355804248832880796377132424223379, \
0.054635836470815303531952862734950163493012524454082}
Out[3]= 11