Beispiel #1
0
int main(int argc, char* argv[])
{
  bigend = fBigEndian();
  lbcurstep = 0;
  fDefineSystem();
  fSetSerialDomain();
  fStartDLMESO();
  fMemoryAllocation();
  fPrintSystemInfo();
  fsPrintDomainInfo();
  fInputParameters();
  fReadSpaceParameter();
  fGetModel();
  fNeighbourBoundary();
  fInitializeSystem();
  fReadInitialState();
  if(outformat==2)  // Grid for Plot3D output files
    fsOutputGrid(); 
  if(interact==1 || interact==2)
    fCalcPotential_ShanChen();
  timetotal=fCheckTimeSerial();
  switch (interact) {
    case 0:
    // no mesoscopic interactions
      switch (collide) {
        case 0:
          break;
        case 1:
          break;
        case 2:
          break;
        case 3:
          break;
        case 4:
          break;
        case 5:
          break;
      }
      break;
    case 1:
    // Shan/Chen pseudopotential interactions
      switch (collide) {
        case 0:
          fsBGKShanChen();
          break;
        case 1:
          fsBGKEDMShanChen();
          break;
        case 2:
          fsBGKGuoShanChen();
          break;
        case 3:
          break;
        case 4:
          break;
        case 5:
          break;
      }
      break;
    case 2:
    // Shan/Chen pseudopotential interactions with quadratic pseudopotential term
    // TO DO
      break;
    case 3:
    // Lishchuk continuum-based interactions (with interfacial normals determined non-locally)
      switch (collide) {
        case 0:
          break;
        case 1:
          break;
        case 2:
          break;
        case 3:
          break;
        case 4:
          break;
        case 5:
          break;
      }
      break;
    case 4:
    // Lishchuk continuum-based interactions (with interfacial normals determined locally)
    // TO DO
      break;
  }
  timetotal=fCheckTimeSerial();
  fFreeMemory();
  fFinishDLMESO();
  return 0;
}
 ~VulkanCleanupHelper() {
     fDestroyImage(fDevice, fImage, nullptr);
     fFreeMemory(fDevice, fMemory, nullptr);
 }