63{
65 double three = 3.0;
66 double norm;
67 double eps2;
68 double safmin;
69 double safmax;
70 double ssfmin;
71 double ssfmax;
72
73
76 safmax = one / safmin;
77
78
79 ssfmax = sqrt( safmax ) / three;
80 ssfmin = sqrt( safmin ) / eps2;
81
82
84 buff_d, inc_d,
85 buff_e, inc_e,
86 &norm );
87
88
89 if ( norm > ssfmax )
90 {
91 *sigma = ssfmax / norm;
92 }
93 else if ( norm < ssfmin )
94 {
95 *sigma = ssfmin / norm;
96 }
97 else
98 {
99 *sigma = one;
100 }
101
102 return FLA_SUCCESS;
103}
FLA_Error FLA_Norm1_tridiag_opd(int m_A, double *buff_d, int inc_d, double *buff_e, int inc_e, double *norm)
Definition FLA_Norm1_tridiag.c:111
double FLA_Mach_params_opd(FLA_Machval machval)
Definition FLA_Mach_params.c:74
double bl1_d1(void)
Definition bl1_constants.c:54