function [ne , nk , xy , km , kr] = TorsArcnetD6 (ri , ra , alpha , nrad , ntang)

nrad2  = round ((nrad +0.1) / 2) ;
ntang2 = round ((ntang+0.1) / 2) ;
if ((nrad2*2 ~= nrad) | (ntang2*2 ~= ntang))
  error ('Fehler: nrad und ntang muessen geradzahlig sein')
end

ne =  nrad * ntang * 2 ;
nk = (nrad * 2 + 1) * (ntang * 2 + 1) ;

xy = zeros (nk,2) ;
km = zeros (ne,6) ;
kr = zeros (nk,1) ;

alpharad  = alpha * pi / 180. ;
rstep     = (ra - ri) / (nrad * 2) ;
alphastep = alpharad / (ntang * 2) ;

a  = 0. ;
ij = 1 ;
for j = 1:ntang*2+1
    r = ra ;
    for i = 1:nrad*2+1
        xy(ij,1) = ra - r * cos(a) ;
        xy(ij,2) =      r * sin(a) ;
        r  = r - rstep ;
        ij = ij + 1 ;
    end
    a = a + alphastep ;
end

ii1 = 1 ;
iel = 1 ;
m2  = nrad * 2 ;

for j = 1:ntang2
    i1 = ii1 ;
    for i = 1:nrad2
        km(iel,1) = i1 ;
        km(iel,2) = i1+(m2+1)*2+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+m2+2 ;
        km(iel,5) = i1+(m2+1)*2+1 ;
        km(iel,6) = i1+m2+1 ;
        iel = iel+1 ;
        km(iel,1) = i1 ;
        km(iel,2) = i1+2 ;
        km(iel,3) = i1+(m2+1)*2+2 ;
        km(iel,4) = i1+1 ;
        km(iel,5) = i1+m2+3 ;
        km(iel,6) = i1+m2+2 ;
        i1  = i1  + 2 ;
        iel = iel + 1 ;
    end
    i1 = ii1 + nrad ;
    for i = 1:nrad2
        km(iel,1) = i1 ;
        km(iel,2) = i1+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+1 ;
        km(iel,5) = i1+m2+2 ;
        km(iel,6) = i1+m2+1 ;
        iel = iel+1 ;
        km(iel,1) = i1+2 ;
        km(iel,2) = i1+(m2+1)*2+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+m2+3 ;
        km(iel,5) = i1+(m2+1)*2+1 ;
        km(iel,6) = i1+m2+2 ;
        i1  = i1  + 2 ;
        iel = iel + 1 ;
    end
    ii1 = ii1 + (m2 + 1) * 2 ;
end

ii1 = (m2 + 1) * ntang + 1 ;
for j = 1:ntang2
    i1 = ii1 ;
    for i = 1:nrad2
        km(iel,1) = i1 ;
        km(iel,2) = i1+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+1 ;
        km(iel,5) = i1+m2+2 ;
        km(iel,6) = i1+m2+1 ;
        iel = iel + 1 ;
        km(iel,1) = i1+2 ;
        km(iel,2) = i1+(m2+1)*2+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+m2+3 ;
        km(iel,5) = i1+(m2+1)*2+1 ;
        km(iel,6) = i1+m2+2 ;
        i1  = i1 + 2 ;
        iel = iel + 1 ;
    end
    i1 = ii1 + nrad ;
    for i = 1:nrad2
        km(iel,1) = i1 ;
        km(iel,2) = i1+(m2+1)*2+2 ;
        km(iel,3) = i1+(m2+1)*2 ;
        km(iel,4) = i1+m2+2 ;
        km(iel,5) = i1+(m2+1)*2+1 ;
        km(iel,6) = i1+m2+1 ;
        iel = iel + 1 ;
        km(iel,1) = i1 ;
        km(iel,2) = i1+2 ;
        km(iel,3) = i1+(m2+1)*2+2 ;
        km(iel,4) = i1+1 ;
        km(iel,5) = i1+m2+3 ;
        km(iel,6) = i1+m2+2 ;
        i1  = i1 + 2 ;
        iel = iel + 1 ;
    end
    ii1 = ii1 + (m2 + 1) * 2 ;
end

for i = 1:m2+1
    kr (i) = 1 ;
    kr (nk-i+1) = 1 ;
end

for i = 1:m2+1:nk
    kr (i) = 1  ;
    kr (i+m2) = 1 ;
end