forked from ddzumajo/python-scripts
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcovariance_vv.py
More file actions
35 lines (23 loc) · 785 Bytes
/
covariance_vv.py
File metadata and controls
35 lines (23 loc) · 785 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# -*- coding: utf-8 -*-
"""
This script computes the covariance of fluctuations between two vectors.
The output is a vector.
Example: covariance_centerofmass = <mu*nu> - <mu><nu>
Author: DiegoDZ
Date: 29 june 2016
Modified: 16 december 2016
run: >> python convariance_vv.py vector1 vector2 > output_file
"""
import numpy as np
import sys
def covariance(arg1, arg2):
# load file
datafile1 = np.loadtxt(str(arg1))
datafile2 = np.loadtxt(str(arg2))
# define number snapshots
number_snapshots = len(datafile1)
covariance = np.sum(datafile1[:,1] * datafile2[:,1]) / number_snapshots - np.sum(datafile1[:,1]) * np.sum(datafile2[:,1]) / number_snapshots ** 2
return covariance
(covariance) = covariance(sys.argv[1], sys.argv[2])
print covariance
#EOF