#include #include #include "vector.h" #include "chebyshev.h" #include "flowfield.h" #include "nsintegrator.h" int main() { // Define flow parameters const Real Reynolds = 400.0; const Real nu = 1.0/Reynolds; // Define integration parameters const Real dtmax = 0.15; const Real dtmin = 0.05; const Real CFLmax = 0.90; const Real CFLmin = 0.5; const Real dT = 1.0; // plot interval const Real T0 = 100.0; // start time const Real T1 = 200.0; // stop time // Load velocity, modified pressure, and base flow from disk. FlowField u("u100"); FlowField q("q100"); ChebyCoeff U("U"); // Get y-domain information from velocity field. Real a = u.a(); Real b = u.b(); int Ny = u.Ny(); // Construct Navier-Stoke Integrator DNSFlags flags; flags.timestepping = RK3; // use 3rd-order Runge-Kutta method flags.constraint = PressureGradient; // enforce constant pressure gradient TimeStep dt((dtmax+dtmin)/2, dtmin, dtmax, dT, CFLmin, CFLmax); NSIntegrator dns(u, U, nu, dt, flags, T0); ChebyCoeff u00mean(Ny,a,b,Spectral); Real dragmean = 0.0; int count = 0; for (Real t=T0; t