Contour for Moving Object

I'm doing a homework about Noise Contour For Aircraft. Now i've done a contour for stationary noise source. But i'm stuck with create a contour for a moving noise source.
Here's my code for stantionary noise source:
Source = [500 500];
Power = 270; %Noise Power
I0 = 10^-12; %basic intensity of noise
x = 0:50:4000;
y = 0:50:2000;
[X,Y] = meshgrid(x,y);
D = (X-Source(1)).^2 + (Y-Source(2)).^2; %distance
I = Power./(4*pi*D); %intensity of noise
L = 10*log10(I/I0); %Level of noise intensity
figure('Name','Test');
contourf(X,Y,L,[90 95])
hold on
plot(Source(1),Source(2),'r*');
title('Noise Contour for Stationary Source')
xlabel('X')
ylabel('Y')
axis equal
grid on
Please help me with the moving noise source. Thank you very much :(

2 Comments

For moving Source, your Source should be having multiple values. How you want to move your Source? You have predefined points, path or randomly?
i want my Source moving on a straight path. i've try with hgtransform but i just make it move, cant make the contour :( thank youu

Sign in to comment.

 Accepted Answer

x = 0:50:4000;
y = 0:50:2000;
[X,Y] = meshgrid(x,y);
Power = 270; %Noise Power
I0 = 10^-12; %basic intensity of noise
N = 50 ;
sx = linspace(100,3000,N)' ;
sy = 500*ones(N,1) ;
source = [sx sy];
for i = 1:N
Source = source(i,:) ;
D = (X-Source(1)).^2 + (Y-Source(2)).^2; %distance
I = Power./(4*pi*D); %intensity of noise
L = 10*log10(I/I0); %Level of noise intensity
figure(1);
contourf(X,Y,L,[90 95])
hold on
plot(Source(1),Source(2),'r*');
hold off
title('Noise Contour for Stationary Source')
xlabel('X')
ylabel('Y')
axis equal
axis([0 4000 0 2000])
grid on
drawnow
end

More Answers (0)

Categories

Tags

Asked:

on 16 Jun 2020

Answered:

on 16 Jun 2020

Community Treasure Hunt

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

Start Hunting!