diff --git a/MAC/Deployment/data/Coordinates/make_conf_files.py b/MAC/Deployment/data/Coordinates/make_conf_files.py index b045af350197ff1c34f332ba258c1f07e18d6178..50282ee0b8f413a0cf7ff27271b885b0cd3d2d8c 100755 --- a/MAC/Deployment/data/Coordinates/make_conf_files.py +++ b/MAC/Deployment/data/Coordinates/make_conf_files.py @@ -1,33 +1,18 @@ #!/usr/bin/env python -#coding: iso-8859-15 +# coding: iso-8859-15 # # Make AntennaField.conf and iHBADeltas.conf file for given station and date # -import sys,pgdb, pg +import sys +import pgdb +import pg from datetime import * from copy import deepcopy from math import * import numpy as np -#import MLab as mlab -from database import * - -# get info from database.py -dbName=getDBname() -dbHost=getDBhost() - - -db1 = pgdb.connect(user="postgres", host=dbHost, database=dbName) -cursor = db1.cursor() - -# calling stored procedures only works from the pg module for some reason. -db2 = pg.connect(user="postgres", host=dbHost, dbname=dbName) - - -## -def print_help(): - print "Usage: make_conf_files <stationname> date" - print " <date> : yyyy.yy e.g. 2008.75 for Oct 1st 2008" +import getpass +from optparse import OptionParser ## @@ -193,15 +178,59 @@ def writeAntennaField(station, anttype, aPos): ## MAIN ## if __name__ == '__main__': - - if len(sys.argv) != 3: - print_help() + parser = OptionParser("""Usage: %prog [options] station data + <date> : yyyy.yy e.g. 2008.75 for Oct 1st 2008""") + parser.add_option("-D", "--database", + dest="dbName", + type="string", + default="StationCoordinates", + help="Name of StationCoordinates database to use") + + parser.add_option("-H", "--host", + dest="dbHost", + type="string", + default="sasdb.control.lofar", + help="Hostname of StationCoordinates database") + + parser.add_option("-P", "--port", + dest="dbPort", + type="int", + default="5432", + help="Port of StationCoordinates database") + + parser.add_option("-U", "--user", + dest="dbUser", + type="string", + default="postgres", + help="Username of StationCoordinates database") + + # parse arguments + + (options, args) = parser.parse_args() + + if len(args) != 2: + parser.print_help() sys.exit(1) - station = str(sys.argv[1]).upper() - date_years = float(sys.argv[2]) + dbName = options.dbName + dbHost = options.dbHost + dbPort = options.dbPort + dbUser = options.dbUser + station = args[0].upper() + date_years = args[1] + + dbPassword = getpass.getpass() + + host = "{}:{}".format(dbHost, dbPort) + + db1 = pgdb.connect(user=dbUser, host=host, database=dbName, password=dbPassword) + cursor = db1.cursor() + + # calling stored procedures only works from the pg module for some reason. + db2 = pg.connect(user=dbUser, host=dbHost, dbname=dbName, port=dbPort, passwd=dbPassword) + frame = '' - + # from database select all antennas for given station and target-date # The ''order by'' statement is needed to prevent mixup of even/odd pairs # as was seen on sas001 (Arno)