Skip to content

Instantly share code, notes, and snippets.

@christophernhill
Created March 23, 2022 21:38
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save christophernhill/91340502ee9d2effcaac64c49ce2ebb3 to your computer and use it in GitHub Desktop.
Save christophernhill/91340502ee9d2effcaac64c49ce2ebb3 to your computer and use it in GitHub Desktop.
mghpcc-rack-plot
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
#!/usr/bin/env python
# coding: utf-8
# In[1]:
import matplotlib.pyplot as plt
# In[2]:
import numpy as np
# In[3]:
a=np.ones(10)
# In[5]:
plt.plot(a)
# In[79]:
#
# Side view
#
def prack(x0,y0,nr):
rx=np.array([0,30,30,0,0]);
ry=np.array([0,0,83.93,83.93,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
plt.plot(rx+x0,ry+y0,color='k')
return x0+30, nr+1
def pirc(x0,y0,ni):
ix=np.array([0,24,24,0,0]);
iy=np.array([0,0,78.39,78.39,0]);
lx=(ix[1]+ix[0])*0.5+x0
ly=(iy[2]+iy[1])*0.5+y0
plt.text(lx,ly,' In-row Chiller - %2.2d'%(ni),rotation=90,color='k',ha='center', va='center')
plt.plot(ix+x0,iy+y0,color='k')
return x0+24, ni+1
# In[76]:
plt.rcParams['figure.figsize'] = [30, 6]
# In[77]:
x=0;nr=1;ni=1
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,ni=pirc(x,0,ni)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,ni=pirc(x,0,ni)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,ni=pirc(x,0,ni)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,ni=pirc(x,0,ni)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,ni=pirc(x,0,ni)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
# In[78]:
x=0;nr=1
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
x,nr=prack(x,0,nr)
# In[325]:
#
# Plan view
#
def prack(x0,y0,nr,doplot=True,col='k'):
rx=np.array([0,45,45,0,0]);
ry=np.array([0,0,30,30,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
# plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
if doplot:
plt.plot(rx+x0,ry+y0,color=col)
return x0,y0+30, nr+1
def pirc(x0,y0,nr,doplot=True,col='k'):
rx=np.array([0,36,36,0,0]);
ry=np.array([0,0,24,24,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
# plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
if doplot:
plt.plot(rx+x0,ry+y0,color=col)
return x0,y0+24, nr+1
def pircr(x0,y0,nr,doplot=True,col='k'):
rx=np.array([0,36,36,0,0])+9;
ry=np.array([0,0,24,24,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
# plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
if doplot:
plt.plot(rx+x0,ry+y0,color=col)
return x0,y0+24, nr+1
def prackUl(x0,y0,nr,doplot=True,col='k'):
rx=np.array([0,45,45,0,0]);
ry=np.array([0,0,30,30,0]);
dx=np.array([0,11,11,0,0]);
dy=np.array([0,0,30,30,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
# plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
if doplot:
plt.plot(rx+x0,ry+y0,color=col)
plt.plot(dx+x0+45,dy+y0,color=col)
return x0,y0+30, nr+1
def prackUr(x0,y0,nr,doplot=True,col='k'):
rx=np.array([0,45,45,0,0]);
ry=np.array([0,0,30,30,0]);
dx=np.array([0,-11,-11,0,0]);
dy=np.array([0,0,30,30,0]);
lx=(rx[1]+rx[0])*0.5+x0
ly=(ry[2]+ry[1])*0.5+y0
# plt.text(lx,ly,'Compute Rack - %2.2d'%(nr),rotation=90,color='k',ha='center', va='center')
if doplot:
plt.plot(rx+x0,ry+y0,color=col)
plt.plot(dx+x0,dy+y0,color=col)
return x0,y0+30, nr+1
# In[91]:
plt.rcParams['figure.figsize'] = [216/10, 146/10]
# In[248]:
def prow(nrow,pods={"A":True,"B":True,"C":True},col='k'):
roff=(nrow-1)*18*12;
x=216*12-(12+13)*12-roff;nr=1;ni=1;y=7*12
# Left side
# POD C
if pods["C"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
for i in range(1,6):
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=pirc(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
if pods["C"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
# POD B
y=y+11*12+6
if pods["B"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
for i in range(1,5):
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=pirc(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
if pods["B"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
# POD A
y=y+11*12+6
if pods["A"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
for i in range(1,6):
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=pirc(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
if pods["A"]:
plt.plot([x+45,x+45+48],[y,y],color=col)
# Right side
x=216*12-(4+13)*12-roff;nr=1;ni=1;y=7*12
# POD C
for i in range(1,6):
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=pircr(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
x,y,nr=prack(x,y,nr,pods["C"],col)
# POD B
y=y+11*12+6
for i in range(1,5):
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=pircr(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
x,y,nr=prack(x,y,nr,pods["B"],col)
# POD A
y=y+11*12+6
for i in range(1,6):
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=pircr(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
x,y,nr=prack(x,y,nr,pods["A"],col)
# In[243]:
def prow6(nrow):
roff=(nrow-1)*18*12;
x=216*12-(12+13)*12-roff;nr=1;ni=1;y=7*12
# Left side
plt.plot([x+45,x+45+48],[y,y],color='k')
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
plt.plot([x+45,x+45+48],[y,y],color='k')
y=y+14*12
plt.plot([x+45,x+45+48],[y,y],color='k')
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
plt.plot([x+45,x+45+48],[y,y],color='k')
y=y+12*12+4
plt.plot([x+45,x+45+48],[y,y],color='k')
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pirc(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
plt.plot([x+45,x+45+48],[y,y],color='k')
# Right side
roff=(nrow-1)*18*12;
x=216*12-(4+13)*12-roff;nr=1;ni=1;y=7*12
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
y=y+14*12
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
y=y+12*12+4
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr);
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
x,y,nr=pircr(x,y,nr)
x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr); x,y,nr=prack(x,y,nr)
# In[276]:
def prowA(nr):
prow(nr)
def ptape():
nrow=7
roff=(nrow-1)*18*12;
x=216*12-(12+13)*12-roff+4*12;nr=1;ni=1;y=103*12
xc=np.array([0,8*12,8*12,0,0]);
yc=np.array([0,0,30*12,30*12,0])
plt.plot(xc+x,yc+y,color='k')
# In[322]:
def prowU(nrow,pods={"A":True,"B":True,"C":True},col='k',ls=0,rs=0):
roff=(nrow-1)*18*12;
x=216*12-(12+13)*12-roff-ls;nr=1;ni=1;y=7*12
# Left side
# POD C
for i in range(1,17):
x,y,nr=prack(x,y,nr,pods["C"],col)
# POD B
y=y+11*12+6
for i in range(1,14):
x,y,nr=prack(x,y,nr,pods["B"],col)
# POD A
y=y+11*12+12
for i in range(1,17):
x,y,nr=prackUl(x,y,nr,pods["A"],col)
# Right side
x=216*12-(4+13)*12-roff-rs;nr=1;ni=1;y=7*12
# POD C
for i in range(1,17):
x,y,nr=prack(x,y,nr,pods["C"],col)
# POD B
y=y+11*12+6
for i in range(1,14):
x,y,nr=prack(x,y,nr,pods["B"],col)
# POD A
y=y+11*12+12
for i in range(1,17):
x,y,nr=prackUr(x,y,nr,pods["A"],col)
# In[289]:
plt.axis([0 , 213*12 , 0 , 150*12])
pods={"A":True,"B":True,"C":True}
prow(1,pods)
prow(2,pods)
prow(3,pods)
prow(4,pods)
prow(5,pods)
prow6(6)
pods["A"]=False
prow(7,pods)
ptape()
pods["A"]=False
pods["B"]=False
prow(8,pods)
pods["A"]=True
pods["B"]=False
pods["C"]=False
prow(8,pods,col='k')
pods["A"]=False
pods["B"]=False
pods["C"]=True
prow(9,pods,col='k')
pods["A"]=True
pods["B"]=False
pods["C"]=False
prow(9,pods,col='r')
pods["A"]=True
pods["B"]=False
pods["C"]=False
prow(10,pods,col='r')
# In[326]:
plt.axis([0 , 213*12 , 0 , 150*12])
pods={"A":True,"B":True,"C":True}
prow(1,pods)
prow(2,pods)
prow(3,pods)
prow(4,pods)
prow(5,pods)
prow6(6)
pods["A"]=False
prow(7,pods)
ptape()
pods["A"]=False
pods["B"]=False
prow(8,pods)
pods["A"]=True
pods["B"]=False
pods["C"]=False
prow(8,pods,col='k')
pods["A"]=False
pods["B"]=False
pods["C"]=True
prow(9,pods,col='k')
pods["A"]=True
pods["B"]=False
pods["C"]=False
prowU( 9,pods,col='r',ls=12,rs=0)
pods["A"]=True
pods["B"]=False
pods["C"]=False
prowU(10,pods,col='r',ls=0,rs=-12)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment