Re: How to use Save/Get for interpolation of unstructured
- To: mathgroup at smc.vnet.net
- Subject: [mg125413] Re: How to use Save/Get for interpolation of unstructured
- From: David Bailey <dave at removedbailey.co.uk>
- Date: Tue, 13 Mar 2012 03:03:03 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jj7dri$2ds$1@smc.vnet.net> <201203110906.EAA19348@smc.vnet.net> <jjkehc$1bh$1@smc.vnet.net>
On 12/03/2012 09:10, Ted Sariyski wrote: > On 3/11/2012 5:06 AM, David Bailey wrote: >> On 07/03/2012 10:38, Ted Sariyski wrote: >>> Hi, >>> >>> I posted this question a couple of days ago but did not get any >>> response. Meanwhile I noticed that the Save-d interpolation data contains >>> "NDSolve`FEM`ElementMesh", which may relates to my problem. Let me >>> restate the question. >>> >>> I have 2D unstructured data in the form {{{1.22001, 0.00024605}, >>> 0.816237}, {{1.22334, 0.000250332},0.436219},... } (connectivity is also >>> available but I do not know how to use it with Mathematica). >>> >>> Interpolation issues a warning: >>> >>> "Interpolation::udeg: Interpolation on unstructured grids is currently >>> only supported for InterpolationOrder->1 or InterpolationOrder->All. >>> Order will be reduced to 1.>>", >>> >>> The warning is not an issue for me, the problem is that I cannot use >>> Save/Get for this interpolation function. After Get the interpolation >>> function instead of a number returns: >>> >>> intp[1., .8] >>> InterpolatingFunction[{{0.000905256237704326, 1.9993734385285347}, {0.00024605021944692736, 0.9989678166248219}}, >>> {4, 4225, 0, {10880, 2}, {2, 2}, 0, 0, 0, 0, Automatic}, >>> {NDSolve`FEM`ElementMesh[{{1.220009724772626, 0.00024605021944692736}, >>> {1.223336731504134, 0.0002503318707254048}, {1.2273720422942693, ... >>> >>> which is the non-evaluated content of the Save-d file. >>> >>> What is the right way to use Save/Get for interpolation of unstructured >>> data? >>> >>> Any help will be highly appreciated. >>> Thanks, >>> --Ted > data = Table[{{Random[], Random[]}, Random[]}, {i, 1, 10}]; > intp = Interpolation[data]; > intp[0.1, 0.2] > Out[]: 1.110174 > > Save["intp.mat", intp]; > Quit[] > > Get["intp.mat"]; > intp[0.1, 0.7] > Out[]: intp[0.1, 0.7] > InterpolatingFunction[{{0.141559,0.972136},{0.0916656,0.927415}},{4,4225,0,{10,2},{2,2},0,0,0,0,Automatic},{NDSolve`FEM`ElementMesh[{{0.141559,0.972136},{0.0916656,0.927415}},{NDSolve`FEM`TriangleElement[<12>]}]},{0.106611,0.195957,0.105951,0.417478,0.901584,0.324786,0.696795,0.424483,0.192741,0.949504},{Automatic}][0.1,0.7] > I looked at the file intp.mat, and that appears to be syntactically valid, and if you split the above into separate cells, you can see that the syntax error does not come from the Get command. However, for some reason, the term starting NDSolve`FEM`ElementMesh..... seems to print out in skeletal form with <13> - which is obviously invalid. I presume you cut and pasted that back to create new input - hence the skeleton expression will not parse and gives a syntax error. I would use the InterpolatingFunction object in the kernel without copy/pasting it. David Bailey http://www.dbaileyconsultancy.co.uk
- Follow-Ups:
- Re: How to use Save/Get for interpolation of unstructured
- From: Ted Sariyski <tsariysk@craft-tech.com>
- Re: How to use Save/Get for interpolation of unstructured
- References:
- Re: How to use Save/Get for interpolation of unstructured data?
- From: David Bailey <dave@removedbailey.co.uk>
- Re: How to use Save/Get for interpolation of unstructured data?