2013-05-05 92 views
2

我知道這是一個簡單的問題,但由於某種原因,我無法找到一個直接的答案,無論我在哪裏看起來都有效。如何在MATLAB中調用另一個m文件中的m文件並檢索輸出?

基本上,我有一個m文件中找到的4個值,我想通過一個單獨的m文件運行它們並從中檢索輸出。

我試着像這些,但沒有工作:

result = generate(nrow,ncol,a,b); 
function result = generate(nrow,ncol,a,b); 
result = @generate(nrow,ncol,a,b); 

在M檔「生成」的最終值被稱爲result,我試圖開展跨到我最初的M檔。

任何意見,我做錯了將不勝感激!請和謝謝

回答

6
  1. 如果你的文件generate.m定義一個函數它應該有自己的結構如下(其中考慮到這個事實,你有四個返回值)

    function [ret1 ret2 ret3 ret4] = generate(nrow,ncol,a,b) 
    
         ....    % # Some processing of yours 
    
         ret1 = ... ;  % # Returned values are eventually set 
         ret2 = ... ; 
         ret3 = ... ; 
         ret4 = ... ; 
    end 
    
  2. 功能應被稱爲(例如,在您的主要腳本)作爲

    [ret1 ret2 ret3 ret4] = generate(nrow,ncol,a,b); 
    

    現在你有變數ret1,ret2,ret3,ret4可用於調用者範圍。

    請注意,文件generate.m必須位於當前的matlab PATH中。

相關問題