Bestand:Bump2D illustration.png

Pagina-inhoud wordt niet ondersteund in andere talen.
Uit Wikipedia, de vrije encyclopedie

Oorspronkelijk bestand(1.604 × 986 pixels, bestandsgrootte: 179 kB, MIME-type: image/png)


Beschrijving

Beschrijving A bump function in 2D
Datum
Bron Eigen werk
Auteur Oleg Alexandrov
PNG ontwikkeling
InfoField
 
Dit diagram is gemaakt met MATLAB
Broncode
InfoField

MATLAB code

% illustration of a bump function in two dimensions
function main()

   % the number of data points. More points means prettier picture.
   N = 300;

   % a function close to what we want, but not smooth
   Z = get_step_function (N);

   % a smooth function with small support, that will serve as mollifier
   W = get_mollifier     (N);

% get the convolution of the two, so a mollified step function
   S = conv2(Z, W);

% truncate S at the edges, and scale it
   p=0.2;
   [m, n] = size(S);
   m1 = floor(p*m)+1; m2=floor((1-p)*m)-1;
   n1 = floor(p*n)+1; n2=floor((1-p)*n)-1;
   S = S(m1:m2, n1:n2);
   S = 100*S/max(max(S));
   
% plot the surface
   figure(2); clf; hold on; axis equal; axis off;
   surf(S);
   
% make the surface beautiful
   shading interp;
   colormap autumn;

% add in a source of light
   camlight (-50, 54);
   
% viewing angle
   view(-40, 38);

   % save as png
  print('-dpng', '-r400', 'Bump2D_illustration_uncropped.png');

  % optionally, crop the margins
  !convert -trim Bump2D_illustration_uncropped.png Bump2D_illustration.png
  
% get a function which is 1 on a set, and 0 outside of it
function Z = get_step_function(N)
   XX = linspace(-1.5, 4, N);
   YY = linspace(-4, 4, N);
   [X, Y] = meshgrid(XX, YY);
   
   c = 2;
   k=1.2;
   shift=10;
   Z = (c^2-X.^2-Y.^2).^2 + k*(c-X).^3-shift;
   
   Z =1-max(sign(Z), 0);

function W = get_mollifier(N)
% now try to get a function with compact support
% as a mollifier
% We will cheat by using a gaussian

   a = 4;
   XX = linspace(-a, a, N);
   YY = linspace(-a, a, N);
   [X, Y] = meshgrid(XX, YY);
   
   K = 4;
   W = exp(-K*(X.^2+Y.^2));

   % truncate the Gaussian to make it with compact support
   trunc = 1e-2;
   W = max(W-trunc, 0);

Licentie

Public domain Ik, de auteursrechthebbende van dit werk, geef dit werk vrij in het publieke domein. Dit is wereldwijd van toepassing.
In sommige landen is dit wettelijk niet mogelijk; in die gevallen geldt:
Ik sta iedereen toe dit werk voor eender welk doel te gebruiken, zonder enige voorwaarden, tenzij zulke voorwaarden door de wet worden voorgeschreven.

Bijschriften

Beschrijf in één regel wat dit bestand voorstelt

Items getoond in dit bestand

beeldt af

image/png

115be195be93ff68b2c3752960f1921ada54db78

183.286 byte

986 pixel

1.604 pixel

Bestandsgeschiedenis

Klik op een datum/tijd om het bestand te zien zoals het destijds was.

Datum/tijdMiniatuurAfmetingenGebruikerOpmerking
huidige versie8 aug 2007 05:15Miniatuurafbeelding voor de versie van 8 aug 2007 05:151.604 × 986 (179 kB)Oleg AlexandrovTrying to fix some odd issues with the bounding box.
8 aug 2007 05:11Miniatuurafbeelding voor de versie van 8 aug 2007 05:111.590 × 979 (186 kB)Oleg Alexandrov{{Information |Description=A bump function in 2D |Source=self-made |Date=~~~~~ |Author= Oleg Alexandrov }} {{PD-self}} Category:Partial differential equations
8 aug 2007 05:11Miniatuurafbeelding voor de versie van 8 aug 2007 05:111.590 × 979 (186 kB)Oleg Alexandrov{{Information |Description=A bump function in 2D |Source=self-made |Date=~~~~~ |Author= Oleg Alexandrov }} {{PD-self}} Category:Partial differential equations
8 aug 2007 05:08Miniatuurafbeelding voor de versie van 8 aug 2007 05:081.590 × 979 (186 kB)Oleg Alexandrov{{Information |Description=A bump function in 2D |Source=self-made |Date=~~~~~ |Author= Oleg Alexandrov }} {{PD-self}} Category:Partial differential equations

Dit bestand wordt op de volgende 2 pagina's gebruikt:

Globaal bestandsgebruik

De volgende andere wiki's gebruiken dit bestand: