diff --git a/da/ct/io.py b/da/ct/io.py
index 32c9429c1a0cdb7f6c45755e5517a1fad48f3f33..8e1b40965db40b2facea0e634eec2640b8ec58ee 100755
--- a/da/ct/io.py
+++ b/da/ct/io.py
@@ -1,11 +1,12 @@
 #!/usr/bin/env python
-# ct_netcdf.py
+# io.py
 
 """
 Author : peters 
 
 Revision History:
 File created on 15 Oct 2008.
+File modified for CT data assimilation system in July 2010, Wouter Peters
 
 """
 
diff --git a/da/ct/obs.py b/da/ct/obs.py
index 56c7d667b329162d5d37755cde46ec328c2c3809..e48663539b25c27cd7bd1380297a3e2a68d95606 100755
--- a/da/ct/obs.py
+++ b/da/ct/obs.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# ct_observation_tools.py
+# obs.py
 
 """
 Author : peters 
@@ -167,7 +167,7 @@ def PrepareObs(CycleInfo,type='forecast'):
     """ PrepareObs """
 
     import shutil
-    from ct_tools import DaInfo
+    from da.tools.general import DaInfo
 
     # First, we make a CarbonTracker Observation object which holds all the information related to the mixing ratios going in
     # and coming out of the model. This object also holds the observations themselves, and the simulated value + statistics
@@ -199,10 +199,10 @@ def PrepareObs(CycleInfo,type='forecast'):
 if __name__ == "__main__":
     import os
     import sys
-    from tools_da import StartLogger 
-    from da_initexit import CycleControl 
+    from da.tools.general import StartLogger 
+    from da.tools.initexit import CycleControl 
+    from da.ct.tools import DaInfo
     import numpy as np
-    from ct_tools import DaInfo
 
     opts = ['-v']
     args = {'rc':'da.rc','logfile':'da_initexit.log','jobrcfilename':'test.rc'}
diff --git a/da/ct/optimizer.py b/da/ct/optimizer.py
index eba1b8673c8098569aba57e1b58da05359c79db8..ef8e8fd90e18bed8ccf101f48e7e2ad53e1a92e8 100755
--- a/da/ct/optimizer.py
+++ b/da/ct/optimizer.py
@@ -1,5 +1,5 @@
 #!/usr/bin/env python
-# ct_optimizer_tools.py
+# optimizer.py
 
 """
 Author : peters 
@@ -65,11 +65,11 @@ if __name__ == "__main__":
 
     import os
     import sys
-    from tools_da import StartLogger 
-    from da_initexit import CycleControl 
+    from da.tools.general import StartLogger 
+    from da.tools.initexit import CycleControl 
+    from da.ct.tools import DaInfo
+    from da.ct.statevector import CtStateVector, PrepareState
     import numpy as np
-    from ct_tools import DaInfo
-    from ct_statevector_tools import CtStateVector, PrepareState
 
     opts = ['-v']
     args = {'rc':'da.rc','logfile':'da_initexit.log','jobrcfilename':'test.rc'}
diff --git a/da/ct/statevector.py b/da/ct/statevector.py
index 9f68ea75b4f218a815b765b829cad223b8c9b9f0..594ee8ea7ce6fa0602d526f999c78ebecd3bf3e2 100755
--- a/da/ct/statevector.py
+++ b/da/ct/statevector.py
@@ -39,7 +39,7 @@ class CtMember():
 
     def WriteToFile(self, outdir):
         """ Write the information needed by an external model to a netcdf file for future use """
-        from ct_netcdf import CT_CDF, std_savedict
+        from da.ct.io import CT_CDF, std_savedict
         import pycdf as cdf
         import mysettings
         import numpy as np
@@ -194,9 +194,9 @@ class CtStateVector():
 
     def WriteToFile(self):
         """ Write the StateVector object to a netcdf file for future use """
-        from ct_netcdf import CT_CDF
+        from da.ct.io import CT_CDF
         import pycdf as cdf
-        import mysettings
+        import da.ct.mysettings
         import numpy as np
 
         outdir          = self.CycleInfo.da_settings['dir.output']
@@ -286,7 +286,7 @@ def PrepareState(CycleInfo):
 
 
     """
-    from ct_tools import DaInfo
+    from da.ct.tools import DaInfo
 
     # Get the da system specific rc-items, note that they've been validated already by FillObs 
 
@@ -318,10 +318,10 @@ def PrepareState(CycleInfo):
 if __name__ == "__main__":
     import os
     import sys
-    from tools_da import StartLogger 
-    from da_initexit import CycleControl 
+    from da.tools.general import StartLogger 
+    from da.tools.initexit import CycleControl 
+    from da.ct.tools import DaInfo
     import numpy as np
-    from ct_tools import DaInfo
 
     opts = ['-v']
     args = {'rc':'da.rc','logfile':'da_initexit.log','jobrcfilename':'test.rc'}
diff --git a/da/ct/tools.py b/da/ct/tools.py
index 56b1feef14c30fc6888e37f76c404e9530677047..2b85f7415d0c04e1733d6fb440cab247b74c8980 100755
--- a/da/ct/tools.py
+++ b/da/ct/tools.py
@@ -90,8 +90,8 @@ if __name__ == "__main__":
 
     import os
     import sys
-    from tools_da import StartLogger 
-    from da_initexit import CycleControl 
+    from da.tools.general import StartLogger 
+    from da.tools.initexit import CycleControl 
     import numpy as np
 
     opts = ['-v']
diff --git a/da/tm5/model.py b/da/tm5/model.py
index 662749fd02e3c8c0ded0ff0f0a26d65003344989..ff833d8333a49bf7609964e3a514c5cf61fc0cdb 100755
--- a/da/tm5/model.py
+++ b/da/tm5/model.py
@@ -310,7 +310,7 @@ def DaInitialize(rc_da_shell):
     
     """
 
