Package Problem
- To: mathgroup at smc.vnet.net
- Subject: [mg93825] Package Problem
- From: "m.g." <mg at michaelgamer.de>
- Date: Wed, 26 Nov 2008 07:21:26 -0500 (EST)
Hello Group,
I have the following problem. I made a short Module to calculate the
zeros of a given Function.I did this simply in the following way:
Nullstellen[f_, intervall_List] :=
Module[{func, startwerte, werte, vzwechsel, liste,
a = intervall[[1]], b = intervall[[2]]},
func = Function[x, Evaluate[f]];
werte = Table[x, {x, a, b, Abs[b - a]/100.}]; (* start-values *)
liste = ({#, func[x] /. x -> #} ) & /@ werte;
vzwechsel = Select[Split[liste, (Sign[Last[#1]] == -Sign[Last
[#2]]) &], Length[#] == 2 &]; (* Sign Change*)
startwerte = Map[First, vzwechsel, {2}];
Map[FindRoot[func[x] == 0, {x, #[[1]], #[[2]]}] &, startwerte]
]
This works fine, but when I copy exactly this code in my own
package... it works not. I get an output like this:
Nullstellen[x^2 - 2, {-2, 2}]
{{-2.,-2+x^2},{-1.8,-2+x^2},{-1.6,-2+x^2},{-1.4,-2+x^2},{-1.2,-2+x^2},
\
{-1.,-2+x^2},{-0.8,-2+x^2},{-0.6,-2+x^2},{-0.4,-2+x^2},{-0.2,-2+x^2},
{\
1.11022*10^-16,-2+x^2},{0.2,-2+x^2},{0.4,-2+x^2},{0.6,-2+x^2},{0.8,-2+
\
x^2},{1.,-2+x^2},{1.2,-2+x^2},{1.4,-2+x^2},{1.6,-2+x^2},{1.8,-2+x^2},
{\
2.,-2+x^2}}
So the mapping of the function onto the values does not work.
Can anyone explain the reason (and give me a hint how I can manage
this function to work within a package).
Many thanks in advance
Mike from cold an rainy Germany