Code covered by the BSD License  

Highlights from
MAXIMA CAS in MATLAB

Be the first to rate this file! 12 Downloads (last 30 days) File Size: 1.97 KB File ID: #42961
image thumbnail

MAXIMA CAS in MATLAB

by

 

Utilize MAXIMA CAS in MATLAB as a symbolic toolbox.

| Watch this File

File Information
Description

%MAXIMA enables the use of the MAXIMA CAS in MATLAB
% This function uses the Jacomax (Java Connector for Maxima) to start and
% connect to a session of MAXIMA. The user passes the MAXIMA command in as
% a string and the result is returned as a string that can be used in
% conjunction with the vectorize and inline command to construct a function
% that can be evaluated and plotted in MATLAB.
%
% Required Additional Software:
% 1. Maxima, which is found at:
% http://sourceforge.net/projects/maxima/files/?source=navbar
%
% 2. Jacomax (Java Connector for Maxima) a basic Java interface for the
% Maxima computer algebra system can be found at:
% http://sourceforge.net/projects/jacomax/files/
%
% The contents of their package must be in java class path
% javaaddpath('jacomax-0.2.3.jar')
% javaaddpath('slf4j-api-1.5.11.jar')
% javaaddpath('jacomax-samples-0.2.3.jar')
%
% Additionally, you must modify their jacomax.properties.sample file to
% point to your installation of MAXIMA and change the file name to be
% jacomax.properties
%
% Examples:
% result = maxima('expand((x+2)*(x+3))')
% result = maxima('factor(x^2+5*x+6)')
% result = maxima('integrate(x^2+5*x+6,x)')
% result = maxima('diff(x^2+5*x+6,x)')

Acknowledgements

Sym Py Cas In Matlab inspired this file.

This file inspired Sym Py Cas In Matlab.

MATLAB release MATLAB 8.0 (R2012b)
Other requirements A local install of the Maxima computer algebra system and the Jacomax Java connector for Maxima.
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (2)
08 Aug 2013 Jonathan Lister

to compute the definite integral:

result = eval(maxima('integrate(x^2+5*x+6,x,0,4)'))

result =
85.3333

06 Aug 2013 Jonathan Lister

try this:

result = maxima('expand((x+2)*(x+3))');
f = vectorize(inline(result));
plot(f(1:.1:5))

Contact us