Javihaus / Digital-Twin-in-python

In this repo we will show how to build a simple but useful Digital Twin using python. Our asset will be a Li-ion battery. This Digital Twin will allow us to model and predict batteries behavior and can be included in any virtual asset management process.
https://medium.com/towards-data-science/how-to-build-a-digital-twin-b31058fd5d3e
MIT License
66 stars 30 forks source link

Error in line: C_twin_e = X_in_e + model.predict(X_in_e).reshape(-1) #1

Open Sapna091198 opened 1 year ago

Sapna091198 commented 1 year ago

Screenshot 2023-06-07 164607 ValueError Traceback (most recent call last) ~\AppData\Local\Temp/ipykernel_336/336901451.py in 5 L_e = 1-e*(-Kcyclestemperature/time) 6 X_in_e = -(L_edfb['Capacity'].iloc[0:1].values[0]) + dfb['Capacity'].iloc[0:1].values[0] ----> 7 C_twin_e = X_in_e + model.predict(X_in_e).reshape(-1)

C:\ProgramData\Anaconda3\lib\site-packages\keras\utils\traceback_utils.py in error_handler(*args, **kwargs) 68 # To get the full stack trace, call: 69 # tf.debugging.disable_traceback_filtering() ---> 70 raise e.with_traceback(filtered_tb) from None 71 finally: 72 del filtered_tb

C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training.py in tfpredict_function(iterator) 13 try: 14 doreturn = True ---> 15 retval = ag__.converted_call(ag.ld(step_function), (ag.ld(self), ag.ld(iterator)), None, fscope) 16 except: 17 do_return = False

ValueError: in user code:

File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training.py", line 2169, in predict_function  *
    return step_function(self, iterator)
File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training.py", line 2155, in step_function  **
    outputs = model.distribute_strategy.run(run_step, args=(data,))
File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training.py", line 2143, in run_step  **
    outputs = model.predict_step(data)
File "C:\ProgramData\Anaconda3\lib\site-packages\keras\engine\training.py", line 2111, in predict_step
    return self(x, training=False)
File "C:\ProgramData\Anaconda3\lib\site-packages\keras\utils\traceback_utils.py", line 70, in error_handler
    raise e.with_traceback(filtered_tb) from None

ValueError: Exception encountered when calling layer 'sequential' (type Sequential).

Cannot iterate over a shape with unknown rank.

Call arguments received by layer 'sequential' (type Sequential):
  • inputs=tf.Tensor(shape=<unknown>, dtype=float32)
  • training=False
  • mask=None
ecubed108 commented 10 months ago

X_in_e =(-(L_e*dfb['Capacity'].iloc[0:1].values[0]) + dfb['Capacity'].iloc[0:1].values[0])

X_in_e=pd.Series(X_in_e) # model.predict( requires series data)