www.pudn.com > DemoFluid2D.zip > smDivergence2D.psh


!!FP1.0 
#2d FLUID Project to get Div(U,V) 
DECLARE TexPARA = {0,0,0,0}; 
#TEX0 -- VelocityTexID 
#U = VelocityTexID.x 
#V = VelocityTexID.y 
 
ADDH H0, f[WPOS].xyxy, {1,0,-1,0}; 
#U(i+1,j) 
TEX R1.x, H0.xyww, TEX0, RECT; 
 
#U(i-1,j) 
TEX R2.x, H0.zwww, TEX0, RECT; 
SUB R1.x, R1.x, R2.x; 
 
ADDH H0, f[WPOS].xyxy, {0,1,0,-1}; 
#V(i,j+1) 
TEX R1.y, H0.xyww, TEX0, RECT; 
 
#V(i,j-1) 
TEX R2.y, H0.zwww, TEX0, RECT; 
SUB R1.y, R1.y, R2.y; 
MUL R1.xy, R1, TexPARA; 
 
ADD o[COLR], R1.x, R1.y; 
 
END