Beispiel #1
0
 def create_scheme(self):
     wcsph = WCSPHScheme(
         ['fluid'], ['boundary'], dim=2, rho0=ro, c0=co,
         h0=h, hdx=1.3, gy=-9.81, alpha=alpha, beta=beta,
         gamma=gamma, hg_correction=True, update_h=True
     )
     aha = AdamiHuAdamsScheme(
         fluids=['fluid'], solids=['boundary'], dim=2, c0=co, nu=nu,
         rho0=ro, h0=h, p0=0.0, gy=-g, gamma=1.0, tdamp=0.0, alpha=alpha
     )
     edac = EDACScheme(
         fluids=['fluid'], solids=['boundary'], dim=2, c0=co, nu=nu,
         rho0=ro, h=h, pb=0.0, gy=-g, eps=0.0, clamp_p=True
     )
     iisph = IISPHScheme(
         fluids=['fluid'], solids=['boundary'], dim=2, nu=nu,
         rho0=ro, gy=-g
     )
     gtvf = GTVFScheme(
         fluids=['fluid'], solids=['boundary'], dim=2, nu=nu,
         rho0=ro, gy=-g, h0=None, c0=co, pref=None
     )
     sisph = SISPHScheme(
         fluids=['fluid'], solids=['boundary'], dim=2, nu=nu,
         c0=co, rho0=ro, alpha=0.05, gy=-g, pref=ro*co**2,
         internal_flow=False, hg_correction=True, gtvf=True, symmetric=True
     )
     s = SchemeChooser(default='wcsph', wcsph=wcsph, aha=aha, edac=edac,
                       iisph=iisph, gtvf=gtvf, sisph=sisph)
     return s
Beispiel #2
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'], dim=2, rho0=rho0, c0=c0,
         nu=None, h0=None, p0=p0, pref=None
     )
     pcisph = PCISPHScheme(
         fluids=['fluid'], dim=2, rho0=rho0, nu=None
     )
     s = SchemeChooser(
         default='tvf', wcsph=wcsph, tvf=tvf, edac=edac, iisph=iisph,
         crksph=crksph, gtvf=gtvf, pcisph=pcisph
     )
     return s
Beispiel #3
0
 def create_scheme(self):
     wcsph = WCSPHScheme(['fluid'], [],
                         dim=2,
                         rho0=self.ro,
                         c0=self.co,
                         h0=self.dx * self.hdx,
                         hdx=self.hdx,
                         gamma=7.0,
                         alpha=0.1,
                         beta=0.0)
     iisph = IISPHScheme(['fluid'], [], dim=2, rho0=self.ro)
     dpsph = DeltaPlusScheme(
         fluids=['fluid'],
         solids=[],
         dim=2,
         rho0=self.ro,
         c0=self.co,
         nu=0.0,
         p0=self.p0,
         hdx=0.0,
         dx=0.0,
         h0=0.0,
         dt=0.0,
     )
     s = SchemeChooser(default='dpsph',
                       dpsph=dpsph,
                       wcsph=wcsph,
                       iisph=iisph)
     return s
Beispiel #4
0
 def create_scheme(self):
     wcsph = WCSPHScheme(
         ['fluid'], [], dim=2, rho0=self.ro, c0=self.co,
         h0=self.dx*self.hdx, hdx=self.hdx, gamma=7.0, alpha=0.1, beta=0.0
     )
     iisph = IISPHScheme(
         ['fluid'], [], dim=2, rho0=self.ro
     )
     s = SchemeChooser(default='wcsph', wcsph=wcsph, iisph=iisph)
     return s
Beispiel #5
0
 def create_scheme(self):
     wcsph = WCSPHScheme(['fluid'], ['boundary'],
                         dim=2,
                         rho0=ro,
                         c0=co,
                         h0=h,
                         hdx=1.3,
                         gy=-9.81,
                         alpha=alpha,
                         beta=beta,
                         gamma=gamma,
                         hg_correction=True,
                         update_h=True)
     aha = AdamiHuAdamsScheme(fluids=['fluid'],
                              solids=['boundary'],
                              dim=2,
                              c0=co,
                              nu=nu,
                              rho0=ro,
                              h0=h,
                              p0=0.0,
                              gy=-g,
                              gamma=1.0,
                              tdamp=0.0,
                              alpha=alpha)
     edac = EDACScheme(fluids=['fluid'],
                       solids=['boundary'],
                       dim=2,
                       c0=co,
                       nu=nu,
                       rho0=ro,
                       h=h,
                       pb=0.0,
                       gy=-g,
                       eps=0.0,
                       clamp_p=True)
     iisph = IISPHScheme(fluids=['fluid'],
                         solids=['boundary'],
                         dim=2,
                         nu=nu,
                         rho0=ro,
                         gy=-g)
     s = SchemeChooser(default='wcsph',
                       wcsph=wcsph,
                       aha=aha,
                       edac=edac,
                       iisph=iisph)
     return s
Beispiel #6
0
 def create_scheme(self):
     s = IISPHScheme(fluids=['fluid1', 'fluid2'],
                     solids=[],
                     dim=2,
                     rho0=rho0)
     return s