using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Azimuth; using Slipstream.StokesFlow; namespace Slipstream.UnitTests.StokesFlow { public class StokesletGroupTests : UnitTestSharp.TestFixture { public void Double_NormalFlow() { var points = new List { new Vector(0, 1), new Vector(0, -1) }; var freeStreamVelocity = new Vector(1, 0); var group = new StokesletGroup(points); group.EnforceBoundaryConditions(freeStreamVelocity); foreach (var point in points) { CheckEqual(Vector.Zero, group.VelocityAtPoint(point) + freeStreamVelocity); } } public void Double_TangentFlow() { var points = new List { new Vector(0, 1), new Vector(0, -1) }; var freeStreamVelocity = new Vector(0, 1); var group = new StokesletGroup(points); group.EnforceBoundaryConditions(freeStreamVelocity); foreach (var point in points) { CheckEqual(Vector.Zero, group.VelocityAtPoint(point) + freeStreamVelocity); } } public void MockPanel() { var points = new List { new Vector(0, 2), new Vector(0, 1), new Vector(0, 0), new Vector(0, -1), new Vector(0, -2) }; var freeStreamVelocity = new Vector(1, 0); var group = new StokesletGroup(points); group.EnforceBoundaryConditions(freeStreamVelocity); foreach (var point in points) { CheckEqual(Vector.Zero, group.VelocityAtPoint(point) + freeStreamVelocity); } } } }