2017-10-01 12 views
0

私はMATLABのGUIで次の積分を計算します:数値積分

f(x) = a/(a+x^2) 

I入力a = 1、この結果は、最大を示しています。

問題は何
a^(1/2)*atan(x/a^(1/2)) 

handles.enter_func

a = str2double(get(handles.anum, 'String'));  
formula = sym(get(handles.enter_func, 'String'));  
result = int(formula);  
set(handles.int, 'String', char(result));  

答えて

1

私は信じて、aはあなたがhandles.anumで定義aとは何の関係もありません:

は、ここに私のコードです。シンボリック統合は、一般的なaと仮定して実行されます。したがって、一般的な結果が得られます。置換を作成するには、統合後に使用subsを実行する必要があります。

result= subs(int(formula),a,str2double(get(handles.anum , 'String'))); 

置換はhandles.anumに提供された値でaを置き換えます。

関連する問題