Open hcOnel opened 5 years ago
Here are the basic instructions for running and coupling a precursor to SOWFA windPlantSolver simulations.
Generating the precursor data
Preparing the precursor data
reconstructPar -time 20000 -fields '(k kappat nuSgs p_rgh qwall Rwall T U)'
Coupling to a wind farm simulation
Mr. Doekemeijer, thanks for your detailed explanations. These are extremely helpful for new users like me. I have followed these steps and although I'm having a hard time understanding the definition and transformation of flow direction and boundaries at different stages of the simulation, I can't ask for your time to explain these right now and I will keep trying to figure it out myself (watching the 2h video in NREL website). Right now, I am trying to run a 500s + 500s precursor case (instead of 20000s + 2000s) not for simulation's sake but just to see if I am getting errors or not. As prescribed in the example case, flow direction is +x (eastwards) so I will be sampling the west patch.
Number of vertices = 2821
Number of faces (original) = 2610
x_min = -0.1 x_max = 0.1 y_min = 0.0 y_max = 10000.0 z_min = 0.0 z_max = 1000.1
but in boundaryData/west/$timeStep directory, k, T and U files all show the average as 0, i.e;
// Average (0 0 0)
2610 ( (4.08173838431 0.127017697574 0.00932212747655) (4.06631740709 0.121126538405 0.0112868540655) (4.13315167556 0.111598777211 0.00616209385615) ...
2. Stranger thing is, at pimpleFoam run of wind farm simulation, I get the following error:
Starting time loop
Hi Huseyin,
ln -s 503.105590062 500
command.Good luck! Eliot
-- Eliot Quon Researcher| National Wind Technology Center
National Renewable Energy Laboratory (NREL) 15013 Denver West Parkway | Golden, CO 80401 303-384-7172 | M: 720-418-9746 eliot.quon@nrel.govmailto:eliot.quon@nrel.gov | #NREL40: View our accomplishmentshttps://www.nrel.gov/about/accomplishments.html.
From: hcOnel notifications@github.com Reply-To: NREL/SOWFA reply@reply.github.com Date: Friday, September 21, 2018 at 6:51 AM To: NREL/SOWFA SOWFA@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: Re: [NREL/SOWFA] Problems running example.ALM: linked files, core dumped at refineHexMesh and decomposePar (#26)
Mr. Doekemeijer, thanks for your detailed explanations. These are extremely helpful for new users like me. I have followed these steps and although I'm having a hard time understanding the definition and transformation of flow direction and boundaries at different stages of the simulation, I can't ask for your time to explain these right now and I will keep trying to figure it out myself (watching the 2h video in NREL website). Right now, I am trying to run a 500s + 500s precursor case (instead of 20000s + 2000s) not for simulation's sake but just to see if I am getting errors or not. As prescribed in the example case, flow direction is +x (eastwards) so I will be sampling the west patch.
Number of vertices = 2821
Number of faces (original) = 2610
x_min = -0.1
x_max = 0.1
y_min = 0.0
y_max = 10000.0
z_min = 0.0
z_max = 1000.1
but in boundaryData/west/$timeStep directory, k, T and U files all show the average as 0, i.e;
// Average
(0 0 0)
2610
(
(4.08173838431 0.127017697574 0.00932212747655)
(4.06631740709 0.121126538405 0.0112868540655)
(4.13315167556 0.111598777211 0.00616209385615)
...
Starting time loop
Hi everyone, thanks a lot for the great help provided here. I was wondering: if I am running a precursor case of let's say 3km x 3km x 1km and afterwards would like to run a case (winplantsolver.alm) with only 1km x 1 km x 1km, (for example for less windturbines) is this possible with the same precursor input? what do I have to adapt to be able to use the input? Or would I at least have to run the 2000 input seconds for the exact mesh I want to use with help of mapfields beforehand? The same question occurs regarding the refinement of the mesh. What if the "inlet side" is refined? Will the driving data be mapped accordingly?
Thanks a lot in advance and kind regards
Merle
@MerleSieb Perhaps it is possible, but I have never seen it. The way it is set up now, is that SOWFA copies the base mesh from the precursor directory, and then performs refinements. I'm guessing "cropping" the mesh would be more of an OpenFOAM question rather than a SOWFA question.
Also, I believe the inlet is linearly mapped onto the mesh (both spatially and in time).
Thanks a lot for the reply and all help provided.
Is there any possibility of "re-using" precursor data for another wind velocity for the exact same mesh? I guess simple scaling wouldn't really be helpful/working?! But is there any way to generate a reasonable windfield with similar (doesn't have to be exactly the same of course) properties without re-running the precursor from the beginning? In my case I am talking about transferring the results from a 12m/s run to 10m/s (at 90m height, for neutral condition and low surface roughness)
I have got yet another question: Is there a tool/script to export one of the binary full-field files used in FAST? I thought about comparing the "standalone" FAST results to ALM SOWFA simulations. Instead of running long and several time seeds I might be helpful to have quite similar inflow conditions during one single simulation. I guess it should not be too difficult to write a script to "transform" the data in the right format or am I missing something? As I am neither experienced nor good in scripting/coding I thought maybe somebody did the same already or has some tips how to proceed. Thank you for any suggestion.
Regarding my last question I found the scripts in the following links: https://github.com/NWTC/datatools/blob/master/utilities/ensight_planes_to_hawc.py https://github.com/NWTC/datatools/blob/master/utilities/structuredVTK_planes_to_hawc.py
Nevertheless, I am not sure how to use them and what to use them on. I saw there is a function foamToEnsight (as well as foamToVTK) available but what data do I have to do that with? The drivingData? Or do I have to use another sampling function during the simulation specifying the format, etc. What directory do I have to excecute the above scripts from?
Thanks a lot in advance
@MerleSieb sorry for the delayed response. These depend on planes of data, i.e., surface sampling output from OpenFOAM either in the Ensight format or the structured VTK format. The writer for the latter is provided by libSOWFAfileFormats.so
. Hopefully you got it figured out.
refineHexMesh
anddecomposePar
logs show the error:--> FOAM FATAL ERROR: Attempt to cast type patch to type lduInterface From function refCast<To>(From&) in file /home/canon/OpenFOAM/OpenFOAM-2.4.x/src/OpenFOAM/lnInclude/typeInfo.H at line 114. FOAM aborting
The type patch is as it is in the example case. Should it be changed?
I have also encountered this problem and solved it. It seems that you have reconstructed all the variables while in the changeDictionarydict only k kappat nuSgs p_rgh qwall Rwall T U are there. So after performing changeDictionary, the other variables are still having cyclic conditions, which will confuse refineHexMesh and decomposePar.
Just keep the 7 variable when doing reconstructPar or rewrite the changeDictionarydict for other variables.
I have the
example.ABL.flatTerrain.stable
case solved as precursor and trying to runexample.ALM
upon it. I am at the preprocess stage at the moment. First thing I couldn't get is the drivingData files: boundaryData and sources. These are supposed to be linked but I do not have them in the precursor directory.Also I get the following errors while running
runscript.preprocess
:refineHexMesh
anddecomposePar
logs show the error:The type patch is as it is in the example case. Should it be changed?