예제 #1
0
 def create_scheme(self):
     h0 = None
     hdx = None
     wcsph = WCSPHScheme(['fluid'], [],
                         dim=2,
                         rho0=rho0,
                         c0=c0,
                         h0=h0,
                         hdx=hdx,
                         nu=None,
                         gamma=7.0,
                         alpha=0.0,
                         beta=0.0)
     tvf = TVFScheme(['fluid'], [],
                     dim=2,
                     rho0=rho0,
                     c0=c0,
                     nu=None,
                     p0=p0,
                     pb=None,
                     h0=h0)
     edac = EDACScheme(['fluid'], [],
                       dim=2,
                       rho0=rho0,
                       c0=c0,
                       nu=None,
                       pb=p0,
                       h=h0)
     iisph = IISPHScheme(fluids=['fluid'],
                         solids=[],
                         dim=2,
                         nu=None,
                         rho0=rho0,
                         has_ghosts=True)
     crksph = CRKSPHScheme(fluids=['fluid'],
                           dim=2,
                           nu=None,
                           rho0=rho0,
                           h0=h0,
                           c0=c0,
                           p0=0.0)
     gtvf = GTVFScheme(fluids=['fluid'],
                       solids=[],
                       dim=2,
                       rho0=rho0,
                       c0=c0,
                       nu=None,
                       h0=None,
                       pref=None)
     pcisph = PCISPHScheme(fluids=['fluid'], dim=2, rho0=rho0, nu=None)
     sisph = SISPHScheme(fluids=['fluid'],
                         solids=[],
                         dim=2,
                         nu=None,
                         rho0=rho0,
                         c0=c0,
                         alpha=0.0,
                         has_ghosts=True,
                         pref=p0,
                         rho_cutoff=0.2,
                         internal_flow=True,
                         gtvf=True)
     isph = ISPHScheme(fluids=['fluid'],
                       solids=[],
                       dim=2,
                       nu=None,
                       rho0=rho0,
                       c0=c0,
                       alpha=0.0)
     s = SchemeChooser(default='tvf',
                       wcsph=wcsph,
                       tvf=tvf,
                       edac=edac,
                       iisph=iisph,
                       crksph=crksph,
                       gtvf=gtvf,
                       pcisph=pcisph,
                       sisph=sisph,
                       isph=isph)
     return s