sobolp.dim<-function(dims,p,bets) { r<-0 g<-0 dlen<-length(dims) over<-matrix(0,dlen,1) lowe<-matrix(0,dlen,1) for (i in 1:dlen){ d<-dims[i] betta<-bets[i] q<-p*(betta-d/p+d/2) musd<-2*pi^(d/2)/gamma(d/2) # upper bound if (p>1){ pote1<-((p-1)/p)*(g+r+d/2)/(betta+g) pote2<-(1/2)*(betta-r-d/2)/(betta+g) kup<-musd ku2<-musd a1<-(p*(q-r)/(p-1)-q-d)/(q+2*g) a2<-(q+p*(2*g+r)/(p-1)+d)/(q+2*g) b1<-(2*(q+g-r)-d)/(q+2*g) b2<-(2*(g+r)+d)/(q+2*g) I1<-(2*pi)^(d*(1-p/(p-1)))*kup*beta(a1,a2)/(q+2*g) I2<-(2*pi)^(-d)*ku2*beta(b1,b2)/(q+2*g) vakio<-((g+r+d/2)/(betta-r-d/2))^((betta-r-d/2)/(betta+g))*(betta+g)/(g+r+d/2) yla<-I1^pote1*I2^pote2*vakio over[i]<-yla } # lower bound if (p>1){ pote3<-(-1/p)*(g+r+d/2)/(betta+g) pote4<-(-1/2)*(betta-r-d/2)/(betta+g) kl3<-musd kl4<-musd kl5<-musd c1<-(p*(q+g)/(p-1)-q-p*(g+r)-d)/(q+2*g) c2<-(q+p*g/(p-1)+p*(g+r)+d)/(q+2*g) d1<-(2*(q+g)/(p-1)-2*r-d)/(q+2*g) d2<-(2*g/(p-1)+2*r+d)/(q+2*g) e1<-((q+g*(2-p))/(p-1)-2*r-d)/(q+2*g) e2<-(p*g/(p-1)+2*r+d)/(q+2*g) I3<-(2*pi)^(d*(1-p/(p-1)))*kl3*beta(c1,c2)/(q+2*g) I4<-(2*pi)^(d*(1-2/(p-1)))*kl4*beta(d1,d2)/(q+2*g) I5<-(2*pi)^(-d/(p-1))* kl5*beta(e1,e2)/(q+2*g) ala<-I3^pote3*I4^pote4*I5 lowe[i]<-ala } # L1 constant if (p==1){ kappa<-(betta-r-d/2)/(betta+g) i1<-(2*pi)^(-d) i2<-2*musd*(q-r)^2/((2*pi)^d*(2*g+2*r+d)*(q+2*g+r+d)*(2*q+2*g+d)) vakil1<-((g+r+d/2)/(betta-r-d/2))^kappa*(betta+g)/(g+r+d/2) lic<-(i2^(1/2))^kappa*i1^(1-kappa)*vakil1 lowe[i]<-lic over[i]<-lic } } return(list(lowe=lowe,over=over)) }