Find research datasets worth reusing
Search datasets from major research repositories and use ShareScore to quickly assess how well each record supports discovery, access, and reuse.
8
datasets available to search
ShareScore release 0.9.0
Dataset results
8 results for “wind tunnel experiments”
A blind test on wind turbine wake modelling based on wind tunnel experiments: Phase I – The benchmark case
<p>This data set ("Data files.zip") contains the wind tunnel measurement data from Phase I of the Blind test on wind turbine wake modelling based on wind tunnel experiments organised during the TWEET-IE project (www.tweet-ie.eu).</p> <p>This updated version <strong>replaces</strong> the older versions 1.0.0 (https://doi.org/10.5281/zenodo.10566401), 1.1.0 (https://doi.org/10.5281/zenodo.11370112), 2.0 (https://doi.org/10.5281/zenodo.12188194) and 2.1 (https://doi.org/ 10.5281/zenodo.13918935). In comparison to the previous version 2.1 the data documentation has been updated to follow the template of the TWEET-IE project documents, indicating the Grant Agreement Number with the European Union and the Call Topic of the project.</p> <p>All tests were conducted in the closed-loop, low-speed boundary layer wind tunnel of the Chair of Aerodynamics and Fluid Mechanics at Technische Universität München (TUM). The experiments concerned two wind turbines, aligned with the flow, one downstream of the other, at a distance of 5 diameters. For Phase I, no control was applied to the wind turbine models, which were operating at constant RPM. The turbine models, designed and manufactured by TUM, were instrumented with multiple sensors and actuators and had a diameter of 1.1M. Measurements include velocity, power and loads on the turbines. A detailed description of the experimental set up can be found in the accompanying document ("Data documentation.pdf"). </p> <p>File "Submission procedure.zip" includes the format description and the templates of the output data that should be submitted by the participants in the blind test comparison.</p>
Wind tunnel experiment of a micro wind farm model
<p>Simultaneous strain gage measurements of sixty porous disk models, in a scaled wind farm with one hundred models, and for fifty-six different layouts. </p> <p>For detailed information about the experimental setup and wind farm layouts see: </p> <p>Bossuyt, J., Meneveau, C., & Meyers, J. (2018). Effect of layout on asymptotic boundary layer regime in deep wind farms. <em>Physical Review Fluids. See also:</em> https://arxiv.org/abs/1808.09579 .</p> <p>For more information about the experimental design of the porous disk models, see also:</p> <p>Bossuyt, J., Howland, M. F., Meneveau, C., & Meyers, J. (2017). Measurement of unsteady loading and power output variability in a micro wind farm model in a wind tunnel. <em>Experiments in Fluids</em>, <em>58</em>(1), 1. http://doi.org/10.1007/s00348-016-2278-6</p> <p> Bossuyt, J., Meneveau, C., & Meyers, J. (2017). Wind farm power fluctuations and spatial sampling of turbulent boundary layers. <em>Journal of Fluid Mechanics</em>, <em>823</em>, 329-344. http://doi.org/10.1017/jfm.2017.328</p> <p> </p> <p>The data contains matrices 'WF_U', 'x', and 'y', and variable 'fs' for each layout. <br> The matrix 'WF_U' contains the reconstructed velocity signal in m/s measured by each porous disk, and has size ( 20 , 3 , number of time samples), with 20 the number of porous disk rows, and 3 the number of streamwise aligned porous disk columns in the wind farm. Matrices 'x', and 'y' have size (20,3) and contain the locations of each instrumented porous disk in units of disk diameter D = 0.03m. It is important to note that the wind farm has one extra column of non-instrumented porous disk models on each side, for a total of 20x5=100 porous disk models.The variable 'fs' contains the sampling frequency in Hz, at which all 60 porous disks are simultaneously sampled.</p> <p>--------------------------------------------------------<br> Example code to load data in Matlab :<br> --------------------------------------------------------<br> filename = 'U_C1_1.h5';<br> fileID = H5F.open(filename,'H5F_ACC_RDONLY','H5P_DEFAULT');</p> <p>datasetID = H5D.open(fileID,'WF_U');<br> WF_U = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);</p> <p>datasetID = H5D.open(fileID,'fs');<br> fs = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);</p> <p>datasetID = H5D.open(fileID,'x');<br> x = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);</p> <p>datasetID = H5D.open(fileID,'y');<br> y = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);</p> <p>H5F.close(fileID);</p> <p>--------------------------------------------------------<br> Example code to load data in Python:<br> --------------------------------------------------------<br> import h5py<br> filename = 'U_C1_1.h5'<br> f = h5py.File(filename, 'r')</p> <p>U = f['WF_U'][()]<br> x = f['x'][()]<br> y = f['y'][()]<br> fs = f['fs'][0][0]<br> f.close()</p> <p>--------------------------------------------------------<br> Example code to generate figures 15 and 16 of Bossuyt et al. (2018). Effect of layout on asymptotic boundary layer regime in deep wind farms. Physical Review Fluids, in Matlab<br> --------------------------------------------------------<br> WF_cases_selected = 1:7;</p> <p>folder = '/';% folder with files</p> <p>WF_cases_l = {'U_C1';'U_C2';'NU1_C1';'NU1_C2';'NU2_C1';'NU2_C2';'NU2_C3'};% name of layout variations<br> WF_cases_n = [6, 7, 11, 8, 11, 7, 6]; % 'number of layout variations for each case</p> <p>WF_data.x = cell( length(WF_cases_selected) , 1);% x - coordinates of porous disk locations<br> WF_data.y = cell( length(WF_cases_selected) , 1);% y - coordinates of porous disk locations<br> WF_data.shift = cell( length(WF_cases_selected) , 1);% spanwise shift of layout series<br> WF_data.fs = cell( length(WF_cases_selected) , 1);<br> WF_data.WF_Pm = cell( length(WF_cases_selected) , 1);<br> WF_data.WF_Um = cell( length(WF_cases_selected) , 1);<br> WF_data.WF_U_rms = cell( length(WF_cases_selected) , 1);</p> <p><br> for i = 1 : length(WF_cases_selected)<br> <br> WF_data_case = struct;<br> WF_data_case.x = cell( WF_cases_n(i) , 1);<br> WF_data_case.y = cell( WF_cases_n(i) , 1);<br> WF_data_case.shift = cell( WF_cases_n(i) , 1);<br> WF_data_case.fs = cell( WF_cases_n(i) , 1);<br> WF_data_case.WF_Pm = cell( WF_cases_n(i) , 1);<br> WF_data_case.WF_Um = cell( WF_cases_n(i) , 1);<br> WF_data_case.WF_U_rms = cell( WF_cases_n(i) , 1);<br> <br> for j = 1:WF_cases_n(i)<br> clc<br> i<br> j<br> <br> WF_data_var = struct;<br> <br> %read the file<br> filename = [folder WF_cases_l{i} '_' num2str(j) '.h5'];<br> fileID = H5F.open(filename,'H5F_ACC_RDONLY','H5P_DEFAULT');<br> <br> datasetID = H5D.open(fileID,'WF_U');<br> WF_data_var.WF_U = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);<br> <br> datasetID = H5D.open(fileID,'fs');<br> WF_data_case.fs{j} = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);<br> <br> datasetID = H5D.open(fileID,'x');<br> WF_data_case.x{j} = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);<br> <br> datasetID = H5D.open(fileID,'y');<br> WF_data_case.y{j} = H5D.read(datasetID,'H5ML_DEFAULT','H5S_ALL','H5S_ALL','H5P_DEFAULT');<br> H5D.close(datasetID);<br> <br> H5F.close(fileID);<br> <br> WF_data_var.WF_P = WF_data_var.WF_U.^3;</p> <p> % Time averaged power<br> WF_data_case.WF_Pm{j} = mean(WF_data_var.WF_P,3);<br> <br> % normalize by power in first row: Pi/P1<br> WF_data_case.WF_Pm{j} = WF_data_case.WF_Pm{j}./mean(WF_data_case.WF_Pm{j}(1,:));<br> <br> % Time averaged velocity<br> WF_data_case.WF_Um{j} = mean(WF_data_var.WF_U,3);<br> <br> % u_rms --> TI<br> WF_data_case.WF_U_rms{j} = std(WF_data_var.WF_U,[],3);<br> end<br> <br> WF_data.x{i} = WF_data_case.x;<br> WF_data.y{i} = WF_data_case.y;<br> WF_data.fs{i} = WF_data_case.fs;<br> WF_data.WF_Pm{i} = WF_data_case.WF_Pm;<br> WF_data.WF_Um{i} = WF_data_case.WF_Um;<br> WF_data.WF_U_rms{i} = WF_data_case.WF_U_rms;<br> <br> %determine spanwise shift for plot legends<br> tmp1 = WF_data.y{i}{j-1};<br> tmp2 = WF_data.y{i}{j};<br> dy = diff( [tmp1(:,1) tmp2(:,1)] ,1,2);<br> dy = max(dy(abs(dy)>0));<br> WF_data.shift{i} = 0:dy:(WF_cases_n(i)-1)*dy;<br> <br> end</p> <p>%%<br> line_tick = {'o-','*-','+-','d-','s-','^-','v-','<-','>-','p-','h-'};<br> line_color = [51,160,44; 141,211,199; 31,120,180; 106,61,154; 227,26,28; 177,89,40; 255,127,0; 166,206,227]./255;</p> <p>legend_items = cell(size(WF_cases_selected));<br> for i = 1:length(legend_items)<br> legend_items{i} = strrep(WF_cases_l{i},'_','-');<br> end</p> <p>%% average power entire farm<br> row_start = 1;<br> row_end = 19;<br> f1 = figure;<br> set(gcf,'paperposition',[0,0,8.4,4.9])<br> hold on</p> <p>for i = 1 : length(WF_cases_selected)<br> tmp_P = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_P(j) = mean(mean( WF_data.WF_Pm{i}{j}(row_start:row_end,:)));<br> end<br> plot( WF_data.shift{i} , tmp_P, line_tick{i} ,'Color', line_color(i,:) ,'MarkerFaceColor', line_color(i,:) )<br> end</p> <p>% manualy plot errorbars<br> for i = 1:length(WF_cases_selected)<br> tmp_P = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_P(j) = mean(mean( WF_data.WF_Pm{i}{j}(row_start:row_end,:)));<br> end<br> px = WF_data.shift{i} ;<br> py = tmp_P;<br> pw = 0.05;<br> pe = zeros(size(px))+0.01;%for uncertainty value see Bossuyt et al. (2018) Physical Review Fluids. <br> for j = 1:WF_cases_n(i)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)+pe(j) py(j)+pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)-pe(j) py(j)-pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j) px(j)],[py(j)-pe(j) py(j)+pe(j)],':', 'Color', line_color(i,:),'LineWidth',0.5)<br> end<br> end<br> xlabel('\Delta_y [D]')<br> ylabel('$\langle P_i /P_1\rangle_{1}^{19}$','Interpreter','Latex')<br> box('on')<br> ylim([0.35 0.66])<br> xlim([-0.1 2.6])<br> legend1 = legend(legend_items');<br> set(legend1,'Location','southeast');<br> print(f1, 'WF_Pm_all','-dpng','-r300')</p> <p>%% average power end of farm<br> row_start = 16;<br> row_end = 19;<br> f2 = figure;<br> set(gcf,'paperposition',[0,0,8.4,4.9])<br> hold on</p> <p>for i = 1 : length(WF_cases_selected)<br> tmp_P = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_P(j) = mean(mean( WF_data.WF_Pm{i}{j}(row_start:row_end,:)));<br> end<br> plot( WF_data.shift{i} , tmp_P, line_tick{i} ,'Color', line_color(i,:) ,'MarkerFaceColor', line_color(i,:) )<br> end</p> <p>% manualy plot errorbars<br> for i = 1:length(WF_cases_selected)<br> tmp_P = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_P(j) = mean(mean( WF_data.WF_Pm{i}{j}(row_start:row_end,:)));<br> end<br> px = WF_data.shift{i} ;<br> py = tmp_P;<br> pw = 0.05;<br> pe = zeros(size(px))+0.02; %for uncertainty value see Bossuyt et al. (2018) Physical Review Fluids. <br> for j = 1:WF_cases_n(i)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)+pe(j) py(j)+pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)-pe(j) py(j)-pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j) px(j)],[py(j)-pe(j) py(j)+pe(j)],':', 'Color', line_color(i,:),'LineWidth',0.5)<br> end<br> end<br> xlabel('\Delta_y [D]')<br> ylabel('$\langle P_i /P_1\rangle_{16}^{19}$','Interpreter','Latex')<br> box('on')<br> ylim([0.27 0.52])<br> xlim([-0.1 2.6])<br> legend1 = legend(legend_items');<br> set(legend1,'Location','southeast');<br> print(f2, 'WF_Pm_end', '-dpng','-r300')</p> <p>%% plot average unsteady loading total farm<br> row_start = 1;<br> row_end = 19;<br> f3 = figure;<br> set(gcf,'paperposition',[0,0,8.4,4.9])<br> hold on<br> for i = 1 : length(WF_cases_selected)<br> tmp_TI = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_TI(j) = mean(mean(WF_data.WF_U_rms{i}{j}(row_start:row_end,:)./WF_data.WF_Um{i}{j}(row_start:row_end,:)))*100;<br> end<br> plot( WF_data.shift{i} , tmp_TI , line_tick{i} ,'Color', line_color(i,:) ,'MarkerFaceColor', line_color(i,:))<br> end</p> <p>% manualy plot errorbars<br> for i = 1:length(WF_cases_selected)<br> tmp_TI = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_TI(j) = mean(mean(WF_data.WF_U_rms{i}{j}(row_start:row_end,:)./WF_data.WF_Um{i}{j}(row_start:row_end,:)))*100;<br> end<br> px = WF_data.shift{i} ;<br> py = tmp_TI;<br> pw = 0.05;<br> pe = zeros(size(px))+ 0.004*tmp_TI;%for uncertainty value see Bossuyt et al. (2018) Physical Review Fluids. <br> for j = 1:WF_cases_n(i)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)+pe(j) py(j)+pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)-pe(j) py(j)-pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j) px(j)],[py(j)-pe(j) py(j)+pe(j)],':', 'Color', line_color(i,:),'LineWidth',0.5)<br> end<br> end<br> xlabel('\Delta_y [D]')<br> ylabel('$ \langle TI \rangle_{1}^{19} [\%]$','Interpreter','Latex')<br> box('on')<br> xlim([-0.1 2.6])<br> legend1 = legend(legend_items');<br> set(legend1,'Location','northeast');<br> print(f3, 'WF_TI_all','-dpng','-r300')</p> <p>%% plot average unsteady loading end of farm<br> row_start = 16;<br> row_end = 19;<br> f4 = figure;<br> set(gcf,'paperposition',[0,0,8.4,4.9])<br> hold on<br> for i = 1 : length(WF_cases_selected)<br> tmp_TI = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_TI(j) = mean(mean(WF_data.WF_U_rms{i}{j}(row_start:row_end,:)./WF_data.WF_Um{i}{j}(row_start:row_end,:)))*100;<br> end<br> plot( WF_data.shift{i} , tmp_TI , line_tick{i} ,'Color', line_color(i,:) ,'MarkerFaceColor', line_color(i,:))<br> end</p> <p>% manualy plot errorbars<br> for i = 1:length(WF_cases_selected)<br> tmp_TI = zeros(size(WF_data.shift{i}));<br> for j = 1:WF_cases_n(i)<br> tmp_TI(j) = mean(mean(WF_data.WF_U_rms{i}{j}(row_start:row_end,:)./WF_data.WF_Um{i}{j}(row_start:row_end,:)))*100;<br> end<br> px = WF_data.shift{i} ;<br> py = tmp_TI;<br> pw = 0.05;<br> pe = zeros(size(px))+ 0.01*tmp_TI;%for uncertainty value see Bossuyt et al. (2018) Physical Review Fluids. <br> for j = 1:WF_cases_n(i)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)+pe(j) py(j)+pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j)-pw/2 px(j)+pw/2] , [py(j)-pe(j) py(j)-pe(j)],'-', 'Color', line_color(i,:),'LineWidth',0.5)<br> plot( [px(j) px(j)],[py(j)-pe(j) py(j)+pe(j)],':', 'Color', line_color(i,:),'LineWidth',0.5)<br> end<br> end<br> xlabel('\Delta_y [D]')<br> ylabel('$ \langle TI \rangle_{16}^{19} [\%]$','Interpreter','Latex')<br> box('on')<br> xlim([-0.1 2.6])<br> legend1 = legend(legend_items');<br> set(legend1,'Location','northeast');<br> print(f4, 'WF_TI_end','-dpng','-r300')</p> <p> </p>
Periodic dynamic induction control of wind farms: proving the potential in simulations and wind tunnel experiments - data sets
<p>Data sets of the wind tunnel experiments described in "Periodic dynamic induction control of wind farms: proving the potential in simulations and wind tunnel experiments". DOI: https://doi.org/10.5194/wes-2019-50</p>
Wind tunnel experiments on wind turbine wakes in yaw
<p>This data set contains Laser Doppler Anemometer measurements in the wake behind two different model wind turbines, recorded in a wind tunnel campain at the NTNU in Trondheim. Full plane wake data were recorded, with a focus on the effect of yaw misalignment and inflow turbulence. Please refer to the documentation document for more information.</p>
Dataset - Radially resolved dynamic inflow pitch step experiment in wind tunnel
<p>The relevant turbine data of MoWiTO 1.8 and the preprocessed data presented in the following accepted paper are uploaded:</p> <p><br> Berger, F., Onnen, D., Schepers, J. G., and Kühn, M.: Experimental analysis of radially resolved dynamic inflow effects due to pitch steps, Wind Energ. Sci. Discuss. [preprint], https://doi.org/10.5194/wes-2021-70, accepted, 2021.</p> <p> </p> <p>The dataset describes a pitch step experiment with a model wind turbine in a wind tunnel between a high rotor load and a low rotor load. Measurements of turbine loads, near wake flow and radius resolved induction measurements are available.</p>
Data from: A new low-turbulence wind tunnel for animal and small vehicle flight experiments
Our understanding of animal flight benefits greatly from specialized wind tunnels designed for flying animals. Existing facilities can simulate laminar flow during straight, ascending and descending flight, as well as at different altitudes. However, the atmosphere in which animals fly is even more complex. Flow can be laminar and quiet at high altitudes but highly turbulent near the ground, and gusts can rapidly change wind speed. To study flight in both laminar and turbulent environments, a multi-purpose wind tunnel for studying animal and small vehicle flight was built at Stanford University. The tunnel is closed-circuit and can produce airspeeds up to 50 m s−1 in a rectangular test section that is 1.0 m wide, 0.82 m tall and 1.73 m long. Seamless honeycomb and screens in the airline together with a carefully designed contraction reduce centreline turbulence intensities to less than or equal to 0.030% at all operating speeds. A large diameter fan and specialized acoustic treatment allow the tunnel to operate at low noise levels of 76.4 dB at 20 m s−1. To simulate high turbulence, an active turbulence grid can increase turbulence intensities up to 45%. Finally, an open jet configuration enables stereo high-speed fluoroscopy for studying musculoskeletal control in turbulent flow.
Data from: A new low-turbulence wind tunnel for animal and small vehicle flight experiments
Open the record for dataset details and reuse information.
The Effect of Slope Gradient and Shape on the Formation Process of Climbing Dunes in a Wind Tunnel Experiment
<p>the data from the wind-tunnel experiments </p>
ScienceDex guides
Understand access before you commit
These curated guides explain access requirements, typical timelines, costs, and reuse considerations for widely used research datasets.
Allen Brain Atlas
Allen Brain Atlas is an Allen Institute collection of brain map atlases, datasets, APIs, and analysis tools covering mouse, human, and non-human primate brain resources.
Annotated Behaviour and Observability Dataset (ABODe)
ABODe is a University of Edinburgh DataShare dataset for behavior classification in group-housed mice using home-cage video, identities, bounding boxes, ground-plate positions, and annotator labels.
DANDI Archive for NWB datasets
DANDI is a BRAIN Initiative archive for publishing and sharing neurophysiology data, including electrophysiology, optophysiology, and behavioral data packaged as NWB and related standards.
International Brain Laboratory public data
The International Brain Laboratory public data releases expose standardized mouse decision-making experiments, including Neuropixels recordings, widefield calcium imaging, behavior, and session metadata accessed through the ONE API.
OpenNeuro
OpenNeuro is a free, open platform for sharing neuroimaging datasets, with public search, dataset pages, and download paths for web, S3, DataLad, and the OpenNeuro CLI.