public double NominalMmax() { return ((Steel.fyd - 0.85 * Concrete.fcd) * ReinforcingBars.Sum(rb => rb.As * (Section.h / 2.0 - rb.di))); }
public double NominalPmax() { return (Concrete.beta * Concrete.fcd * (Section.b * Section.h - ReinforcingBars.Sum(rb => rb.As)) + ReinforcingBars.Sum(rb => rb.As) * Steel.fyd); }
public double NominalMmin() { return (Steel.fyd * ReinforcingBars.Sum(rb => rb.As * (rb.di - Section.h / 2.0))); }
public double NominalPmin() { return(-ReinforcingBars.Sum(rb => rb.As) * Steel.fyd); }
public double MomentCapacity(double c) { return (ConcreteForce(c) * (Section.h / 2.0 - Concrete.k1 * c / 2.0) + ReinforcingBars.Sum(rb => ReinforcingForce(c, rb.di, rb.As) * (Section.h / 2.0 - rb.di))); }
public double AxialCapacity(double c) { return (ConcreteForce(c) + ReinforcingBars.Sum(rb => ReinforcingForce(c, rb.di, rb.As))); }