diff --git a/bifacial_radiance/main.py b/bifacial_radiance/main.py
index 6d6b81f2..22955af0 100644
--- a/bifacial_radiance/main.py
+++ b/bifacial_radiance/main.py
@@ -2769,9 +2769,9 @@ def makeScene1axis(self, trackerdict=None, module=None, sceneDict=None,
def analysis1axis(self, trackerdict=None, singleindex=None, accuracy='low',
customname=None, modWanted=None, rowWanted=None,
sensorsy=9, sensorsx=1,
- modscanfront = None, modscanback = None, relative=False,
+ modscanfront=None, modscanback=None, relative=False,
debug=False, sceneNum=0, append=True,
- frontsurfaceoffset = None, backsurfaceoffset=None):
+ frontsurfaceoffset=None, backsurfaceoffset=None):
"""
Loop through trackerdict and runs linescans for each scene and scan in there.
If multiple scenes exist in the trackerdict, only ONE scene can be analyzed at a
@@ -3635,7 +3635,7 @@ def _makeSceneNxR(self, modulename=None, sceneDict=None, radname=None, addhubhei
''' INITIALIZE VARIABLES '''
text = '!xform '
- text += '-rx %s -t %s %s %s ' %(tilt, 0, 0, hubheight)
+ text += '-rx %s -t %s %s %s ' %(tilt, 0, 0, np.float16(hubheight))
# create nMods-element array along x, nRows along y. 1cm module gap.
text += '-a %s -t %s 0 0 -a %s -t 0 %s 0 ' %(nMods, self.module.scenex, nRows, pitch)
@@ -3674,7 +3674,7 @@ def _makeSceneNxR(self, modulename=None, sceneDict=None, radname=None, addhubhei
with open(radfile, 'wb') as f:
f.write(text.encode('ascii'))
- self.gcr = self.module.sceney / pitch
+ self.gcr = round(self.module.sceney / pitch, 6)
self.text = text
self.radfiles = radfile
self.sceneDict = sceneDict
@@ -4405,7 +4405,7 @@ def results(self):
def __printval__(self, attr):
try:
t = getattr(self,attr, None)[0]
- except (TypeError, KeyError):
+ except (TypeError, KeyError, IndexError):
t = None
if isinstance(t, (np.floating, float)) :
return np.array(getattr(self,attr)).round(3).tolist()
@@ -4747,10 +4747,14 @@ def _saveResults(self, data=None, reardata=None, savefile=None, RGB = False):
# rename columns if only rear data was originally passed
if rearswapflag:
- df = df.rename(columns={'Wm2Front':'Wm2Back','mattype':'rearMat'})
+ df = df.rename(columns={'Wm2Front':'Wm2Back','mattype':'rearMat',
+ 'x':'rearX', 'y':'rearY', 'z':'rearZ'})
# set attributes of analysis to equal columns of df
for col in df.columns:
- setattr(self, col, np.array(df[col])) #cdeline: changed from list to np.array on 3/16/24
+ setattr(self, col, np.array(df[col])) #cdeline: changed from list to np.array on 3/16/24
+ # swap back for the savefile
+ if rearswapflag:
+ df = df.rename(columns={'rearX':'x', 'rearY':'y', 'rearZ':'z'})
# only save a subset
df = df.drop(columns=['backRatio'], errors='ignore')
df.to_csv(os.path.join("results", savefile), sep=',',
@@ -5148,15 +5152,15 @@ def _checkSensors(sensors):
print("Final Start Coordinate Front", xstartfront, ystartfront, zstartfront)
print("Increase Coordinates", xinc_front, yinc_front, zinc_front)
- frontscan = {'xstart': firstsensorxstartfront, 'ystart': firstsensorystartfront,
- 'zstart': firstsensorzstartfront,
- 'xinc':xinc_front, 'yinc': yinc_front, 'zinc':zinc_front,
+ frontscan = {'xstart': np.float16(firstsensorxstartfront), 'ystart': np.float16(firstsensorystartfront),
+ 'zstart': np.float16(firstsensorzstartfront),
+ 'xinc': np.float16(xinc_front), 'yinc': np.float16(yinc_front), 'zinc': np.float16(zinc_front),
'sx_xinc':sx_xinc_front, 'sx_yinc':sx_yinc_front,
'sx_zinc':sx_zinc_front,
'Nx': sensorsx_front, 'Ny':sensorsy_front, 'Nz':1, 'orient':front_orient }
- backscan = {'xstart':firstsensorxstartback, 'ystart': firstsensorystartback,
- 'zstart': firstsensorzstartback,
- 'xinc':xinc_back, 'yinc': yinc_back, 'zinc':zinc_back,
+ backscan = {'xstart': np.float16(firstsensorxstartback), 'ystart': np.float16(firstsensorystartback),
+ 'zstart': np.float16(firstsensorzstartback),
+ 'xinc': np.float16(xinc_back), 'yinc': np.float16(yinc_back), 'zinc': np.float16(zinc_back),
'sx_xinc':sx_xinc_back, 'sx_yinc':sx_yinc_back,
'sx_zinc':sx_zinc_back,
'Nx': sensorsx_back, 'Ny':sensorsy_back, 'Nz':1, 'orient':back_orient }
@@ -5252,9 +5256,9 @@ def groundAnalysis(self, scene, modWanted=None, rowWanted=None,
yinc = groundsensorspacing * np.cos((azimuth)*dtor)
zinc = 0
- groundscan = {'xstart': xstart, 'ystart': ystart,
- 'zstart': zstart,
- 'xinc':xinc, 'yinc': yinc, 'zinc':zinc,
+ groundscan = {'xstart': np.float16(xstart), 'ystart': np.float16(ystart),
+ 'zstart': np.float16(zstart),
+ 'xinc':np.float16(xinc), 'yinc': np.float16(yinc), 'zinc':np.float16(zinc),
'sx_xinc':0, 'sx_yinc':0,
'sx_zinc':0,
'Nx': sensorsgroundx, 'Ny':sensorsground, 'Nz':1,
@@ -5263,7 +5267,7 @@ def groundAnalysis(self, scene, modWanted=None, rowWanted=None,
return groundscan
def analyzeRow(self, octfile, scene, rowWanted=None, name=None,
- sensorsy=None, sensorsx=None ):
+ sensorsy=9, sensorsx=1 ):
'''
Function to Analyze every module in the row.
diff --git a/docs/sphinx/source/whatsnew/v0.5.0.rst b/docs/sphinx/source/whatsnew/v0.5.0.rst
index 691efb65..cf2775ef 100644
--- a/docs/sphinx/source/whatsnew/v0.5.0.rst
+++ b/docs/sphinx/source/whatsnew/v0.5.0.rst
@@ -41,6 +41,9 @@ Bug fixes
* Fixed typo on Opacity calculation factor (:issue:`426`)
* Updated Github Actions to use Node20: checkout@v4, setup-python@v5, coactions/setup-xvfb, setup-buildx-action@v3 (:pull:`517`)
* Fix PerformanceWarning and SettingWithCopyWarning (:issue:`515`)
+* Fix error where rearX, rearY, rearZ parameters are not properly saved (:issue:`501`)
+* More appropriate significant digits saved and displayed. (this changed some x,y,z values by < .003 due to rounding differences.) (:pull:`558`)
+* :py:func:`bifacial_radiance.AnalysisObj.analyzeRow` default values changed for `sensorsy` and `sensorsx` from `None` to 9 and 1, respectively (:pull:`558`)
Documentation
~~~~~~~~~~~~~~
diff --git a/docs/tutorials/21 - Weather to Module Performance.ipynb b/docs/tutorials/21 - Weather to Module Performance.ipynb
index 168a1fdf..6bdea5d7 100644
--- a/docs/tutorials/21 - Weather to Module Performance.ipynb
+++ b/docs/tutorials/21 - Weather to Module Performance.ipynb
@@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
- "execution_count": 2,
+ "execution_count": 1,
"id": "07a01d38-bfea-453c-9040-72f6cc872bf3",
"metadata": {},
"outputs": [
@@ -41,7 +41,7 @@
},
{
"cell_type": "code",
- "execution_count": 3,
+ "execution_count": 2,
"id": "23074a65",
"metadata": {},
"outputs": [
@@ -69,7 +69,7 @@
},
{
"cell_type": "code",
- "execution_count": 4,
+ "execution_count": 3,
"id": "51fe7bf3",
"metadata": {},
"outputs": [
@@ -79,7 +79,7 @@
"'0.4.4.dev25+g9486645.d20240925'"
]
},
- "execution_count": 4,
+ "execution_count": 3,
"metadata": {},
"output_type": "execute_result"
}
@@ -103,7 +103,7 @@
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": 4,
"id": "1423a9f2",
"metadata": {},
"outputs": [],
@@ -124,7 +124,7 @@
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 5,
"id": "fd6a686c",
"metadata": {},
"outputs": [
@@ -154,7 +154,7 @@
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 6,
"id": "250eb585",
"metadata": {},
"outputs": [
@@ -194,7 +194,7 @@
},
{
"cell_type": "code",
- "execution_count": 8,
+ "execution_count": 7,
"id": "9370c9c2",
"metadata": {
"scrolled": true
@@ -226,7 +226,7 @@
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 8,
"id": "111bdbd2",
"metadata": {},
"outputs": [],
@@ -236,7 +236,7 @@
},
{
"cell_type": "code",
- "execution_count": 10,
+ "execution_count": 9,
"id": "1f2e3cd4",
"metadata": {},
"outputs": [
@@ -267,7 +267,7 @@
},
{
"cell_type": "code",
- "execution_count": 11,
+ "execution_count": 10,
"id": "10e35e7c",
"metadata": {},
"outputs": [
@@ -300,7 +300,7 @@
},
{
"cell_type": "code",
- "execution_count": 12,
+ "execution_count": 11,
"id": "29c4a111",
"metadata": {},
"outputs": [
@@ -321,7 +321,7 @@
},
{
"cell_type": "code",
- "execution_count": 13,
+ "execution_count": 12,
"id": "71bbd496",
"metadata": {},
"outputs": [
@@ -338,33 +338,37 @@
"\n",
"Linescan in process: 1axis_2021-01-13_1100_Scene0_Row1_Module3_Front\n",
"Linescan in process: 1axis_2021-01-13_1100_Scene0_Row1_Module3_Back\n",
- "Saved: results\\irr_1axis_2021-01-13_1100_Scene0_Row1_Module3.csv\n",
- "Index: 2021-01-13_1100. Wm2Front: 254.37783333333334. Wm2Back: 40.0465\n",
+ "Saved: results\\irr_1axis_2021-01-13_1100_Scene0_Row1_Module3_Front.csv\n",
+ "Saved: results\\irr_1axis_2021-01-13_1100_Scene0_Row1_Module3_Back.csv\n",
+ "Index: 2021-01-13_1100. Wm2Front: 254.26609999999997. Wm2Back: 39.97652333333334\n",
"Linescan in process: 1axis_2021-01-13_1200_Scene0_Row1_Module3_Front\n",
"Linescan in process: 1axis_2021-01-13_1200_Scene0_Row1_Module3_Back\n",
- "Saved: results\\irr_1axis_2021-01-13_1200_Scene0_Row1_Module3.csv\n",
- "Index: 2021-01-13_1200. Wm2Front: 253.61329999999998. Wm2Back: 37.96939666666667\n",
+ "Saved: results\\irr_1axis_2021-01-13_1200_Scene0_Row1_Module3_Front.csv\n",
+ "Saved: results\\irr_1axis_2021-01-13_1200_Scene0_Row1_Module3_Back.csv\n",
+ "Index: 2021-01-13_1200. Wm2Front: 253.4217. Wm2Back: 38.20968333333333\n",
"Linescan in process: 1axis_2021-01-13_1100_Scene1_Row1_Module1_Front\n",
"Linescan in process: 1axis_2021-01-13_1100_Scene1_Row1_Module1_Back\n",
- "Saved: results\\irr_1axis_2021-01-13_1100_Scene1_Row1_Module1.csv\n",
- "Index: 2021-01-13_1100. Wm2Front: 253.51493333333335. Wm2Back: 52.92065666666667\n",
+ "Saved: results\\irr_1axis_2021-01-13_1100_Scene1_Row1_Module1_Front.csv\n",
+ "Saved: results\\irr_1axis_2021-01-13_1100_Scene1_Row1_Module1_Back.csv\n",
+ "Index: 2021-01-13_1100. Wm2Front: 253.54973333333336. Wm2Back: 0.0\n",
"Linescan in process: 1axis_2021-01-13_1200_Scene1_Row1_Module1_Front\n",
"Linescan in process: 1axis_2021-01-13_1200_Scene1_Row1_Module1_Back\n",
- "Saved: results\\irr_1axis_2021-01-13_1200_Scene1_Row1_Module1.csv\n",
- "Index: 2021-01-13_1200. Wm2Front: 252.98073333333332. Wm2Back: 50.79347333333333\n"
+ "Saved: results\\irr_1axis_2021-01-13_1200_Scene1_Row1_Module1_Front.csv\n",
+ "Saved: results\\irr_1axis_2021-01-13_1200_Scene1_Row1_Module1_Back.csv\n",
+ "Index: 2021-01-13_1200. Wm2Front: 252.57203333333334. Wm2Back: 0.0\n"
]
}
],
"source": [
- "# Compile both scenes into one octfile. Run 2 different analyses, one on each scene\n",
+ "# Compile both scenes into one octfile. Run 2 different analyses, one on each scene with different front and rear y scan\n",
"trackerdict = demo.makeOct1axis()\n",
- "trackerdict = demo.analysis1axis(sensorsy=3, append=False)\n",
- "trackerdict = demo.analysis1axis(sensorsy=3, sceneNum=1)"
+ "trackerdict = demo.analysis1axis(sensorsy=[1,3], append=False)\n",
+ "trackerdict = demo.analysis1axis(sensorsy=[3,2], sceneNum=1)"
]
},
{
"cell_type": "code",
- "execution_count": 14,
+ "execution_count": 13,
"id": "a3a10f10",
"metadata": {},
"outputs": [
@@ -374,10 +378,10 @@
"text": [
"Linescan in process: 1axis_groundscan_2021-01-13_1100Silvanas__Row1_Module1_Front\n",
"Saved: results\\irr_1axis_groundscan_2021-01-13_1100Silvanas__Row1_Module1.csv\n",
- "Index: 2021-01-13_1100. Wm2Ground: 204.88986. sensorsground: 10\n",
+ "Index: 2021-01-13_1100. Wm2Ground: 204.79288999999997. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_2021-01-13_1200Silvanas__Row1_Module1_Front\n",
"Saved: results\\irr_1axis_groundscan_2021-01-13_1200Silvanas__Row1_Module1.csv\n",
- "Index: 2021-01-13_1200. Wm2Ground: 237.75890999999996. sensorsground: 10\n"
+ "Index: 2021-01-13_1200. Wm2Ground: 237.48879000000002. sensorsground: 10\n"
]
}
],
@@ -388,7 +392,7 @@
},
{
"cell_type": "code",
- "execution_count": 15,
+ "execution_count": 14,
"id": "2942a802",
"metadata": {},
"outputs": [
@@ -418,17 +422,17 @@
"
modNum | \n",
" rowNum | \n",
" sceneNum | \n",
+ " Wm2Front | \n",
+ " Wm2Back | \n",
+ " backRatio | \n",
" x | \n",
" y | \n",
" z | \n",
- " rearZ | \n",
" mattype | \n",
- " rearMat | \n",
- " Wm2Front | \n",
- " Wm2Back | \n",
- " backRatio | \n",
" rearX | \n",
" rearY | \n",
+ " rearZ | \n",
+ " rearMat | \n",
" surf_azm | \n",
" surf_tilt | \n",
" theta | \n",
@@ -442,17 +446,17 @@
" 3 | \n",
" 1 | \n",
" 0 | \n",
- " [0.3734448, 0.01462469, -0.3441954] | \n",
- " [2.28669e-17, 8.955042e-19, -2.107589e-17] | \n",
- " [1.166863, 1.51507, 1.863277] | \n",
- " [1.151075, 1.499282, 1.847489] | \n",
- " [a2.0.a0.test-module.6457, a2.0.a0.test-module... | \n",
+ " [254.26609999999997] | \n",
+ " [39.59574, 39.60611, 40.72772] | \n",
+ " 0.157223 | \n",
+ " [0.01462555] | \n",
+ " [0.0] | \n",
+ " [1.514648] | \n",
+ " [a2.0.a0.test-module.6457] | \n",
+ " [0.3581543, -0.0007324219, -0.3596191] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [1.151367, 1.499512, 1.847656] | \n",
" [a2.0.a0.test-module.2310, a2.0.a0.test-module... | \n",
- " [253.9854, 254.9895, 254.1586] | \n",
- " [39.46907, 39.66438, 41.00605] | \n",
- " [0.1553983599121843, 0.15555238332408464, 0.16... | \n",
- " [0.3581237, -0.000696414, -0.3595166] | \n",
- " [2.192875e-17, -4.264306e-20, -2.201404e-17] | \n",
" 90.0 | \n",
" 44.14 | \n",
" -44.14 | \n",
@@ -464,17 +468,17 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-14.62656, -14.98538, -15.3442] | \n",
- " [2.28669e-17, 8.955042e-19, -2.107589e-17] | \n",
- " [2.166863, 2.51507, 2.863277] | \n",
- " [2.151075, 2.499282, 2.847489] | \n",
+ " [253.0651, 253.8192, 253.7649] | \n",
+ " [0.0, 0.0] | \n",
+ " 0.0 | \n",
+ " [-14.625, -14.98389, -15.34277] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [2.166016, 2.51416, 2.862305] | \n",
" [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... | \n",
- " [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... | \n",
- " [253.0249, 253.8044, 253.7155] | \n",
- " [52.58993, 53.09413, 53.07791] | \n",
- " [0.20784405865170325, 0.20919227880888272, 0.2... | \n",
- " [-14.64188, -15.0007, -15.35952] | \n",
- " [2.192875e-17, -4.264306e-20, -2.201404e-17] | \n",
+ " [-14.75781, -15.23633] | \n",
+ " [0.0, 0.0] | \n",
+ " [2.267578, 2.731934] | \n",
+ " [a0.0.a0.test.6457, a0.0.a0.test.6457] | \n",
" 90.0 | \n",
" 44.14 | \n",
" -44.14 | \n",
@@ -486,13 +490,13 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-15.0, -14.44444, -13.88889, -13.33333, -12.7... | \n",
- " [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... | \n",
- " [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... | \n",
+ " [199.1224, 201.452, 204.5499, 206.0879, 207.14... | \n",
" NaN | \n",
- " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
- " [199.43860000000004, 201.74889999999996, 204.7... | \n",
+ " [-15.0, -14.44434, -13.88867, -13.33301, -12.7... | \n",
+ " [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... | \n",
+ " [0.04998779, 0.04998779, 0.04998779, 0.0499877... | \n",
+ " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
@@ -508,17 +512,17 @@
" 3 | \n",
" 1 | \n",
" 0 | \n",
- " [0.473756, 0.007594116, -0.4585678] | \n",
- " [2.900919e-17, 4.650055e-19, -2.807918e-17] | \n",
- " [1.338767, 1.519579, 1.700391] | \n",
- " [1.318255, 1.499068, 1.67988] | \n",
- " [a2.0.a0.test-module.6457, a2.0.a0.test-module... | \n",
+ " [253.4217] | \n",
+ " [37.89736, 37.81097, 38.92072] | \n",
+ " 0.150775 | \n",
+ " [0.007595062] | \n",
+ " [0.0] | \n",
+ " [1.519531] | \n",
+ " [a2.0.a0.test-module.6457] | \n",
+ " [0.4658203, -0.0002441406, -0.4663086] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [1.318359, 1.499146, 1.679932] | \n",
" [a2.0.a0.test-module.2310, a2.0.a0.test-module... | \n",
- " [253.5078, 253.6133, 253.7188] | \n",
- " [37.62749, 37.65656, 38.62414] | \n",
- " [0.14842676072783273, 0.14847964014647438, 0.1... | \n",
- " [0.4658003, -0.0003616246, -0.4665235] | \n",
- " [2.852204e-17, -2.214312e-20, -2.856633e-17] | \n",
" 90.0 | \n",
" 21.20 | \n",
" -21.20 | \n",
@@ -530,17 +534,17 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-14.52624, -14.99241, -15.45857] | \n",
- " [2.900919e-17, 4.650055e-19, -2.807918e-17] | \n",
- " [2.338767, 2.519579, 2.700391] | \n",
- " [2.318255, 2.499068, 2.67988] | \n",
+ " [252.4514, 252.5719, 252.6928] | \n",
+ " [0.0, 0.0] | \n",
+ " 0.0 | \n",
+ " [-14.52344, -14.9895, -15.45557] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [2.337891, 2.518677, 2.699463] | \n",
" [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... | \n",
- " [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... | \n",
- " [252.92009999999996, 252.98069999999998, 253.0... | \n",
- " [50.52337, 50.86739, 50.98965999999999] | \n",
- " [0.19975941113651652, 0.20107142137158537, 0.2... | \n",
- " [-14.5342, -15.00036, -15.46652] | \n",
- " [2.852204e-17, -2.214312e-20, -2.856633e-17] | \n",
+ " [-14.6875, -15.30908] | \n",
+ " [0.0, 0.0] | \n",
+ " [2.378906, 2.619995] | \n",
+ " [a0.0.a0.test.6457, a0.0.a0.test.6457] | \n",
" 90.0 | \n",
" 21.20 | \n",
" -21.20 | \n",
@@ -552,13 +556,13 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-15.0, -14.44444, -13.88889, -13.33333, -12.7... | \n",
- " [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... | \n",
- " [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... | \n",
+ " [227.9177, 230.1437, 233.8727, 236.2223, 238.9... | \n",
" NaN | \n",
- " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
- " [227.8342, 230.13659999999996, 233.87209999999... | \n",
+ " [-15.0, -14.44434, -13.88867, -13.33301, -12.7... | \n",
+ " [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... | \n",
+ " [0.04998779, 0.04998779, 0.04998779, 0.0499877... | \n",
+ " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
@@ -580,96 +584,88 @@
"4 2021-01-13_1200 1axis_2021-01-13_1200_Scene1 1 1 \n",
"5 2021-01-13_1200 1axis_groundscan_2021-01-13_1200Silvanas_ 1 1 \n",
"\n",
- " sceneNum x \\\n",
- "0 0 [0.3734448, 0.01462469, -0.3441954] \n",
- "1 1 [-14.62656, -14.98538, -15.3442] \n",
- "2 1 [-15.0, -14.44444, -13.88889, -13.33333, -12.7... \n",
- "3 0 [0.473756, 0.007594116, -0.4585678] \n",
- "4 1 [-14.52624, -14.99241, -15.45857] \n",
- "5 1 [-15.0, -14.44444, -13.88889, -13.33333, -12.7... \n",
+ " sceneNum Wm2Front \\\n",
+ "0 0 [254.26609999999997] \n",
+ "1 1 [253.0651, 253.8192, 253.7649] \n",
+ "2 1 [199.1224, 201.452, 204.5499, 206.0879, 207.14... \n",
+ "3 0 [253.4217] \n",
+ "4 1 [252.4514, 252.5719, 252.6928] \n",
+ "5 1 [227.9177, 230.1437, 233.8727, 236.2223, 238.9... \n",
+ "\n",
+ " Wm2Back backRatio \\\n",
+ "0 [39.59574, 39.60611, 40.72772] 0.157223 \n",
+ "1 [0.0, 0.0] 0.0 \n",
+ "2 NaN NaN \n",
+ "3 [37.89736, 37.81097, 38.92072] 0.150775 \n",
+ "4 [0.0, 0.0] 0.0 \n",
+ "5 NaN NaN \n",
+ "\n",
+ " x \\\n",
+ "0 [0.01462555] \n",
+ "1 [-14.625, -14.98389, -15.34277] \n",
+ "2 [-15.0, -14.44434, -13.88867, -13.33301, -12.7... \n",
+ "3 [0.007595062] \n",
+ "4 [-14.52344, -14.9895, -15.45557] \n",
+ "5 [-15.0, -14.44434, -13.88867, -13.33301, -12.7... \n",
"\n",
" y \\\n",
- "0 [2.28669e-17, 8.955042e-19, -2.107589e-17] \n",
- "1 [2.28669e-17, 8.955042e-19, -2.107589e-17] \n",
- "2 [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... \n",
- "3 [2.900919e-17, 4.650055e-19, -2.807918e-17] \n",
- "4 [2.900919e-17, 4.650055e-19, -2.807918e-17] \n",
- "5 [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... \n",
+ "0 [0.0] \n",
+ "1 [0.0, 0.0, 0.0] \n",
+ "2 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... \n",
+ "3 [0.0] \n",
+ "4 [0.0, 0.0, 0.0] \n",
+ "5 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... \n",
"\n",
" z \\\n",
- "0 [1.166863, 1.51507, 1.863277] \n",
- "1 [2.166863, 2.51507, 2.863277] \n",
- "2 [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... \n",
- "3 [1.338767, 1.519579, 1.700391] \n",
- "4 [2.338767, 2.519579, 2.700391] \n",
- "5 [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... \n",
- "\n",
- " rearZ \\\n",
- "0 [1.151075, 1.499282, 1.847489] \n",
- "1 [2.151075, 2.499282, 2.847489] \n",
- "2 NaN \n",
- "3 [1.318255, 1.499068, 1.67988] \n",
- "4 [2.318255, 2.499068, 2.67988] \n",
- "5 NaN \n",
+ "0 [1.514648] \n",
+ "1 [2.166016, 2.51416, 2.862305] \n",
+ "2 [0.04998779, 0.04998779, 0.04998779, 0.0499877... \n",
+ "3 [1.519531] \n",
+ "4 [2.337891, 2.518677, 2.699463] \n",
+ "5 [0.04998779, 0.04998779, 0.04998779, 0.0499877... \n",
"\n",
" mattype \\\n",
- "0 [a2.0.a0.test-module.6457, a2.0.a0.test-module... \n",
+ "0 [a2.0.a0.test-module.6457] \n",
"1 [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... \n",
"2 [groundplane, groundplane, groundplane, ground... \n",
- "3 [a2.0.a0.test-module.6457, a2.0.a0.test-module... \n",
+ "3 [a2.0.a0.test-module.6457] \n",
"4 [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... \n",
"5 [groundplane, groundplane, groundplane, ground... \n",
"\n",
- " rearMat \\\n",
- "0 [a2.0.a0.test-module.2310, a2.0.a0.test-module... \n",
- "1 [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... \n",
- "2 NaN \n",
- "3 [a2.0.a0.test-module.2310, a2.0.a0.test-module... \n",
- "4 [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... \n",
- "5 NaN \n",
+ " rearX rearY \\\n",
+ "0 [0.3581543, -0.0007324219, -0.3596191] [0.0, 0.0, 0.0] \n",
+ "1 [-14.75781, -15.23633] [0.0, 0.0] \n",
+ "2 NaN NaN \n",
+ "3 [0.4658203, -0.0002441406, -0.4663086] [0.0, 0.0, 0.0] \n",
+ "4 [-14.6875, -15.30908] [0.0, 0.0] \n",
+ "5 NaN NaN \n",
"\n",
- " Wm2Front \\\n",
- "0 [253.9854, 254.9895, 254.1586] \n",
- "1 [253.0249, 253.8044, 253.7155] \n",
- "2 [199.43860000000004, 201.74889999999996, 204.7... \n",
- "3 [253.5078, 253.6133, 253.7188] \n",
- "4 [252.92009999999996, 252.98069999999998, 253.0... \n",
- "5 [227.8342, 230.13659999999996, 233.87209999999... \n",
- "\n",
- " Wm2Back \\\n",
- "0 [39.46907, 39.66438, 41.00605] \n",
- "1 [52.58993, 53.09413, 53.07791] \n",
- "2 NaN \n",
- "3 [37.62749, 37.65656, 38.62414] \n",
- "4 [50.52337, 50.86739, 50.98965999999999] \n",
- "5 NaN \n",
- "\n",
- " backRatio \\\n",
- "0 [0.1553983599121843, 0.15555238332408464, 0.16... \n",
- "1 [0.20784405865170325, 0.20919227880888272, 0.2... \n",
- "2 NaN \n",
- "3 [0.14842676072783273, 0.14847964014647438, 0.1... \n",
- "4 [0.19975941113651652, 0.20107142137158537, 0.2... \n",
- "5 NaN \n",
+ " rearZ \\\n",
+ "0 [1.151367, 1.499512, 1.847656] \n",
+ "1 [2.267578, 2.731934] \n",
+ "2 NaN \n",
+ "3 [1.318359, 1.499146, 1.679932] \n",
+ "4 [2.378906, 2.619995] \n",
+ "5 NaN \n",
"\n",
- " rearX \\\n",
- "0 [0.3581237, -0.000696414, -0.3595166] \n",
- "1 [-14.64188, -15.0007, -15.35952] \n",
- "2 NaN \n",
- "3 [0.4658003, -0.0003616246, -0.4665235] \n",
- "4 [-14.5342, -15.00036, -15.46652] \n",
- "5 NaN \n",
+ " rearMat surf_azm surf_tilt \\\n",
+ "0 [a2.0.a0.test-module.2310, a2.0.a0.test-module... 90.0 44.14 \n",
+ "1 [a0.0.a0.test.6457, a0.0.a0.test.6457] 90.0 44.14 \n",
+ "2 NaN 90.0 44.14 \n",
+ "3 [a2.0.a0.test-module.2310, a2.0.a0.test-module... 90.0 21.20 \n",
+ "4 [a0.0.a0.test.6457, a0.0.a0.test.6457] 90.0 21.20 \n",
+ "5 NaN 90.0 21.20 \n",
"\n",
- " rearY surf_azm surf_tilt theta \n",
- "0 [2.192875e-17, -4.264306e-20, -2.201404e-17] 90.0 44.14 -44.14 \n",
- "1 [2.192875e-17, -4.264306e-20, -2.201404e-17] 90.0 44.14 -44.14 \n",
- "2 NaN 90.0 44.14 -44.14 \n",
- "3 [2.852204e-17, -2.214312e-20, -2.856633e-17] 90.0 21.20 -21.20 \n",
- "4 [2.852204e-17, -2.214312e-20, -2.856633e-17] 90.0 21.20 -21.20 \n",
- "5 NaN 90.0 21.20 -21.20 "
+ " theta \n",
+ "0 -44.14 \n",
+ "1 -44.14 \n",
+ "2 -44.14 \n",
+ "3 -21.20 \n",
+ "4 -21.20 \n",
+ "5 -21.20 "
]
},
- "execution_count": 15,
+ "execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
@@ -689,7 +685,7 @@
},
{
"cell_type": "code",
- "execution_count": 16,
+ "execution_count": 15,
"id": "7bbf6db6",
"metadata": {},
"outputs": [
@@ -729,17 +725,17 @@
" modNum | \n",
" rowNum | \n",
" sceneNum | \n",
+ " Wm2Front | \n",
+ " Wm2Back | \n",
+ " backRatio | \n",
" x | \n",
" y | \n",
" z | \n",
- " rearZ | \n",
" mattype | \n",
- " rearMat | \n",
- " Wm2Front | \n",
- " Wm2Back | \n",
- " backRatio | \n",
" rearX | \n",
" rearY | \n",
+ " rearZ | \n",
+ " rearMat | \n",
" POA_eff | \n",
" Gfront_mean | \n",
" Grear_mean | \n",
@@ -764,26 +760,26 @@
" 3 | \n",
" 1 | \n",
" 0 | \n",
- " [0.3734448, 0.01462469, -0.3441954] | \n",
- " [2.28669e-17, 8.955042e-19, -2.107589e-17] | \n",
- " [1.166863, 1.51507, 1.863277] | \n",
- " [1.151075, 1.499282, 1.847489] | \n",
- " [a2.0.a0.test-module.6457, a2.0.a0.test-module... | \n",
+ " [254.26609999999997] | \n",
+ " [39.59574, 39.60611, 40.72772] | \n",
+ " 0.157223 | \n",
+ " [0.01462555] | \n",
+ " [0.0] | \n",
+ " [1.514648] | \n",
+ " [a2.0.a0.test-module.6457] | \n",
+ " [0.3581543, -0.0007324219, -0.3596191] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [1.151367, 1.499512, 1.847656] | \n",
" [a2.0.a0.test-module.2310, a2.0.a0.test-module... | \n",
- " [253.9854, 254.9895, 254.1586] | \n",
- " [39.46907, 39.66438, 41.00605] | \n",
- " [0.1553983599121843, 0.15555238332408464, 0.16... | \n",
- " [0.3581237, -0.000696414, -0.3595166] | \n",
- " [2.192875e-17, -4.264306e-20, -2.201404e-17] | \n",
- " 290.419683 | \n",
- " 254.377833 | \n",
- " 40.046500 | \n",
- " 91.831552 | \n",
- " 80.346050 | \n",
- " 14.168628 | \n",
- " 14.295042 | \n",
- " 0.031494 | \n",
- " 91.802630 | \n",
+ " 290.244971 | \n",
+ " 254.266100 | \n",
+ " 39.976523 | \n",
+ " 91.775968 | \n",
+ " 80.310389 | \n",
+ " 14.150086 | \n",
+ " 14.276583 | \n",
+ " 0.022931 | \n",
+ " 91.754923 | \n",
" 3.8 | \n",
" 144 | \n",
" 149 | \n",
@@ -797,26 +793,26 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-14.62656, -14.98538, -15.3442] | \n",
- " [2.28669e-17, 8.955042e-19, -2.107589e-17] | \n",
- " [2.166863, 2.51507, 2.863277] | \n",
- " [2.151075, 2.499282, 2.847489] | \n",
+ " [253.0651, 253.8192, 253.7649] | \n",
+ " [0.0, 0.0] | \n",
+ " 0.0 | \n",
+ " [-14.625, -14.98389, -15.34277] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [2.166016, 2.51416, 2.862305] | \n",
" [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... | \n",
- " [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... | \n",
- " [253.0249, 253.8044, 253.7155] | \n",
- " [52.58993, 53.09413, 53.07791] | \n",
- " [0.20784405865170325, 0.20919227880888272, 0.2... | \n",
- " [-14.64188, -15.0007, -15.35952] | \n",
- " [2.192875e-17, -4.264306e-20, -2.201404e-17] | \n",
- " 295.851459 | \n",
- " 253.514933 | \n",
- " 52.920657 | \n",
- " 123.731803 | \n",
- " 106.057563 | \n",
- " 16.699815 | \n",
- " 16.664762 | \n",
- " 0.008722 | \n",
- " 123.721012 | \n",
+ " [-14.75781, -15.23633] | \n",
+ " [0.0, 0.0] | \n",
+ " [2.267578, 2.731934] | \n",
+ " [a0.0.a0.test.6457, a0.0.a0.test.6457] | \n",
+ " 253.549733 | \n",
+ " 253.549733 | \n",
+ " 0.000000 | \n",
+ " 106.072139 | \n",
+ " 106.072139 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 106.072139 | \n",
" 3.8 | \n",
" 144 | \n",
" 149 | \n",
@@ -830,26 +826,26 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-15.0, -14.44444, -13.88889, -13.33333, -12.7... | \n",
- " [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... | \n",
- " [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... | \n",
+ " [199.1224, 201.452, 204.5499, 206.0879, 207.14... | \n",
" NaN | \n",
- " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
- " [199.43860000000004, 201.74889999999996, 204.7... | \n",
+ " [-15.0, -14.44434, -13.88867, -13.33301, -12.7... | \n",
+ " [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... | \n",
+ " [0.04998779, 0.04998779, 0.04998779, 0.0499877... | \n",
+ " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
- " 204.889860 | \n",
- " 204.889860 | \n",
+ " 204.792890 | \n",
+ " 204.792890 | \n",
" 0.000000 | \n",
- " 85.625380 | \n",
- " 85.625380 | \n",
+ " 85.584512 | \n",
+ " 85.584512 | \n",
" 0.000000 | \n",
" 0.000000 | \n",
" 0.000000 | \n",
- " 85.625380 | \n",
+ " 85.584512 | \n",
" 3.8 | \n",
" 144 | \n",
" 149 | \n",
@@ -863,26 +859,26 @@
" 3 | \n",
" 1 | \n",
" 0 | \n",
- " [0.473756, 0.007594116, -0.4585678] | \n",
- " [2.900919e-17, 4.650055e-19, -2.807918e-17] | \n",
- " [1.338767, 1.519579, 1.700391] | \n",
- " [1.318255, 1.499068, 1.67988] | \n",
- " [a2.0.a0.test-module.6457, a2.0.a0.test-module... | \n",
+ " [253.4217] | \n",
+ " [37.89736, 37.81097, 38.92072] | \n",
+ " 0.150775 | \n",
+ " [0.007595062] | \n",
+ " [0.0] | \n",
+ " [1.519531] | \n",
+ " [a2.0.a0.test-module.6457] | \n",
+ " [0.4658203, -0.0002441406, -0.4663086] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [1.318359, 1.499146, 1.679932] | \n",
" [a2.0.a0.test-module.2310, a2.0.a0.test-module... | \n",
- " [253.5078, 253.6133, 253.7188] | \n",
- " [37.62749, 37.65656, 38.62414] | \n",
- " [0.14842676072783273, 0.14847964014647438, 0.1... | \n",
- " [0.4658003, -0.0003616246, -0.4665235] | \n",
- " [2.852204e-17, -2.214312e-20, -2.856633e-17] | \n",
- " 287.785757 | \n",
- " 253.613300 | \n",
- " 37.969397 | \n",
- " 90.325515 | \n",
- " 79.509085 | \n",
- " 13.474237 | \n",
- " 13.604017 | \n",
- " 0.020285 | \n",
- " 90.307193 | \n",
+ " 287.810415 | \n",
+ " 253.421700 | \n",
+ " 38.209683 | \n",
+ " 90.333308 | \n",
+ " 79.448352 | \n",
+ " 13.569759 | \n",
+ " 13.700669 | \n",
+ " 0.022662 | \n",
+ " 90.312836 | \n",
" 3.9 | \n",
" 97 | \n",
" 200 | \n",
@@ -896,26 +892,26 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-14.52624, -14.99241, -15.45857] | \n",
- " [2.900919e-17, 4.650055e-19, -2.807918e-17] | \n",
- " [2.338767, 2.519579, 2.700391] | \n",
- " [2.318255, 2.499068, 2.67988] | \n",
+ " [252.4514, 252.5719, 252.6928] | \n",
+ " [0.0, 0.0] | \n",
+ " 0.0 | \n",
+ " [-14.52344, -14.9895, -15.45557] | \n",
+ " [0.0, 0.0, 0.0] | \n",
+ " [2.337891, 2.518677, 2.699463] | \n",
" [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... | \n",
- " [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... | \n",
- " [252.92009999999996, 252.98069999999998, 253.0... | \n",
- " [50.52337, 50.86739, 50.98965999999999] | \n",
- " [0.19975941113651652, 0.20107142137158537, 0.2... | \n",
- " [-14.5342, -15.00036, -15.46652] | \n",
- " [2.852204e-17, -2.214312e-20, -2.856633e-17] | \n",
- " 293.615512 | \n",
- " 252.980733 | \n",
- " 50.793473 | \n",
- " 121.980576 | \n",
- " 105.120321 | \n",
- " 16.062401 | \n",
- " 16.039006 | \n",
- " 0.008120 | \n",
- " 121.970671 | \n",
+ " [-14.6875, -15.30908] | \n",
+ " [0.0, 0.0] | \n",
+ " [2.378906, 2.619995] | \n",
+ " [a0.0.a0.test.6457, a0.0.a0.test.6457] | \n",
+ " 252.572033 | \n",
+ " 252.572033 | \n",
+ " 0.000000 | \n",
+ " 104.950213 | \n",
+ " 104.950213 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 0.000000 | \n",
+ " 104.950213 | \n",
" 3.9 | \n",
" 97 | \n",
" 200 | \n",
@@ -929,26 +925,26 @@
" 1 | \n",
" 1 | \n",
" 1 | \n",
- " [-15.0, -14.44444, -13.88889, -13.33333, -12.7... | \n",
- " [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... | \n",
- " [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... | \n",
+ " [227.9177, 230.1437, 233.8727, 236.2223, 238.9... | \n",
" NaN | \n",
- " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
- " [227.8342, 230.13659999999996, 233.87209999999... | \n",
+ " [-15.0, -14.44434, -13.88867, -13.33301, -12.7... | \n",
+ " [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... | \n",
+ " [0.04998779, 0.04998779, 0.04998779, 0.0499877... | \n",
+ " [groundplane, groundplane, groundplane, ground... | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
" NaN | \n",
- " 237.758910 | \n",
- " 237.758910 | \n",
+ " 237.488790 | \n",
+ " 237.488790 | \n",
" 0.000000 | \n",
- " 98.778151 | \n",
- " 98.778151 | \n",
+ " 98.665486 | \n",
+ " 98.665486 | \n",
" 0.000000 | \n",
" 0.000000 | \n",
" 0.000000 | \n",
- " 98.778151 | \n",
+ " 98.665486 | \n",
" 3.9 | \n",
" 97 | \n",
" 200 | \n",
@@ -968,109 +964,93 @@
"4 2021-01-13_1200 1axis_2021-01-13_1200_Scene1 1 1 \n",
"5 2021-01-13_1200 1axis_groundscan_2021-01-13_1200Silvanas_ 1 1 \n",
"\n",
- " sceneNum x \\\n",
- "0 0 [0.3734448, 0.01462469, -0.3441954] \n",
- "1 1 [-14.62656, -14.98538, -15.3442] \n",
- "2 1 [-15.0, -14.44444, -13.88889, -13.33333, -12.7... \n",
- "3 0 [0.473756, 0.007594116, -0.4585678] \n",
- "4 1 [-14.52624, -14.99241, -15.45857] \n",
- "5 1 [-15.0, -14.44444, -13.88889, -13.33333, -12.7... \n",
+ " sceneNum Wm2Front \\\n",
+ "0 0 [254.26609999999997] \n",
+ "1 1 [253.0651, 253.8192, 253.7649] \n",
+ "2 1 [199.1224, 201.452, 204.5499, 206.0879, 207.14... \n",
+ "3 0 [253.4217] \n",
+ "4 1 [252.4514, 252.5719, 252.6928] \n",
+ "5 1 [227.9177, 230.1437, 233.8727, 236.2223, 238.9... \n",
+ "\n",
+ " Wm2Back backRatio \\\n",
+ "0 [39.59574, 39.60611, 40.72772] 0.157223 \n",
+ "1 [0.0, 0.0] 0.0 \n",
+ "2 NaN NaN \n",
+ "3 [37.89736, 37.81097, 38.92072] 0.150775 \n",
+ "4 [0.0, 0.0] 0.0 \n",
+ "5 NaN NaN \n",
+ "\n",
+ " x \\\n",
+ "0 [0.01462555] \n",
+ "1 [-14.625, -14.98389, -15.34277] \n",
+ "2 [-15.0, -14.44434, -13.88867, -13.33301, -12.7... \n",
+ "3 [0.007595062] \n",
+ "4 [-14.52344, -14.9895, -15.45557] \n",
+ "5 [-15.0, -14.44434, -13.88867, -13.33301, -12.7... \n",
"\n",
" y \\\n",
- "0 [2.28669e-17, 8.955042e-19, -2.107589e-17] \n",
- "1 [2.28669e-17, 8.955042e-19, -2.107589e-17] \n",
- "2 [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... \n",
- "3 [2.900919e-17, 4.650055e-19, -2.807918e-17] \n",
- "4 [2.900919e-17, 4.650055e-19, -2.807918e-17] \n",
- "5 [0.0, 3.401797e-17, 6.803593e-17, 1.020539e-16... \n",
+ "0 [0.0] \n",
+ "1 [0.0, 0.0, 0.0] \n",
+ "2 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... \n",
+ "3 [0.0] \n",
+ "4 [0.0, 0.0, 0.0] \n",
+ "5 [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, ... \n",
"\n",
" z \\\n",
- "0 [1.166863, 1.51507, 1.863277] \n",
- "1 [2.166863, 2.51507, 2.863277] \n",
- "2 [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... \n",
- "3 [1.338767, 1.519579, 1.700391] \n",
- "4 [2.338767, 2.519579, 2.700391] \n",
- "5 [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.0... \n",
- "\n",
- " rearZ \\\n",
- "0 [1.151075, 1.499282, 1.847489] \n",
- "1 [2.151075, 2.499282, 2.847489] \n",
- "2 NaN \n",
- "3 [1.318255, 1.499068, 1.67988] \n",
- "4 [2.318255, 2.499068, 2.67988] \n",
- "5 NaN \n",
+ "0 [1.514648] \n",
+ "1 [2.166016, 2.51416, 2.862305] \n",
+ "2 [0.04998779, 0.04998779, 0.04998779, 0.0499877... \n",
+ "3 [1.519531] \n",
+ "4 [2.337891, 2.518677, 2.699463] \n",
+ "5 [0.04998779, 0.04998779, 0.04998779, 0.0499877... \n",
"\n",
" mattype \\\n",
- "0 [a2.0.a0.test-module.6457, a2.0.a0.test-module... \n",
+ "0 [a2.0.a0.test-module.6457] \n",
"1 [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... \n",
"2 [groundplane, groundplane, groundplane, ground... \n",
- "3 [a2.0.a0.test-module.6457, a2.0.a0.test-module... \n",
+ "3 [a2.0.a0.test-module.6457] \n",
"4 [a0.0.a0.test.6457, a0.0.a0.test.6457, a0.0.a0... \n",
"5 [groundplane, groundplane, groundplane, ground... \n",
"\n",
- " rearMat \\\n",
- "0 [a2.0.a0.test-module.2310, a2.0.a0.test-module... \n",
- "1 [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... \n",
- "2 NaN \n",
- "3 [a2.0.a0.test-module.2310, a2.0.a0.test-module... \n",
- "4 [a0.0.a0.test.2310, a0.0.a0.test.2310, a0.0.a0... \n",
- "5 NaN \n",
- "\n",
- " Wm2Front \\\n",
- "0 [253.9854, 254.9895, 254.1586] \n",
- "1 [253.0249, 253.8044, 253.7155] \n",
- "2 [199.43860000000004, 201.74889999999996, 204.7... \n",
- "3 [253.5078, 253.6133, 253.7188] \n",
- "4 [252.92009999999996, 252.98069999999998, 253.0... \n",
- "5 [227.8342, 230.13659999999996, 233.87209999999... \n",
- "\n",
- " Wm2Back \\\n",
- "0 [39.46907, 39.66438, 41.00605] \n",
- "1 [52.58993, 53.09413, 53.07791] \n",
- "2 NaN \n",
- "3 [37.62749, 37.65656, 38.62414] \n",
- "4 [50.52337, 50.86739, 50.98965999999999] \n",
- "5 NaN \n",
+ " rearX rearY \\\n",
+ "0 [0.3581543, -0.0007324219, -0.3596191] [0.0, 0.0, 0.0] \n",
+ "1 [-14.75781, -15.23633] [0.0, 0.0] \n",
+ "2 NaN NaN \n",
+ "3 [0.4658203, -0.0002441406, -0.4663086] [0.0, 0.0, 0.0] \n",
+ "4 [-14.6875, -15.30908] [0.0, 0.0] \n",
+ "5 NaN NaN \n",
"\n",
- " backRatio \\\n",
- "0 [0.1553983599121843, 0.15555238332408464, 0.16... \n",
- "1 [0.20784405865170325, 0.20919227880888272, 0.2... \n",
- "2 NaN \n",
- "3 [0.14842676072783273, 0.14847964014647438, 0.1... \n",
- "4 [0.19975941113651652, 0.20107142137158537, 0.2... \n",
- "5 NaN \n",
- "\n",
- " rearX \\\n",
- "0 [0.3581237, -0.000696414, -0.3595166] \n",
- "1 [-14.64188, -15.0007, -15.35952] \n",
- "2 NaN \n",
- "3 [0.4658003, -0.0003616246, -0.4665235] \n",
- "4 [-14.5342, -15.00036, -15.46652] \n",
- "5 NaN \n",
+ " rearZ \\\n",
+ "0 [1.151367, 1.499512, 1.847656] \n",
+ "1 [2.267578, 2.731934] \n",
+ "2 NaN \n",
+ "3 [1.318359, 1.499146, 1.679932] \n",
+ "4 [2.378906, 2.619995] \n",
+ "5 NaN \n",
"\n",
- " rearY POA_eff Gfront_mean \\\n",
- "0 [2.192875e-17, -4.264306e-20, -2.201404e-17] 290.419683 254.377833 \n",
- "1 [2.192875e-17, -4.264306e-20, -2.201404e-17] 295.851459 253.514933 \n",
- "2 NaN 204.889860 204.889860 \n",
- "3 [2.852204e-17, -2.214312e-20, -2.856633e-17] 287.785757 253.613300 \n",
- "4 [2.852204e-17, -2.214312e-20, -2.856633e-17] 293.615512 252.980733 \n",
- "5 NaN 237.758910 237.758910 \n",
+ " rearMat POA_eff Gfront_mean \\\n",
+ "0 [a2.0.a0.test-module.2310, a2.0.a0.test-module... 290.244971 254.266100 \n",
+ "1 [a0.0.a0.test.6457, a0.0.a0.test.6457] 253.549733 253.549733 \n",
+ "2 NaN 204.792890 204.792890 \n",
+ "3 [a2.0.a0.test-module.2310, a2.0.a0.test-module... 287.810415 253.421700 \n",
+ "4 [a0.0.a0.test.6457, a0.0.a0.test.6457] 252.572033 252.572033 \n",
+ "5 NaN 237.488790 237.488790 \n",
"\n",
" Grear_mean Pout_raw Pout_Gfront BGG BGE Mismatch \\\n",
- "0 40.046500 91.831552 80.346050 14.168628 14.295042 0.031494 \n",
- "1 52.920657 123.731803 106.057563 16.699815 16.664762 0.008722 \n",
- "2 0.000000 85.625380 85.625380 0.000000 0.000000 0.000000 \n",
- "3 37.969397 90.325515 79.509085 13.474237 13.604017 0.020285 \n",
- "4 50.793473 121.980576 105.120321 16.062401 16.039006 0.008120 \n",
- "5 0.000000 98.778151 98.778151 0.000000 0.000000 0.000000 \n",
+ "0 39.976523 91.775968 80.310389 14.150086 14.276583 0.022931 \n",
+ "1 0.000000 106.072139 106.072139 0.000000 0.000000 0.000000 \n",
+ "2 0.000000 85.584512 85.584512 0.000000 0.000000 0.000000 \n",
+ "3 38.209683 90.333308 79.448352 13.569759 13.700669 0.022662 \n",
+ "4 0.000000 104.950213 104.950213 0.000000 0.000000 0.000000 \n",
+ "5 0.000000 98.665486 98.665486 0.000000 0.000000 0.000000 \n",
"\n",
" Pout Wind Speed DNI DHI GHI \\\n",
- "0 91.802630 3.8 144 149 211 \n",
- "1 123.721012 3.8 144 149 211 \n",
- "2 85.625380 3.8 144 149 211 \n",
- "3 90.307193 3.9 97 200 249 \n",
- "4 121.970671 3.9 97 200 249 \n",
- "5 98.778151 3.9 97 200 249 \n",
+ "0 91.754923 3.8 144 149 211 \n",
+ "1 106.072139 3.8 144 149 211 \n",
+ "2 85.584512 3.8 144 149 211 \n",
+ "3 90.312836 3.9 97 200 249 \n",
+ "4 104.950213 3.9 97 200 249 \n",
+ "5 98.665486 3.9 97 200 249 \n",
"\n",
" module_CEC_name \n",
"0 SunPower SPR-E19-310-COM \n",
@@ -1167,23 +1147,23 @@
" 3 | \n",
" 0 | \n",
" 1axis_2021-01-13_1100_Scene0 | \n",
- " [254.0681 254.9558 254.3216] | \n",
- " [39.50778 39.82523 40.90701] | \n",
+ " [254.2661] | \n",
+ " [39.59574 39.60611 40.72772] | \n",
" 144 | \n",
" 149 | \n",
" 211 | \n",
- " 4.6 | \n",
+ " NaN | \n",
" 3.8 | \n",
" -44.14 | \n",
" 44.14 | \n",
" 90.0 | \n",
- " 290.520506 | \n",
- " 254.448500 | \n",
- " 40.080007 | \n",
- " 91.863627 | \n",
- " 0.028544 | \n",
- " 91.837406 | \n",
- " 80.368605 | \n",
+ " 290.244971 | \n",
+ " 254.266100 | \n",
+ " 39.976523 | \n",
+ " 91.775968 | \n",
+ " 0.022931 | \n",
+ " 91.754923 | \n",
+ " 80.310389 | \n",
" \n",
" \n",
" 1 | \n",
@@ -1193,23 +1173,23 @@
" 1 | \n",
" 1 | \n",
" 1axis_2021-01-13_1100_Scene1 | \n",
- " [253.0643 253.8386 253.637 ] | \n",
- " [52.60152 53.10697 52.92946] | \n",
+ " [253.0651 253.8192 253.7649] | \n",
+ " [0. 0.] | \n",
" 144 | \n",
" 149 | \n",
" 211 | \n",
- " 4.6 | \n",
+ " NaN | \n",
" 3.8 | \n",
" -44.14 | \n",
" 44.14 | \n",
" 90.0 | \n",
- " 295.816753 | \n",
- " 253.513300 | \n",
- " 52.879317 | \n",
- " 123.717364 | \n",
- " 0.008745 | \n",
- " 123.706545 | \n",
- " 106.056879 | \n",
+ " 253.549733 | \n",
+ " 253.549733 | \n",
+ " 0.000000 | \n",
+ " 106.072139 | \n",
+ " 0.000000 | \n",
+ " 106.072139 | \n",
+ " 106.072139 | \n",
"
\n",
" \n",
" 2 | \n",
@@ -1219,23 +1199,23 @@
" 1 | \n",
" 1 | \n",
" 1axis_groundscan_2021-01-13_1100Silvanas_ | \n",
- " [198.7301 201.027 204.6268 206.4026 207.4362 ... | \n",
+ " [199.1224 201.452 204.5499 206.0879 207.1438 ... | \n",
" NaN | \n",
" 144 | \n",
" 149 | \n",
" 211 | \n",
- " 4.6 | \n",
+ " NaN | \n",
" 3.8 | \n",
" -44.14 | \n",
" 44.14 | \n",
" 90.0 | \n",
- " 205.031480 | \n",
- " 205.031480 | \n",
+ " 204.792890 | \n",
+ " 204.792890 | \n",
" 0.000000 | \n",
- " 85.685065 | \n",
+ " 85.584512 | \n",
" 0.000000 | \n",
- " 85.685065 | \n",
- " 85.685065 | \n",
+ " 85.584512 | \n",
+ " 85.584512 | \n",
"
\n",
" \n",
" 3 | \n",
@@ -1245,23 +1225,23 @@
" 3 | \n",
" 0 | \n",
" 1axis_2021-01-13_1200_Scene0 | \n",
- " [252.768 252.9163 253.3978] | \n",
- " [37.82638 37.77132 38.61288] | \n",
+ " [253.4217] | \n",
+ " [37.89736 37.81097 38.92072] | \n",
" 97 | \n",
" 200 | \n",
" 249 | \n",
- " 6.5 | \n",
+ " NaN | \n",
" 3.9 | \n",
" -21.20 | \n",
" 21.20 | \n",
" 90.0 | \n",
- " 287.290541 | \n",
- " 253.027367 | \n",
- " 38.070193 | \n",
- " 90.169005 | \n",
- " 0.017078 | \n",
- " 90.153606 | \n",
- " 79.323353 | \n",
+ " 287.810415 | \n",
+ " 253.421700 | \n",
+ " 38.209683 | \n",
+ " 90.333308 | \n",
+ " 0.022662 | \n",
+ " 90.312836 | \n",
+ " 79.448352 | \n",
"
\n",
" \n",
" 4 | \n",
@@ -1271,23 +1251,23 @@
" 1 | \n",
" 1 | \n",
" 1axis_2021-01-13_1200_Scene1 | \n",
- " [252.9312 253.0649 253.1985] | \n",
- " [50.65721 51.0674 50.72511] | \n",
+ " [252.4514 252.5719 252.6928] | \n",
+ " [0. 0.] | \n",
" 97 | \n",
" 200 | \n",
" 249 | \n",
- " 6.5 | \n",
+ " NaN | \n",
" 3.9 | \n",
" -21.20 | \n",
" 21.20 | \n",
" 90.0 | \n",
- " 293.718125 | \n",
- " 253.064867 | \n",
- " 50.816573 | \n",
- " 122.023014 | \n",
- " 0.007130 | \n",
- " 122.014314 | \n",
- " 105.155337 | \n",
+ " 252.572033 | \n",
+ " 252.572033 | \n",
+ " 0.000000 | \n",
+ " 104.950213 | \n",
+ " 0.000000 | \n",
+ " 104.950213 | \n",
+ " 104.950213 | \n",
"
\n",
" \n",
" 5 | \n",
@@ -1297,23 +1277,23 @@
" 1 | \n",
" 1 | \n",
" 1axis_groundscan_2021-01-13_1200Silvanas_ | \n",
- " [228.0597 229.9865 233.2411 237.3016 239.1257 ... | \n",
+ " [227.9177 230.1437 233.8727 236.2223 238.9651 ... | \n",
" NaN | \n",
" 97 | \n",
" 200 | \n",
" 249 | \n",
- " 6.5 | \n",
+ " NaN | \n",
" 3.9 | \n",
" -21.20 | \n",
" 21.20 | \n",
" 90.0 | \n",
- " 237.717610 | \n",
- " 237.717610 | \n",
+ " 237.488790 | \n",
+ " 237.488790 | \n",
" 0.000000 | \n",
- " 98.760926 | \n",
+ " 98.665486 | \n",
" 0.000000 | \n",
- " 98.760926 | \n",
- " 98.760926 | \n",
+ " 98.665486 | \n",
+ " 98.665486 | \n",
"
\n",
" \n",
"\n",
@@ -1337,36 +1317,36 @@
"5 1axis_groundscan_2021-01-13_1200Silvanas_ \n",
"\n",
" Wm2Front \\\n",
- "0 [254.0681 254.9558 254.3216] \n",
- "1 [253.0643 253.8386 253.637 ] \n",
- "2 [198.7301 201.027 204.6268 206.4026 207.4362 ... \n",
- "3 [252.768 252.9163 253.3978] \n",
- "4 [252.9312 253.0649 253.1985] \n",
- "5 [228.0597 229.9865 233.2411 237.3016 239.1257 ... \n",
+ "0 [254.2661] \n",
+ "1 [253.0651 253.8192 253.7649] \n",
+ "2 [199.1224 201.452 204.5499 206.0879 207.1438 ... \n",
+ "3 [253.4217] \n",
+ "4 [252.4514 252.5719 252.6928] \n",
+ "5 [227.9177 230.1437 233.8727 236.2223 238.9651 ... \n",
"\n",
" Wm2Back DNI DHI GHI temp_air wind_speed theta \\\n",
- "0 [39.50778 39.82523 40.90701] 144 149 211 4.6 3.8 -44.14 \n",
- "1 [52.60152 53.10697 52.92946] 144 149 211 4.6 3.8 -44.14 \n",
- "2 NaN 144 149 211 4.6 3.8 -44.14 \n",
- "3 [37.82638 37.77132 38.61288] 97 200 249 6.5 3.9 -21.20 \n",
- "4 [50.65721 51.0674 50.72511] 97 200 249 6.5 3.9 -21.20 \n",
- "5 NaN 97 200 249 6.5 3.9 -21.20 \n",
+ "0 [39.59574 39.60611 40.72772] 144 149 211 NaN 3.8 -44.14 \n",
+ "1 [0. 0.] 144 149 211 NaN 3.8 -44.14 \n",
+ "2 NaN 144 149 211 NaN 3.8 -44.14 \n",
+ "3 [37.89736 37.81097 38.92072] 97 200 249 NaN 3.9 -21.20 \n",
+ "4 [0. 0.] 97 200 249 NaN 3.9 -21.20 \n",
+ "5 NaN 97 200 249 NaN 3.9 -21.20 \n",
"\n",
" surf_tilt surf_azm POA_eff Gfront_mean Grear_mean Pout_raw \\\n",
- "0 44.14 90.0 290.520506 254.448500 40.080007 91.863627 \n",
- "1 44.14 90.0 295.816753 253.513300 52.879317 123.717364 \n",
- "2 44.14 90.0 205.031480 205.031480 0.000000 85.685065 \n",
- "3 21.20 90.0 287.290541 253.027367 38.070193 90.169005 \n",
- "4 21.20 90.0 293.718125 253.064867 50.816573 122.023014 \n",
- "5 21.20 90.0 237.717610 237.717610 0.000000 98.760926 \n",
+ "0 44.14 90.0 290.244971 254.266100 39.976523 91.775968 \n",
+ "1 44.14 90.0 253.549733 253.549733 0.000000 106.072139 \n",
+ "2 44.14 90.0 204.792890 204.792890 0.000000 85.584512 \n",
+ "3 21.20 90.0 287.810415 253.421700 38.209683 90.333308 \n",
+ "4 21.20 90.0 252.572033 252.572033 0.000000 104.950213 \n",
+ "5 21.20 90.0 237.488790 237.488790 0.000000 98.665486 \n",
"\n",
" Mismatch Pout Pout_Gfront \n",
- "0 0.028544 91.837406 80.368605 \n",
- "1 0.008745 123.706545 106.056879 \n",
- "2 0.000000 85.685065 85.685065 \n",
- "3 0.017078 90.153606 79.323353 \n",
- "4 0.007130 122.014314 105.155337 \n",
- "5 0.000000 98.760926 98.760926 "
+ "0 0.022931 91.754923 80.310389 \n",
+ "1 0.000000 106.072139 106.072139 \n",
+ "2 0.000000 85.584512 85.584512 \n",
+ "3 0.022662 90.312836 79.448352 \n",
+ "4 0.000000 104.950213 104.950213 \n",
+ "5 0.000000 98.665486 98.665486 "
]
},
"execution_count": 16,
@@ -1472,70 +1452,82 @@
"Created 1axis_15.0.oct\n",
"Linescan in process: 1axis_-15.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_-15.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module2.csv\n",
- "Index: -15.0. Wm2Front: 628026.5666666667. Wm2Back: 80798.11666666668\n",
+ "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: -15.0. Wm2Front: 627314.8999999999. Wm2Back: 80826.80666666666\n",
"Linescan in process: 1axis_-15.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_-15.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module4.csv\n",
- "Index: -15.0. Wm2Front: 633042.5666666668. Wm2Back: 74133.11666666665\n",
+ "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_-15.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: -15.0. Wm2Front: 633150.2. Wm2Back: 74338.82666666668\n",
"Linescan in process: 1axis_-10.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_-10.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module2.csv\n",
- "Index: -10.0. Wm2Front: 146985.56666666665. Wm2Back: 19676.473333333335\n",
+ "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: -10.0. Wm2Front: 146242.85. Wm2Back: 19780.77666666667\n",
"Linescan in process: 1axis_-10.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_-10.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module4.csv\n",
- "Index: -10.0. Wm2Front: 146244.56666666668. Wm2Back: 17398.210000000003\n",
+ "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_-10.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: -10.0. Wm2Front: 148151.5. Wm2Back: 17382.633333333335\n",
"Linescan in process: 1axis_0.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_0.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module2.csv\n",
- "Index: 0.0. Wm2Front: 995.6834666666667. Wm2Back: 149.88930000000002\n",
+ "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: 0.0. Wm2Front: 967.20935. Wm2Back: 151.3741\n",
"Linescan in process: 1axis_0.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_0.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module4.csv\n",
- "Index: 0.0. Wm2Front: 986.0803666666667. Wm2Back: 118.16593333333333\n",
+ "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_0.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: 0.0. Wm2Front: 1004.4355. Wm2Back: 118.55160000000001\n",
"Linescan in process: 1axis_5.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_5.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module2.csv\n",
- "Index: 5.0. Wm2Front: 144496.80000000002. Wm2Back: 19746.946666666667\n",
+ "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: 5.0. Wm2Front: 149129.2. Wm2Back: 19709.866666666665\n",
"Linescan in process: 1axis_5.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_5.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module4.csv\n",
- "Index: 5.0. Wm2Front: 147367.13333333333. Wm2Back: 17423.399999999998\n",
+ "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_5.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: 5.0. Wm2Front: 149867.15000000002. Wm2Back: 17504.570000000003\n",
"Linescan in process: 1axis_10.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_10.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module2.csv\n",
- "Index: 10.0. Wm2Front: 17125.513333333332. Wm2Back: 2411.7313333333336\n",
+ "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: 10.0. Wm2Front: 17213.73. Wm2Back: 2419.6253333333334\n",
"Linescan in process: 1axis_10.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_10.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module4.csv\n",
- "Index: 10.0. Wm2Front: 16972.87. Wm2Back: 2023.2613333333331\n",
+ "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_10.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: 10.0. Wm2Front: 17476.864999999998. Wm2Back: 2028.0343333333333\n",
"Linescan in process: 1axis_15.0_Scene0_Row1_Module2_Front\n",
"Linescan in process: 1axis_15.0_Scene0_Row1_Module2_Back\n",
- "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module2.csv\n",
- "Index: 15.0. Wm2Front: 717654.4333333332. Wm2Back: 85762.97000000002\n",
+ "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module2_Front.csv\n",
+ "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module2_Back.csv\n",
+ "Index: 15.0. Wm2Front: 714340.8500000001. Wm2Back: 86047.87\n",
"Linescan in process: 1axis_15.0_Scene0_Row1_Module4_Front\n",
"Linescan in process: 1axis_15.0_Scene0_Row1_Module4_Back\n",
- "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module4.csv\n",
- "Index: 15.0. Wm2Front: 714059.2666666667. Wm2Back: 79361.25333333333\n",
+ "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module4_Front.csv\n",
+ "Saved: results\\irr_1axis_15.0_Scene0_Row1_Module4_Back.csv\n",
+ "Index: 15.0. Wm2Front: 721632.25. Wm2Back: 79538.19666666667\n",
"Linescan in process: 1axis_groundscan_-15.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_-15.0_Row1_Module3.csv\n",
- "Index: -15.0. Wm2Ground: 496813.0500000001. sensorsground: 10\n",
+ "Index: -15.0. Wm2Ground: 495183.01000000007. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_-10.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_-10.0_Row1_Module3.csv\n",
- "Index: -10.0. Wm2Ground: 119790.24000000002. sensorsground: 10\n",
+ "Index: -10.0. Wm2Ground: 118693.192. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_0.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_0.0_Row1_Module3.csv\n",
- "Index: 0.0. Wm2Ground: 769.3495599999999. sensorsground: 10\n",
+ "Index: 0.0. Wm2Ground: 722.9592299999999. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_5.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_5.0_Row1_Module3.csv\n",
- "Index: 5.0. Wm2Ground: 108500.59699999998. sensorsground: 10\n",
+ "Index: 5.0. Wm2Ground: 110024.954. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_10.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_10.0_Row1_Module3.csv\n",
- "Index: 10.0. Wm2Ground: 12322.834200000001. sensorsground: 10\n",
+ "Index: 10.0. Wm2Ground: 12419.3521. sensorsground: 10\n",
"Linescan in process: 1axis_groundscan_15.0_Row1_Module3_Front\n",
"Saved: results\\irr_1axis_groundscan_15.0_Row1_Module3.csv\n",
- "Index: 15.0. Wm2Ground: 387507.75999999995. sensorsground: 10\n"
+ "Index: 15.0. Wm2Ground: 388078.31. sensorsground: 10\n"
]
}
],
@@ -1545,7 +1537,7 @@
"trackerdict = demo.genCumSky1axis()\n",
"trackerdict = demo.makeScene1axis(trackerdict, module = mymodule, sceneDict = sceneDict)\n",
"trackerdict = demo.makeOct1axis()\n",
- "trackerdict = demo.analysis1axis(modWanted = [2,4], sensorsy=3)\n",
+ "trackerdict = demo.analysis1axis(modWanted = [2,4], sensorsy=[2,3])\n",
"trackerdict = demo.analysis1axisground(sensorsground=10)"
]
},
@@ -1602,12 +1594,12 @@
" 1 | \n",
" 2 | \n",
" 0 | \n",
- " 11.338927 | \n",
- " 1.655285e+06 | \n",
- " 208546.127300 | \n",
- " [1845372.5030866666, 1840463.504476667, 184309... | \n",
- " [1658556.0944, 1658093.2835, 1649204.3125, nan... | \n",
- " [211208.8218, 205754.3789, 208675.18120000002] | \n",
+ " 11.360663 | \n",
+ " 1.655209e+06 | \n",
+ " 208936.319433 | \n",
+ " [1845370.4100300001, 1840857.22746, 1843526.64... | \n",
+ " [1658321.0965, 1652096.3821999999, nan, nan, n... | \n",
+ " [211290.74520000003, 206276.09790000002, 20924... | \n",
" \n",
" \n",
" 1 | \n",
@@ -1615,10 +1607,10 @@
" 3 | \n",
" 0 | \n",
" NaN | \n",
- " 1.125704e+06 | \n",
+ " 1.125122e+06 | \n",
" NaN | \n",
" [0.0, 0.0, 0.0] | \n",
- " [633171.4857999999, 711829.5524, 862250.9423, ... | \n",
+ " [632528.9293000001, 704530.8141, 871543.067099... | \n",
" [nan, nan, nan] | \n",
"
\n",
" \n",
@@ -1626,12 +1618,12 @@
" 1 | \n",
" 4 | \n",
" 0 | \n",
- " 10.334268 | \n",
- " 1.658672e+06 | \n",
- " 190457.407267 | \n",
- " [1832873.54007, 1826657.0977800002, 1830721.81... | \n",
- " [1665464.9309999999, 1665355.3404000003, 16451... | \n",
- " [193556.7293, 186649.57120000003, 191165.92130... | \n",
+ " 10.280712 | \n",
+ " 1.671282e+06 | \n",
+ " 190910.812600 | \n",
+ " [1845953.2714499997, 1839710.38887, 1843642.7352] | \n",
+ " [1671845.97, 1670718.8309999998, nan, nan, nan... | \n",
+ " [194078.7455, 187142.2093, 191511.48300000004] | \n",
"
\n",
" \n",
"\n",
@@ -1639,24 +1631,24 @@
],
"text/plain": [
" rowNum modNum sceneNum BGG Gfront_mean Grear_mean \\\n",
- "0 1 2 0 11.338927 1.655285e+06 208546.127300 \n",
- "1 1 3 0 NaN 1.125704e+06 NaN \n",
- "2 1 4 0 10.334268 1.658672e+06 190457.407267 \n",
+ "0 1 2 0 11.360663 1.655209e+06 208936.319433 \n",
+ "1 1 3 0 NaN 1.125122e+06 NaN \n",
+ "2 1 4 0 10.280712 1.671282e+06 190910.812600 \n",
"\n",
" POA_eff \\\n",
- "0 [1845372.5030866666, 1840463.504476667, 184309... \n",
+ "0 [1845370.4100300001, 1840857.22746, 1843526.64... \n",
"1 [0.0, 0.0, 0.0] \n",
- "2 [1832873.54007, 1826657.0977800002, 1830721.81... \n",
+ "2 [1845953.2714499997, 1839710.38887, 1843642.7352] \n",
"\n",
" Wm2Front \\\n",
- "0 [1658556.0944, 1658093.2835, 1649204.3125, nan... \n",
- "1 [633171.4857999999, 711829.5524, 862250.9423, ... \n",
- "2 [1665464.9309999999, 1665355.3404000003, 16451... \n",
+ "0 [1658321.0965, 1652096.3821999999, nan, nan, n... \n",
+ "1 [632528.9293000001, 704530.8141, 871543.067099... \n",
+ "2 [1671845.97, 1670718.8309999998, nan, nan, nan... \n",
"\n",
" Wm2Back \n",
- "0 [211208.8218, 205754.3789, 208675.18120000002] \n",
+ "0 [211290.74520000003, 206276.09790000002, 20924... \n",
"1 [nan, nan, nan] \n",
- "2 [193556.7293, 186649.57120000003, 191165.92130... "
+ "2 [194078.7455, 187142.2093, 191511.48300000004] "
]
},
"metadata": {},
@@ -1713,12 +1705,12 @@
" 1 | \n",
" 2 | \n",
" 0 | \n",
- " 11.339 | \n",
- " 1655284.563 | \n",
- " 208546.127 | \n",
- " [1845372.5030866666, 1840463.504476667, 184309... | \n",
- " [1658556.0944, 1658093.2835, 1649204.3125, nan... | \n",
- " [211208.8218, 205754.3789, 208675.18120000002] | \n",
+ " 11.361 | \n",
+ " 1655208.739 | \n",
+ " 208936.319 | \n",
+ " [1845370.4100300001, 1840857.22746, 1843526.64... | \n",
+ " [1658321.0965, 1652096.3821999999, nan, nan, n... | \n",
+ " [211290.74520000003, 206276.09790000002, 20924... | \n",
" \n",
" \n",
" 1 | \n",
@@ -1726,10 +1718,10 @@
" 3 | \n",
" 0 | \n",
" NaN | \n",
- " 1125703.831 | \n",
+ " 1125121.777 | \n",
" NaN | \n",
" [0.0, 0.0, 0.0] | \n",
- " [633171.4857999999, 711829.5524, 862250.9423, ... | \n",
+ " [632528.9293000001, 704530.8141, 871543.067099... | \n",
" [nan, nan, nan] | \n",
"
\n",
" \n",
@@ -1737,12 +1729,12 @@
" 1 | \n",
" 4 | \n",
" 0 | \n",
- " 10.334 | \n",
- " 1658672.484 | \n",
- " 190457.407 | \n",
- " [1832873.54007, 1826657.0977800002, 1830721.81... | \n",
- " [1665464.9309999999, 1665355.3404000003, 16451... | \n",
- " [193556.7293, 186649.57120000003, 191165.92130... | \n",
+ " 10.281 | \n",
+ " 1671282.400 | \n",
+ " 190910.813 | \n",
+ " [1845953.2714499997, 1839710.38887, 1843642.7352] | \n",
+ " [1671845.97, 1670718.8309999998, nan, nan, nan... | \n",
+ " [194078.7455, 187142.2093, 191511.48300000004] | \n",
"
\n",
" \n",
"\n",
@@ -1750,24 +1742,24 @@
],
"text/plain": [
" rowNum modNum sceneNum BGG Gfront_mean Grear_mean \\\n",
- "0 1 2 0 11.339 1655284.563 208546.127 \n",
- "1 1 3 0 NaN 1125703.831 NaN \n",
- "2 1 4 0 10.334 1658672.484 190457.407 \n",
+ "0 1 2 0 11.361 1655208.739 208936.319 \n",
+ "1 1 3 0 NaN 1125121.777 NaN \n",
+ "2 1 4 0 10.281 1671282.400 190910.813 \n",
"\n",
" POA_eff \\\n",
- "0 [1845372.5030866666, 1840463.504476667, 184309... \n",
+ "0 [1845370.4100300001, 1840857.22746, 1843526.64... \n",
"1 [0.0, 0.0, 0.0] \n",
- "2 [1832873.54007, 1826657.0977800002, 1830721.81... \n",
+ "2 [1845953.2714499997, 1839710.38887, 1843642.7352] \n",
"\n",
" Wm2Front \\\n",
- "0 [1658556.0944, 1658093.2835, 1649204.3125, nan... \n",
- "1 [633171.4857999999, 711829.5524, 862250.9423, ... \n",
- "2 [1665464.9309999999, 1665355.3404000003, 16451... \n",
+ "0 [1658321.0965, 1652096.3821999999, nan, nan, n... \n",
+ "1 [632528.9293000001, 704530.8141, 871543.067099... \n",
+ "2 [1671845.97, 1670718.8309999998, nan, nan, nan... \n",
"\n",
" Wm2Back \n",
- "0 [211208.8218, 205754.3789, 208675.18120000002] \n",
+ "0 [211290.74520000003, 206276.09790000002, 20924... \n",
"1 [nan, nan, nan] \n",
- "2 [193556.7293, 186649.57120000003, 191165.92130... "
+ "2 [194078.7455, 187142.2093, 191511.48300000004] "
]
},
"execution_count": 20,
@@ -1779,6 +1771,14 @@
"# Results are also automatically saved in \\results\\Cumulative_Results.csv\n",
"pd.read_csv(os.path.join('results','Cumulative_Results.csv'))"
]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "0ab59c71",
+ "metadata": {},
+ "outputs": [],
+ "source": []
}
],
"metadata": {
diff --git a/docs/tutorials/21 - Weather to Module Performance.py b/docs/tutorials/21 - Weather to Module Performance.py
index 29e76e64..229089f2 100644
--- a/docs/tutorials/21 - Weather to Module Performance.py
+++ b/docs/tutorials/21 - Weather to Module Performance.py
@@ -1,7 +1,7 @@
#!/usr/bin/env python
# coding: utf-8
-# In[2]:
+# In[1]:
# This information helps with debugging and getting support :)
@@ -20,7 +20,7 @@
# This tutorial shows how to use the new function on bifacial_radiance calculatePerformanceModule performance, as well as how to find CEC Module parameters.
#
-# In[3]:
+# In[2]:
import os
@@ -36,7 +36,7 @@
print ("Your simulation will be stored in %s" % testfolder)
-# In[4]:
+# In[3]:
import bifacial_radiance
@@ -49,7 +49,7 @@
# ## Geting a CEC Module to pass into demo.makeModule
-# In[5]:
+# In[4]:
url = 'https://raw.githubusercontent.com/NREL/SAM/patch/deploy/libraries/CEC%20Modules.csv'
@@ -60,7 +60,7 @@
#
# Make sure you select only 1 module from the database -- sometimes there are similar names.
-# In[6]:
+# In[5]:
modfilter2 = db.index.str.startswith('SunPower') & db.index.str.endswith('SPR-E19-310-COM')
@@ -75,7 +75,7 @@
-# In[7]:
+# In[6]:
# Selecting only two times as examples
@@ -88,7 +88,7 @@
# The CEC data should be passed into the ModuleObj, either at time of creation, or sometime before it is passed into makeScene.
-# In[8]:
+# In[7]:
mymodule = demo.makeModule(name='test-module', x=1, y=2, bifi=0.9, CECMod=CECMod)
@@ -96,13 +96,13 @@
# The same data could instead be passed after the ModuleObj's definition, or at time of performance analysis:
-# In[9]:
+# In[8]:
mymodule.addCEC(CECMod)
-# In[10]:
+# In[9]:
# Let's make a second module, and set it to the default Prism Solar module type
@@ -111,7 +111,7 @@
# We're going to set up two scenes, each with a different module type!
-# In[11]:
+# In[10]:
sceneDict = {'tilt': 0, 'azimuth': 180, 'pitch': 5,'hub_height':1.5, 'nMods':5, 'nRows': 2}
@@ -122,30 +122,30 @@
# Make a second scene with the other module type
-# In[12]:
+# In[11]:
sceneDict2 = {'tilt': 0, 'azimuth': 180, 'pitch': 5,'hub_height':2.5, 'nMods':2, 'nRows': 1, 'originx': -15}
trackerdict = demo.makeScene1axis(trackerdict, module = mymodule2, sceneDict=sceneDict2, append=True)
-# In[13]:
+# In[12]:
-# Compile both scenes into one octfile. Run 2 different analyses, one on each scene
+# Compile both scenes into one octfile. Run 2 different analyses, one on each scene with different front and rear y scan
trackerdict = demo.makeOct1axis()
-trackerdict = demo.analysis1axis(sensorsy=3, append=False)
-trackerdict = demo.analysis1axis(sensorsy=3, sceneNum=1)
+trackerdict = demo.analysis1axis(sensorsy=[1,3], append=False)
+trackerdict = demo.analysis1axis(sensorsy=[3,2], sceneNum=1)
-# In[14]:
+# In[13]:
# Include an AgriPV groundscan too
trackerdict = demo.analysis1axisground(sceneNum=1, sensorsground=10, customname='Silvanas_')
-# In[15]:
+# In[14]:
# show the initial irradiance results before continuing:
@@ -154,7 +154,7 @@
# ## Calculating the Performance and Exporting the Results to a CSV
-# In[16]:
+# In[15]:
# Calculate performance.
@@ -193,7 +193,7 @@
trackerdict = demo.genCumSky1axis()
trackerdict = demo.makeScene1axis(trackerdict, module = mymodule, sceneDict = sceneDict)
trackerdict = demo.makeOct1axis()
-trackerdict = demo.analysis1axis(modWanted = [2,4], sensorsy=3)
+trackerdict = demo.analysis1axis(modWanted = [2,4], sensorsy=[2,3])
trackerdict = demo.analysis1axisground(sensorsground=10)
@@ -211,3 +211,9 @@
# Results are also automatically saved in \results\Cumulative_Results.csv
pd.read_csv(os.path.join('results','Cumulative_Results.csv'))
+
+# In[ ]:
+
+
+
+
diff --git a/tests/test_bifacial_radiance.py b/tests/test_bifacial_radiance.py
index 2fd4c187..0b3a160e 100644
--- a/tests/test_bifacial_radiance.py
+++ b/tests/test_bifacial_radiance.py
@@ -263,7 +263,7 @@ def test_1axis_gencumSky():
trackerdict = demo.makeOct1axis(trackerdict=minitrackerdict, singleindex=-5) # just run this for one timestep: -5 degrees
trackerdict = demo.analysis1axis( modWanted=7, rowWanted=3, sensorsy=2, sceneNum=0)
- assert trackerdict[-5.0]['AnalysisObj'][0].x[0] == -10.76304
+ assert trackerdict[-5.0]['AnalysisObj'][0].x[0] == pytest.approx(-10.766, abs=.001)
modscanfront = {}
modscanfront = {'xstart': -5}
trackerdict = demo.analysis1axis( sensorsy=2, modscanfront=modscanfront, sceneNum=0, customname='_test2')
@@ -298,19 +298,17 @@ def test_SceneObj_makeSceneNxR_lowtilt():
(frontscan,backscan) = analysis.moduleAnalysis(scene)
assert frontscan.pop('orient') == '-0.000 0.174 -0.985'# was 0,0,-11 in v0.2.4
- assert frontscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': 0, 'yinc': 0.093556736536159757,
- 'xstart': 4.627616431348303e-17,'ystart': -0.3778735578756446,
- 'zinc': 0.016496576878358378, 'zstart': 0.23717753969161476,
- 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0})
+ assert frontscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': 0, 'yinc': 0.09357,
+ 'xstart': 0,'ystart': -0.378, 'zinc': 0.0165, 'zstart': 0.2372,
+ 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0}, abs=.001)
assert backscan.pop('orient') == '0.000 -0.174 0.985' # was 0,0,1 in v0.2.4
- assert backscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': 0, 'yinc': 0.093556736536159757,
- 'xstart': 4.580831740657635e-17, 'ystart': -0.3740532979669721, 'zinc': 0.016496576878358378,
- 'zstart': 0.21551176912534617,
- 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0})
+ assert backscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': 0, 'yinc': 0.09356,
+ 'xstart': 0, 'ystart': -0.374, 'zinc': 0.0165,'zstart': 0.2155,
+ 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0}, abs=.001)
# zstart was 0.01 and zinc was 0 in v0.2.2
#assert scene.text == '!xform -rz -90 -t -0.795 0.475 0 -rx 10 -t 0 0 0.2 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -15.9 -4.5 0 -rz 0 objects\\simple_panel.rad'
- assert scene.text[0:117] == '!xform -rx 10 -t 0 0 0.2824828843917919 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -14.4 -4.5 0 -rz 0 -t 0 0 0 "objects' #linux has different directory structure and will error here.
+ assert scene.text[0:105] == '!xform -rx 10 -t 0 0 0.2825 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -14.4 -4.5 0 -rz 0 -t 0 0 0 "objects' #linux has different directory structure and will error here.
def test_SceneObj_makeSceneNxR_hightilt():
# test _makeSceneNxR(tilt, height, pitch, orientation = None, azimuth = 180, nMods = 20, nRows = 7, radname = None)
@@ -342,19 +340,19 @@ def test_SceneObj_makeSceneNxR_hightilt():
'''
assert [float(x) for x in temp.split(' ')] == pytest.approx([-0.906, -0.016, -0.423]) #was 0,0,-1 in v0.2.4
- assert frontscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': -0.040142620018581696, 'xstart': 0.1796000448657153, 'yinc': -0.0007006920388131139,
- 'ystart': 0.0031349304442418674, 'zinc': 0.08609923976848174,'zstart': 0.2949742232650364,
- 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0})
+ assert frontscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1, 'xinc': -0.04013, 'xstart': 0.1796, 'yinc': -0.0007,
+ 'ystart': 0.00313, 'zinc': 0.0861,'zstart': 0.295,
+ 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0}, abs=.001)
temp2 = backscan.pop('orient')
assert [float(x) for x in temp2.split(' ')] == pytest.approx([0.906, 0.016, 0.423]) #was 0,0,1 in v0.2.4
assert backscan == pytest.approx({'Nx': 1, 'Ny': 9, 'Nz': 1,
- 'xinc': -0.040142620018581696, 'xstart': 0.15966431032235584,
- 'yinc': -0.0007006920388131139, 'ystart': 0.0027869509033958163,
- 'zinc': 0.08609923976848174, 'zstart': 0.28567662150674106,
- 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0})
+ 'xinc': -0.0401, 'xstart': 0.1597,
+ 'yinc': -0.0007, 'ystart': 0.002787,
+ 'zinc': 0.0861, 'zstart': 0.2856,
+ 'sx_xinc': 0.0, 'sx_yinc':0.0, 'sx_zinc':0.0}, abs=.001)
#assert scene.text == '!xform -rz -90 -t -0.795 0.475 0 -rx 65 -t 0 0 0.2 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -15.9 -4.5 0 -rz 91 objects\\simple_panel.rad'
- assert scene.text[0:118] == '!xform -rx 65 -t 0 0 0.6304961988424087 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -14.4 -4.5 0 -rz 91 -t 0 0 0 "objects'
+ assert scene.text[0:106] == '!xform -rx 65 -t 0 0 0.6304 -a 20 -t 1.6 0 0 -a 7 -t 0 1.5 0 -i 1 -t -14.4 -4.5 0 -rz 91 -t 0 0 0 "objects'
@@ -462,17 +460,25 @@ def test_analyzeRow():
scene = demo.makeScene('test-module',sceneDict) #makeScene creates a .rad file with 20 modules per row, 7 rows.
octfile = demo.makeOct(demo.getfilelist()) # makeOct combines all of the ground, sky and object files into a .oct file.
analysis = bifacial_radiance.AnalysisObj(octfile, demo.name) # return an analysis object including the scan dimensions for back irradiance
- rowscan = analysis.analyzeRow(octfile = octfile, scene = scene, name = name,
- rowWanted = 1, sensorsy = [3,3])
+ rowscan = analysis.analyzeRow(octfile=octfile, scene=scene, name=name,
+ rowWanted=1, sensorsy=[5,3])
assert len(rowscan) == 2
assert rowscan.keys()[2] == 'z'
- assert len(rowscan[rowscan.keys()[2]][0]) == 3
+ assert len(rowscan[rowscan.keys()[2]][0]) == 5
# Assert z is the same for two different modules
assert rowscan[rowscan.keys()[2]][0][0] == rowscan[rowscan.keys()[2]][1][0]
# Assert Y is different for two different modules
assert rowscan[rowscan.keys()[1]][0][0]+2 == rowscan[rowscan.keys()[1]][1][0]
- assert (analysis.__printval__('x')[1] == 0) & (analysis.x[1] != 0)
-
+ assert (analysis.__printval__('x')[2] == 0) & (analysis.x[2] == 0)
+ assert any( analysis.__printval__('Wm2Front') != analysis.Wm2Front)
+ temp = analysis.__repr__() # does the repr compile at all?
+ assert analysis.rearX == pytest.approx([0.25, 0, -0.25])
+ assert analysis.x == pytest.approx([.333, .167, 0, -.167, -.333], abs=.001)
+ # test default xscan and yscan = 1
+ rowscan = analysis.analyzeRow(octfile=octfile, scene=scene, name=name,
+ rowWanted=1, sensorsy=None, sensorsx=None)
+ assert analysis.x == pytest.approx([0])
+ assert analysis.rearX == pytest.approx([0])
def test_addMaterialGroundRad():
# test addMaterialGroundRad. requires metdata for boulder.
@@ -522,7 +528,7 @@ def test_verticalmoduleSouthFacing():
assert analysis.x[1] == analysis.x[2]
assert round(analysis.x[0]) == 0
assert round(analysis.x[0]) == 0
- assert analysis.z[3] == 2.9
+ assert analysis.z[3] == pytest.approx(2.9, abs=0.002)
def test_verticalmoduleEastFacing():
# test full routine for Vertical Modules.
@@ -551,7 +557,7 @@ def test_verticalmoduleEastFacing():
assert analysis.x[1] == analysis.x[2]
assert round(analysis.y[0]) == 0
assert round(analysis.y[0]) == 0
- assert analysis.z[3] == 2.9
+ assert analysis.z[3] == pytest.approx(2.9, abs=0.003)
def test_tiltandazimuthModuleTest():
# test full routine for Vertical Modules.
diff --git a/tests/test_gencumsky.py b/tests/test_gencumsky.py
index d909d3fa..1ae9d1cf 100644
--- a/tests/test_gencumsky.py
+++ b/tests/test_gencumsky.py
@@ -82,7 +82,9 @@ def test_SingleModule_gencumsky_modelchain():
assert analysis.mattype[0][:12] == 'a4.1.a0.test'
assert analysis.rearMat[0][:12] == 'a4.1.a0.test'
assert np.mean(analysis.x) == pytest.approx(0)
- assert np.mean(analysis.rearY) == pytest.approx(0.00017, abs = 0.00001)
+ rearY = [-0.374, -0.28, -0.187, -0.093, 0.0, 0.094, 0.188, 0.281, 0.374]
+ for (a,b) in zip(rearY, analysis.rearY):
+ assert a == pytest.approx(b, abs=.001)
if DEBUG:
print(np.mean(analysis.Wm2Front))
print(np.mean(analysis.Wm2Back))
diff --git a/tests/test_module.py b/tests/test_module.py
index 7bcb99e9..7e45dbed 100644
--- a/tests/test_module.py
+++ b/tests/test_module.py
@@ -118,14 +118,14 @@ def test_moduleFrameandOmegas():
scene = demo.makeScene(module,sceneDict)
analysis = bifacial_radiance.AnalysisObj() # return an analysis object including the scan dimensions for back irradiance
frontscan, backscan = analysis.moduleAnalysis(scene, sensorsy=1) # Gives us the dictionaries with coordinates
- assert backscan['zstart'] == expectedModuleZ[ii]
+ assert backscan['zstart'] == pytest.approx(expectedModuleZ[ii], abs=.001)
# read the data back from module.json and check again
module = demo.makeModule(name='test-module')
scene = demo.makeScene('test-module',sceneDict)
analysis = bifacial_radiance.AnalysisObj() # return an analysis object including the scan dimensions for back irradiance
frontscan, backscan = analysis.moduleAnalysis(scene, sensorsy=1)
- assert backscan['zstart'] == expectedModuleZ[ii]
+ assert backscan['zstart'] == pytest.approx(expectedModuleZ[ii], abs=.001)
# do it again by passing everying at once
module = bifacial_radiance.ModuleObj(name='test-module',x=2, y=1, zgap = zgap,
frameParams=frameParams, omegaParams=omegaParams,
@@ -134,7 +134,7 @@ def test_moduleFrameandOmegas():
scene = demo.makeScene(module, sceneDict)
analysis = bifacial_radiance.AnalysisObj() # return an analysis object including the scan dimensions for back irradiance
frontscan, backscan = analysis.moduleAnalysis(scene, sensorsy=1) # Gives us the dictionaries with coordinates
- assert backscan['zstart'] == expectedModuleZ[0]
+ assert backscan['zstart'] == pytest.approx(expectedModuleZ[0], abs=.001)
# omega default values
module.addOmega()
@@ -151,7 +151,7 @@ def test_moduleFrameandOmegas():
scene = demo.makeScene(module, sceneDict)
analysis = bifacial_radiance.AnalysisObj() # return an analysis object including the scan dimensions for back irradiance
frontscan, backscan = analysis.moduleAnalysis(scene, sensorsy=10) # Gives us the dictionaries with coordinates
- assert backscan['xstart'] == pytest.approx(0.792)
+ assert backscan['xstart'] == pytest.approx(0.792, abs=.001)
def test_GlassModule():
# test the cell-level module generation