Package prompt :: Module fix
[hide private]
[frames] | no frames]

Source Code for Module prompt.fix

 1  ############################################################################### 
 2  #                                                                             # 
 3  # Copyright (C) 2003, 2004, 2008-2010 Edward d'Auvergne                       # 
 4  #                                                                             # 
 5  # This file is part of the program relax.                                     # 
 6  #                                                                             # 
 7  # relax is free software; you can redistribute it and/or modify               # 
 8  # it under the terms of the GNU General Public License as published by        # 
 9  # the Free Software Foundation; either version 2 of the License, or           # 
10  # (at your option) any later version.                                         # 
11  #                                                                             # 
12  # relax is distributed in the hope that it will be useful,                    # 
13  # but WITHOUT ANY WARRANTY; without even the implied warranty of              # 
14  # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               # 
15  # GNU General Public License for more details.                                # 
16  #                                                                             # 
17  # You should have received a copy of the GNU General Public License           # 
18  # along with relax; if not, write to the Free Software                        # 
19  # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA   # 
20  #                                                                             # 
21  ############################################################################### 
22   
23  # Module docstring. 
24  """Module containing the 'fix' user function class.""" 
25  __docformat__ = 'plaintext' 
26   
27  # relax module imports. 
28  from base_class import Basic_class 
29  import arg_check 
30  from generic_fns import fix 
31   
32   
33 -class Fix(Basic_class):
34 """Class containing the function for fixing or allowing parameter values to change.""" 35
36 - def fix(self, element=None, fixed=True):
37 """Function for either fixing or allowing parameter values to change during optimisation. 38 39 Keyword Arguments 40 ~~~~~~~~~~~~~~~~~ 41 42 element: Which element to fix. 43 44 fixed: A flag specifying if the parameters should be fixed or allowed to change. 45 46 47 Description 48 ~~~~~~~~~~~ 49 50 The keyword argument 'element' can be any of the following: 51 52 'diff' - the diffusion tensor parameters. This will allow all diffusion tensor parameters 53 to be toggled. 54 55 'all_spins' - using this keyword, all parameters from all spins will be toggled. 56 57 'all' - all parameter will be toggled. This is equivalent to combining both 'diff' and 58 'all_spins'. 59 60 61 The flag 'fixed', if set to True, will fix parameters during optimisation whereas a value of 62 False will allow parameters to vary. 63 """ 64 65 # Function intro text. 66 if self._exec_info.intro: 67 text = self._exec_info.ps3 + "fix(" 68 text = text + "element=" + repr(element) 69 text = text + ", fixed=" + repr(fixed) + ")" 70 print(text) 71 72 # The argument checks. 73 arg_check.is_str(element, 'element') 74 arg_check.is_bool(fixed, 'fixed') 75 76 # Execute the functional code. 77 fix.fix(element=element, fixed=fixed)
78