
void cart2polar(float x,y,i; output float R,theta)
{
    
    R=sqrt(x*x+y*y);
    theta=atan(y/x);
    float n;
    for (n=1;n<i; n+=1)
    {
        theta=theta+(atan(y/x)+(n)*PI)*step(pow((n-1)/(2*i),2),(x*x+y*y));
        
    
    }
    

}

float distance2d(float x1,y1,x2,y2)
{
    return (sqrt(pow((x2-x1),2)+pow((y2-y1),2)));
}



float fcircle(float k, freq)
{ 
    float i;
    float ds=0;
    for (i=1; i<=k;i+=1)
        {
        ds+=(step((1/k)*(i-1),s)-step((1/k)*i,s))*sin(freq*(sqrt(pow(s-(1/(2*k)+(i-1)/k),2)+pow((t-1),2))));
        
        }

return ds;
}



void function001(float d,freq,side,sq ; output float ds)
{
    ds=sq*(step(0.5,sin(d*freq)))+(1-sq)*sin(d*freq);
}


