Utility routines for Aov.
Note that only public
routines are reliable and tested.
Other ones are kept here for past/future development.
(C) Alex Schwarzenberg-Czerny, 2005 alex@camk.edu.pl Stable index sorting by merge sort. Requires extra memory (inb)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=4), | intent(in) | :: | dat(:) | unsorted data |
||
integer, | intent(out) | :: | ina(:) | sort index |
(C) Alex Schwarzenberg-Czerny, 2005 alex@camk.edu.pl Stable index sorting by merge sort. Requires extra memory (inb)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=8), | intent(in) | :: | dat(:) | unsorted data |
||
integer, | intent(out) | :: | ina(:) | sort index |
Find key position in a keyword dictionary. Restriction: dictionary entries are of equal size, all kept in one string.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | dict | Dictionary string |
||
integer, | intent(in) | :: | isize | size of keys |
||
character(len=*), | intent(in) | :: | key | key string |
Key position
Change string case to lower
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | str | input string |
result output string
Change string case to upper
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | str | input string |
result output string
overdetermined linear system by accurate Givens rotations. Prior to GIVENS call m-times GIVENSA in order to build the triangle system R (C) Alex Schwarzenberg-Czerny,2000 alex@camk.edu.pl
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=SP), | intent(inout) | :: | r(:,:) | r(n1,:) - unknowns (r(k,k),k=1,n) variances (r(:k,k),k=1,n) half of covariance matrix (r(k+1:,k),k=2,n) half of inverse triangle root Q r(n1,n1) - chi^2/idf (=RHS variance=std.dev^2) For idf<0: ((r(j,k),j=1,k),k=1,n) inverse triangle root Q |
||
integer, | intent(in) | :: | idf | idf - >0 solve normal equations for idf degrees of freedom <0 and r(n1,n1)=1: inverse triangle matrix R |
||
real(kind=SP), | intent(out) | :: | detnth | =Det(R)^(1/n) - n-th root of determinant |
result condition ratio (min eigenv/max eigenv), 0 signalls singular system
overdetermined linear system by Givens rotations, a state-of-art algorithm. Routine takes current observation equation from a and accumulates it into r: (C) Alex Schwarzenberg-Czerny,2000 alex@camk.edu.pl
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=SP), | intent(in) | :: | a(:) | a(n1) - an equation with its RHS as a(n1) element, multiplied by sqrt of weight. Note: sum of all weights must equall no.observations, lest GIVENS returns wrong covariance estimates. |
||
real(kind=SP), | intent(inout) | :: | r(:,:) |