Esempio n. 1
0
 def d_eqn_poly(self):
     fn_name = 'd_eqn_poly_def_'+self.friction_model
     if not hasattr(self,fn_name):
         d_eqn = Eq(1/self.u_eqn_geom().rhs**self.u_dyn_exponent,
                       1/(self.u_eqn_dyn().rhs))
         setattr(self, fn_name,
                  Eq(d_eqn.as_poly(d).args[0])
                 )
     return getattr(self,fn_name)
Esempio n. 2
0
 def u_eqn_poly_manning(self):
     u_eqn = Eq(self.d_eqn_geom().rhs,self.d_eqn_dyn().rhs)
     tmp = u_eqn.as_poly(1/sy.sqrt(u)).args[0]
     return Eq((tmp.subs(u,t**2)*t**5).simplify().subs(t,sy.sqrt(u))
                  *n_m**sy.Rational(3,2))
Esempio n. 3
0
 def u_eqn_poly_chezy(self):
     u_eqn = Eq(self.d_eqn_geom().rhs,self.d_eqn_dyn().rhs)
     return Eq(u_eqn.as_poly(1/sy.sqrt(u)).args[0]*u**3).expand()