Exemple #1
0
    def __init__(
        self,
        species,
        temp,
        radius=-1,
        density=-1,
        charge=0,
        units_temp="ha",
        units_radius="bohr",
        units_density="g/cm3",
        write_info=True,
    ):

        # print the initial spiel
        print("\n" + "Welcome to AvAtom! \n")

        # input variables are checked later with getter / setter functions
        self.species = species
        self.units_temp = units_temp
        self.temp = temp
        self.charge = charge
        self.units_radius = units_radius
        self.units_density = units_density

        # radius and density need a special check to ensure compatibility
        radius_check, density_check = check_inputs.Atom().check_rad_dens_init(
            self,
            radius,
            density,
            self.units_radius,
            self.units_density,
        )

        self.radius = radius_check
        self.density = density_check

        if write_info:
            print(self.info)
Exemple #2
0
 def density(self, density):
     self._density = check_inputs.Atom().check_density(
         density, self.units_density)
     self._radius = check_inputs.Atom().dens_to_radius(self, self._density)
     config.r_s = self._radius
     config.sph_vol = (4.0 * pi * self._radius**3.0) / 3.0
Exemple #3
0
 def units_density(self, units_density):
     self._units_density = check_inputs.Atom().check_units_density(
         units_density)
Exemple #4
0
 def radius(self, radius):
     self._radius = check_inputs.Atom().check_radius(
         radius, self.units_radius)
     self._density = check_inputs.Atom().radius_to_dens(self, self._radius)
     config.r_s = self._radius
     config.sph_vol = (4.0 * pi * self._radius**3.0) / 3.0
Exemple #5
0
 def units_radius(self, units_radius):
     self._units_radius = check_inputs.Atom().check_units_radius(
         units_radius)
Exemple #6
0
 def charge(self, charge):
     self._charge = check_inputs.Atom().check_charge(charge)
Exemple #7
0
 def temp(self, temp):
     self._temp = check_inputs.Atom().check_temp(temp, self.units_temp)
     config.temp = self._temp
     config.beta = 1.0 / self._temp
Exemple #8
0
 def units_temp(self, units_temp):
     self._units_temp = check_inputs.Atom().check_units_temp(units_temp)
Exemple #9
0
 def species(self, species):
     self._species = check_inputs.Atom().check_species(species)