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.

Is it possible to export the output expressions from Mathematica computations (e.g., equations) in valid MATLAB syntax?

share|improve this question
4  
Which equations? Can you be more specific on what precisely it is you want to do? one equation? a list of them? Cut and paste? Programmatically export? –  acl Nov 2 '12 at 22:23
    
@acl just an equation with Log s exponentials error functions. For example f[x_]=Log[...]+err[..]*Exp[..]. Something that sort. I know there is a command // InputForm but the output has for example $E$ which MATLAB will not understand. I only want to copy paste the equation to MATLAB. Still unclear? –  Seyhmus Güngören Nov 2 '12 at 23:29
    
This is not exactly an answer, but do to the large chat under previous answer I would like to point out that ToMatlab, provides the page where you can find the package, however many struggles with not being able to download it. I had the same problem until I pressed down alt key and pressed the link at the bottom of the page. Might save a bit of time! –  ALEXANDER Apr 9 at 10:08

1 Answer 1

up vote 23 down vote accepted

There is the ToMatlab package that will convert Mathematica expressions to MATLAB equivalents. For example:

<<ToMatlab`
Expand[(x + Log@y)^5] // ToMatlab
(* x.^5+5.*x.^4.*log(y)+10.*x.^3.*log(y).^2+10.*x.^2.*log(y).^3+5.* ...
        x.*log(y).^4+log(y).^5; *)

It even conveniently breaks it using ... and can also convert matrices:

RandomInteger[5, {5, 5}] // ToMatlab
(* [5,0,5,3,4;
    5,5,3,0,2;
    1,4,4,4,4;
    0,3,2,5,5;
    4,5,5,1,1]; *)

However, it won't convert general definitions or things that don't make sense in MATLAB, such as patterns.

To install the package, extract the ToMatlab.m file to

FileNameJoin[{$UserBaseDirectory, "Applications"}]
share|improve this answer
    
Great! Thank you very much!! –  Seyhmus Güngören Nov 3 '12 at 0:09
    
sorry but how can I use this package? –  Seyhmus Güngören Nov 3 '12 at 0:28
    
You extract the ToMatlab.m file to $UserBaseDirectory/Applications/ –  rm -rf Nov 3 '12 at 0:41
    
ok. many thanks once again. –  Seyhmus Güngören Nov 3 '12 at 3:08
1  
@TMH When you download the ToMatlab package from the linked site, you get a zip file. Unzip that file and copy the ToMatlab.m file to the location I mentioned. Replace $UserBaseDirectory with whatever is shown when you evaluate that in Mathematica. –  rm -rf Mar 30 '13 at 18:25

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.