BicycleParameters icon indicating copy to clipboard operation
BicycleParameters copied to clipboard

Error in add_rider()

Open moorepants opened this issue 5 years ago • 0 comments

In [15]: b.add_rider('Jason')                                                                                                               
There is no rider on the bicycle, now adding Jason.
No parameter files found, calculating the human configuration.
Calculations in yeadon failed. No rider added.
---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
~/miniconda3/lib/python3.6/site-packages/bicycleparameters/main.py in add_rider(self, riderName, reCalc, draw)
    452                     # load the parameter file
--> 453                     riderPar = io.load_parameter_text_file(pathToParFile)
    454                 except IOError:

~/miniconda3/lib/python3.6/site-packages/bicycleparameters/io.py in load_parameter_text_file(pathToFile)
     54     # parse the text file
---> 55     with open(pathToFile, 'r') as f:
     56         for line in f:

FileNotFoundError: [Errno 2] No such file or directory: './riders/Jason/Parameters/JasonPistaBenchmark.txt'

During handling of the above exception, another exception occurred:

ParserError                               Traceback (most recent call last)
<ipython-input-15-a6a6f147a0f9> in <module>
----> 1 b.add_rider('Jason')

~/miniconda3/lib/python3.6/site-packages/bicycleparameters/main.py in add_rider(self, riderName, reCalc, draw)
    465                     riderPar, human, bicycleRiderPar =\
    466                         rider.configure_rider(pathToRider, bicycleName,
--> 467                                 bicyclePar, measuredPar, draw)
    468                 else:
    469                     print("Loaded the precalculated parameters from " +

~/miniconda3/lib/python3.6/site-packages/bicycleparameters/rider.py in configure_rider(pathToRider, bicycle, bicyclePar, measuredPar, draw)
    110         # reference frame about the Yeadon origin.
    111         human = rider_on_bike(bicyclePar, measuredPar,
--> 112                               pathToYeadon, pathToCFG, draw)
    113 
    114         # This is the rotation matrix that relates Yeadon's reference frame

~/miniconda3/lib/python3.6/site-packages/bicycleparameters/rider.py in rider_on_bike(benchmarkPar, measuredPar, yeadonMeas, yeadonCFG, drawrider)
    203 
    204     # create human using input measurements and configuration files
--> 205     human = yeadon.Human(yeadonMeas, yeadonCFG)
    206 
    207     # The relevant human measurments:

~/miniconda3/lib/python3.6/site-packages/yeadon/human.py in __init__(self, meas_in, CFG, symmetric, density_set)
    195             self.meas = meas_in
    196         elif type(meas_in) == str:
--> 197             self._read_measurements(meas_in)
    198         # average left and right limbs for symmetry (maybe)
    199         if self.is_symmetric == True:

~/miniconda3/lib/python3.6/site-packages/yeadon/human.py in _read_measurements(self, fname)
   1384         # open measurement file
   1385         fid = open(fname, 'r')
-> 1386         mydict = yaml.load(fid.read())
   1387         fid.close()
   1388         # loop until all 95 parameters are read in

~/miniconda3/lib/python3.6/site-packages/yaml/__init__.py in load(stream, Loader)
     70     loader = Loader(stream)
     71     try:
---> 72         return loader.get_single_data()
     73     finally:
     74         loader.dispose()

~/miniconda3/lib/python3.6/site-packages/yaml/constructor.py in get_single_data(self)
     33     def get_single_data(self):
     34         # Ensure that the stream contains a single document and construct it.
---> 35         node = self.get_single_node()
     36         if node is not None:
     37             return self.construct_document(node)

~/miniconda3/lib/python3.6/site-packages/yaml/composer.py in get_single_node(self)
     37 
     38         # Ensure that the stream contains no more documents.
---> 39         if not self.check_event(StreamEndEvent):
     40             event = self.get_event()
     41             raise ComposerError("expected a single document in the stream",

~/miniconda3/lib/python3.6/site-packages/yaml/parser.py in check_event(self, *choices)
     96         if self.current_event is None:
     97             if self.state:
---> 98                 self.current_event = self.state()
     99         if self.current_event is not None:
    100             if not choices:

~/miniconda3/lib/python3.6/site-packages/yaml/parser.py in parse_document_start(self)
    172                         "expected '<document start>', but found %r"
    173                         % self.peek_token().id,
--> 174                         self.peek_token().start_mark)
    175             token = self.get_token()
    176             end_mark = token.end_mark

ParserError: expected '<document start>', but found '<scalar>'
  in "<unicode string>", line 15, column 1:
    totalmass=83.5 # This Jason's to ... 
    ^

moorepants avatar Jun 22 '19 03:06 moorepants