#enter the following nf<-3; #number of files to be read ng<-1; #number of functions of interest on each file ff<-c("try1","try2","try3"); #names of files to be read outfile<-"out"; #output file name #do not write anything below LF<-250; LG<-20; ntaper<-c(4,8,15); c<-'%'; cat(file=outfile,'\n'); g_rep(0,ng*nf); sdnum1_rep(0,ng*nf); sdnum2_rep(0,ng*nf); sdnum3_rep(0,ng*nf); sdnum4_rep(0,ng*nf); dim(g)_c(nf,ng); dim(sdnum1)_c(nf,ng); dim(sdnum2)_c(nf,ng); dim(sdnum3)_c(nf,ng); dim(sdnum4)_c(nf,ng); tr_function(x) { y <- x; dim(y) <- c(length(x), 1); y }; readdata<-function(j) { in1<<-scan(ff[j]); if (length(in1) != (ng*8)) { cat(file=outfile, "Error in input file ", ff[j], ": ", ng, "functions needed.\n"); q(); }; dim(in1)<<-c(8,ng); #reshape in1 g[j,]<<-in1[3,]; sdnum1[j,]<<-in1[5,]; sdnum2[j,]<<-in1[6,]; sdnum3[j,]<<-in1[7,]; sdnum4[j,]<<-in1[8,]; } apm<-function(i) { cat(file=outfile, append=T,'\nMoment ',i, '\n'); cat(file=outfile,append=T,'N.S.E. estimate Mean '); cat(file=outfile,append=T,'N.S.E. Equality chi sq\n'); for (k in 1:4) { if (k==1) cat(file=outfile, append=T,'i.i.d. '); else cat(file=outfile, append=T,ntaper[k-1], c,' taper '); sdnum_switch(k,sdnum1,sdnum2,sdnum3,sdnum4); wtsum_sum(1/(sdnum[,i])^2); eg_sum( g[,i]/(sdnum[,i])^2 )/wtsum; nse_1/wtsum^(1/2); cat(file=outfile, append=T,eg,' ',nse,' '); gvar<<-rep(0,(nf-1)*(nf-1)); dim(gvar)<<-c(nf-1,nf-1); for (j in 1:(nf-2)) { gvar[j,j]_(sdnum[j,i])^2+(sdnum[j+1,i])^2; gvar[j,j+1]_-(sdnum[j+1,i])^2; gvar[j+1,j]_gvar[j,j+1]; } j_nf-1; gvar[nf-1,nf-1]_(sdnum[nf-1,i])^2+(sdnum[nf,i])^2; ginv_solve(gvar); g1_g[1:(nf-1),i]; g2_g[2:nf,i]; cstat_(g2-g1)%*%ginv%*%tr(g2-g1); p_1-pchisq(cstat,(nf-1)); cat(file=outfile, append=T,p,'\n'); } # for k 1:4 }; #apm for (j in 1:nf) readdata(j); for (i in 1:ng) { apm(i); } #clean up #remove(objects()); q();