@@ -115,7 +115,14 @@ def query_miriade(
115115
116116
117117def query_miriade_epehemcc (
118- ident , jd , observer = "I41" , rplane = "1" , tcoor = 5 , shift = 15.0 , parameters = None
118+ ident ,
119+ jd ,
120+ observer = "I41" ,
121+ rplane = "1" ,
122+ tcoor = 5 ,
123+ shift = 15.0 ,
124+ parameters = None ,
125+ uid = None ,
119126):
120127 """Gets asteroid or comet ephemerides from IMCCE Miriade for a suite of JD for a single SSO
121128
@@ -144,6 +151,9 @@ def query_miriade_epehemcc(
144151 Default is 15 seconds which is half of the exposure time for ZTF.
145152 parameters: dict
146153 runner_path, userconf, iofile, outdir
154+ uid: int, optional
155+ If specified, ID used to write files on disk. Must be unique for each object.
156+ Default is None, i.e. randomly sampled from U(0, 1e7)
147157
148158 Returns
149159 -------
@@ -153,7 +163,8 @@ def query_miriade_epehemcc(
153163
154164 """
155165 # write tmp files on disk
156- uid = np .random .randint (0 , 1e7 )
166+ if uid is None :
167+ uid = np .random .randint (0 , 1e7 )
157168 date_path = "{}/dates_{}.txt" .format (parameters ["outdir" ], uid )
158169 ephem_path = "{}/ephem_{}.json" .format (parameters ["outdir" ], uid )
159170
@@ -211,6 +222,7 @@ def get_miriade_data(
211222 method = "rest" ,
212223 parameters = None ,
213224 timeout = 30 ,
225+ uid = None ,
214226):
215227 """Add ephemerides information from Miriade to a Pandas DataFrame with SSO lightcurve
216228
@@ -240,6 +252,9 @@ def get_miriade_data(
240252 If method == `ephemcc`, specify the mapping of extra parameters here. Default is {}.
241253 timeout: int, optional
242254 Timeout in seconds when using the REST API. Default is 30.
255+ uid: int, optional
256+ If specified, ID used to write files on disk. Must be unique for each object.
257+ Default is None, i.e. randomly sampled from U(0, 1e7). Only used for method == `ephemcc`.
243258
244259 Returns
245260 -------
@@ -273,6 +288,7 @@ def get_miriade_data(
273288 rplane = rplane ,
274289 tcoor = tcoor ,
275290 parameters = parameters ,
291+ uid = uid ,
276292 )
277293 else :
278294 raise AssertionError (
@@ -303,6 +319,7 @@ def get_miriade_data(
303319 observer = observer ,
304320 rplane = "2" ,
305321 parameters = parameters ,
322+ uid = uid ,
306323 )
307324 else :
308325 raise AssertionError (
0 commit comments