Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

After running a RegionPlot3D named "testplot" on my desktop, I followed an earlier suggestion from the forum and saved it using:

DumpSave["testplot.mx"].

I then saved and closed the notebook, quit Mathematica and copied the notebook to my laptop.

At this point, I re-opened the (copied) notebook and tried to retrieve the plot by using DumpGet["testplot.mx"], but this failed.

The plot took 60 mins of run time, and would take even longer on my laptop. The procedure I followed must be incorrect because I am certain this simple transfer can be done successfully allowing me to open the plot on my laptop without re-running. Does anyone have any suggestions?

share|improve this question
1  
From the docs : "Files written by DumpSave can only be read on the same type of computer system on which they were written." –  b.gatessucks Mar 10 '13 at 21:29
    
By the way, your DumpSave is missing a second argument, the symbol you want to save. This may have caused problems. –  Sjoerd C. de Vries Mar 10 '13 at 21:53
    
Additionally, you state that you copied the notebook, but you never mentioned you copied the dump file "testplot.mx". The former is unnecessary, the latter is. And one more thing: DumpGet is undocumented and I believe you should use Get instead. –  Sjoerd C. de Vries Mar 10 '13 at 22:00
add comment

1 Answer 1

Mathematica version and OS must be the same (including the bit size of the OS, i.e. 32/64 bit). That may be the problem here.

Solution:

  1. Use Get["testplot.mx"] on your desktop to get your definition again
  2. Use Save["testplot.mx",testplot] to store it in a device and installation independent (but less efficient) format
  3. Copy the "testplot.mx" file to your laptop
  4. Use Get["testplot.mx"] on your laptop.

Note: if you only provide the file name and not the directory in which the file resides Mathematica will not find it if it isn't located in the current working directory. Either set the working directory to the one your dump file is in using SetDirectory or include the path to your file in the Get call using FilenameJoin.

share|improve this answer
    
I think you are correct: it is a directory issue. My two computers are compatible so it's not that. I thought, incorrectly, that everything I did in the notebook stayed in the notebook so that when I copied between my two computers, everything carried over. But no; I can DumpSave and retrieve the plot successfully, but only in the notebook when it is on the computer of origin; after the notebook is copied, nothing works. I also Saved the named plot into a file and copied that file over, but when I re-opened, all I saw was 'Null'. Any tips on setting the Directory? thanks. ron m –  mark r Mar 11 '13 at 1:56
    
I just read a helpful tip from someone on the forum: when first posting a question, stick around for an hour or so to respond to comments and to show interest in the question just posted. I'm new to the site, so I appreciate this suggestion and will implement for any future questions that I post. Thanks. –  mark r Mar 11 '13 at 4:05
    
@ron Are you sure you got Null? Not $Failed? As to setting a directory: Use SetDirectory[$UserDocumentsDirectory] to set to the root of your documents folder, SetDirectory[NotebookDirectory[]] to set to the directory the notebook resides in, SetDirectory["C:\\dir1\\subdir"] for a direct specification of the directory path, and SetDirectory[FileNameJoin[{"c:", "dir", "subdir"}]] for a file system independent way of doing that. –  Sjoerd C. de Vries Mar 11 '13 at 19:05
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.