Guest User

Untitled

a guest
Jan 22nd, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.63 KB | None | 0 0
  1. import os
  2. import pandas as pd
  3.  
  4. from egoio.tools import db
  5. from ding0.core import NetworkDing0
  6. from ding0.tools.logger import setup_logger
  7. from ding0.tools.results import save_nd_to_pickle
  8. from sqlalchemy.orm import sessionmaker
  9.  
  10. # define logger
  11. logger = setup_logger()
  12.  
  13. # define suffixes, paths, ...
  14. suffix = '_v0.3.0_shapely_1.6.3'
  15. data_path = 'data'
  16.  
  17. # database connection
  18. engine = db.connection(section='oedb')
  19. session = sessionmaker(bind=engine)()
  20.  
  21. # define MV Grid Districts that should be treated
  22. # original list of 20 representative grids
  23. # mv_grid_districts = [3196, 3040, 274, 1099, 1977, 2682, 2882, 1476, 1426, 3608,
  24. # 294, 2490, 525, 1147, 239, 3230, 1103, 1364, 2035, 3021]
  25. # list reduced by faulty one
  26. mv_grid_districts = [3196, 3040, 274, 1977, 2682, 2882, 1476, 1426,
  27. 294, 2490, 525, 1147, 239, 3230, 1103, 1364, 2035, 3021]
  28.  
  29. faulty_mvgds = {}
  30.  
  31. for mvgd in mv_grid_districts:
  32.  
  33. try:
  34. # instantiate new ding0 network object
  35. nd = NetworkDing0(name='network')
  36.  
  37. # run DING0 on selected MV Grid District
  38. nd.run_ding0(session=session,
  39. mv_grid_districts_no=[mvgd])
  40.  
  41. # export grid to file (pickle)
  42. filename = os.path.join(data_path,
  43. 'ding0_grids_{mvgd}{suffix}.pkl'.format(
  44. mvgd=mvgd, suffix=suffix))
  45.  
  46. save_nd_to_pickle(
  47. nd,
  48. filename=filename)
  49. except Exception as e:
  50. faulty_mvgds.update({mvgd: e})
  51.  
  52. pd.DataFrame.from_dict(faulty_mvgds, orient='index').to_csv(
  53. os.path.join(data_path, 'faulty_mvgds{suffix}.csv'.format(suffix=suffix)))
Add Comment
Please, Sign In to add comment