Exemple #1
0
    def test_determine_function_type_scalar(self):

        type = determine_function_type(1.0)

        assert type == 'scalar'

        type = determine_function_type(1)

        assert type == 'scalar'
    def test_determine_function_type_scalar(self):

        type = determine_function_type(1.0)

        assert type == 'scalar'


        type = determine_function_type(1)

        assert type == 'scalar'
Exemple #3
0
    def set_value(self,value):
        """Set value
        Can change value while running
        Can be a scalar, or a function of t or x,y or x,y,t or a quantity
        """

        # Test if rate is a quantity
        if isinstance(value, Quantity):
            self.value_type = 'quantity'
        else:
            # Possible types are 'scalar', 't', 'x,y' and 'x,y,t'
            from anuga.utilities.function_utils import determine_function_type
            self.value_type = determine_function_type(value)

        self.value = value
        
        if self.value_type == 'scalar':
            self.value_callable = False
            self.value_spatial = False
        elif self.value_type == 'quantity':
            self.value_callable = False
            self.valuespatial = False
        elif self.value_type == 't':
            self.value_callable = True
            self.value_spatial = False
        else:
            self.value_callable = True
            self.value_spatial = True
Exemple #4
0
    def set_rate(self, rate):
        """Set rate 
        Can change rate while running
        Can be a scalar, or a function of t or x,y or x,y,t or a quantity
        """

        # Test if rate is a quantity
        if isinstance(rate, Quantity):
            self.rate_type = 'quantity'
        else:
            # Possible types are 'scalar', 't', 'x,y' and 'x,y,t'
            from anuga.utilities.function_utils import determine_function_type
            self.rate_type = determine_function_type(rate)

        self.rate = rate

        if self.rate_type == 'scalar':
            self.rate_callable = False
            self.rate_spatial = False
        elif self.rate_type == 'quantity':
            self.rate_callable = False
            self.rate_spatial = False
        elif self.rate_type == 't':
            self.rate_callable = True
            self.rate_spatial = False
        else:
            self.rate_callable = True
            self.rate_spatial = True
    def test_determine_function_type_spatial_only(self):
        def myfunc(x, y, t):
            return x + y + t

        type = determine_function_type(myfunc)

        assert type == 'x,y,t'
    def test_determine_function_type_time_only(self):
        def myfunc(t):
            return t * 2

        type = determine_function_type(myfunc)

        assert type == 't'
Exemple #7
0
    def set_w_uh_vh(self, w_uh_vh = None):

        self.w_uh_vh = w_uh_vh

        self.w_uh_vh_type = determine_function_type(w_uh_vh)
        if self.w_uh_vh_type == 'array':
            self.w_uh_vh = ensure_numeric(self.w_uh_vh)
        elif self.w_uh_vh_type == 'scalar':
            self.w_uh_vh = float(self.w_uh_vh)
    def test_determine_function_type_spatial_only(self):


        def myfunc(x,y,t):
             return x+y+t

        type = determine_function_type(myfunc)

        assert type == 'x,y,t'
    def test_determine_function_type_time_only(self):


        def myfunc(t):
             return t*2

        type = determine_function_type(myfunc)

        assert type == 't'
Exemple #10
0
    def set_value(self, value=None):

        self.value = value
        self.value_type = determine_function_type(value)
Exemple #11
0
    def test_determine_function_type_exception(self):

        type = determine_function_type([])

        assert type == 'array'
    def set_value(self, value = None):

        self.value = value
        self.value_type = determine_function_type(value)
    def test_determine_function_type_exception(self):

        
        type = determine_function_type([])

        assert type == 'array'