. About this package        package:R.matlab        R Documentation

_A_b_o_u_t _t_h_i_s _p_a_c_k_a_g_e

_D_e_s_c_r_i_p_t_i_o_n:

     This package provides methods to read and write MAT files.  It
     also makes it possible to communicate (evaluate code, send and
     retrieve objects etc.) with Matlab v6 or higher running locally or
     on a remote host.  The auxillary Java class provides static
     methods to read and write Java data types.

     In brief, this package provides a one-directional interface from R
     to Matlab, with communication taking place via a TCP/IP connection
     and with data transferred either through another connection or via
     the file system. On the Matlab side, the TCP/IP connection is
     handled by Java.

     The methods for reading and writing MAT files are stable. The R to
     Matlab interface is less prioritized and should be considered a
     beta version.

_I_n_s_t_a_l_l_a_t_i_o_n:

     To install this package do

     'install.packages(c("R.oo", "R.matlab"))'

     To get the "devel" version, use

     install.packages("R.classes",
     contriburl="http://www.maths.lth.se/help/R/")

_U_p_d_a_t_e:

     To update this package do

     'update.packages()'

_D_e_p_e_n_d_a_n_c_i_e_s _a_n_d _o_t_h_e_r _r_e_q_u_i_r_e_m_e_n_t_s:

     This package depends on the R.oo package. The 'readMat()' and
     'writeMat()' methods do not require a Matlab installation. To
     connect to Matlab, Matlab v6 or higher is required. It does _not_
     work with Matlab v5 or before. This is a cross-platform package
     implemented in pure R.

_T_o _g_e_t _s_t_a_r_t_e_d:

     To get started, see:

        1.  'readMat'() and 'writeMat'().

        2.  'Matlab'.

_M_i_s_c_e_l_l_a_n_e_o_u_s:

     A related initiative is _RMatlab_ by Duncan Temple Lang and
     Omegahat.  It provides a bi-directional interface between the R
     and Matlab languages. For more details, see <URL:
     http://www.omegahat.org/RMatlab/>.

_H_o_w _t_o _c_i_t_e _t_h_i_s _p_a_c_k_a_g_e:

     Whenever using this package, please cite [1] as

     @TECHREPORT{BengtssonH_2005,
       author = {Bengtsson, Henrik},
       title = {{R.matlab} - Local and remote {M}atlab connectivity in
     {R}},
       institution = {Mathematical Statistics, Centre for Mathematical
     Sciences,
                      Lund University, Sweden},
       year = {2005},
       type = {{Preprint in Mathematical Sciences (manuscript in
     progress)}},
       note = {[manuscript in progress]},
       url = {http://www.maths.lth.se/help/R/R.matlab/},
     }

     __

_W_i_s_h_l_i_s_t:

     Here is a list of features that would be useful, but which I have
     too little time to add myself. Contributions are appreciated.

        *  Add a function, say, 'Matlab$createShortcut()' which creates
           a Windows shortcut to start the Matlab server by double
           clicking it. It should be possible to create it in the
           current directory or to the Desktop. Maybe it is possible to
           do this upon installation and even to a Start -> All
           Programs -> R menu.

        *  Update the MatlabServer.m script to allow the user to
           specify, say from the command line, the port to connect to.
           This would improve security a little bit.

        *  To improve security, update the MatlabServer.m script to
           allow the user to specify a "password" to be send upon
           connection from R in order for Matlab to accept the
           connection. This password should be possible to specify from
           the command line when start Matlab. If not given, no
           password is required.

        *  Add additional methods to the Matlab class. For instance,
           inline function in Matlab could have its own method.

        *  Wrap up common Matlab commands as methods of the Matlab
           class, e.g. 'who(matlab)', 'clear(matlab)' etc. Can this be
           done automatically using "reflection", so that required
           arguments are automatically detected?

        *  Add support for reading (and writing) sparse matrices to be
           represented by the sparse matrix class defined in 'SparseM'
           package.

        *  Add access to Matlab variables via '"$"' and '"$<-"', e.g.
           'matlab$A' and 'matlab$A <- 1234'. Is this wanted? Maybe the
           same for functions, e.g. 'matlab$dice(1000)'. Is it possible
           to return multiple return values?

     If you consider implement some of the above, make sure it is not
     already implemented by downloading the latest "devel" version!

_A_c_k_n_o_w_l_e_d_g_e_m_e_n_t_s:

     We wish to thank the following people who contributed with
     valuable feedback, suggestions, and code:

        *  Andy Jacobson, Atmospheric and Oceanic Sciences Program,
           Princeton University.

        *  Yichun Wei, Department of Biological Sciences, University of
           Southern California.

_R_e_f_e_r_e_n_c_e_s:

     [1] Henrik Bengtsson, _R.matlab - Local and remote Matlab
     connectivity in R_, Mathematical Statistics, Centre for
     Mathematical Sciences, Lund University, Sweden, 2005. (manuscript
     in progress).

_A_u_t_h_o_r(_s):

     Henrik Bengtsson <URL: http://www.braju.com/R/>

