

The video is a little awkward to work with, since all the standard video compression techniques butcher it horribly, but it does work well. The demo code can either make more or less the image above - a simple array of vortices note how an overall rotation appears in the sum of individual vortex vector fields, just as a superfluid's "bulk rotation" is actually a vortex array - or it can make a video of the same vector field. Why It does the heavy lifting in the FORTRAN QUADPACK library, specifically in qagse.f which explicitly requires the functions/variables to be real before doing its 'global adaptive quadrature based on 21-point GaussKronrod quadrature within each subinterval, with. With a minor modification the same technique can be used to produce an animation of "flow" along the vector field.Īttached to this page is cython code to implement a simple line integral convolution operator, plus some demonstration python code. Note: Scipy.integrate will not directly handle complex integration. The basic technique ignores both the magnitude of the vector field and its sign. The points along this path are looked up in the noise texture and averaged to give the LIC texture at the starting point. The SciPy library is built to work with NumPy arrays, and provides many user-friendly and efficient numerical routines such as routines for numerical integration and optimization. This is done by generating a noise texture then, for each pixel of the image, "flowing" forward and back along the vector field. The SciPy library depends on NumPy, which provides convenient and fast N-dimensional array manipulation. The idea is to produce a texture which is highly correlated in the direction of the vector field but not correlated across the vector field. Line integral convolution is a technique, or family of techniques, for representing two-dimensional vector fields.
