예제 #1
0
        internal override double BerechneAuftriebsdrehmoment(Punkte punkte, double v, double alpha, double beta, Integration integrator)
        {
            Func <double, double> integrand1 = l => Parameter.rhoL / 2 * cA(l, alpha, beta) * Math.Pow(vW(l, v), 2) * profil(l);
            Func <double, double> integrand2 = l => Parameter.rhoL / 2 * Math.Cos(Punkte.Phi5(beta)) * l * cA(l, alpha, beta) * Math.Pow(vW(l, v), 2) * profil(l);

            return(-punkte.P5b.x * integrator.Integriere(integrand1, 0.0, Parameter.l5c) - integrator.Integriere(integrand2, 0.0, Parameter.l5c));
        }
예제 #2
0
 protected override double cA(double l, double alpha, double beta)
 {
     if (l < 0.0)
     {
         throw new ValueOutOfRangeException("Das Argument von cA_T2 liegt außerhalb des erlaubten Bereichs.");
     }
     else if (l <= Parameter.l5c)
     {
         return(cA_Basis(Punkte.Phi5(beta)));
     }
     else
     {
         throw new ValueOutOfRangeException("Das Argument von cA_T2 liegt außerhalb des erlaubten Bereichs.");
     }
 }
예제 #3
0
 double BerechneWindschattenLaenge(double y1, double y2, double K, double beta)
 {
     return((y1 + K - y2) / Math.Sin(Punkte.Phi5(beta)));
 }