cgv
Loading...
Searching...
No Matches
model_comp.h
1#pragma once
2#include <cmath>
3
4
5namespace cgv{
6 namespace math {
7
12template<typename T>
13T AIC(int k, const T& L)
14{
15 return (const T)2.0*(T)k - (T)2*(T)log((double)L);
16}
17
18
24template<typename T>
25T AIC_ls(int k, int n, const T&RSS)
26{
27 return 2*k + (T)n*log(RSS/(T)n);
28}
29
34template<typename T>
35T AICc(int k, int n, const T& L)
36{
37 return AIC<T>(k,L) + (T)(2*k*(k+1))/((T)(n-k-1));
38}
39
44template<typename T>
45T AICc_ls(int k, int n, const T&RSS)
46{
47 return (T)log((T)RSS/(T)n) + (T)(n+k)/(T)(n-k-2) ;
48}
49
54template<typename T>
55T AICu_ls(int k, int n, const T&RSS)
56{
57 return (T)log((T)RSS/(n-k)) + (T)(n+k)/(T)(n-k-2) ;
58}
59
63template<typename T>
64T BIC(int k, int n, const T& L)
65{
66 return -(T)2*(T)log((T)L) + (T)k*log((T)n);
67}
68
73template<typename T>
74T BIC_ls(int k, int n, const T& RSS)
75{
76 return (T)n*log((T)RSS/(T)n) + (T)k*log((T)n);
77}
78
79 }
80}
81
82
83
the cgv namespace
Definition print.h:11