Image:Tubular neighborhood.png

From Wikipedia, the free encyclopedia

Wikimedia Commons logo This is a file from the Wikimedia Commons. The description on its description page there is shown below.
Commons is a freely licensed media file repository. You can help.
Description

Illustration of en:Tubular neighborhood

Source

Made with en:Matlab

Date
Author

Oleg Alexandrov 03:01, 1 June 2007 (UTC)

Permission
(Reusing this image)

Public domain


Public domain I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

In case this is not legally possible:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.


Afrikaans | Alemannisch | Aragonés | العربية | Asturianu | Български | Català | Česky | Cymraeg | Dansk | Deutsch | Eʋegbe | Ελληνικά | English | Español | Esperanto | Euskara | Estremeñu | فارسی | Français | Galego | 한국어 | हिन्दी | Hrvatski | Ido | Bahasa Indonesia | Íslenska | Italiano | עברית | Kurdî / كوردی | Latina | Lietuvių | Latviešu | Magyar | Македонски | Bahasa Melayu | Nederlands | ‪Norsk (bokmål)‬ | ‪Norsk (nynorsk)‬ | 日本語 | Polski | Português | Ripoarisch | Română | Русский | Shqip | Slovenčina | Slovenščina | Српски / Srpski | Svenska | ไทย | Tagalog | Türkçe | Українська | Tiếng Việt | Walon | ‪中文(简体)‬ | ‪中文(繁體)‬ | zh-yue-hant | +/-

[edit] Matlab source code


% illustration of tubular neighborhood
function main()

   f=inline('sin(x)', 'x'); % will construct a tubular neighborhood of this curve

   a=0; b=2*pi; N = 100; X = linspace(a, b, N); % consider N points in the interval [a, b]
   Y = f(X); % the curve
   ll = 3; % length of lines perpendicular to the curve
   lls = 0.3; % smaller subsegments
   
   thin_line = 2;
   thick_line = 4;
   
%  will draw lines perpendicular to the graph of Y=f(X) at
%  points separted by length of 'spacing'
   spacing = 0.033;
   M = floor(spacing*N); 

% colors
   red=[0.867 0.06 0.14];
   blue = [0, 129, 205]/256;
   green = [0, 200,  70]/256;
   
   figure(1); clf; hold on; axis equal; axis off;


   % plot the lines
   for k=1:N

          p = (k-1)*M+2;
          if p >= N
                 break;
          end

          % the normal to the curve at (X(p), Y(p))
          Normal = [-(Y(p+1)-Y(p-1)), X(p+1)-X(p-1)]; Normal = Normal/norm(Normal);  
          
          plot([X(p)-ll*Normal(1), X(p)+ll*Normal(1)], [Y(p)-ll*Normal(2),...
                                        Y(p)+ll*Normal(2)], 'color', green, 'linewidth', thin_line)

          plot([X(p)-lls*Normal(1), X(p)+lls*Normal(1)], [Y(p)-lls*Normal(2),...
                                        Y(p)+lls*Normal(2)], 'color', red, 'linewidth', 0.7*thick_line)

   end

   % plot the curve
   plot(X, Y, 'linewidth', thick_line);
   
   saveas(gcf, 'Tubular_neighborhood.eps', 'psc2')

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeDimensionsUserComment
current05:01, 2 June 20072,506×1,967 (374 KB)Oleg Alexandrov (tweak)
03:46, 1 June 20072,506×1,967 (367 KB)Oleg Alexandrov (Tweak.)
03:10, 1 June 2007626×492 (64 KB)Oleg Alexandrov ({{Information |Description=Illustration of en:Tubular neighborhood |Source=Made with en:Matlab |Date= |Author= ~~~~ |Permission=Public domain |other_versions= }} {{PD-self}})
03:09, 1 June 2007626×492 (64 KB)Oleg Alexandrov ({{Information |Description=Illustration of en:Tubular neighborhood |Source=Made with en:Matlab |Date= |Author= ~~~~ |Permission=Public domain |other_versions= }} {{PD-self}})
03:08, 1 June 2007626×492 (82 KB)Oleg Alexandrov ({{Information |Description=Illustration of en:Tubular neighborhood |Source=Made with en:Matlab |Date= |Author= ~~~~ |Permission=Public domain |other_versions= }} {{PD-self}})
03:01, 1 June 2007626×492 (82 KB)Oleg Alexandrov ({{Information |Description=Illustration of en:Tubular neighborhood |Source=Made with en:Matlab |Date= |Author= ~~~~ |Permission=Public domain |other_versions= }} {{PD-self}})
The following pages on the English Wikipedia link to this file (pages on other projects are not listed):