File:Tubular neighborhood.png

From Vigyanwiki

Original file(2,506 × 1,967 pixels, file size: 374 KB, MIME type: image/png)

This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.

Summary

Description Illustration of en:Tubular neighborhood
Date
Source Made with en:Matlab
Author Oleg Alexandrov
Permission
(Reusing this file)
Public domain
Error in Information template: unknown parameter "otehr_fields".

Licensing

Public domain I, the copyright holder of this work, release this work into the public domain. This applies worldwide.
In some countries this may not be legally possible; if so:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.


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')
This math image could be re-created using vector graphics as an SVG file. This has several advantages; see Commons:Media for cleanup for more information. If an SVG form of this image is available, please upload it and afterwards replace this template with {{vector version available|new image name}}.
It is recommended to name the SVG file “Tubular neighborhood.svg”—then the template Vector version available (or Vva) does not need the new image name parameter.

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

File history

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

Date/TimeThumbnailDimensionsUserComment
current10:31, 2 June 2007Thumbnail for version as of 10:31, 2 June 20072,506 × 1,967 (374 KB)wikimediacommons>Oleg Alexandrovtweak

The following page uses this file: