Accessing code for built-in functions

Hi,
I cannot use the open or edit commands to see the source code for built-in functions. When I do it I can only see the comments that are included for that function but not the actual code.
I'm trying this on functions like plot.m and fft.m
I hope somenone can give me advice.
Best,
Taygun

1 个评论

What were you hoping to do with the source code for those built-in functions? If you were hoping to convert them to another language (specifically C or C++) some of them are supported by MATLAB Coder. fft is supported by MATLAB Coder, plot is not.

请先登录,再进行评论。

回答(2 个)

Max Heimann
Max Heimann 2022-1-20
编辑:Max Heimann 2022-1-20
These functions are not accessible to users as they are MATLABs proprietary code. They are p-coded, which its matlabs way to obscure code. You can only see the header of p-coded files.
You may still place breakpoints and see what they do with the workspace, but you will not be able to see the source code.

2 个评论

more correctly, a lot of them are built-in functions coded in C or C++ with occasional Fortran as well.

请先登录,再进行评论。

did you try with dbtype?
then you just have to copy it on notepad++ and with select column delete the colum number to work on it
For example
% dbtype ode113
% Returns 670 lines as such
1 function varargout = ode113(ode,tspan,y0,options,varargin)
2 %ODE113 Solve non-stiff differential equations, variable order method.
3 % [TOUT,YOUT] = ODE113(ODEFUN,TSPAN,Y0) with TSPAN = [T0 TFINAL] integrates
4 % the system of differential equations y' = f(t,y) from time T0 to TFINAL
5 % with initial conditions Y0. ODEFUN is a function handle. For a scalar T
6 % and a vector Y, ODEFUN(T,Y) must return a column vector corresponding
7 % to f(t,y). Each row in the solution array YOUT corresponds to a time
8 % returned in the column vector TOUT. To obtain solutions at specific
9 % times T0,T1,...,TFINAL (all increasing or all decreasing), use TSPAN =
10 % [T0 T1 ... TFINAL].
11 %

1 个评论

ode113 is a MATLAB function file that is included as part of MATLAB. But I wouldn't call it a built-in function in the same way that something like plot or fft are.
which ode113
/MATLAB/toolbox/matlab/funfun/ode113.m
which plot
built-in (/MATLAB/toolbox/matlab/graphics/graphics/graph2d/plot)
which fft
built-in (/MATLAB/toolbox/matlab/datafun/fft)

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Programming 的更多信息

产品

版本

R2021a

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by