<jupyter_start><jupyter_text>Gas Composition<jupyter_code>composition_dict = {
    'mole_fraction':[0.7410,0.0246,0.0007,0.0005,0.0003,0.0001,0.0001,0.0005,0.0592,0.021,0.152],
    'compound':['methane','ethane','propane','isobutane','n-butane','isopentane','n-pentane','n-hexane','nitrogen','carbon-dioxide','sulfur-dioxide']
    }


composition=bl.chromatography(composition_dict)
composition<jupyter_output><empty_output><jupyter_text>Create Gas ObjectCreate gas object with chromatography and PVT from Correlations<jupyter_code>fm = 'formation_1'
t= 122
g = bl.gas(formation=fm, temp=t, chromatography=composition)
g.pvt_from_correlations()
g.pvt
g.sg
td = 10000
md = np.linspace(0,td,20)
inc = np.zeros(md.shape)
thp = 800
surf_temp = 150
res_temp = 200
t_grad = ((200-150)/td)*100
q_rate = 2000
df,pwf = pi.gas_pressure_profile(
    md = md,
    inc = inc,
    thp = thp,
    rate = q_rate,
    gas_obj = g,
    surf_temp=surf_temp,
    temp_grad=t_grad,
    di=2.259)

print(f'Bottom Pressure {pwf}')
print('Pressure Profile')
print(df)

_thp = pi.gas_upward_pressure(
    md = md,
    inc = inc,
    pwf = 1153,
    rate = q_rate,
    gas_obj = g,
    surf_temp=surf_temp,
    temp_grad=t_grad,
    di=2.259
)

print(_thp)
outflow = pi.gas_outflow_curve(
    md = md, 
    inc = inc, 
    thp = 500, 
    gas_obj = g,
    di=[2,2.259,2.5, 2.99,3.5],
    surf_temp=150,
    temp_grad=t_grad,
    min_rate=10,
    max_rate=3000)
outflow.plot()
df,aof = pi.gas_inflow_curve(1000,3e-5,g.pvt,n=10)

fig, ax = plt.subplots()
ax.plot(df['q'],df['p'])
outflow.plot(ax=ax)
plt.grid()
df
q=np.zeros(df.shape[0])
q
for i in range(df.shape[0]):
    q[i] = df.iloc[i,0]
q<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.1650943396226415, 'fraction_numerical': 0.07900943396226415, 'mean_word_length': 4.303125, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, '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': '2', 'dir': 'jupyter-structured-clean-dedup', 'id': '567389', 'license': 'MIT', 'n_tokens_mistral': 858, 'n_tokens_neox': 749, 'n_words': 114, 'path': 'examples/wellproductivity/4-gas_outflow.ipynb', 'repo_name': 'scuervo91/reservoirpy', 'size': '1696'}