How do I convert a script to a function?
4 ビュー (過去 30 日間)
古いコメントを表示
I am trying to convert the attached script into a function to produce the same figure and results for a plot of the (for argument's sake) Earth orbiting the Sun. I have attached what I have of the function so far, but I am struggling to understand what I have done wrong and how to proceed. The function has pseudocode explanations of variables etc. Any help would be much appreciated. Regards, AR
4 件のコメント
採用された回答
Adam
2017 年 5 月 3 日
There may be other things wrong, but these 2 lines are surely not what you want. You pass in p and v as input arguments, then you just set them to empty here:
p = []; % Celestial body initial positions vector
% Will be N by 2 e.g. p1 = [px,py]
v = []; % Celestial body initial velocities vector
% Also N by 2 e.g. v1 = [vx,vy]
It's not obvious what all the lines of code above this are all about either - they seem somewhat pointless.
You need to use the input arguments that you pass in - e.g. mass, not m as you do further down the code (or you could change your input argument name to 'm', but I much prefer 'mass' as it says what it is, 'm' is meaningless).
The biggest difference between a function and script is the arguments that you pass into it instead of creating within the function. Never over-write the input arguments!
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Data Type Identification についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!