NREL / ROSCO_toolbox

A repository for generating ROSCO controller input files and more.
http://rosco-toolbox.readthedocs.io/
Apache License 2.0
23 stars 20 forks source link

run_Testing.py issues #61

Open ghylander opened 2 years ago

ghylander commented 2 years ago

First of all, I have to say running the script isn't very intuitive. The comments and docs help a bit, but it still took me some re-reads to figure it out.

Before continue reading, do I need to change all "# Setup ROSCO testing parameters"? If so, it should be made clearer. If they have to be changed by the user, it's unclear what each parameter is and where should the user point them. Both 'FAST_exe' and 'wind_dir' are defined as "OpenFAST executable path"

On to the issues I'm having

I'm trying to run the "run_Testing.py" to test whether the dlls I'm compiling with Visual Studio and ifort are ok (see rosco issue 66)

I have setup ROSCO_toolbox using the guide. I set up the "run_Testing.py" script like so:

    # ---- Define test type ----
    turbine2test = 'NREL-5MW'   # IEA-15MW or NREL-5MW
    testtype     = 'lite'       # lite, heavy, binary-comp, discon-comp

I of course put my dlls to run testing on in the script-specified directory ('../ROSCO/build/libdiscon.')

The following is shown x4 (each time a different wind input file):

ofTools in ROSCO_toolbox...
EXECUTING TurbSim
Executable:      turbsim
Run directory:   /scratch/dzalkind/ROSCO_testing\wind\IEA-15_heavy
Input file:      C:\scratch\dzalkind\ROSCO_testing\wind\IEA-15_heavy\heavy_test_NTM_U5.000000_Seed971231.0.in
Exec string:     ['turbsim', 'C:\\scratch\\dzalkind\\ROSCO_testing\\wind\\IEA-15_heavy\\heavy_test_NTM_U5.000000_Seed971231.0.in']
ofTools in ROSCO_toolbox...

Then the process exits with "No such file or directory: 'turbsim'"

nikhar-abbas commented 2 years ago

Hi @ghylander, Please keep in mind that this script is written to provide an example of how to run some of the testing capabilities in the ROSCO toolbox, and to provide a template by which to write your own scripts. It was not written as a "click and run" script in the same way that the examples are done. It is good to know that this script might be useful as a "click and run" script - we will keep that in mind going forward and try to make this more generic.

Some tips to get things running on your end:

I think this may be everything you need to specifically define, but perhaps there are some things I am missing.

Cheers, Nikhar

ghylander commented 2 years ago

Thank you very much for you replies Nikhar. I'm ok with the script being a template, and i dont think that should be a problem for other users. It just seemed like it was a click and run script, or that thr user did not need to modify it much to run it.

I think if the script had comments similar to the ones in a DISCON.IN. file it would be perfectly fine

I will try your indications and see if i'm able to run it that eay

El martes, 5 de octubre de 2021, nikhar-abbas @.***> escribió:

Hi @ghylander https://github.com/ghylander, Please keep in mind that this script is written to provide an example of how to run some of the testing capabilities in the ROSCO toolbox, and to provide a template by which to write your own scripts. It was not written as a "click and run" script in the same way that the examples are done. It is good to know that this script might be useful as a "click and run" script - we will keep that in mind going forward and try to make this more generic.

Some tips to get things running on your end:

  • You should update the rt_kwargs found here https://github.com/NREL/ROSCO_toolbox/blob/95218beac3ddae18ed44925c2b31e158ce6a14b6/ROSCO_testing/run_Testing.py#L88 for your setup. The current paths are setup for a specific user, so you will need to change them to be your own paths.
  • FAST_exe and turbsim_exe point to your executables. If you are in a conda environment and conda install openfast=3.0, you should simply be able to set these to openfast and turbsim. Otherwise, you should point specifically to the executables in /OpenFAST/install/bin`
  • runDir and wind_dir point to the directories in which you would like to save your OpenFAST input/output files and turbsim files. comp_dir is the output directory for the comparison files.

I think this may be everything you need to specifically define, but perhaps there are some things I am missing.

Cheers, Nikhar

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/NREL/ROSCO_toolbox/issues/61#issuecomment-934644558, or unsubscribe https://github.com/notifications/unsubscribe-auth/ARZDGCVJPAWE4KFLPR4L7GDUFM5IHANCNFSM5FLERMSQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Gustavo Hylander Ruiz g @.**@. EnerOcean S.L.

Este mensaje y sus archivos adjuntos pueden contener información confidencial y están dirigidos exclusivamente a su destinatario. Le informamos que la legislación vigente prohíbe el uso, divulgación o copia del contenido del presente mensaje por persona distinta del destinatario sin autorización previa. Si Ud. no es el destinatario de este mensaje o lo ha recibido por error, le agradeceríamos que nos lo comunicara y que procediera a destruirlo. Además le recordamos que no está autorizado a usar, imprimir, copiar o difundir este mensaje. Según la LOPD le informamos que sus datos personales se incorporan a un fichero cuyo titular es , ENEROCEAN S.L para la correcta relación comercial. Ud. dispone de 30 días para manifestar su negativa al tratamiento; de no pronunciarse a tal efecto se entenderá por otorgado su consentimiento. Ud. puede ejercitar los derechos accesos, rectificación, cancelación y oposición en los términos establecidos en la normativa vigente dirigiéndose a Bulevard Louis Pasteur, nº5, P2, Oficina 321, Málaga o email: @.***

ghylander commented 2 years ago

I can try to make the file a bit more user friendly, but i need some help understanding it

in line 101 (and 102) you are defining rt_kwargs['comp_dir'], but then in lines 110 and 111 you define directories for the binaries and DISCON.IN files

are these 2 directory definitions redundant? what is rt_kwargs['comp_dir'] for?


I managed to make the script work, but I'm now getting an error when generating the plots:

Cannot plot Wind1VelX
Cannot plot GenPwr
Cannot plot RotSpeed
Cannot plot BldPitch1
Cannot plot GenTq

I have matplotlib installed in the env (I followed the setup guide step by step so all dependencies should be installed)

nikhar-abbas commented 2 years ago

comp_dir is the directory that any comparison outputs and plots will be saved to. The directories for the binaries and DISCON.IN files are the inputs themselves.

I'm not sure exactly why you are receiving these Cannot plot... errors. Something is not working in this try statement here. Can you check your OpenFAST input deck to make sure those channels are specified as output channels?

ghylander commented 2 years ago

comp_dir is the directory that any comparison outputs and plots will be saved to. The directories for the binaries and DISCON.IN files are the inputs themselves.

I'm not sure exactly why you are receiving these Cannot plot... errors. Something is not working in this try statement here. Can you check your OpenFAST input deck to make sure those channels are specified as output channels?

After having a comprehensive look at the source code, I checked where the pdf files should be generated and I found them. This leads me to believe the problem is related to matplotlib opening plot windows and the OS where the script is run, rather than a problem with the toolbox.

I will continue modifying the file to make it a bit easier to setup for use