def test3(self):
        parameter_definition = parameters.ModuleMethodParameterDefinition(
            "get_test",
            None,
            "test_name",
            "a test parameter",
            11.0 | nbody_system.length
        )

        class TestModule(BaseTestModule):
            x = 123 | units.m

            def get_test(self):
                return self.x
            def set_test(self, value):
                self.x = value

        o = TestModule()
        x = parameters.new_parameters_instance_with_docs([parameter_definition], o)

        self.assertTrue("test_name" in x.__doc__)
        self.assertTrue("a test parameter" in x.__doc__)
        self.assertTrue("default" in x.__doc__)
        self.assertTrue("11.0 length" in x.__doc__)

        convert_nbody = nbody_system.nbody_to_si(2.0 | units.m, 4.0 | units.kg)
        y = parameters.new_parameters_with_units_converted_instance_with_docs(
                x,
                convert_nbody.as_converter_from_si_to_generic()
            )

        self.assertTrue("test_name" in y.__doc__)
        self.assertTrue("a test parameter" in y.__doc__)
        self.assertTrue("default" in y.__doc__)
        self.assertTrue("22.0 m" in y.__doc__)
Exemple #2
0
    def test3b(self):
        # Same test as test3, but testing on the class, not instance
        # This makes sure the python 'help' functionality works on parameters
        parameter_definition = parameters.ModuleMethodParameterDefinition(
            "get_test", None, "test_name", "a test parameter",
            11.0 | nbody_system.length)

        class TestModule(BaseTestModule):
            x = 123 | units.m

            def get_test(self):
                return self.x

            def set_test(self, value):
                self.x = value

        o = TestModule()
        x = parameters.new_parameters_instance_with_docs(
            [parameter_definition], o)

        self.assertTrue("test_name" in x.__class__.__doc__)
        self.assertTrue("a test parameter" in x.__class__.__doc__)
        self.assertTrue("default" in x.__class__.__doc__)
        self.assertTrue("11.0 length" in x.__class__.__doc__)

        convert_nbody = nbody_system.nbody_to_si(2.0 | units.m, 4.0 | units.kg)
        y = parameters.new_parameters_with_units_converted_instance_with_docs(
            x, convert_nbody.as_converter_from_si_to_generic())

        self.assertTrue("test_name" in y.__class__.__doc__)
        self.assertTrue("a test parameter" in y.__class__.__doc__)
        self.assertTrue("default" in y.__class__.__doc__)
        self.assertTrue("22.0 m" in y.__class__.__doc__)
Exemple #3
0
    def test3(self):
        parameter_definition = parameters.ModuleMethodParameterDefinition(
            "get_test",
            None,
            "test_name",
            "a test parameter",
            11.0 | nbody_system.length
        )

        class TestModule(BaseTestModule):
            x = 123 | units.m

            def get_test(self):
                return self.x
            def set_test(self, value):
                self.x = value

        o = TestModule()
        x = parameters.new_parameters_instance_with_docs([parameter_definition], o)

        self.assertTrue("test_name" in x.__doc__)
        self.assertTrue("a test parameter" in x.__doc__)
        self.assertTrue("default" in x.__doc__)
        self.assertTrue("11.0 length" in x.__doc__)

        convert_nbody = nbody_system.nbody_to_si(2.0 | units.m, 4.0 | units.kg)
        y = parameters.new_parameters_with_units_converted_instance_with_docs(
                x,
                convert_nbody.as_converter_from_si_to_generic()
            )

        self.assertTrue("test_name" in y.__doc__)
        self.assertTrue("a test parameter" in y.__doc__)
        self.assertTrue("default" in y.__doc__)
        self.assertTrue("22.0 m" in y.__doc__)
Exemple #4
0
 def __init__(self, softening_mode="shared"):
     self.particles = Particles()
     if softening_mode == "individual":
         self.softening_mode = "individual"
         self._softening_lengths_squared = self._softening_lengths_squared_individual
         self._softening_lengths = self._softening_lengths_individual
     else:
         self.softening_mode = "shared"
         self._softening_lengths_squared = self._softening_lengths_squared_shared
         self._softening_lengths = self._softening_lengths_shared
         epsilon_squared_parameter = parameters.ModuleMethodParameterDefinition(
             "get_epsilon_squared",
             "set_epsilon_squared",
             "epsilon_squared",
             "gravitational softening length squared",
             default_value = 0.0 | nbody_system.length**2,
             must_set_before_get = False
         )
         self.parameters = parameters.new_parameters_instance_with_docs([epsilon_squared_parameter], self)
         self.epsilon_squared = 0.0 | nbody_system.length**2
Exemple #5
0
 def __init__(self, softening_mode="shared"):
     self.particles = Particles()
     if softening_mode == "individual":
         self.softening_mode = "individual"
         self._softening_lengths_squared = self._softening_lengths_squared_individual
         self._softening_lengths = self._softening_lengths_individual
     else:
         self.softening_mode = "shared"
         self._softening_lengths_squared = self._softening_lengths_squared_shared
         self._softening_lengths = self._softening_lengths_shared
         epsilon_squared_parameter = parameters.ModuleMethodParameterDefinition(
             "get_epsilon_squared",
             "set_epsilon_squared",
             "epsilon_squared",
             "gravitational softening length squared",
             default_value=0.0 | nbody_system.length ** 2,
             must_set_before_get=False,
         )
         self.parameters = parameters.new_parameters_instance_with_docs([epsilon_squared_parameter], self)
         self.epsilon_squared = 0.0 | nbody_system.length ** 2
Exemple #6
0
    def test3b(self):
        # Same test as test3, but testing on the class, not instance
        # This makes sure the python 'help' functionality works on parameters
        parameter_definition = parameters.ModuleMethodParameterDefinition(
            "get_test",
            None,
            "test_name",
            "a test parameter",
            11.0 | nbody_system.length
        )

        class TestModule(BaseTestModule):
            x = 123 | units.m

            def get_test(self):
                return self.x
            def set_test(self, value):
                self.x = value

        o = TestModule()
        x = parameters.new_parameters_instance_with_docs([parameter_definition], o)

        self.assertTrue("test_name" in x.__class__.__doc__)
        self.assertTrue("a test parameter" in x.__class__.__doc__)
        self.assertTrue("default" in x.__class__.__doc__)
        self.assertTrue("11.0 length" in x.__class__.__doc__)

        convert_nbody = nbody_system.nbody_to_si(2.0 | units.m, 4.0 | units.kg)
        y = parameters.new_parameters_with_units_converted_instance_with_docs(
                x,
                convert_nbody.as_converter_from_si_to_generic()
            )

        self.assertTrue("test_name" in y.__class__.__doc__)
        self.assertTrue("a test parameter" in y.__class__.__doc__)
        self.assertTrue("default" in y.__class__.__doc__)
        self.assertTrue("22.0 m" in y.__class__.__doc__)