Ignore:
Timestamp:
Jun 22, 2010, 5:30:32 PM (13 years ago)
Author:
steve
Message:

Added in some more c based limiters

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anuga_work/development/2010-projects/anuga_1d/base/generic_domain.py

    r7860 r7868  
    1717                 coordinates,
    1818                 boundary = None,
    19                  conserved_quantities = None,
    20                  evolved_quantities = None,
    21                  other_quantities = None,
     19                 conserved_quantities = [],
     20                 evolved_quantities = [],
     21                 other_quantities = [],
    2222                 tagged_elements = None):
    2323        """
     
    3535        self.number_of_elements = N = len(self.coordinates)-1
    3636
    37         self.beta = 1.0
    38         self.set_limiter("minmod_kurganov")
    3937        self.set_CFL(CFL)
    4038        self.set_timestepping_method(timestepping_method)
     
    869867   
    870868
     869    def get_beta(self):
     870
     871        warn('limiter parameter beta associated with quantity not domain')
     872
     873    def set_beta(self,beta):
     874        """Set the same limiter beta parameter to all evolving quantities
     875        """
     876
     877        for name in self.evolved_quantities:
     878            Q = self.quantities[name]
     879            Q.set_beta(beta)
     880
     881
    871882    def get_limiter(self):
    872         return self.limiter
     883
     884        warn('limiter associated with quantity not domain')
    873885
    874886    def set_limiter(self,limiter):
    875887
    876         possible_limiters = \
    877         ['pyvolution', 'minmod_steve', 'minmod', 'minmod_kurganov', 'superbee', 'vanleer', 'vanalbada']
    878 
    879         if limiter in possible_limiters:
    880             self.limiter = limiter
    881             return
    882 
    883         msg = '%s is an incorrect limiter type.\n'% limiter
    884         msg += 'Possible types are: '+ ", ".join(["%s" % el for el in possible_limiters])
    885         raise Exception, msg
     888        for name in self.evolved_quantities:
     889            Q = self.quantities[name]
     890            Q.set_limiter(limiter)
     891       
    886892
    887893       
Note: See TracChangeset for help on using the changeset viewer.