diff --git a/interface/pybind11_wrapper.hpp b/interface/pybind11_wrapper.hpp
index 13e7ff98fb7e677d423276b664838136ef5251fe..107c1a6f65fb0fca406c42c55e97599f49cc683b 100644
--- a/interface/pybind11_wrapper.hpp
+++ b/interface/pybind11_wrapper.hpp
@@ -36,6 +36,7 @@ void add_derivatives(py::module &m, Wrapper &cls) {
 
     using vd = VirialDerivatives<Model, double, Eigen::Array<double,Eigen::Dynamic,1>>;
     m.def("get_B2vir", &vd::get_B2vir, py::arg("model"), py::arg("T"), py::arg("molefrac").noconvert());
+    cls.def("get_B2vir", [](const Model& m, const double T, const RAX molefrac) { return vd::get_B2vir(m, T, molefrac); }, py::arg("T"), py::arg("molefrac").noconvert());
     m.def("get_B12vir", &vd::get_B12vir, py::arg("model"), py::arg("T"), py::arg("molefrac").noconvert());
 
     using ct = CriticalTracing<Model, double, Eigen::Array<double, Eigen::Dynamic, 1>>;
diff --git a/notebooks/time_Ar0n.py b/notebooks/time_Ar0n.py
index d16f6f68c34262fe6fa62c66de968e28a343aa0d..fb13070eb2d31ca9450cc9d96e3203a048d3dd40 100644
--- a/notebooks/time_Ar0n.py
+++ b/notebooks/time_Ar0n.py
@@ -91,6 +91,30 @@ def time(*, model, n, Nrep, use_gen):
     elap = (toc-tic)/Nrep
     return elap
 
+def time_virials(*, Ncomp, Nrep):
+    T = 300
+    molefrac = np.array([1.0])
+
+    model = teqp.vdWEOS(
+        np.linspace(150.687, 160, Ncomp).tolist(), 
+        np.linspace(4863000.0, 4.9e6, Ncomp).tolist()
+    )
+
+    f = getattr(model, f"get_B2vir")
+    # Warm up the core with some useless calls
+    for i in range(Nrep):
+        f(T, molefrac)
+    # Do the calculations
+    tic = timeit.default_timer()
+    for i in range(Nrep):
+        f(T, molefrac)
+    toc = timeit.default_timer()
+    elap = (toc-tic)/Nrep
+    return elap
+
+for Ncomp in np.arange(1, 20, 1):
+    print(Ncomp, time_virials(Nrep=10000, Ncomp=Ncomp))
+
 def timeall(*, models, Nrep):
     o = []
     for use_gen in [True,False]:
@@ -138,6 +162,7 @@ def timeall(*, models, Nrep):
     plt.close()
 
 if __name__ == '__main__':
+
     timeall(models=build_models(), Nrep= 10000)
 
     def time_overhead(x):