Re: Creating Objects

*To*: mathgroup at smc.vnet.net*Subject*: [mg122302] Re: Creating Objects*From*: Armand Tamzarian <mike.honeychurch at gmail.com>*Date*: Mon, 24 Oct 2011 05:14:04 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*References*: <j80qhd$afd$1@smc.vnet.net>

On Oct 23, 9:33 pm, Gabriel Landi <gtla... at gmail.com> wrote: > Dear MathGroup (and perhaps some Wolfram employees), > > Does anyone know how to create Objects in Mathematica, such as those produced by LinearModelFit or NDSolve`ProcessEquations? > For instance, let data be a set of statistical data. Then data["Mean"] would give me the mean, data["Values"] would return me the original values, etc. > > Here is an example from LinearModelFit: > > data = {{0, 1}, {1, 0}, {3, 2}, {5, 4}}; > lm = LinearModelFit[data, x, x]; > Save["Model.txt",lm]; > > The saved output is > > lm = FittedModel[{"Linear", {0.18644067796610198, 0.6949152542372881}, > {{x}, {1, x}}, {0, 0}}, {{1., 1., 1., 1.}}, {{0, 1}, {1, 0}, {3, 2}, > {5, 4}}, {{1., 0.}, {1., 1.}, {1., 3.}, {1., 5.}}, > Function[Null, Internal`LocalizedBlock[{x}, #1], {HoldAll}]] > > Which has, basically, only the data and the fitted parameters. Nonetheless, by doing lm["FitResiduals"] it computes the residuals for me. > > In my impression, this is as close as one can get to object-oriented programming in Mathematica, and would be a quite useful feature to use. > I haven't found any documentation on this. Anyone knowns? > > Sincerely, > > Gabriel Landi Darren Glosemeyer provided some info on how to do this http://groups.google.com/group/comp.soft-sys.math.mathematica/browse_thread/thread/96759ba9dbce4c/0827f0d03f5abbd9 Might be useful if this was part of a HowTo in the documentation. Mike