def to_abivars(self):
        """Returns a dictionary with the abinit variables"""
        # These variables are always present.
        out_vars = {
            "ionmov" : self.abivars.ionmov,
            "optcell": self.abivars.optcell,
            "ntime"  : self.abivars.ntime,
        }

        # Atom relaxation.
        if self.move_atoms:
            out_vars.update({
                "tolmxf": self.abivars.tolmxf,
            })

        if self.abivars.atoms_constraints:
            # Add input variables for constrained relaxation.
            raise NotImplementedError("")
            out_vars.update(self.abivars.atoms_constraints.to_abivars())

        # Cell relaxation.
        if self.move_cell:
            out_vars.update({
                "dilatmx"  : self.abivars.dilatmx,
                "ecutsm"   : self.abivars.ecutsm,
                "strfact"  : self.abivars.strfact,
                "strtarget": self.abivars.strtarget,
            })

        return out_vars
def to_abivars ( self ) : out_vars = { "ionmov" : self . abivars . ionmov , "optcell" : self . abivars . optcell , "ntime" : self . abivars . ntime , } if self . move_atoms : out_vars . update ( { "tolmxf" : self . abivars . tolmxf , } ) if self . abivars . atoms_constraints : raise NotImplementedError ( "" ) out_vars . update ( self . abivars . atoms_constraints . to_abivars ( ) ) if self . move_cell : out_vars . update ( { "dilatmx" : self . abivars . dilatmx , "ecutsm" : self . abivars . ecutsm , "strfact" : self . abivars . strfact , "strtarget" : self . abivars . strtarget , } ) return out_vars
Returns a dictionary with the abinit variables