function [xpos2,ypos2] = partical_B(xpos1,ypos1,u0,v0,lon1,lat1,ix,iy,m,d,dtuv)
%  for Arakawa-B grid
xdif=(xpos1-lon1(ix))./(lon1(ix+1)-lon1(ix));
ydif=(ypos1-lat1(iy))./(lat1(iy+1)-lat1(iy));
u1=u0(ix,iy,m,d);u2=u0(ix+1,iy,m,d);u3=u0(ix+1,iy+1,m,d);u4=u0(ix,iy+1,m,d);
ux=(1.-xdif).*(1.-ydif).*u1+xdif.*(1.-ydif).*u2+xdif.*ydif.*u3+(1.-xdif).*ydif.*u4;

v1=v0(ix,iy,m,d);v2=v0(ix+1,iy,m,d);v3=v0(ix+1,iy+1,m,d);v4=v0(ix,iy+1,m,d);
vy=(1.-xdif).*(1.-ydif).*v1+xdif.*(1.-ydif).*v2+xdif.*ydif.*v3+(1.-xdif).*ydif.*v4;

dx=pos2dist(lat1(iy),lon1(ix),lat1(iy),lon1(ix+1),1).*1000;
dy=pos2dist(lat1(iy),lon1(ix),lat1(iy+1),lon1(ix),1).*1000;
xpos2=(ux.*dtuv)/dx.*(lon1(ix+1)-lon1(ix))+xpos1;
ypos2=(vy.*dtuv)/dy.*(lat1(iy+1)-lat1(iy))+ypos1;
end