2015-09-02 4 views
0

Как я могу вычислить объем интегральногоВычисление интегралов по MATLAB

x = sqr(siny), 0<=y<=pi, X = 0, y = 4` 

Я знаю, чтобы подключить

int(sym('2*pi*sin(y)*exp(1/2)'),0,pi) 

Но я не знаю, как установить границы.

+0

вы устанавливаете границы уже ... '... 0, pi)' .... 'int (expr, var, a, b)' вычисляет определенный интеграл 'expr' по отношению к' var' от 'a' до' b' – bla

+0

Im relativly new для матовой лаборатории. как бы я нарисовал эту функцию, чтобы найти область интеграла? – willindsey

+0

'int 'находит только интегральное значение. Зачем вам это нужно? – rayryeng

ответ

2

Предполагая, что интеграл в Matlab работает так же, как интегральный оператор в математике, должен быть прост в решении. Таким образом, в математике выражение

I = int(f(x),a,b), 

вычисляет интеграл между замкнутыми границами [a,b]. Эквивалент Matlab является

syms x; 
a = 0; % Example values 
b = pi; 
y = x^2; 
I = int(y,0,pi); % I is a sym. 
IDouble = eval(I); 

Так что я до сих пор SYM, но если вы хотите, чтобы значение как двойной вы можете оценить выражение с eval (который не является тем же самым eval, как используется для eval('a=1;')). Однако математическое выражение

F(x) = int(f(x)), 

вычисляет примитивная функция или неопределенный интеграл. MATLAB эквивалент этого

syms x; 
y = x^2; 
Y = int(y); 

, где Y является примитивной функцией y. Затем это можно построить с помощью функции графика для символических выражений ezplot. Попробуйте построить над кодом код ezplot(Y,-1,6);. Что касается предположения, что Matlab автоматически вычисляет интеграл после вычисления его, вы не должны этого делать. Matlab в основном создан для сложных функций (возможно, без аналитического решения или слишком длинного или сложного решения, которое можно сделать вручную). Это означает, что числовой/символический/построенный вывод не обязательно может представлять интерес. Интересный результат может быть результатом нескольких сложных вычислений, и это может быть единственный желаемый результат. Если Matlab по умолчанию впоследствии генерировал графики для каждого шага, это было бы крайне неприятно. Это также поставит под угрозу репутацию Matlab пытается построить язык программирования общего назначения.

Смежные вопросы