MathWorks today announced Release 2013b (R2013b) of its MATLAB and Simulink product families. R2013b delivers new analysis, design, code generation and implementation and other features in MATLAB and Simulink, two new Polyspace products, as well as updates to 79 other products. Highlights include:
MathWorks is the leading developer of mathematical computing software. MATLAB, the language of technical computing, is a programming environment for algorithm development, data analysis, visualization, and numeric computation. Simulink is a graphical environment for simulation and Model-Based Design for multidomain dynamic and embedded systems. Engineers and scientists worldwide rely on these product families to accelerate the pace of discovery, innovation, and development in automotive, aerospace, electronics, financial services, biotech-pharmaceutical, and other industries. MathWorks products are also fundamental teaching and research tools in the world's universities and learning institutions. Founded in 1984, MathWorks employs more than 2800 people in 15 countries, with headquarters in Natick, Massachusetts, USA. For additional information, visit mathworks.com.
MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.
Since a couple of days, I constantly receive the same error while using MATLAB which happens at some point with dlopen. I am pretty new to MATLAB, and that is why I don't know what to do. Google doesn't seem to be helping me either. When I try to make an eigenvector, I get this:
MATLAB dynamically (with dlopen) loads several libraries that need tls initialization. All those libs need a slot in the dtv (dynamic thread vector). Because MATLAB loads several of these libs dynamically at runtime at compile/link time the linker (at mathworks) had no chance to count the slots needed (that's the important part). Now it's the task of the dynamic lib loader to handle such a case at runtime. But this is not easy. To cite dl-open.c:
For static TLS we have to allocate the memory here and now. This includes allocating memory in the DTV. But we cannot change any DTV other than our own. So, if we cannot guarantee that there is room in the DTV we don't even try it and fail the load.
There is a compile time constant (called DTV_SURPLUS, see glibc-source/sysdeps/generic/ldsodefs.h) in the glibc's dynamic lib loader for reserving a number of additional slots for such a mess (dynamically loading libs with static TLS in a multithreading program). In the glibc-Version of Fedora 20 this value is 14.
For the record: In order not to violate MATLAB's license I didn't debug, decompile or disassemble any part of the binaries shipped with MATLAB. I only debugged the free and open glibc-binaries of Fedora 20 that MATLAB were using to dynamically load the libs.
I really tried to explain this to the "MathWorks Technical Support Department". But my impression is: they don't understand me. They closed my support ticket and suggested a telephone(!) conversation in January 2014 with a technical support manager.
Update (2014/03/19): For the file libiomp5.so you can download a newly compiled version (without static TLS) at mathworks, bug report 961964. And the other libs? No improvement there. So don't be suprised to get "dlopen: cannot load any more object with static TLS" with "doc", e.g. see bug report 1003952.
The solution is to inform MATLAB to load the specific library at the earliest of its startup. The reason for this error is apparently due to the lack of slots for this thread local storage aka tls purpose (due to they already been filled-up).
has been updated on 30/01/2014.There is a zip file attached with libiomp5.soI tested it on Mageia 4 x86_64 with Matlab R2013b.I can now use the Documentation of Matlab to open a demo without any problem.
When installing matlab use the custom installation (I did not do this the first time). Choose to create symbolic links to matlab scripts in the predefined folder (/usr/local/bin). This did the trick for me!
I had the same problem with both Matlab 2013b and Matlab 2014a. The fix provided by mathworks for libiomp5.so only removed the problem of LAPACK not working. However, I could not use external libraries which are using OpenMp (such as VL_FEAT): I still get the error "dlopen: cannot load any more object with static TLS."
I came across this problem after "bar" (for bar plots) with a an array gives me just a single blue block, with no errors thrown. Reboot at first solved the problem. But after a memory error (after processing a very large file), I just cannot get past this blue block problem.
Increasing Java heap memory (to 512 mb) also worked for me on R2013b/Ubuntu 12.04. The "BLAS loading error" began when I processed an 11 GB file (with 16 GB RAM), and has not recurred after increasing java heap memory and restarting matlab.
I understand that these white lines are the polygons defining the shaded areas which have invisible edges, and don't quite overlap (according to here). The problem is caused by the pdf viewer itself which tries to smooth the lines displayed on the screen (according to here). My problem is that most people viewing the document will not know this and will not know how to prevent the viewer doing this. So my questions is:
Eps produces the same problems. I have tried to use the SVG function but have not had any luck. I am trying to avoid using raster graphics due to the pixelation caused by zooming in. Any advice would be much appreciated.
This is an extremely frustrating issue for which there seems to be no solution (or even, few attempts at a solution), and it has been many years now. In summary, Matlab cannot cope with outputting artefact-free contour or surface plots (anything with complicated meshes or transparencies).
Output a version of the figure without colours in pdf format. This should be free of any artefacts. If your figure it complicated and has many transparencies, you may need to output multiple versions building up the 'levels'.
Use Adobe Illustrator (or some equivalent) to perform a vectorized trace of the raster image. You may lose some detail here, but for simple contour plots with limited details, it will be converted easily to vectorized form.
If you don't want to toy with vectorizing the raster output, you can also simply replace steps 3-4 and combine a raster colour image with a vectorized line image. This would work well for complicated contour plots giving you crisp lines, but the ability to compress the underlying colours.
Eventually, MatLab 2013b doesn't have this problem. Furthermore the files it produces has much less volume. That is because MatLab 2013b composes vectorized image of big overlapping figures, while MatLab 2014b makes that awful meshing.
Here the first file was got with 2013b and the second with MatLab 2014b (I highlighted one of the polygons with red stroke to show the difference). The volumes differ in approximately 22 times (38 Kb vs. 844 Kb).
Hi,
I have created a script, that will run current m-file opened in Sublime in Matlab after pressing any custom set key short cut. It will use opened instance of Matlab or will open a new one if none is open. Please find more information on github.com/jirkadus/sublime2matlab. I will be happy for any feedback, as at the moment is is strongly customised for my needs.
I have installed PLECS Blockset and I am using a startup.m script to add the PLECS folder to the MATLAB search path. Now, whenever I start MATLAB R2013b it freezes during the initialization. If I uninstall PLECS or just remove the addpath commands from the startup.m script, MATLAB will start normally.
This problem is due to a bug in MATLAB R2013b. MATLAB freezes when opened if it executes a startup.m file that adds an info.xml file to the path. The PLECS folder contains such an info.xml file in order to register PLECS with the MATLAB Help Browser.
If patching MATLAB is not possible, you can avoid the freeze by removing the info.xml file from the PLECS folder. However, you will need to remember to repeat this whenever you update the PLECS installation.
We report an open source toolbox for automating the scoring of several common behavior tasks used by the neuroscience community. Software package (MATLAB source code files and standalone executables) can be downloaded using the links below. Latest version is 15.03 (released in March 2015). Please view the accompanying manuscript in Frontiers in Behavioral Neuroscience and the Getting Started user guide below for instructions on use and installation.
Please visit the links below for details on how to run the software to analyze specific behaviors. For each behavior, we include detailed step-by-step instructions, video demonstration of use of the software, and sample experiment video for you to try running the analysis on your computer.
We have developed a set of MATLAB routines and a graphical user interface to facilitate the analysis of fluorescent calcium imaging of neuronal networks. The Fluorescence Single Neuron and Network Analysis Package (FluoroSNNAP) allows users to:
The MATLAB source code can be downloaded below. Please read the User Guide and our accompanying publication in the Journal of Neuroscience Methods for more details. To get started, simply download the source code, extract the zip file, run MATLAB and change directory to FluoroSNNAP. Enter FluoroSNNAP at the command window to start the software.
A sample experiment of the spontaneous activity of cultured primary rat cortical neurons is also made available to test the software. For this experiment, neurons were transduced with AAV2-GCaMP6 and the activity was measured at 10Hz for 2 minutes. Note: the sample experiment, titled "baseline.tif", is a large file (800MB) so be patient when downloading. Alternatively, use the baseline.csv file which contains fluorescence vs. frame data for each neuron in the field view as a comma-separated format (columns = neurons, rows = frames).