Interesting question. This is just a off-the-cuff thought, I don't have specific experience that would support it, so take my advice without warranty. But my first thought in approaching the problem might be to convert it into a more course grained 1-of-K encoding of features.
feature 1 = 1 if wind is N (0 otherwise)
feature 2 = 1 if wind is NE (0 otherwise)
feature 3 = 1 if wind is E (0 otherwise)
And so on...
I could envision maybe 8 features, if you think fine tuned wind direction is important I could envision upping that to 12 or 16 features.
At least intuitively this makes sense, a warm southerly wind might have different properties than a cold westerly, and this approach would make that distinction easy to learn, and be linearly separable.
The interaction between sin and cos doesn't give me a warm and fuzzy feeling about how well an algorithm might learn from it.
Some concerns about this approach to think about: it might be increasing the dimensionality of the problem causing some unwanted side effects in learning (especially if you have a small data set). It might also eliminate the finer details that are perhaps important to the problem.
Make sure to play with some different approaches. Find a decent learning algorithm and hold that static while you play with your input features and see what improves things or otherwise.
Post back here after you do some analysis and let us know what ended up working or not.