Smooth Cp and Ct tables

I am using Cp and Ct tables to do linearization of models. I am using the data
in
ROSCO/Examples/example_inputs/Cp_Ct_Cq.NREL5MW.txt at main · NREL/ROSCO · GitHub.
I have included plots of both Cp, dCp/dLambda and dCp/dBeta. As seen in the
attached figures the gradients are a bit bumpy in some areas so I am afraid this
will give bad linearized models. Is there any more smooth data available? Or
perhaps a fitted (analytical) function?



Dear @Torben.Knudsen,

How are you computing the gradients of the Cp surface?

Best regards,

Dear Jason

I use matlab gradient like

[DCpDLambdaMat,DCpDBetaMat]= gradient(CpMat,LambdaVec,BetaVec);
[DCtDLambdaMat,DCtDBetaMat]= gradient(CtMat,LambdaVec,BetaVec);

This is a simple numerical gradient calculation.

Hi Torben,

The sampling used to compute Cp surfaces in the ROSCO toolbox is hard coded here: ROSCO/rosco/toolbox/turbine.py at cfda6af95cda15616b840199c24fbd208e63893c · NREL/ROSCO · GitHub

The ROSCO toolbox computes the gradients of the Cp surface for calculating pitch control gains here: ROSCO/rosco/toolbox/turbine.py at cfda6af95cda15616b840199c24fbd208e63893c · NREL/ROSCO · GitHub

The sampling in ROSCO usually works well enough for our purposes, but in past (unpublished) work, I have fit a Cp surface using linear regression and quadratic basis functions with decent success. In some of our other tools, we can dynamically set the number of samples in the pitch, TSR dimensions. I have seen bad gradients when we use less than 10 samples in each dimension.

I hope this helps.

Best, Dan

Daniel and Jason

Thanks for the response. It gives some hints even though it is not a quick fix. Do you have some comments to if my gradients in the figures are realistic or to bumpy?

like

Jonkman, Jason reacted to your message:

I’m not sure how you’re planning to use the gradients, but for controller tuning purposes, I think they look good to me.

1 Like