<jupyter_start><jupyter_text>Optik `import needed modules`<jupyter_code>from src.bulk import Bulk
from src.layer import Layer
from matplotlib import pyplot as plt<jupyter_output><empty_output><jupyter_text>Cell<jupyter_code>layers = [
    Layer(name="MgF2", thickness=100.0, filename="./Materials/Al2.txt"),
    Layer(name="ZnS", thickness=200.0, filename="./Materials/Si.txt"),
    Layer(name="InGaP", thickness=300.0, filename="./Materials/Al2.txt"),
    Layer(name="GaAs", thickness=400.0, filename="./Materials/Si.txt"),
]
cell2 = Bulk(*layers)
v1, v2 = cell2.RT()
print("Cell: \n{}\nR: {}\nT: {}".format(
    "\n".join(["  thickness: ".join([layer.name, str(layer.thickness)]) for layer in layers]),
    v1,
    v2,
))<jupyter_output>Cell: 
MgF2  thickness: 100.0
ZnS  thickness: 200.0
InGaP  thickness: 300.0
GaAs  thickness: 400.0
R: [140.22279193 134.91946577 131.91251935 ...  52.43612094  52.47922111
  52.52223049]
T: [2.62821745e-18 2.72334435e-18 2.61985452e-18 ... 6.65094379e+01
 6.64819365e+01 6.64544667e+01]<jupyter_text>RT - Graphic<jupyter_code>fig, ax1, = pyplot.subplots(figsize=(8, 6), dpi=300, facecolor='w', edgecolor='k')
ax1.set_xlabel('Wave length [nm]', {'fontsize': 8})
ax1.set_ylabel('Transmittance [%]', {'fontsize': 8})
ax1.plot(wlengths, T, label='Transmittance TCO', linewidth=1.2)
ax1.tick_params(axis='y')
ax2 = ax1.twinx()  # instantiate a second axes that shares the same x-axis
ax2.set_ylabel('Reflectance [%]', {'fontsize': 8})  # we already handled the x-label with ax1
ax2.plot(wlengths, R, label='Reflectance CIGS', linewidth=1.2, color='g')
ax2.tick_params(axis='y')
fig.tight_layout()  # otherwise the right y-label is slightly clipped
ax1.grid(True)
fig.legend(loc='center', fontsize='small')
pyplot.savefig('RT8-300dpi.pdf')
pyplot.show()<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.17951541850220265, 'fraction_numerical': 0.10958149779735683, 'mean_word_length': 5.655677655677656, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '3', 'dir': 'jupyter-structured-clean-dedup', 'id': '309658', 'license': 'MIT', 'n_tokens_mistral': 861, 'n_tokens_neox': 737, 'n_words': 137, 'path': 'optik.ipynb', 'repo_name': 'OscarBit/optik', 'size': '1816'}