How can I use symsum function to calculate this equation?

1 Ansicht (letzte 30 Tage)
zheng-ning zhu
zheng-ning zhu am 21 Dez. 2020
Kommentiert: Rohit Pappu am 28 Dez. 2020
As the file i attach, i want to caculate the equation.
The boundary typed on picture is wrong.
The correction is n=0 to n=1000.
And J-function is bessel function.
H-function is hankel funtion.
Beta*alpha=1.2*pi.
epsilon n=1 when n=0.
epsilon n=2 when n is not equal to 0.

Antworten (1)

Rohit Pappu
Rohit Pappu am 28 Dez. 2020
%% Define constants
syms n phi lambda;
beta_alpha = 1.2*pi;
epsilon0 = 1; %% Epsilon when n=0
epsilon = 2; %% Epsilon when n~=0
%% Define equation for n = 1 to 100
f = epsilon*besselj(n,beta_alpha)*cos(n*phi)/besselh(n,2,beta_alpha);
%% Use symsum to find sum of series , f/2 case is when n = 0
sum = (2*pi/lambda)*(abs(symsum(f,n,[1,100])+symsum(f/2,n,[0,0]))^2);
  2 Kommentare
Walter Roberson
Walter Roberson am 28 Dez. 2020
Why symsum 0 to 0? Why not just use subs(f/2,n,0) ?
Rohit Pappu
Rohit Pappu am 28 Dez. 2020
Edit : subs can be used to denote the n=0 term
%% Use symsum to find sum of series , f/2 case is when n = 0
sum = (2*pi/lambda)*(abs(symsum(f,n,[1,100])+subs(f/2,n,0))^2);

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by