Accessing code for built-in functions
32 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaire
Steven Lord
le 20 Jan 2022
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.
Réponses (2)
Max Heimann
le 20 Jan 2022
Modifié(e) : Max Heimann
le 20 Jan 2022
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 commentaires
Walter Roberson
le 20 Jan 2022
more correctly, a lot of them are built-in functions coded in C or C++ with occasional Fortran as well.
Gerardo
le 27 Août 2025 à 20:39
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 commentaire
Steven Lord
le 27 Août 2025 à 21:15
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
which plot
which fft
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!