44 template <
typename ordinal_type,
typename value_type>
50 alphaIndex_(alphaIndex),
55 #ifdef HAVE_STOKHOS_DAKOTA 60 template <
typename ordinal_type,
typename value_type>
64 alphaIndex_(basis.alphaIndex_),
65 betaIndex_(basis.betaIndex_)
75 template <
typename ordinal_type,
typename value_type>
81 template <
typename ordinal_type,
typename value_type>
85 Teuchos::Array<value_type>& alpha,
86 Teuchos::Array<value_type>& beta,
87 Teuchos::Array<value_type>& delta,
88 Teuchos::Array<value_type>& gamma)
const 102 alpha[0] = getB(0)/getA(0);
104 delta[0] = getC(0)/getA(0);
109 alpha[i] = getB(i)/getA(i);
110 beta[i] = getD(i)/getA(i);
111 delta[i] = getC(i)/getA(i);
119 template <
typename ordinal_type,
typename value_type>
122 return 2*(n+1)*(n+alphaIndex_+betaIndex_+1)*(2*n+alphaIndex_+betaIndex_);
125 template <
typename ordinal_type,
typename value_type>
130 return -(2*n+a+b+1)*(a*a-b*b);
133 template <
typename ordinal_type,
typename value_type>
138 return poch3(2*n+a+b);
141 template <
typename ordinal_type,
typename value_type>
146 return 2*(n+a)*(n+b)*(2*n + a + b + 2);
149 template <
typename ordinal_type,
typename value_type>
152 return (m+2)*(m+1)*m;
155 template <
typename ordinal_type,
typename value_type>
156 Teuchos::RCP<Stokhos::OneDOrthogPolyBasis<ordinal_type,value_type> >
value_type poch3(value_type x) const
Teuchos::Array< value_type > delta
Recurrence coefficients.
Implementation of OneDOrthogPolyBasis based on the general three-term recurrence relationship: for ...
Teuchos::Array< value_type > beta
Recurrence coefficients.
GrowthPolicy
Enumerated type for determining Smolyak growth policies.
Teuchos::Array< value_type > alpha
Recurrence coefficients.
value_type getC(int n) const
virtual Teuchos::RCP< OneDOrthogPolyBasis< ordinal_type, value_type > > cloneWithOrder(ordinal_type p) const
Clone this object with the option of building a higher order basis.
value_type getA(int n) const
value_type getD(int n) const
virtual void setup()
Setup basis after computing recurrence coefficients.
JacobiBasis(ordinal_type p, value_type alphaIndex, value_type betaIndex, bool normalize=false, GrowthPolicy growth=SLOW_GROWTH)
Constructor.
virtual bool computeRecurrenceCoefficients(ordinal_type n, Teuchos::Array< value_type > &alpha, Teuchos::Array< value_type > &beta, Teuchos::Array< value_type > &delta, Teuchos::Array< value_type > &gamma) const
Compute recurrence coefficients.
~JacobiBasis()
Destructor.
ordinal_type p
Order of basis.
Teuchos::Array< value_type > gamma
Recurrence coefficients.
virtual void setSparseGridGrowthRule(LevelToOrderFnPtr ptr)
Set sparse grid rule.
value_type getB(int n) const