-    from tools_da import CreateLinks, CreateDirs
+    from da.tools.general import CreateLinks, CreateDirs
 
 # Make an instance of the TM5 class, supply it with a valid rc-file name
 
@@ -361,10 +361,10 @@ if __name__ == "__main__":
 
     import sys
     import logging
-    import tools_da as tools
+    from da.tools.general import StartLogger
     import datetime as dtm
 
-    tools.StartLogger()
+    StartLogger()
 
 
     #tm=TM5('/Users/peters/Modeling/TM5/ct_new.rc')
diff --git a/da/tools/general.py b/da/tools/general.py
index eb3d5fe90d43a6c283805f1a33d7fad26ab11a5c..c72aca75eb2da3e29909995f4b995c30cfec74ff 100755
--- a/da/tools/general.py
+++ b/da/tools/general.py
@@ -223,8 +223,8 @@ def PrepareObs(CycleInfo,type='forecast'):
         file called "observations.nc" which carries the x,y,z,t, dt information of each observation """
 
     if   CycleInfo.da_settings['da.system'] == 'CarbonTracker':  
-        import da.ct.ct_tools as da_system
-        import da.ct.ct_observation_tools as obs
+        import da.ct.tools as da_system
+        import da.ct.obs as obs
 
     msg             = "Using %s as DA system" % da_system.identifier     ; logging.debug(msg)
 
@@ -249,9 +249,9 @@ def PrepareState(CycleInfo):
 
     """
 
-    if   CycleInfo.da_settings['da.system'] == 'CarbonTracker':  import ct_statevector_tools as da_system
+    if   CycleInfo.da_settings['da.system'] == 'CarbonTracker':  import da.ct.tools 
 
-    StateVector = da_system.PrepareState(CycleInfo )
+    StateVector = tools.PrepareState(CycleInfo )
 
     return StateVector
 
@@ -283,9 +283,9 @@ def RunForecastModel(CycleInfo,step='forecast'):
 
 # import modules, note that depending on the type of assimilation system, different submodules are imported!
 
-    if   CycleInfo.da_settings['forecast.model'] == 'TM5':     import tm5_tools as model
-    elif CycleInfo.da_settings['forecast.model'] == 'SIBCASA': import sibcasa_tools as model
-    elif CycleInfo.da_settings['forecast.model'] == 'WRF':     import wrf_tools as model
+    if   CycleInfo.da_settings['forecast.model'] == 'TM5':     import da.tm5.model 
+    elif CycleInfo.da_settings['forecast.model'] == 'SIBCASA': import da.sibcasa.model
+    elif CycleInfo.da_settings['forecast.model'] == 'WRF':     import da.wrf.model
 
 ####### FROM HERE ON, PROCESSES ARE MODEL DEPENDENT AND NEED TO BE IMPLEMENTED ON A PER-MODEL BASIS ############
     
@@ -337,8 +337,8 @@ def Optimize(CycleInfo, StateVector ):
     """ Perform least-squares minimization"""
 
     if CycleInfo.da_settings['da.system'] == 'CarbonTracker':  
-        import ct_tools as da_system
-        import ct_optimizer_tools as opt
+        import da.ct.tools as da_system
+        import da.ct.optimizer as opt
 
     DaSystem  = da_system.DaInfo(CycleInfo.da_settings['da.system.rc'])
 
diff --git a/da/tools/initexit.py b/da/tools/initexit.py
index 4e7da45de3ca0ddaae67d6306d5c4df40086d0af..a37f89f60408436e083c4c36a1e48c227fbc939f 100755
--- a/da/tools/initexit.py
+++ b/da/tools/initexit.py
@@ -28,9 +28,9 @@ import shutil
 import rc
 import datetime
 
-from tools_da import CreateDirs
-from tools_da import AdvanceTime
-from tools_da import ParseOptions
+from da.tools.general import CreateDirs
+from da.tools.general import AdvanceTime
+from da.tools.general import ParseOptions
 
 
 class CycleControl():
@@ -116,7 +116,7 @@ class CycleControl():
         """ 
         Parse time related parameters into datetime objects for later use 
         """
-        from tools_da import AdvanceTime
+        from da.tools.general import AdvanceTime
 
         startdate = self.da_settings['time.start']
         finaldate = self.da_settings['time.finish']                  
@@ -215,7 +215,7 @@ class CycleControl():
             the da.rc file. The observation input files will be placed in the exec dir,
             and the resulting simulated values will be retrieved from there as well.
         """
-        from tools_da import CreateDirs
+        from da.tools.general import CreateDirs
 
 # Create the run directory for this DA job, including I/O structure
 
@@ -443,7 +443,7 @@ class CycleControl():
 
 
 if __name__ == "__main__":
-    from tools_da import StartLogger 
+    from da.tools.general import StartLogger 
 
     opts = ['-v']
     args = {'rc':'da.rc','logfile':'da_initexit.log'}