Index: python/submit.py
===================================================================
--- python/submit.py	(revision efdb01a8ac2d5cef85c651177aa18ac69dd660db)
+++ python/submit.py	(revision 991df6ad0a703d97e1e192a0a6106e1d9ba47e8e)
@@ -7,37 +7,44 @@
 # - dead code ? what to do?
 # - seperate operational and reanlysis for clarification
-# - add correct file description
 # - divide in two submits , ondemand und operational
 # -
 #************************************************************************
-"""
-@Author: Anne Fouilloux (University of Oslo)
 
-@Date: October 2014
+#*******************************************************************************
+# @Author: Anne Fouilloux (University of Oslo)
+#
+# @Date: October 2014
+#
+# @Change History:
+#
+#    November 2015 - Leopold Haimberger (University of Vienna):
+#        - job submission on ecgate and cca
+#        - job templates suitable for twice daily operational dissemination
+#
+#    February 2018 - Anne Philipp (University of Vienna):
+#        - applied PEP8 style guide
+#        - added documentation
+#        - minor changes in programming style (for consistence)
+#
+# @License:
+#    (C) Copyright 2014-2018.
+#
+#    This software is licensed under the terms of the Apache Licence Version 2.0
+#    which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# @Program Functionality:
+#    This program is the main program of flex_extract and controls the
+#    program flow.
+#    If it is supposed to work locally then it works through the necessary
+#    functions getMARSdata and prepareFlexpart. Otherwise it prepares
+#    a shell job script which will do the necessary work on the
+#    ECMWF server and is submitted via ecaccess-job-submit.
+#
+# @Program Content:
+#    - main
+#    - submit
+#
+#*******************************************************************************
 
-@ChangeHistory:
-    November 2015 - Leopold Haimberger (University of Vienna):
-        - job submission on ecgate and cca
-        - job templates suitable for twice daily operational dissemination
-
-    February 2018 - Anne Philipp (University of Vienna):
-        - applied PEP8 style guide
-        - added documentation
-        - minor changes in programming style (for consistence)
-
-@License:
-    (C) Copyright 2014-2018.
-
-    This software is licensed under the terms of the Apache Licence Version 2.0
-    which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
-
-@Requirements:
-    - A standard python 2.6 or 2.7 installation
-
-@Description:
-    Further documentation may be obtained from www.flexpart.eu.
-
-
-"""
 # ------------------------------------------------------------------------------
 # MODULES
@@ -48,7 +55,9 @@
 import subprocess
 import inspect
-# add the pythondir path so that python finds its buddies (from flex_extract)
-localpythonpath = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))
-sys.path.append(localpythonpath)
+# add path to pythonpath so that python finds its buddies
+localpythonpath = os.path.dirname(os.path.abspath(
+    inspect.getfile(inspect.currentframe())))
+if localpythonpath not in sys.path:
+    sys.path.append(localpythonpath)
 
 # software specific classes and modules from flex_extract
@@ -56,11 +65,13 @@
 from getMARSdata import getMARSdata
 from prepareFLEXPART import prepareFLEXPART
+
 # ------------------------------------------------------------------------------
 # FUNCTIONS
 # ------------------------------------------------------------------------------
+
 def main():
     '''
     @Description:
-        Get the arguments from script call and from Control file.
+        Get the arguments from script call and from CONTROL file.
         Decides from the argument "queue" if the local version
         is done "queue=None" or the gateway version with "queue=ecgate"
@@ -102,6 +113,6 @@
             Default is "job.temp".
 
-        c: instance of class Control
-            Contains all the parameters of control files, which are e.g.:
+        c: instance of class ControlFile
+            Contains all the parameters of CONTROL file, which are e.g.:
             DAY1(start_date), DAY2(end_date), DTIME, MAXSTEP, TYPE, TIME,
             STEP, CLASS(marsclass), STREAM, NUMBER, EXPVER, GRID, LEFT,
@@ -127,5 +138,5 @@
         insert_point = lftext.index('EOF')
 
-    # put all parameters of control instance into a list
+    # put all parameters of ControlFile instance into a list
     clist = c.tolist()
     colist = []  # operational
