i'm trying to simulate an oscillating/pitcing airfoil. I've 2 papers which does similar things at Re~1000. I've successfully validated my code against an oscillating cylinder before. Also at low frequencies for airfoil, the results are quite good. however at much higher frequencies, the results do not tally. i wonder what could be wrong.

Is there any things which need to be considered at high frequency simulation? usually, the CFL no. limits the time step. however, at high frequency, is the restriction more due to frequency? is there any rule to set the time step in this case?

Have you checked to ensure that your timestep is sufficiently small to capture the physical variations in time? Your code may have no practical CFL limit, but that does not mean that you can resolve a kiloHertz frequency with a time step of 1 sec. Generally, to get good resolution of a transient response I try to get at least 50-100 timesteps per the highest frequency in the simulation.

I am assuming you already followed ag's advice. You did get good results with low frequencies and your time step (at any frequency) should be set to insure a minimum number of steps per fundamental oscillation period.

However, keep in mind that the temporal resolution (per period) will generally have to be larger as you increase the frequency. When 50 step per period were enough for a reduced frequency of 0.3, you may need more time steps per period for a reduced frequency of 3. Why? Because, depending on the flow, an oscillation frequency as high as 3 may result in a nonlinear response. Maybe due to shock motion, maybe due to separation, or other effects. The flow will respond at higher harmonics (multiples of the oscillation frequency) and you need to resolve those as well, not just the airfoil oscillation frequency! Increase your number of time steps and observe the solution.

If this is bad news to you, here's some more: You may actually have to increase your grid resolution as well. If you keep increasing your temporal resolution, and you get a converged result that is still far off, it may be because your grid resolution is not sufficient to capture the essential unsteady effects (like shock motion, separation...). Temporal and spatial resolution go hand in hand. Neglecting either of them will limit the accuracy of your results.