How can I check since which Matlab version a function exists? - matlab

It was impossible in 2007, but is there now a way to check which Matlab versions a function exists for?
For example, in Wolfram Mathematica, the documentation indicates in which version the function was released: e.g. the GapPenalty() documentation mentions "New in 7".

Have a look to the FEX function when.

I'd go to the release-notes page for some useful information.
For example.
http://www.mathworks.com/help/releases/R2013b/stats/release-notes.html
Then do a search in web page.
Hope this helps.

Related

What version of Matlab should I install to make dsearch() work?

I have a code in MATLAB that I need to run once to get some quick reference results. This code uses dsearch(), and I relized that this function has become deprecated and has been substituted by dsearchn(). I tried to follow some suggestions to make it work but I didn't succeed (it's my absolute first time with MATLAB) and I just need to run this code once to get some numbers. Which MATLAB versione should I install to make it work?
dsearch was removed in MATLAB R2012a, therefore you may use any version of MATLAB before R2012a.
If you have an active MathWorks account, you may access the documentation archive here.
According to MathWork's release notes, this function started printing a warning on release 2010a. So you should be fine either using it or a previous version.

Automatic documentation of an OO MATLAB project with mtoc++/Doxygen

I have an OO project in MATLAB and would like to automatically produce some documentation.
After some research I have found a convenient tool called mtoc++ which apparently produces a documentation using Doxygen (I have no experience with).
My only question is whether in order to use the tool I need to write comments in MATLAB using a specific format (language?) so that mtoc++/Doxygen could understand and document my comments?
If so, then what this format/ language is and where I can find its description?
After correctly installing and configuring mtoc++/Doxygen, the documentation is created automatically.
If you want to define personalized comments for specific custom parameters, you can follow the instructions on this page:
http://www.ians.uni-stuttgart.de/MoRePaS/software/mtocpp/docs/tools.html
Look under the heading Configuration options for the mtoc++ filter.
What you have to do is to edit the mtocpp.conf file, located in tools/config folder, and the format you'll be using is this:
add(params) = <parameter1_name> => """Your parameter1 description text in triple quotes""";
An example would be:
add(params) = myVariable => """This variable is defined by me""";
So you can define personalized comments for your Parameters, Fields, Extra Documentation and Global Settings.
I am sure there must be other workarounds to add comments and documentation.
I hope this helps. Happy coding.

'Symbolic Math Toolbox' functions exist in MATLAB but not in the documentation

This problem may seem a bit weird; please bear with me.
When I try to access any function in the 'Symbolic Math Toolbox' in MATLAB, such as help ztrans or help laplace, I get the following kind of message
ztrans not found.
Use the Help browser Search tab to search the documentation, or
type "help help" for help command options, such as help for methods.
However, the toolbox seems to be installed when I try the ver or pathtool command.
Moreover, when I try some simple code such as:
>> syms k x
>> f = sin(k);
>> ztrans(f, k, x)
the code works fine and on trying the help command again, they seem to work fine as well. However, the problem again arises when I close and reopen MATLAB.
I found a few instances of other users facing similar problems on the Mathworks portal, but none of them seemed to provide any concrete solutions. Some of them seem to blame it on MATLAB hashing the tollbox incorrectly, so I tried the rehash toolbox command as well, but had no luck.
I'm not sure if this problem is just for this particular toolbox or not, but the other toolboxes I use at least seem to work fine.
EDIT-I
I also realised that the documentation is always available when I take Help --> Product Help from the menu-bar, though it is not available in the function browser even after I try the sample code.
EDIT-II
>> license('checkout','Symbolic_Toolbox')
gives me
ans =
1
I'm not working on a student license either.
It could be a license issue. Try to get further information with:
license('inuse')
If you have a Student version, some functions cannot be executed.
istudent
In case that you are in an office/university, and you have floating licenses. Be sure to check-out all the licenses before running your code.
license('checkout','toolbox_name')

MATLAB profiler. DetailLevel: mmex?

In the MATLAB documentation I see the following :
My question is: What is DetailLevel for ? What does the default value mmex mean? I couldn't find an explanation of these keywords on the official documentation.
It's for an old feature of the profiler, which is now undocumented. The DetailLevel property controls which functions are profiled; if it is 'mmex' then M-functions, subfunctions and MEX-functions will be profiled, while if it is 'builtin', builtins will be profiled as well.
There used to be a third level, 'operator', which would even profile things like +.

Where is kill_proc_info defined?

what is header file for the kernel API function kill_proc_info(int sig, struct siginfo *info, pid_t pid)
You can probably found this in linux/signal.c and include/linux/sched.h
Grep is your friend. Or use one of the cross-references like http://lxr.linux.no or http://www.cs.fsu.edu/~baker/devices/lxr/http/source/.
Ad edit (the original question did not say "API"):
Actually, that function is not an API. It's an implementation detail of signal.c. It is not an API, because there is no EXPORT_SYMBOL[_GPL] declaration for it, so it's not callable from modular code.
[edit]
man won't work - however, man kill_proc_info into your favorite search engine will. note too that posting a page that doesn't render correctly in somebodies browser will also result in a downvote.
[/edit]
man is your friend
[edit]
google is your friend (which is how I found the first answer - in the comments below) but we're not allowed to use that as an answer here. Better to have a repository of lazy people than to request they attempt to use the tools that they are given - IOW, better to give a man a fish than teach him how to fish
[/edit]