diff --git a/NAMDDictionary.py b/NAMDDictionary.py
new file mode 100644
index 0000000000000000000000000000000000000000..ebcf2724e17796c1a4af8e1dcd860d5e756fecb1
--- /dev/null
+++ b/NAMDDictionary.py
@@ -0,0 +1,1309 @@
+import setup_paths
+import numpy as np
+from NAMDCommon import PARSERNAME, PROGRAMNAME, PARSERTAG
+from nomadcore.smart_parser.SmartParserDictionary import metaNameConverter, metaNameConverter_UnderscoreSpaceDash
+from nomadcore.smart_parser.SmartParserDictionary import MetaInfoMap, FileInfoMap, MapDictionary 
+from nomadcore.smart_parser.SmartParserDictionary import getDict_MetaStrInDict, getList_MetaStrInDict, get_unitDict
+import nomadcore.md_data_access.MDDataAccess as MDData
+
+def get_fileListDict():
+    """Loads dictionary for file namelists.
+
+    Returns:
+        the list of defaults file namelists
+    """
+    
+    startpage = {
+        'nameTranslate'   : metaNameConverter,
+        'metaHeader'      : PARSERTAG,
+        'metaNameTag'     : 'inout_file',
+        'metaInfoType'    : 'C',
+        'activeMetaNames' : [],
+        'activeSections'  : [PARSERTAG+'_section_input_output_files']
+        }
+    namelist = {
+        'structure'     : FileInfoMap(startpage, fileFormat=['.psf'], activeInfo=True, 
+                                      infoPurpose=['topology', 'unitcell']),
+        'traj_coord'    : FileInfoMap(startpage, fileFormat=['.dcd'], activeInfo=True, 
+                                      infoPurpose=['trajectory', 'unitcell']),
+        'traj_vel'      : FileInfoMap(startpage, fileFormat=['.dcd'], activeInfo=True,
+                                      infoPurpose=['velocities']),
+        'traj_force'    : FileInfoMap(startpage, fileFormat=['.dcd'], activeInfo=True, 
+                                      infoPurpose=['forces']),
+        'output_coord'  : FileInfoMap(startpage, fileFormat=['.namdbin'], activeInfo=False,
+                                      infoPurpose=['outputcoordinates', 'unitcell']),
+        'output_vel'    : FileInfoMap(startpage, fileFormat=['.namdbin'], activeInfo=False, 
+                                      infoPurpose=['outputvelocities']),
+        'output_force'  : FileInfoMap(startpage, fileFormat=['.namdbin'], activeInfo=False, 
+                                      infoPurpose=['outputforces']),
+        'input_coord'   : FileInfoMap(startpage, fileFormat=['.pdb'],
+                                      infoPurpose=['inputcoordinates', 'inputunitcell']),
+        'input_vel'     : FileInfoMap(startpage, fileFormat=['.pdb'],
+                                      infoPurpose=['inputvelocities']),
+        'restart_coord' : FileInfoMap(startpage, fileFormat=['.cpt'],
+                                      infoPurpose=['inputcoordinates', 'inputunitcell']),
+        'restart_vel'   : FileInfoMap(startpage, fileFormat=['.cpt'],
+                                      infoPurpose=['inputvelocities']),
+        'fftw_datafile' : FileInfoMap(startpage, fileFormat=['.txt'], infoPurpose=['fftwdata']),
+        'mdlog'         : FileInfoMap(startpage),
+        }
+    return MapDictionary(namelist)
+
+def get_nameListDict(deflist):
+    """Loads control in data of NAMD.
+
+    Args:
+        deflist: name list definition (cntrl/parm).
+
+    matchWith parameters:
+        EOL = End of line
+        PL  = Match with previous line 
+        PW  = Previous word
+        NW  = Next word (until space, comma) (DEFAULT)
+        UD  = until delimeter (can be any string/character)
+        
+        The text matched inside apostrophe or qoutation is extracted
+
+    Returns:
+        the list of namelists
+    """
+    startpage = {
+        'nameTranslate'   : metaNameConverter_UnderscoreSpaceDash,
+        'metaHeader'      : PARSERTAG,
+        'metaNameTag'     : 'inout_control',
+        'metaInfoType'    : 'C',
+        'activeMetaNames' : [],
+        'activeSections'  : [PARSERTAG+'_section_control_parameters'],
+        }
+
+    cntrllist = {
+        'Info: TIMESTEP'          : MetaInfoMap(startpage, defaultValue=1,
+                                                replaceTag='TIMESTEP'),
+        'NUMBER OF STEPS'         : MetaInfoMap(startpage, defaultValue=0),
+        'STEPS PER CYCLE'         : MetaInfoMap(startpage, defaultValue=1),
+        'PERIODIC CELL BASIS 1'   : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'PERIODIC CELL BASIS 2'   : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'PERIODIC CELL BASIS 3'   : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'PERIODIC CELL CENTER'    : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'LOAD BALANCER'           : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'LOAD BALANCING STRATEGY' : MetaInfoMap(startpage, defaultValue="New Load Balancers", matchWith='EOL'),
+        'LDB PERIOD'              : MetaInfoMap(startpage, defaultValue=None),
+        'FIRST LDB TIMESTEP'      : MetaInfoMap(startpage, defaultValue=None),
+        'LAST LDB TIMESTEP'       : MetaInfoMap(startpage, defaultValue=None),
+        'LDB BACKGROUND SCALING'  : MetaInfoMap(startpage, defaultValue=None),
+        'HOM BACKGROUND SCALING'  : MetaInfoMap(startpage, defaultValue=None),
+        'PME BACKGROUND SCALING'  : MetaInfoMap(startpage, defaultValue=None),
+        'MIN ATOMS PER PATCH'     : MetaInfoMap(startpage, defaultValue=None),
+        'INITIAL TEMPERATURE'     : MetaInfoMap(startpage, defaultValue=None),
+        'CENTER OF MASS MOVING INITIALLY?' : MetaInfoMap(startpage, defaultValue=None,
+                                                         replaceTag='CENTER OF MASS MOVING INITIALLY'),
+        'DIELECTRIC'              : MetaInfoMap(startpage, defaultValue=None),
+        'EXCLUDE'                 : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL',
+                                                         replaceTag='EXCLUDED SPECIES OR GROUPS'),
+        '1-4 ELECTROSTATICS SCALED BY' : MetaInfoMap(startpage, defaultValue=None,
+                                                     replaceTag='1-4 ELECTROSTATICS SCALE'),
+        'Info: DCD FILENAME'      : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='TRAJ DCD FILENAME'),
+        'Info: DCD FREQUENCY'     : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='TRAJ DCD FREQUENCY'),
+        'Info: DCD FIRST STEP'    : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='TRAJ DCD FIRST STEP'),
+        'VELOCITY DCD FILENAME'   : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY DCD FREQUENCY'  : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY DCD FIRST STEP' : MetaInfoMap(startpage, defaultValue=None),
+        'FORCE DCD FILENAME'      : MetaInfoMap(startpage, defaultValue=None),
+        'FORCE DCD FREQUENCY'     : MetaInfoMap(startpage, defaultValue=None),
+        'FORCE DCD FIRST STEP'    : MetaInfoMap(startpage, defaultValue=None),
+        'OUTPUT FILENAME'         : MetaInfoMap(startpage, defaultValue=None),
+        'BINARY OUTPUT'           : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'RESTART FILENAME'        : MetaInfoMap(startpage, defaultValue=None),
+        'RESTART FREQUENCY'       : MetaInfoMap(startpage, defaultValue=None),
+        'BINARY RESTART'          : MetaInfoMap(startpage, defaultValue=None),
+        'SWITCHING ACT'           : MetaInfoMap(startpage, defaultValue='Active',
+                                                replaceTag='SWITCHING'),
+        'SWITCHING ON'            : MetaInfoMap(startpage, defaultValue=None),
+        'SWITCHING OFF'           : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLIST DISTANCE'       : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLIST SHRINK RATE'    : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLIST GROW RATE'      : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLIST TRIGGER'        : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLISTS PER CYCLE'     : MetaInfoMap(startpage, defaultValue=None),
+        'PAIRLISTS EN'            : MetaInfoMap(startpage, defaultValue='ENABLED',
+                                                replaceTag='PAIRLISTS'),
+        'MARGIN'                  : MetaInfoMap(startpage, defaultValue=None),
+        'HYDROGEN GROUP CUTOFF'   : MetaInfoMap(startpage, defaultValue=None),
+        'PATCH DIMENSION'         : MetaInfoMap(startpage, defaultValue=None),
+        'ENERGY OUTPUT STEPS'     : MetaInfoMap(startpage, defaultValue=None),
+        'CROSSTERM ENERGY'        : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'TIMING OUTPUT STEPS'     : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY RESCALE FREQ'   : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY RESCALE TEMP'   : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY REASSIGNMENT FREQ' : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY REASSIGNMENT TEMP' : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY REASSIGNMENT INCR' : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY REASSIGNMENT HOLD' : MetaInfoMap(startpage, defaultValue=None),
+        'LOWE-ANDERSEN DYNAMICS'  : MetaInfoMap(startpage, defaultValue=None),
+        'LOWE-ANDERSEN TEMPERATURE' : MetaInfoMap(startpage, defaultValue=None),
+        'LOWE-ANDERSEN RATE'      : MetaInfoMap(startpage, defaultValue=None),
+        'LOWE-ANDERSEN CUTOFF'    : MetaInfoMap(startpage, defaultValue=None),
+        'LANGEVIN DYNAMICS'       : MetaInfoMap(startpage, defaultValue=None),
+        'LANGEVIN TEMPERATURE'    : MetaInfoMap(startpage, defaultValue=None),
+        'LANGEVIN USING'          : MetaInfoMap(startpage, defaultValue=None,
+                                                 replaceTag='LANGEVIN INTEGRATOR'),
+        'LANGEVIN DAMPING FILE IS' : MetaInfoMap(startpage, defaultValue=None,
+                                                 replaceTag='LANGEVIN DAMPING FILE'),
+        'LANGEVIN DAMPING COLUMN:' : MetaInfoMap(startpage, defaultValue=None,
+                                                 replaceTag='LANGEVIN DAMPING COLUMN'),
+        'LANGEVIN DAMPING COEFFICIENT IS' : MetaInfoMap(startpage, defaultValue=None,
+                                                 replaceTag='LANGEVIN DAMPING COEFFICIENT UNIT'),
+        'LANGEVIN DYNAMICS NOT APPLIED TO' : MetaInfoMap(startpage, defaultValue=None),
+        'TEMPERATURE COUPLING'    : MetaInfoMap(startpage, defaultValue=None),
+        'COUPLING TEMPERATURE'    : MetaInfoMap(startpage, defaultValue=None),
+        'BERENDSEN PRESSURE COUPLING' : MetaInfoMap(startpage, defaultValue=None),
+        'COMPRESSIBILITY ESTIMATE IS' : MetaInfoMap(startpage, defaultValue=None,
+                                                    replaceTag='BERENDSEN COMPRESSIBILITY ESTIMATE'),
+        'RELAXATION TIME IS' : MetaInfoMap(startpage, defaultValue=None,
+                                                    replaceTag='BERENDSEN RELAXATION TIME'),
+        'APPLIED EVERY'           : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='BERENDSEN COUPLING FREQUENCY'),
+        'LANGEVIN PISTON PRESSURE CONTROL' : MetaInfoMap(startpage, defaultValue=None),
+        'TARGET PRESSURE IS'      : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='TARGET PRESSURE'),
+        'OSCILLATION PERIOD IS'   : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='LANGEVIN OSCILLATION PERIOD'),
+        'DECAY TIME IS'           : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='LANGEVIN DECAY TIME'),
+        'PISTON TEMPERATURE IS'   : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='LANGEVIN PISTON TEMPERATURE'),
+        'PRESSURE CONTROL IS'     : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='PRESSURE CONTROL'),
+        'INITIAL STRAIN RATE IS'  : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL',
+                                                replaceTag='INITIAL STRAIN RATE'),
+        'CELL FLUCTUATION IS'     : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='CELL FLUCTUATION'),
+        'PARTICLE MESH EWALD \(PME\)' : MetaInfoMap(startpage, defaultValue=None,
+                                                    replaceTag='PARTICLE MESH EWALD'),
+        'PME TOLERANCE'           : MetaInfoMap(startpage, defaultValue=None),
+        'PME EWALD COEFFICIENT'   : MetaInfoMap(startpage, defaultValue=None),
+        'PME INTERPOLATION ORDER' : MetaInfoMap(startpage, defaultValue=None),
+        'PME GRID DIMENSIONS'     : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'PME MAXIMUM GRID SPACING' : MetaInfoMap(startpage, defaultValue=None),
+        'Writing FFTW data to'    : MetaInfoMap(startpage, defaultValue=None,
+                                                    replaceTag='FFTW data file'),
+        'FULL ELECTROSTATIC EVALUATION FREQUENCY' : MetaInfoMap(startpage, defaultValue=None),
+        'MINIMIZATION'            : MetaInfoMap(startpage, defaultValue=None),
+        'VELOCITY QUENCHING'      : MetaInfoMap(startpage, defaultValue=None),
+        'USING VERLET I \(r-RESPA\)' : MetaInfoMap(startpage, defaultValue='r-RESPA',
+                replaceTag='VERLET INTEGRATOR', subFunc=lambda x: 'r-RESPA' if x is not None else None),
+        'RANDOM NUMBER SEED'      : MetaInfoMap(startpage, defaultValue=None),
+        'USE HYDROGEN BONDS?'     : MetaInfoMap(startpage, defaultValue=None,
+                                                replaceTag='USE HYDROGEN BONDS'),
+        'COORDINATE PDB'          : MetaInfoMap(startpage, defaultValue=None),
+        'STRUCTURE FILE'          : MetaInfoMap(startpage, defaultValue=None),
+        'PARAMETER file'          : MetaInfoMap(startpage, defaultValue=None, matchWith='EOL'),
+        'Info: PARAMETERS'        : MetaInfoMap(startpage, defaultValue=None, addAsList=True,
+                                                replaceTag='PARAMETERS'),
+        }
+
+    startpage.update({
+        'metaNameTag'     : 'mdout',
+        'activeSections'  : ['section_single_configuration_calculation']
+        })
+    mddatalist = {
+        'WRITING COORDINATES TO DCD FILE' : MetaInfoMap(startpage, 
+            replaceTag='DCDSTEP', subFunc=lambda x: x.split()[-1].replace('\n','').strip()),
+        'WRITING VELOCITIES TO DCD FILE AT STEP' : MetaInfoMap(startpage, 
+            replaceTag='VELSTEP', subFunc=lambda x: x.replace('\n','').strip()),
+        'WRITING FORCES TO DCD FILE AT STEP' : MetaInfoMap(startpage, 
+            replaceTag='FORCESTEP', subFunc=lambda x: x.replace('\n','').strip()),
+        'TS' : MetaInfoMap(startpage),
+        'BOND' : MetaInfoMap(startpage),
+        'ANGLE' : MetaInfoMap(startpage),
+        'DIHED' : MetaInfoMap(startpage),
+        'IMPRP' : MetaInfoMap(startpage),
+        'ELECT' : MetaInfoMap(startpage),
+        'VDW' : MetaInfoMap(startpage),
+        'BOUNDARY' : MetaInfoMap(startpage),
+        'MISC' : MetaInfoMap(startpage),
+        'KINETIC' : MetaInfoMap(startpage),
+        'TOTAL' : MetaInfoMap(startpage),
+        'TEMP' : MetaInfoMap(startpage),
+        'POTENTIAL' : MetaInfoMap(startpage),
+        'TOTAL2' : MetaInfoMap(startpage),
+        'TOTAL3' : MetaInfoMap(startpage),
+        'TEMPAVG' : MetaInfoMap(startpage),
+        'PRESSURE' : MetaInfoMap(startpage),
+        'GPRESSURE' : MetaInfoMap(startpage),
+        'VOLUME' : MetaInfoMap(startpage),
+        'PRESSAVG' : MetaInfoMap(startpage),
+        'GPRESSAVG' : MetaInfoMap(startpage),
+        'Virial-Tensor' : MetaInfoMap(startpage),
+        'Pressure-Tensor' : MetaInfoMap(startpage),
+        'TIME' : MetaInfoMap(startpage),
+        }
+
+    startpage.update({
+        'metaNameTag'     : 'parm',
+        'activeSections'  : [PARSERTAG+'_mdin_method']
+        })
+    extralist = {
+        'flags' : MetaInfoMap(startpage),
+        'number_of_atoms' : MetaInfoMap(startpage),
+        'minimization' : MetaInfoMap(startpage, activeInfo=True),
+        'integrator' : MetaInfoMap(startpage, activeInfo=True),
+        'thermostat' : MetaInfoMap(startpage, activeInfo=True),
+        'barostat' : MetaInfoMap(startpage, activeInfo=True),
+        'box_info' : MetaInfoMap(startpage),
+        'unitcell_radius' : MetaInfoMap(startpage),
+        'total_memory' : MetaInfoMap(startpage),
+        'file_format' : MetaInfoMap(startpage),
+        'file_version' : MetaInfoMap(startpage),
+        'file_date' : MetaInfoMap(startpage),
+        'file_time' : MetaInfoMap(startpage)
+        }
+
+    if deflist == 'mddata':
+        namelist = mddatalist
+#    elif deflist == 'parm':
+#        namelist = parmlist
+    elif deflist == 'extra':
+        namelist = extralist
+    elif deflist == 'stepcontrol':
+        namelist = stepcontrol
+    else:
+        namelist = cntrllist
+    return MapDictionary(namelist)
+
+def set_Dictionaries(self):
+        self.unitDict = get_unitDict('si')
+        self.fileDict = get_fileListDict()
+        self.cntrlDict = get_nameListDict('cntrl')
+        #self.parmDict = get_nameListDict('parm')
+        self.mddataDict = get_nameListDict('mddata')
+        self.extraDict = get_nameListDict('extra')
+        self.mdoutHeaderDict = {}
+        self.stepcontrolDict = {
+            'logsteps'       : None,
+            'nextlogsteps'   : None,
+            'trajsteps'      : None, 
+            'velsteps'       : None,
+            'forcesteps'     : None,
+            'steps'          : None,
+            'follow'         : None,
+            'sectioncontrol' : None,
+        }
+        self.metaDicts = {
+            'file'   : self.fileDict,
+            'cntrl'  : self.cntrlDict,
+#            'parm'   : self.parmDict,
+            'mddata' : self.mddataDict,
+            'extra'  : self.extraDict,
+            }
+        self.sectionDict = { 
+                'section' : { 
+                    "metaNameTag"      : ['input_output_files', 
+                                          'control_parameters'], 
+                    "listTypStr"       : 'type_section', 
+                    "repeatingSection" : False, 
+                    "supraNames"       : ["section_run"]
+                    }
+                }
+
+def get_updateDictionary(self, defname):
+
+    def value_convert_array(itemdict):
+        val = itemdict["value"]
+        if(val is not None and isinstance(val, str)):
+            if("[" in val or "(" in val):
+                return False, np.asarray(val), itemdict
+        return False, val, itemdict
+
+    def value_convert_array_norm(itemdict):
+        val = []
+        depdict = itemdict["depends"]
+        for item in depdict["value"]:
+            st=self.metaStorage.fetchAttrValue(item)
+            if(st is not None and isinstance(st, str)):
+                if("[" in st or "(" in st):
+                    val.append(list(storedtext))
+        if val: 
+            return False, np.linalg.norm(np.asarray(val)), itemdict
+        else:
+            return False, itemdict["value"], itemdict
+
+    startpage = {
+        'metaHeader'      : '',
+        'metaNameTag'     : '',
+        'activeMetaNames' : [],
+        'activeSections'  : ['section_sampling_method','section_single_configuration_calculation',PARSERTAG+'_mdout']
+        }
+
+    # ---------------------------------------------------------------
+    #   Definitions of meta data values for section_sampling_method
+    # ---------------------------------------------------------------
+    sampling = { 
+        'ensemble_type' : MetaInfoMap(startpage, activeInfo=True,
+            depends=[
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' in [\"tcouple\",'
+                                          '\"rescale\",'
+                                          '\"reassign\",'
+                                          '\"andersen\",'
+                                          '\"langevin\"]'], 
+                           ['barostat', ' in [\"berendsen\",'
+                                         '\"langevin\"]']], 
+                 'assign' : 'NPT'},
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' in [\"langevin\"]'], 
+                           ['thermostat', ' not in [\"tcouple\",'
+                                          '\"rescale\",'
+                                          '\"reassign\",'
+                                          '\"andersen\"]'],
+                           ['barostat', ' is None']],
+                 'assign' : 'Langevin'},
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' in [\"tcouple\",'
+                                          '\"rescale\",'
+                                          '\"reassign\",'
+                                          '\"andersen\"]'],
+                           ['barostat', ' is None']],
+                 'assign' : 'NVT'},
+                {'test' : [['minimization', ' is None'],
+                           ['thermostat', ' is None'],
+                           ['barostat', ' is None']], 
+                 'assign' : 'NVE'},
+                {'test' : [['minimization', ' is not None']], 
+                 'assign' : 'minimization'},
+                ],
+            lookupdict=self.extraDict
+            ),
+        'sampling_method' : MetaInfoMap(startpage, activeInfo=True, 
+            depends=[
+                {'test' : [['minimization', ' is not None']], 
+                 'assign' : 'geometry_optimization'},
+                {'test' : [['minimization', ' is None']],
+                 'assign' : 'molecular_dynamics'}
+                ],
+            lookupdict=self.extraDict
+            ),
+#            'settings_geometry_optimization' : MetaInfoMap(startpage),
+#            'settings_metadynamics' : MetaInfoMap(startpage),
+#            'settings_molecular_dynamics' : MetaInfoMap(startpage),
+#            'settings_Monte_Carlo' : MetaInfoMap(startpage),
+#        'geometry_optimization_energy_change' : MetaInfoMap(startpage,
+#            depends={
+#                '' : {'imin' : '1'},
+#                },
+#            lookupdict=self.cntrlDict
+#            ),
+#       'geometry_optimization_geometry_change' : MetaInfoMap(startpage),
+        'geometry_optimization_method' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['minimization', ' == \"cg\"']], 
+                 'assign' : 'CG'},
+                {'test' : [['minimization', ' == \"quench\"']], 
+                 'assign' : 'Velocity Quenching'},
+                ],
+            lookupdict=self.extraDict,
+            activeInfo=True,
+            ),
+#       'geometry_optimization_threshold_force' : MetaInfoMap(startpage),
+        'x_namd_barostat_type' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['minimization', ' is None'], 
+                           ['barostat', '== \"berendsen\"']],
+                 'assign' : 'Berendsen'},
+                {'test' : [['minimization', ' is None'], 
+                           ['barostat', '== \"langevin\"']],
+                 'assign' : 'Nose-Hoover Langevin'} 
+                ],
+            lookupdict=self.extraDict,
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_barostat']
+            ),
+        'x_namd_barostat_target_pressure' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['TARGET PRESSURE', ' is not None']],
+                 'value' : 'TARGET PRESSURE'} 
+                ],
+            lookupdict=self.cntrlDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='bar',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_barostat']
+            ),
+        'x_namd_barostat_tau' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['LANGEVIN OSCILLATION PERIOD', ' is not None']],
+                 'value' : 'LANGEVIN OSCILLATION PERIOD'}, 
+                {'test' : [['BERENDSEN RELAXATION TIME', ' is not None']],
+                 'value' : 'BERENDSEN RELAXATION TIME'} 
+                ],
+            lookupdict=self.cntrlDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='femto-second',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_barostat']
+            ),
+        'x_namd_integrator_type' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['integrator', ' is not None']],
+                 'value' : 'integrator'}, 
+                {'test' : [['thermostat', ' == \"langevin\"']],
+                 'assign' : 'Langevin'}
+                ],
+            lookupdict=self.extraDict,
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_integrator']
+            ),
+        'x_namd_integrator_dt' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None']],
+                 'value' : 'TIMESTEP'},
+                ],
+            lookupdict=self.cntrlDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='femto-second',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_integrator']
+            ),
+        'x_namd_number_of_steps_requested' : MetaInfoMap(startpage,
+            depends=[{'value' : 'NUMBER OF STEPS'}],
+            lookupdict=self.cntrlDict,
+            valtype='int',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_integrator']
+            ),
+        'x_namd_thermostat_type' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' == \"tcouple\"']],
+                 'assign' : 'Berendsen'}, 
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' == \"rescale\"']],
+                 'assign' : 'Velocity Rescaling'}, 
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' == \"reassign\"']],
+                 'assign' : 'Velocity Reassigning'}, 
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' == \"andersen\"']],
+                 'assign' : 'Andersen'}, 
+                {'test' : [['minimization', ' is None'], 
+                           ['thermostat', ' == \"langevin\"']], 
+                 'assign' : 'Nose-Hoover Langevin'}, 
+                ],
+            lookupdict=self.extraDict,
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_thermostat']
+            ),
+        'x_namd_thermostat_target_temperature' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['VELOCITY RESCALE TEMP', ' is not None']],
+                 'value' : 'VELOCITY RESCALE TEMP'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['VELOCITY REASSIGNMENT TEMP', ' is not None']],
+                 'value' : 'VELOCITY REASSIGNMENT TEMP'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['LOWE-ANDERSEN TEMPERATURE', ' is not None']],
+                 'value' : 'LOWE-ANDERSEN TEMPERATURE'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['LANGEVIN TEMPERATURE', ' is not None']],
+                 'value' : 'LANGEVIN TEMPERATURE'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['COUPLING TEMPERATURE', ' is not None']],
+                 'value' : 'COUPLING TEMPERATURE'},
+                ],
+            lookupdict=self.cntrlDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kelvin',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_thermostat']
+            ),
+        'x_namd_thermostat_tau' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['VELOCITY RESCALE FREQ', ' is not None']],
+                 'value' : 'VELOCITY RESCALE FREQ'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['VELOCITY REASSIGNMENT FREQ', ' is not None']],
+                 'value' : 'VELOCITY REASSIGNMENT FREQ'},
+                {'test' : [['MINIMIZATION', ' is None'],
+                           ['VELOCITY QUENCHING', ' is None'],
+                           ['LOWE-ANDERSEN RATE', ' is not None']],
+                 'value' : 'LOWE-ANDERSEN RATE'},
+                ],
+            lookupdict=self.cntrlDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='pico-second',
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_thermostat']
+            ),
+        'x_namd_periodicity_type' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['PERIODIC CELL BASIS', ' is None']],
+                 'assign' : 'no periodic boundaries'},
+                {'test' : [['PERIODIC CELL BASIS', ' is not None']],
+                 'assign' : 'periodic boundaries'}
+                ],
+            lookupdict=self.cntrlDict,
+            #autoSections=True,
+            activeInfo=True,
+            activeSections=['settings_thermostat']
+            )
+        }
+
+    # ------------------------------------------------------------
+    #   Definitions for section_single_configuration_calculation
+    # ------------------------------------------------------------
+    singleconfcalc = { 
+        #'atom_forces_type' : MetaInfoMap(startpage,
+        #    depends=[{'assign' : 'Force Field'}],
+        #    lookupdict=self.mddataDict
+        #    ),
+        'energy_correction_entropy' : MetaInfoMap(startpage),
+        #'energy_current' : MetaInfoMap(startpage,
+        #    depends=[{'value' : 'EPtot'}],
+        #    lookupdict=self.mddataDict
+        #    ),
+        'energy_current' : MetaInfoMap(startpage),
+        'energy_electrostatic' : MetaInfoMap(startpage,
+            depends=[{'value' : 'ELECT'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            activeInfo=True,
+            lookupdict=self.mddataDict
+            ),
+        'energy_free_per_atom' : MetaInfoMap(startpage),
+        'energy_free' : MetaInfoMap(startpage),
+        #'energy_method_current' : MetaInfoMap(startpage,
+        #    depends=[{'assign' : 'Force Field'}],
+        #    lookupdict=self.mddataDict
+        #    ),
+        'energy_T0_per_atom' : MetaInfoMap(startpage),
+        'energy_total_T0_per_atom' : MetaInfoMap(startpage),
+        'energy_total_T0' : MetaInfoMap(startpage,
+            depends=[{'value' : 'POTENTIAL'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            activeInfo=True,
+            lookupdict=self.mddataDict
+            ),
+        'energy_total' : MetaInfoMap(startpage,
+            depends=[{'value' : 'TOTAL'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            activeInfo=True,
+            lookupdict=self.mddataDict
+            ),
+        'hessian_matrix' : MetaInfoMap(startpage),
+        'single_configuration_calculation_converged' : MetaInfoMap(startpage),
+        'single_configuration_calculation_to_system_ref' : MetaInfoMap(startpage),
+        'single_configuration_to_calculation_method_ref' : MetaInfoMap(startpage),
+        'time_calculation' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_cpu1_end' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_cpu1_start' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_date_end' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_date_start' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_wall_end' : MetaInfoMap(startpage),
+        'time_single_configuration_calculation_wall_start' : MetaInfoMap(startpage),
+        'stress_tensor_kind' : MetaInfoMap(startpage,
+            depends=[
+                {'test' : [['minimization', ' is not None']], 
+                 'assign' : 'geometry_optimization'},
+                {'test' : [['minimization', ' is None']],
+                 'assign' : 'molecular_dynamics'}
+                ],
+            activeInfo=True,
+            lookupdict=self.extraDict
+            ),
+        'stress_tensor_value' : MetaInfoMap(startpage)
+        }
+
+    # section_single_energy_van_der_Waals of section_single_configuration_calculation
+    singlevdw = {
+        'energy_van_der_Waals_value' : MetaInfoMap(startpage,
+            depends=[{'value' : 'VDW'}],
+            lookupdict=self.mddataDict,
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            #autoSections=True,
+            activeSections=['section_energy_van_der_Waals']
+            ),
+        }
+   
+    # ------------------------------------------
+    #   Definitions for section_frame_sequence
+    # ------------------------------------------
+    frameseq = { 
+        #'frame_sequence_conserved_quantity_frames' : MetaInfoMap(startpage,
+        #    depends=[{'store' : 'TS'}],
+        #    valtype='int',
+        #    lookupdict=self.mddataDict
+        #    ),
+        #'frame_sequence_conserved_quantity_stats' : MetaInfoMap(startpage),
+        #'frame_sequence_conserved_quantity' : MetaInfoMap(startpage,
+        #    depends=[{'store' : ''}],
+        #    valtype='float',
+        #    unitdict=self.unitDict,
+        #    unit='kilo-joule/mol',
+        #    lookupdict=self.mddataDict
+        #    ),
+        'frame_sequence_continuation_kind' : MetaInfoMap(startpage),
+        'frame_sequence_external_url' : MetaInfoMap(startpage),
+        'frame_sequence_kinetic_energy_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_kinetic_energy_stats' : MetaInfoMap(startpage),
+        'frame_sequence_kinetic_energy' : MetaInfoMap(startpage,
+            depends=[{'store' : 'KINETIC'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_local_frames_ref' : MetaInfoMap(startpage),
+        'frame_sequence_potential_energy_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_potential_energy_stats' : MetaInfoMap(startpage),
+        'frame_sequence_potential_energy' : MetaInfoMap(startpage,
+            depends=[{'store' : 'POTENTIAL'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_pressure_average_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_pressure_average' : MetaInfoMap(startpage,
+            depends=[{'store' : 'PRESSAVG'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='bar',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_pressure_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_pressure_stats' : MetaInfoMap(startpage),
+        'frame_sequence_pressure' : MetaInfoMap(startpage,
+            depends=[{'store' : 'PRESSURE'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='bar',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_temperature_average_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_temperature_average' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TEMPAVG'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='Kelvin',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_temperature_frames' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_temperature_stats' : MetaInfoMap(startpage),
+        'frame_sequence_temperature' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TEMP'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='Kelvin',
+            lookupdict=self.mddataDict
+            ),
+        'frame_sequence_time' : MetaInfoMap(startpage,
+            depends=[{'store' : 'TIME'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='pico-second',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_volume_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_volume' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'VOLUME'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='Angstrom**3',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_boundary_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_boundary' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'BOUNDARY'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_bond_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_bond_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'BOND'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_angle_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_angle_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'ANGLE'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_proper_dihedral_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_proper_dihedral_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'DIHED'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_improper_dihedral_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_improper_dihedral_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'IMPRP'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_cmap_dihedral_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_cmap_dihedral_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'CMAP'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_vdw_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_vdw_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'VDW'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_electrostatic_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_electrostatic_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'ELECT'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_total2_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_total2_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TOTAL2'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_total3_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_total3_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TOTAL3'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_misc_energy_frames' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'TS'}],
+            valtype='int',
+            lookupdict=self.mddataDict
+            ),
+        'x_namd_frame_sequence_misc_energy' : MetaInfoMap(startpage,
+            activeSections=['section_frame_sequence'],
+            depends=[{'store' : 'MISC'}],
+            valtype='float',
+            unitdict=self.unitDict,
+            unit='kilo-joule/mol',
+            lookupdict=self.mddataDict
+            ),
+        #'frame_sequence_to_sampling_ref' : MetaInfoMap(startpage),
+        'geometry_optimization_converged' : MetaInfoMap(startpage,
+            value=self.minConverged
+            ),
+        #'previous_sequence_ref' : MetaInfoMap(startpage)
+        }
+
+    frameseqend = { 
+        #'number_of_conserved_quantity_evaluations_in_sequence' : MetaInfoMap(startpage,
+        #    activeInfo=True,
+        #    value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+        #        x is not None and x['val'] is not None) else None)(
+        #        self.metaStorage.fetchAttrValue(
+        #            'frame_sequence_conserved_quantity_frames'
+        #            )
+        #        )
+        #    ),
+        'number_of_frames_in_sequence' : MetaInfoMap(startpage, activeInfo=True,
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'frame_sequence_potential_energy_frames'
+                    )
+                )
+            ),
+        'number_of_kinetic_energies_in_sequence' : MetaInfoMap(startpage, activeInfo=True,
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'frame_sequence_kinetic_energy_frames'
+                    )
+                )
+            ),
+        'number_of_potential_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'frame_sequence_potential_energy_frames'
+                    )
+                )
+            ),
+        'number_of_pressure_evaluations_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'frame_sequence_pressure_frames'
+                    )
+                )
+            ),
+        'number_of_temperatures_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'frame_sequence_temperature_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_volumes_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_volume_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_boundary_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_boundary_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_bond_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_bond_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_angle_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_angle_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_electrostatic_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_electrostatic_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_vdw_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_vdw_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_total2_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_total2_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_total3_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_total3_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_proper_dihedral_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_proper_dihedral_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_improper_dihedral_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_improper_dihedral_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_cmap_dihedral_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_cmap_dihedral_energy_frames'
+                    )
+                )
+            ),
+        'x_namd_number_of_misc_energies_in_sequence' : MetaInfoMap(startpage,
+            activeInfo=True,
+            activeSections=['section_frame_sequence'],
+            value=(lambda x: np.array(x['val']).flatten().shape[0] if(
+                x is not None and x['val'] is not None) else None)(
+                self.metaStorage.fetchAttrValue(
+                    'x_namd_frame_sequence_misc_energy_frames'
+                    )
+                )
+            ),
+        #'previous_sequence_ref' : MetaInfoMap(startpage)
+        }
+
+    # ----------------------------------
+    #   Definitions for section_system
+    # ----------------------------------
+    # section_system
+    sec_system = {
+        #'topology_ref' : MetaInfoMap(startpage),
+        'atom_velocities' : MetaInfoMap(startpage),
+        'configuration_raw_gid' : MetaInfoMap(startpage),
+        'local_rotations' : MetaInfoMap(startpage),
+        'number_of_atoms' : MetaInfoMap(startpage,
+            depends=[{'value' : 'number_of_atoms'}],
+            valtype='int',
+            lookupdict=self.extraDict
+            ),
+        'number_of_sites' : MetaInfoMap(startpage),
+        'number_of_symmetry_operations' : MetaInfoMap(startpage),
+        'reduced_symmetry_matrices' : MetaInfoMap(startpage),
+        'reduced_symmetry_translations' : MetaInfoMap(startpage),
+        'SC_matrix' : MetaInfoMap(startpage),
+        'spacegroup_3D_choice' : MetaInfoMap(startpage),
+        'spacegroup_3D_hall' : MetaInfoMap(startpage),
+        'spacegroup_3D_international' : MetaInfoMap(startpage),
+        'spacegroup_3D_number' : MetaInfoMap(startpage),
+        'spacegroup_3D_origin_shift' : MetaInfoMap(startpage),
+        'spacegroup_3D_pointgroup' : MetaInfoMap(startpage),
+        'spacegroup_3D_std_lattice' : MetaInfoMap(startpage),
+        'spacegroup_3D_std_positions' : MetaInfoMap(startpage),
+        'spacegroup_3D_std_types' : MetaInfoMap(startpage),
+        'spacegroup_3D_trasformation_matrix' : MetaInfoMap(startpage),
+        'spacegroup_3D_wyckoff' : MetaInfoMap(startpage),
+        'symmorphic' : MetaInfoMap(startpage),
+        'system_name' : MetaInfoMap(startpage,
+            subfunction={ 
+                'function' : MDData.MDDataConverter.topology_system_name,
+                'supportDict' : self.topoDict,
+                },
+            #functionbase=self
+            ),
+        'time_reversal_symmetry' : MetaInfoMap(startpage)
+        }
+
+    # section_configuration_core of section_system
+    configuration_core = {
+        'number_of_electrons' : MetaInfoMap(startpage,
+            #value=0,
+            #valtype='float',
+            ),
+        'atom_labels' : MetaInfoMap(startpage,
+            #subfunction=self.system_atom_labels()
+            ),
+        'atom_positions' : MetaInfoMap(startpage,
+            #subfunction=self.system_atom_positions()
+            ),
+        'configuration_periodic_dimensions' : MetaInfoMap(startpage,
+            ),
+        'embedded_system' : MetaInfoMap(startpage),
+        'lattice_vectors' : MetaInfoMap(startpage,
+            #subfunction=self.system_lattice_vectors()
+            ),
+        'simulation_cell' : MetaInfoMap(startpage,
+            #subfunction=self.system_simulation_cell()
+            )
+        }
+
+    # section_spacegroup_3D_operation of section_system
+    spacegroup_op = {
+            'spacegroup_3D_rotation' : MetaInfoMap(startpage),
+            'spacegroup_3D_translation' : MetaInfoMap(startpage)
+        }
+
+    # section_system_to_system_refs of section_system
+    sys_to_sys = {
+            'system_to_system_kind' : MetaInfoMap(startpage),
+            'system_to_system_ref' : MetaInfoMap(startpage)
+        }
+
+    # --------------------------------------------------------
+    #   Definitions of meta data values for section_topology
+    # --------------------------------------------------------
+    # section_topology of section_run
+    topology = {
+        'atom_to_molecule' : MetaInfoMap(startpage,
+            subfunction={
+                'function' : MDData.MDDataConverter.topology_atom_to_mol,
+                'supportDict' : self.topoDict,
+                },
+            #functionbase=self
+            ),
+        'molecule_to_molecule_type_map' : MetaInfoMap(startpage),
+        'number_of_topology_atoms' : MetaInfoMap(startpage,
+            depends=[{'value' : 'number_of_atoms'}],
+            valtype='int',
+            lookupdict=self.extraDict
+            ),
+        'number_of_topology_molecules' : MetaInfoMap(startpage,
+            subfunction={
+                'function' : MDData.MDDataConverter.topology_num_topo_mol,
+                'supportDict' : self.topoDict,
+                },
+            valtype='int',
+            ),
+        'topology_force_field_name' : MetaInfoMap(startpage,
+            depends=[{'value' : 'PARAMETER file'}],
+            lookupdict=self.cntrlDict
+            )
+        }
+
+    # section_atom_type of section_topology
+    atom_type = {
+        'atom_type_charge' : MetaInfoMap(startpage),
+        'atom_type_mass' : MetaInfoMap(startpage),
+        'atom_type_name' : MetaInfoMap(startpage)
+        }
+
+    # section_constraint of section_topology
+    constraint = {
+        'constraint_atoms' : MetaInfoMap(startpage),
+        'constraint_kind' : MetaInfoMap(startpage),
+        'constraint_parameters' : MetaInfoMap(startpage),
+        'number_of_atoms_per_constraint' : MetaInfoMap(startpage),
+        'number_of_constraints' : MetaInfoMap(startpage)
+        }
+
+    # section_interaction of section_topology
+    interaction = {
+        'interaction_atoms' : MetaInfoMap(startpage),
+        'interaction_kind' : MetaInfoMap(startpage),
+        'interaction_parameters' : MetaInfoMap(startpage),
+        'number_of_atoms_per_interaction' : MetaInfoMap(startpage),
+        'number_of_interactions' : MetaInfoMap(startpage)
+        }
+
+    # -------------------------------------------------------------
+    #   Definitions of meta data values for section_molecule_type
+    # -------------------------------------------------------------
+    # section_molecule_type of section_topology
+    mol_type = {
+        'molecule_type_name' : MetaInfoMap(startpage),
+        'number_of_atoms_in_molecule' : MetaInfoMap(startpage),
+        'settings_atom_in_molecule' : MetaInfoMap(startpage)
+        }
+
+    # section_molecule_constraint of section_molecule_type
+    mol_constraint = {
+        'molecule_constraint_atoms' : MetaInfoMap(startpage),
+        'molecule_constraint_kind' : MetaInfoMap(startpage),
+        'molecule_constraint_parameters' : MetaInfoMap(startpage),
+        'number_of_atoms_per_molecule_constraint' : MetaInfoMap(startpage),
+        'number_of_molecule_constraints' : MetaInfoMap(startpage)
+        }
+
+    # section_molecule_interaction of section_molecule_type
+    mol_interaction = {
+        'molecule_interaction_atoms' : MetaInfoMap(startpage),
+        'molecule_interaction_kind' : MetaInfoMap(startpage),
+        'molecule_interaction_parameters' : MetaInfoMap(startpage),
+        'number_of_atoms_per_molecule_interaction' : MetaInfoMap(startpage),
+        'number_of_molecule_interactions' : MetaInfoMap(startpage)
+        }
+   
+    # section_atom_in_molecule of section_molecule_type
+    atom_in_mol = {
+        'atom_in_molecule_charge' : MetaInfoMap(startpage),
+        'atom_in_molecule_name' : MetaInfoMap(startpage),
+        'atom_in_molecule_to_atom_type_ref' : MetaInfoMap(startpage)
+        }
+
+
+    if defname == 'system':
+        dictionary = systemDict
+    elif defname == 'topology':
+        dictionary = topology
+    elif defname == 'singleconfcalc':
+        dictionary = singleconfcalc
+    elif defname == 'frameseq':
+        dictionary = frameseq
+    elif defname == 'frameseqend':
+        dictionary = frameseqend
+    elif defname == 'atom_type':
+        dictionary = atom_type
+    elif defname == 'molecule_type':
+        dictionary = moltypeDict
+    elif defname == 'interaction':
+        dictionary = interaction
+    elif defname == 'sampling':
+        dictionary = sampling
+    elif defname == 'singlevdw':
+        dictionary = singlevdw
+    elif defname == 'confcore':
+        dictionary = configuration_core
+    else:
+        dictionary = singleconfcalclist
+    return MapDictionary(dictionary)
+
+