
function []=rotationsyta(x,y,k)
% rotationsyta - ritar rotationsytan runt x- eller y-axeln till f(x) över ett intervall.
%   Syntax:
%           []=rotationsyta(x,y)
%           []=rotationsyta(x,y,k)
%   Argument:
%           x - en vektor med stigande x-värden i intervallet.
%           y - en vektor med f(x)-värden.
%           k - rotationsaxel.
%   Returnerar:
%           -
%   Beskrivning:
%           Programmet ritar rotationsytan genererad av en graf till f(x) över ett 
%           intervall av x-värden.
%           Rotationen sker antingen runt x-axeln (k=1) eller runt y-axel (k=2). 
%           I det senare fallet måste x-värdena vara icke-negativa.
%           Utelämnas k sker rotationen runt x-axeln.
%   Exempel:
%           a=0; b=25; n=30; k=1;
%           x=linspace(a,b,n); y=1.5+sin(0.02*x.^2);
%           rotationsyta(x,y,k)
    if nargin<3
        k=1;
    end
    if k==1
        r=linspace(0,2*pi,20);
        X=ones(size(r))'*x;
        Y=cos(r)'*y;
        Z=sin(r)'*y;
    else
        r=linspace(0,2*pi,30);
        X=cos(r)'*x;
        Y=sin(r)'*x;
        Z=ones(size(r))'*y;
    end
    surf(X,Y,Z)
    axis equal

