Submitted:
08 February 2026
Posted:
10 February 2026
You are already at the latest version
Abstract

Keywords:
Introduction
Rationale For D2BIA_Discrete Models
2.1. D2BIA_dicrete: Model 1
2.2. D2BIA_Dicrete: Model 2 – Refinement with Weighted Values
2.3. D2BIA_Discrete: Model 3 – Introduction of Tunable Parameters α and γ
Grid Search Optimization of Parameters α and γ
| INITIALIZE: α_grid ← linspace(0, 1, 191) γ_grid ← linspace(0, 5, 251) best_score ← −∞ best_α ← None best_γ ← None best_R² ← empty dictionary training_data ← load reference values {PDI, FLU, HOMA, NICS(1)_zz} for n=1..10 weights ← {w_PDI, w_FLU, w_HOMA, w_NICS} FOR each α IN α_grid: FOR each γ IN γ_grid: # Compute D2BIA predictions for all training acenes predictions ← empty array of length 10 FOR n FROM 1 TO 10: sum_D2BIA ← 0 FOR p FROM 1 TO n: f ← compute_fused_bonds(n, p) d ← min(p−1, n−p) S ← (6 − f) + f·α DIU ← S/6 g ← exp(−γ·d) e_Σ ← 0.02509 · S ρ_center ← g · (e_Σ)² w ← (4n + 2)/(6n) D2BIA ← w · DIU · ρ_center sum_D2BIA ← sum_D2BIA + D2BIA END FOR predictions[n] ← sum_D2BIA / n # ring-averaged value END FOR # Compute R² for each target index R² ← empty dictionary FOR each target t IN {PDI, FLU, HOMA, NICS}: y_t ← training_data[t] # reference values for n=1..10 (a_t, b_t) ← linear_regression(predictions, y_t) ŷ_t ← a_t · predictions + b_t SS_res ← sum((y_t − ŷ_t)²) SS_tot ← sum((y_t − mean(y_t))²) R²[t] ← 1 − SS_res/SS_tot END FOR # Compute composite score score ← 0 FOR each target t: score ← score + weights[t] · R²[t] END FOR # Update best parameters if current score is superior IF score > best_score THEN: best_score ← score best_α ← α best_γ ← γ best_R² ← R² END IF END FOR END FOR RETURN (best_α, best_γ, best_R², best_score) |
2.4. Leave-One-n-Out Cross-Validation for Linear Acenes of Model 3- Ring-by-Ring Optimization of α and γ
2.5. D2BIA_Discrete: Model 4 – The Failure Model for All Acenes and PAHs
Results and Discussion
3.1. Validation of D2BIA_Discrete Models 1 and 2 Against FLU, HOMA, PDI and NICS(1)zz
3.2. Validation of D2BIA_Discrete Model 3 Against FLU Aromaticity Indice
Model 3: Multi-Index Optimization with Molecular Averages
Leave-One-N-Out Cross-Validation for Robust Generalization
Extension Attempts and Future Directions: Model 4
Calculation Workflow of Model 3
- Topological weight factor: , where is the total number of π electrons in the n-acene (Hückel rule)
- Fused bond count:
- Effective bond sum: , where α is the fused-bond sharing parameter (optimized per fold, typically α ≈ 1.00)
- Depth index: , representing the minimum number of ring steps from ring p to either terminus
- Depth attenuation factor: , where γ is the depth-decay parameter (optimized per fold)
- Amplitude constant: , derived from Slater-type orbital decay for carbon 2p orbitals at the benzene ring-center distance
Example Calculation for Anthracene (n = 3):
|
""" D2BIA_discrete Calculator for Linear Acenes ============================================ This script calculates the D2BIA_discrete aromaticity index for individual rings in linear acenes using the zero-cost discrete geometry chemistry approach. Based on Model 3 with optimized parameters from LONOCV. Author: Caio L. Firme Institution: Federal University of Rio Grande do Norte (UFRN) """ import math # ============================================================================ # OPTIMIZED PARAMETERS FROM MODEL 3 (LONOCV) # ============================================================================ # These are representative average values from the cross-validation ALPHA = 1.00 # Fused-bond sharing parameter (typically 1.00 across folds) GAMMA = 0.05 # Depth-decay parameter (typically 0.00-0.12 depending on fold) K = 0.02509 # Amplitude constant from STO decay # ============================================================================ # CORE CALCULATION FUNCTIONS # ============================================================================ def calculate_w(n): """ Calculate the topological weight factor w(n) for an n-acene. Based on Hückel rule: N_pi = 4n + 2 w(n) = N_pi / (6n) = (4n + 2) / (6n) Parameters: ----------- n : int Number of rings in the linear acene Returns: -------- float : Weight factor """ N_pi = 4 * n + 2 return N_pi / (6.0 * n) def calculate_depth_index(n, p): """ Calculate the depth index d(p) for ring position p in an n-acene. d(p) = min(p-1, n-p) This represents the minimum number of ring steps from position p to either terminus of the linear chain. Parameters: ----------- n : int Number of rings in the linear acene p : int Position of the target ring (1 to n) Returns: -------- int : Depth index """ return min(p - 1, n - p) def calculate_S(f, alpha): """ Calculate the effective bond sum S. S = (6 - f) + f*alpha Parameters: ----------- f : int Number of fused bonds (0 for benzene, 1 for terminal, 2 for internal) alpha : float Fused-bond sharing parameter Returns: -------- float : Effective bond sum """ return (6 - f) + f * alpha def calculate_g(d, gamma): """ Calculate the depth attenuation factor g(p). g(p) = exp(-gamma * d(p)) Parameters: ----------- d : int Depth index gamma : float Depth-decay parameter Returns: -------- float : Depth attenuation factor """ return math.exp(-gamma * d) def calculate_D2BIA_discrete(n, p, f, alpha=ALPHA, gamma=GAMMA, k=K): """ Calculate D2BIA_discrete for a specific ring in a linear acene. D2BIA = w(n) * (S/6) * g(p) * (k*S)^2 Parameters: ----------- n : int Number of rings in the linear acene p : int Position of the target ring (1 to n) f : int Number of fused bonds for this ring alpha : float, optional Fused-bond sharing parameter (default: ALPHA) gamma : float, optional Depth-decay parameter (default: GAMMA) k : float, optional Amplitude constant (default: K) Returns: -------- float : D2BIA_discrete value """ # Calculate components w = calculate_w(n) d = calculate_depth_index(n, p) S = calculate_S(f, alpha) g = calculate_g(d, gamma) # Calculate DIU term DIU = S / 6.0 # Calculate amplitude sum e_sum = k * S # Calculate ring-center density with depth attenuation rho_center = g * (e_sum ** 2) # Final D2BIA_discrete D2BIA = w * DIU * rho_center return D2BIA # ============================================================================ # HELPER FUNCTIONS # ============================================================================ def determine_fused_bonds(n, p): """ Automatically determine the number of fused bonds for a ring position. Rules for linear acenes: - Benzene (n=1): f = 0 - Terminal rings (p=1 or p=n): f = 1 - Internal rings: f = 2 Parameters: ----------- n : int Number of rings in the linear acene p : int Position of the target ring (1 to n) Returns: -------- int : Number of fused bonds """ if n == 1: return 0 elif p == 1 or p == n: return 1 else: return 2 def get_ring_type(n, p): """ Get a descriptive name for the ring type. Parameters: ----------- n : int Number of rings p : int Position of the target ring Returns: -------- str : Ring type description """ if n == 1: return "isolated (benzene)" elif p == 1: return "terminal (position 1)" elif p == n: return f"terminal (position {n})" elif n % 2 == 1 and p == (n + 1) // 2: return f"central (position {p})" else: return f"internal (position {p})" def show_examples(): """Display example ring positions for different acenes.""" examples = { 1: "Benzene: only 1 ring (p=1)", 2: "Naphthalene: terminal rings (p=1 or p=2)", 3: "Anthracene: terminal (p=1,3) or central (p=2)", 4: "Tetracene: terminal (p=1,4) or internal (p=2,3)", 5: "Pentacene: terminal (p=1,5), internal (p=2,4), or central (p=3)", 7: "Heptacene: terminal (p=1,7), internal (p=2-6), or central (p=4)", 11: "Undecacene: terminal (p=1,11), internal (p=2-10), or central (p=6)" } print("\n" + "="*70) print("EXAMPLES OF RING POSITIONS IN LINEAR ACENES") print("="*70) for n, desc in examples.items(): print(f"n = {n:2d}: {desc}") print("="*70 + "\n") # ============================================================================ # MAIN INTERACTIVE PROGRAM # ============================================================================ def main(): """Main interactive program for D2BIA and FLU calculation.""" print("\n" + "="*70) print(" D2BIA_discrete Predictor for Linear Acenes") print(" Zero-Cost Discrete Geometry Chemistry Approach") print("="*70) print("\nThis calculator uses Model 3 with LONOCV optimized parameters:") print(f" α (alpha) = {ALPHA:.4f}") print(f" γ (gamma) = {GAMMA:.4f}") print(f" k = {K:.5f}") print("="*70) # Option to show examples show_ex = input("\nWould you like to see examples of ring positions? (y/n): ") if show_ex.lower() in ['y', 'yes', 's', 'sim']: show_examples() while True: print("\n" + "-"*70) print("Enter the parameters for your ring of interest:") print("-"*70) try: # Input number of rings n = int(input("\nNumber of rings in the acene (n): ")) if n < 1: print("Error: Number of rings must be at least 1.") continue # Input ring position print(f"\nPosition of target ring (p): must be between 1 and {n}") p = int(input(f"Enter p (1-{n}): ")) if p < 1 or p > n: print(f"Error: Ring position must be between 1 and {n}.") continue # Determine or input fused bonds f_auto = determine_fused_bonds(n, p) print(f"\nAutomatic determination: f = {f_auto} fused bonds") use_auto = input("Use automatic value? (y/n, default=y): ") if use_auto.lower() in ['n', 'no', 'não', 'nao']: f = int(input("Enter number of fused bonds (f): ")) if f not in [0, 1, 2]: print("Warning: For linear acenes, f should be 0, 1, or 2.") else: f = f_auto # Display ring information ring_type = get_ring_type(n, p) print("\n" + "="*70) print("RING INFORMATION") print("="*70) print(f"Molecule: {n}-acene") print(f"Ring position (p): {p}") print(f"Ring type: {ring_type}") print(f"Number of fused bonds (f): {f}") # Calculate intermediate values w = calculate_w(n) d = calculate_depth_index(n, p) S = calculate_S(f, ALPHA) g = calculate_g(d, GAMMA) DIU = S / 6.0 print("\n" + "-"*70) print("INTERMEDIATE CALCULATIONS") print("-"*70) print(f"Topological weight: w(n) = (4×{n}+2)/(6×{n}) = {w:.6f}") print(f"Depth index: d(p) = min({p-1}, {n-p}) = {d}") print(f"Effective bond sum: S = (6-{f}) + {f}×{ALPHA:.2f} = {S:.4f}") print(f"Depth attenuation: g(p) = exp(-{GAMMA:.2f}×{d}) = {g:.6f}") print(f"DIU factor: S/6 = {DIU:.6f}") # Calculate D2BIA_discrete D2BIA = calculate_D2BIA_discrete(n, p, f) print("\n" + "="*70) print("D2BIA_discrete CALCULATION") print("="*70) print(f"D2BIA = w × (S/6) × g × (k×S)²") print(f"D2BIA = {w:.6f} × {DIU:.6f} × {g:.6f} × ({K:.5f}×{S:.4f})²") print(f"\nD2BIA_discrete = {D2BIA:.8f}") # Optional: Calculate for all rings in this acene print("\n" + "-"*70) calc_all = input(f"\nCalculate for ALL rings in {n}-acene? (y/n): ") if calc_all.lower() in ['y', 'yes', 's', 'sim']: print("\n" + "="*70) print(f"COMPLETE RING-BY-RING ANALYSIS FOR {n}-ACENE") print("="*70) print(f"{'Position':<10} {'Type':<15} {'f':<3} {'d':<3} {'D2BIA':<12}") print("-"*70) for pos in range(1, n + 1): f_all = determine_fused_bonds(n, pos) d_all = calculate_depth_index(n, pos) D2BIA_all = calculate_D2BIA_discrete(n, pos, f_all) type_all = get_ring_type(n, pos).split('(')[0].strip() print(f"{pos:<10} {type_all:<15} {f_all:<3} {d_all:<3} " f"{D2BIA_all:<12.8f}") print("="*70) # Ask if user wants to continue print("\n" + "-"*70) another = input("\nCalculate for another ring? (y/n): ") if another.lower() not in ['y', 'yes', 's', 'sim']: break except ValueError as e: print(f"\nError: Invalid input. Please enter numeric values.") except Exception as e: print(f"\nUnexpected error: {e}") print("\n" + "="*70) print(" Thank you for using D2BIA_discrete Calculator!") print(" Discrete Geometry Chemistry for Zero-Cost Aromaticity Prediction") print("="*70 + "\n") if __name__ == "__main__": main() |
Conclusions
Supplementary Materials
Funding
Data Availability
Competing Interests
References
- Anthony, J. E. Chem. Rev. 2006, 106, 5028. [CrossRef]
- Brega, V.; Yan, Y.; Thomas, S. W. Org. Biomol. Chem. 2020, 18, 9191. [CrossRef] [PubMed]
- Thorley, K. J.; Anthony, J. E. Isr. J. Chem. 2014, 54, 642. [CrossRef]
- Zhang, G.; Lin, F. R.; Qi, F.; Heumüller, T.; Distler, A.; Egelhaaf, H.-J.; Li, N.; Chow, P. C. Y.; Brabec, C. J.; Jen, A. K.-Y.; Yip, H.-L. Chem. Rev. 2022, 122, 14180. [CrossRef] [PubMed]
- Bachar, N.; Liberman, L.; Muallem, F.; Feng, X.; Müllen, K.; Haick, H. ACS Appl. Mater. Interfaces 2013, 5, 11641. [CrossRef]
- Chepkasov, I. V; Baidyshev, V. S.; Kvashnin, A. G. J. Energy Storage 2025, 125, 116831. [CrossRef]
- Chen, W.; Yu, F.; Xu, Q.; Zhou, G.; Zhang, Q. Advanced Science 2020, 7, 1903766. [CrossRef]
- Hückel, E. Zeitschrift für Physik 1931, 70, 204. [CrossRef]
- Matito, E.; Duran, M.; Solá, M. Journal of Chemical Physics 2005, 122, 59901. [CrossRef]
- Guell, M.; Matito, E.; Luis, J. M.; Poater, J.; Sola, M. Journal of Physical Chemistry A 2006, 110, 11569. [CrossRef]
- Bultinck, P.; Rafat, M.; Ponec, R.; Van Gheluwe, B.; Carbó-Dorca, R.; Popelier, P. J. Phys. Chem. A 2006, 110, 7642. [CrossRef] [PubMed]
- Giambiagi, M.; de Giambiagi, M. S.; dos Santos Silva, C. D.; de Figueiredo, A. P. Phys. Chem. Chem. Phys. 2000, 2, 3381. [CrossRef]
- Kruszewski, J.; Krygowski, T. M. Tetrahedron Lett. 1972, 13, 3839. [CrossRef]
- Schleyer, P. V; Maerker, C.; Dransfeld, A.; Jiao, H. J.; Hommes, N. J. Am. Chem. Soc. 1996, 118, 6317. [CrossRef]
- Chen, Z. F.; Wannere, C. S.; Corminboeuf, C.; Puchta, R.; Schleyer, P. V. Chem. Rev. 2005, 105, 3842. [CrossRef]
- Araújo, D. M.; da Costa, T. F.; Firme, C. L. J. Mol. Model. 2015, 21, 248. [CrossRef]
- Firme, C. L.; Galembeck, S. E.; Antunes, O. A. C.; Esteves, P.M. J. Braz. Chem. Soc 2007, 18, 1397. [CrossRef]
- Firme, C. L.; Araújo, D. M. J. Mol. Model. 2017, 23, 253. [CrossRef]
- Firme, C. L.; Boes, E. S. Can. J. Chem. 0 null.
- Firme, C. Manuscript submitted for publication. 2026.
- Firme, C. L.; Galembeck, S. E.; Antunes, O. A. C.; Esteves, P.M. J. Braz. Chem. Soc. 2007, 18, 1397. [CrossRef]
- Araújo, D. M.; da Costa, T. F.; Firme, C. L. J. Mol. Model. 2015, 21, 248. [CrossRef] [PubMed]
- Cooper, D. L.; Gerratt, J.; Raimondi, M. Nature 1986, 323, 699. [CrossRef]
- Slater, J. C. Physical Review 1930, 36, 57. [CrossRef]
- Yu, D.; Stuyver, T.; Rong, C.; Alonso, M.; Lu, T.; De Proft, F.; Geerlings, P.; Liu, S. Physical Chemistry Chemical Physics 2019, 21, 18195. [CrossRef]
- Malloci, G.; Joblin, C.; Mulas, G. Chem. Phys. 2007, 332, 353. [CrossRef]
- Frisch, M. J.; Head-Gordon, M.; Pople, J. A. Chem. Phys. Lett. 1990, 166, 275. [CrossRef]
- Wilson, A. K.; van Mourik, T.; Dunning, T. H. Journal of Molecular Structure: THEOCHEM 1996, 388, 339. [CrossRef]
- Keith, T. A. Version 13; TK Gristmill Software: Overland Park KS, 2013. [Google Scholar]
- Firme, C. D2BIA_discrete Models 1 and 2 - zero-cost calculation of global aromaticity index for linear acenes. [CrossRef]
- Firme, C. D2BIA_discrete Model 3 - zero-cost calculation of local aromaticity index for linear acenes. [CrossRef]

| Molecule | Ring (position) | Type | DIU | e(∑,1.20) | ρ_center = e² | D2BIA = DIU·ρ |
|---|---|---|---|---|---|---|
| Benzene | 1 | unique | 1.0000 | 0.15054 | 0.02266 | 0.02266 |
| Naphthalene | 1 | equivalent | 0.9167 | 0.137995 | 0.01904 | 0.01746 |
| Naphthalene | 2 | equivalent | 0.9167 | 0.137995 | 0.01904 | 0.017456 |
| Anthracene | 1 | terminal | 0.9167 | 0.137995 | 0.01904 | 0.017456 |
| Anthracene | 2 | central | 0.8333 | 0.12545 | 0.01574 | 0.01311 |
| Anthracene | 3 | terminal | 0.9167 | 0.137995 | 0.01904 | 0.017456 |
| Tetracene | 1 | terminal | 0.9167 | 0.137995 | 0.01904 | 0.017456 |
| Tetracene | 2 | internal | 0.8333 | 0.12545 | 0.01574 | 0.01311 |
| Tetracene | 3 | internal | 0.8333 | 0.12545 | 0.01574 | 0.01311 |
| Tetracene | 4 | terminal | 0.9167 | 0.13799 | 0.01904 | 0.017456 |
| Molecule | Ring (position) | Type | D2BIA (model 1) | Weight w(n) | D2BIA (with weight) |
|---|---|---|---|---|---|
| Benzene | 1 | unique | 0.02266 | 1.0000 | 0.02267 |
| Naphthalene | 1 | equivalent | 0.01746 | 0.8333 | 0.01455 |
| Naphthalene | 2 | equivalent | 0.01746 | 0.8333 | 0.01455 |
| Anthracene | 1 | terminal | 0.01746 | 0.7778 | 0.01358 |
| Anthracene | 2 | central | 0.01311 | 0.7778 | 0.01020 |
| Anthracene | 3 | terminal | 0.01746 | 0.7778 | 0.01358 |
| Tetracene | 1 | terminal | 0.01746 | 0.7500 | 0.01309 |
| Tetracene | 2 | internal | 0.01311 | 0.7500 | 0.00984 |
| Tetracene | 3 | internal | 0.01311 | 0.7500 | 0.00984 |
| Tetracene | 4 | terminal | 0.01746 | 0.7500 | 0.01309 |
| Pentacene | 1 | terminal | 0.01746 | 0.7333 | 0.01280 |
| Pentacene | 2 | internal | 0.01311 | 0.7333 | 0.00962 |
| Pentacene | 3 | central | 0.01311 | 0.7333 | 0.00962 |
| Pentacene | 4 | internal | 0.01311 | 0.7333 | 0.00962 |
| Pentacene | 5 | terminal | 0.01746 | 0.7333 | 0.01280 |
| molecule | ring_id | n | N_pi | FLU_real | P | f_formula | d_formula |
|---|---|---|---|---|---|---|---|
| Benzene | A1 | 1 | 6 | 0.00024 | 1 | 0 | 0 |
| Naphthalene | A1 | 2 | 10 | 0.01097 | 1 | 1 | 0 |
| Naphthalene | A2 | 2 | 10 | 0.01097 | 2 | 1 | 0 |
| Anthracene | A1 | 3 | 14 | 0.01609 | 1 | 1 | 0 |
| Anthracene | B | 3 | 14 | 0.01478 | 2 | 2 | 1 |
| Anthracene | A2 | 3 | 14 | 0.01609 | 3 | 1 | 0 |
| Tetracene | A1 | 4 | 18 | 0.01875 | 1 | 1 | 0 |
| Tetracene | B1 | 4 | 18 | 0.01727 | 2 | 2 | 1 |
| Tetracene | B2 | 4 | 18 | 0.01727 | 3 | 2 | 1 |
| Tetracene | A2 | 4 | 18 | 0.01875 | 4 | 1 | 0 |
| Pentacene | A1 | 5 | 22 | 0.02015 | 1 | 1 | 0 |
| Pentacene | B1 | 5 | 22 | 0.01888 | 2 | 2 | 1 |
| Pentacene | C | 5 | 22 | 0.01851 | 3 | 2 | 2 |
| Pentacene | B2 | 5 | 22 | 0.01888 | 4 | 2 | 1 |
| Pentacene | A2 | 5 | 22 | 0.02015 | 5 | 1 | 0 |
| Hexacene | A1 | 6 | 26 | 0.02092 | 1 | 1 | 0 |
| Hexacene | B1 | 6 | 26 | 0.01981 | 2 | 2 | 1 |
| Hexacene | C1 | 6 | 26 | 0.01953 | 3 | 2 | 2 |
| Hexacene | C2 | 6 | 26 | 0.01953 | 4 | 2 | 2 |
| Hexacene | B2 | 6 | 26 | 0.01981 | 5 | 2 | 1 |
| Hexacene | A2 | 6 | 26 | 0.02092 | 6 | 1 | 0 |
| Heptacene | A1 | 7 | 30 | 0.02134 | 1 | 1 | 0 |
| Heptacene | B1 | 7 | 30 | 0.02034 | 2 | 2 | 1 |
| Heptacene | C1 | 7 | 30 | 0.02018 | 3 | 2 | 2 |
| Heptacene | D | 7 | 30 | 0.02025 | 4 | 2 | 3 |
| Heptacene | C2 | 7 | 30 | 0.02018 | 5 | 2 | 2 |
| Heptacene | B2 | 7 | 30 | 0.02034 | 6 | 2 | 1 |
| Heptacene | A2 | 7 | 30 | 0.02134 | 7 | 1 | 0 |
| Octacene | A1 | 8 | 34 | 0.02157 | 1 | 1 | 0 |
| Octacene | B1 | 8 | 34 | 0.02065 | 2 | 2 | 1 |
| Octacene | C1 | 8 | 34 | 0.02056 | 3 | 2 | 2 |
| Octacene | D1 | 8 | 34 | 0.02073 | 4 | 2 | 3 |
| Octacene | D2 | 8 | 34 | 0.02073 | 5 | 2 | 3 |
| Octacene | C2 | 8 | 34 | 0.02056 | 6 | 2 | 2 |
| Octacene | B2 | 8 | 34 | 0.02065 | 7 | 2 | 1 |
| Octacene | A2 | 8 | 34 | 0.02157 | 8 | 1 | 0 |
| Nonacene | A1 | 9 | 38 | 0.02171 | 1 | 1 | 0 |
| Nonacene | B1 | 9 | 38 | 0.02083 | 2 | 2 | 1 |
| Nonacene | C1 | 9 | 38 | 0.02079 | 3 | 2 | 2 |
| Nonacene | D1 | 9 | 38 | 0.02104 | 4 | 2 | 3 |
| Nonacene | E | 9 | 38 | 0.02113 | 5 | 2 | 4 |
| Nonacene | D2 | 9 | 38 | 0.02104 | 6 | 2 | 3 |
| Nonacene | C2 | 9 | 38 | 0.02079 | 7 | 2 | 2 |
| Nonacene | B2 | 9 | 38 | 0.02083 | 8 | 2 | 1 |
| Nonacene | A2 | 9 | 38 | 0.02171 | 9 | 1 | 0 |
| Decacene | A1 | 10 | 42 | 0.02179 | 1 | 1 | 0 |
| Decacene | B1 | 10 | 42 | 0.02093 | 2 | 2 | 1 |
| Decacene | C1 | 10 | 42 | 0.02093 | 3 | 2 | 2 |
| Decacene | D1 | 10 | 42 | 0.02122 | 4 | 2 | 3 |
| Decacene | E1 | 10 | 42 | 0.02139 | 5 | 2 | 4 |
| Decacene | E2 | 10 | 42 | 0.02139 | 6 | 2 | 4 |
| Decacene | D2 | 10 | 42 | 0.02122 | 7 | 2 | 3 |
| Decacene | C2 | 10 | 42 | 0.02093 | 8 | 2 | 2 |
| Decacene | B2 | 10 | 42 | 0.02093 | 9 | 2 | 1 |
| Decacene | A2 | 10 | 42 | 0.02179 | 10 | 1 | 0 |
| Undecacene | A1 | 11 | 46 | 0.02184 | 1 | 1 | 0 |
| Undecacene | B1 | 11 | 46 | 0.02099 | 2 | 2 | 1 |
| Undecacene | C1 | 11 | 46 | 0.021 | 3 | 2 | 2 |
| Undecacene | D1 | 11 | 46 | 0.02133 | 4 | 2 | 3 |
| Undecacene | E1 | 11 | 46 | 0.02154 | 5 | 2 | 4 |
| Undecacene | F | 11 | 46 | 0.02162 | 6 | 2 | 5 |
| Undecacene | E2 | 11 | 46 | 0.02154 | 7 | 2 | 4 |
| Undecacene | D2 | 11 | 46 | 0.02133 | 8 | 2 | 3 |
| Undecacene | C2 | 11 | 46 | 0.021 | 9 | 2 | 2 |
| Undecacene | B2 | 11 | 46 | 0.02099 | 10 | 2 | 1 |
| Undecacene | A2 | 11 | 46 | 0.02184 | 11 | 1 | 0 |
| left_out_n | train_R2 | train_RMSE | train_MRE_% | test_R2 | test_RMSE | test_MRE_% | n_train_points |
|---|---|---|---|---|---|---|---|
| 1 | 0.4409 | 0.001625 | 6.69 | 0.011992 | 4996.74 | 65 | |
| 2 | 0.5445 | 0.001951 | 67.78 | 0.003955 | 36.05 | 64 | |
| 3 | 0.5915 | 0.002038 | 63.00 | -6.02461 | 0.001637 | 7.21 | 63 |
| 4 | 0.6154 | 0.002053 | 61.04 | -2.65014 | 0.001414 | 7.67 | 62 |
| 5 | 0.6322 | 0.002042 | 60.80 | -5.33535 | 0.001751 | 6.85 | 61 |
| 6 | 0.6382 | 0.002044 | 61.36 | -7.96264 | 0.001797 | 7.17 | 60 |
| 7 | 0.6418 | 0.002045 | 61.98 | -12.672 | 0.001821 | 7.16 | 59 |
| 8 | 0.6405 | 0.002058 | 62.87 | -17.5965 | 0.001744 | 6.74 | 58 |
| 9 | 0.6422 | 0.002061 | 62.91 | -24.9173 | 0.001772 | 6.93 | 57 |
| 10 | 0.6426 | 0.002067 | 62.80 | -29.8499 | 0.001786 | 7.12 | 56 |
| 11 | 0.6523 | 0.002046 | 60.77 | -38.5461 | 0.002013 | 8.11 | 55 |
| N | Molecule | D2BIA_Model1 | D2BIA_Model2 | FLU | PDI | HOMA | NICS(1)_ZZ |
|---|---|---|---|---|---|---|---|
| 1 | Benzene | 0.02266 | 0.02266 | 0.00024 | 0.11598 | 0.971 | -28.85 |
| 2 | Naphthalene | 0.01746 | 0.01455 | 0.01097 | 0.09144 | 0.748 | -28.84 |
| 3 | Anthracene | 0.01601 | 0.01245 | 0.01565 | 0.08312 | 0.617 | -28.75 |
| 4 | Tetracene | 0.01529 | 0.01146 | 0.01801 | 0.07943 | 0.538 | -28.84 |
| 5 | Pentacene | 0.01485 | 0.01089 | 0.01931 | 0.07757 | 0.489 | -29.01 |
| 6 | Hexacene | 0.01456 | 0.01052 | 0.02008 | 0.07657 | 0.457 | -29.23 |
| 7 | Heptacene | 0.01436 | 0.01025 | 0.02056 | 0.0760 | 0.436 | -29.46 |
| 8 | Octacene | 0.01420 | 0.01006 | 0.02088 | 0.07567 | 0.421 | -29.69 |
| 9 | Nonacene | 0.01408 | 0.00991 | 0.0211 | 0.07546 | 0.410 | -29.91 |
| 10 | Decacene | 0.01398 | 0.00979 | 0.02125 | 0.07534 | 0.402 | -30.12 |
| Model | Index | Fit_Type | R² | Equation |
|---|---|---|---|---|
| Model1 | FLU | Linear | 0.9911 | y = -2.490659*x + 0.056019 |
| Model1 | FLU | Logarithmic | 0.9971 | y = -0.044658*ln(x) + -0.169067 |
| Model1 | FLU | Power | 0.8913 | y = 0.000000*x^-8.806870 |
| Model1 | FLU | Exponential | 0.9291 | y = 32.627114*exp(-502.986989*x) |
| Model1 | PDI | Linear | 0.9966 | y = 4.787968*x + 0.007275 |
| Model1 | PDI | Logarithmic | 0.9887 | y = 0.085253*ln(x) + 0.437488 |
| Model1 | PDI | Power | 0.9948 | y = 3.702554*x^0.915682 |
| Model1 | PDI | Exponential | 0.9953 | y = 0.036562*exp(51.234032*x) |
| Model1 | HOMA | Linear | 0.9524 | y = 67.614466*x + -0.515638 |
| Model1 | HOMA | Logarithmic | 0.9764 | y = 1.223820*ln(x) + 5.642537 |
| Model1 | HOMA | Power | 0.9295 | y = 1421.962744*x^1.898501 |
| Model1 | HOMA | Exponential | 0.8915 | y = 0.102341*exp(104.008138*x) |
| Model1 | NICS(1)_ZZ | Linear | 0.3245 | y = 106.807366*x + -30.951600 |
| Model1 | NICS(1)_ZZ | Logarithmic | 0.3764 | y = 2.056115*ln(x) + -20.712288 |
| Model2 | FLU | Linear | 0.9845 | y = -1.673918*x + 0.037317 |
| Model2 | FLU | Logarithmic | 0.9976 | y = -0.025618*ln(x) + -0.096853 |
| Model2 | FLU | Power | 0.8835 | y = 0.000000*x^-5.028614 |
| Model2 | FLU | Exponential | 0.9461 | y = 0.786902*exp(-342.285959*x) |
| Model2 | PDI | Linear | 0.9974 | y = 3.230054*x + 0.043077 |
| Model2 | PDI | Logarithmic | 0.9868 | y = 0.048844*ln(x) + 0.299363 |
| Model2 | PDI | Power | 0.9943 | y = 0.841209*x^0.524985 |
| Model2 | PDI | Exponential | 0.9921 | y = 0.053675*exp(34.494417*x) |
| Model2 | HOMA | Linear | 0.9362 | y = 45.206642*x + -0.005059 |
| Model2 | HOMA | Logarithmic | 0.9800 | y = 0.703146*ln(x) + 3.668551 |
| Model2 | HOMA | Power | 0.9354 | y = 66.953706*x^1.092233 |
| Model2 | HOMA | Exponential | 0.8680 | y = 0.225377*exp(69.207561*x) |
| Model2 | NICS(1)_ZZ | Linear | 0.2959 | y = 68.771643*x + -30.112723 |
| Model2 | NICS(1)_ZZ | Logarithmic | 0.3835 | y = 1.190366*ln(x) + -23.988693 |
| Molecule | Ring | FLU_real | D2BIA_discrete | FLU_pred | SCI(×10²) |
|---|---|---|---|---|---|
| Benzene | A1 | 0.00024 | 0.02266 | 0.01223 | 7.685 |
| Naphthalene | A1 | 0.01097 | 0.01889 | 0.01493 | 4.503 |
| Naphthalene | A2 | 0.01097 | 0.01889 | 0.01493 | 4.503 |
| Anthracene | A1 | 0.01609 | 0.01763 | 0.01629 | 3.530 |
| Anthracene | B | 0.01478 | 0.01677 | 0.01760 | 3.363 |
| Anthracene | A2 | 0.01609 | 0.01763 | 0.01629 | 3.530 |
| Tetracene | A1 | 0.01875 | 0.01700 | 0.01710 | 3.097 |
| Tetracene | B1 | 0.01727 | 0.01617 | 0.01840 | 2.898 |
| Tetracene | B2 | 0.01727 | 0.01617 | 0.01840 | 2.898 |
| Tetracene | A2 | 0.01875 | 0.01700 | 0.01710 | 3.097 |
| Pentacene | A1 | 0.02015 | 0.01662 | 0.01763 | 2.886 |
| Pentacene | B1 | 0.01888 | 0.01581 | 0.01892 | 2.648 |
| Pentacene | C | 0.01851 | 0.01504 | 0.02014 | 2.610 |
| Pentacene | B2 | 0.01888 | 0.01581 | 0.01892 | 2.648 |
| Pentacene | A2 | 0.02015 | 0.01662 | 0.01763 | 2.886 |
| Hexacene | A1 | 0.02092 | 0.01637 | 0.01801 | 2.777 |
| Hexacene | B1 | 0.01981 | 0.01557 | 0.01928 | 2.513 |
| Hexacene | C1 | 0.01953 | 0.01481 | 0.02048 | 2.438 |
| Hexacene | C2 | 0.01953 | 0.01481 | 0.02048 | 2.438 |
| Hexacene | B2 | 0.01981 | 0.01557 | 0.01928 | 2.513 |
| Hexacene | A2 | 0.02092 | 0.01637 | 0.01801 | 2.777 |
| Heptacene | A1 | 0.02134 | 0.01619 | 0.01829 | 2.717 |
| Heptacene | B1 | 0.02034 | 0.01540 | 0.01955 | 2.440 |
| Heptacene | C1 | 0.02018 | 0.01465 | 0.02075 | 2.339 |
| Heptacene | D | 0.02025 | 0.01393 | 0.02189 | 2.304 |
| Heptacene | C2 | 0.02018 | 0.01465 | 0.02075 | 2.339 |
| Heptacene | B2 | 0.02034 | 0.01540 | 0.01955 | 2.440 |
| Heptacene | A2 | 0.02134 | 0.01619 | 0.01829 | 2.717 |
| Octacene | A1 | 0.02157 | 0.01605 | 0.01851 | 2.684 |
| Octacene | B1 | 0.02065 | 0.01527 | 0.01976 | 2.399 |
| Octacene | C1 | 0.02056 | 0.01453 | 0.02095 | 2.283 |
| Octacene | D1 | 0.02073 | 0.01382 | 0.02208 | 2.224 |
| Octacene | D2 | 0.02073 | 0.01382 | 0.02208 | 2.224 |
| Octacene | C2 | 0.02056 | 0.01453 | 0.02095 | 2.283 |
| Octacene | B2 | 0.02065 | 0.01527 | 0.01976 | 2.399 |
| Octacene | A2 | 0.02157 | 0.01605 | 0.01851 | 2.684 |
| Nonacene | A1 | 0.02171 | 0.01595 | 0.01869 | 2.665 |
| Nonacene | B1 | 0.02083 | 0.01517 | 0.01995 | 2.375 |
| Nonacene | C1 | 0.02079 | 0.01443 | 0.02116 | 2.251 |
| Nonacene | D1 | 0.02104 | 0.01373 | 0.02230 | 2.178 |
| Nonacene | E | 0.02113 | 0.01306 | 0.02338 | 2.154 |
| Nonacene | D2 | 0.02104 | 0.01373 | 0.02230 | 2.178 |
| Nonacene | C2 | 0.02079 | 0.01443 | 0.02116 | 2.251 |
| Nonacene | B2 | 0.02083 | 0.01517 | 0.01995 | 2.375 |
| Nonacene | A2 | 0.02171 | 0.01595 | 0.01869 | 2.665 |
| Decacene | A1 | 0.02179 | 0.01586 | 0.01885 | 2.654 |
| Decacene | B1 | 0.02093 | 0.01509 | 0.02013 | 2.362 |
| Decacene | C1 | 0.02093 | 0.01435 | 0.02134 | 2.233 |
| Decacene | D1 | 0.02122 | 0.01365 | 0.02250 | 2.152 |
| Decacene | E1 | 0.02139 | 0.01299 | 0.02360 | 2.114 |
| Decacene | E2 | 0.02139 | 0.01299 | 0.02360 | 2.114 |
| Decacene | D2 | 0.02122 | 0.01365 | 0.02250 | 2.152 |
| Decacene | C2 | 0.02093 | 0.01435 | 0.02134 | 2.233 |
| Decacene | B2 | 0.02093 | 0.01509 | 0.02013 | 2.362 |
| Decacene | A2 | 0.02179 | 0.01586 | 0.01885 | 2.654 |
| Undecacene | A1 | 0.02184 | 0.01580 | 0.01901 | 2.648 |
| Undecacene | B1 | 0.02099 | 0.01503 | 0.02033 | 2.354 |
| Undecacene | C1 | 0.02100 | 0.01429 | 0.02159 | 2.222 |
| Undecacene | D1 | 0.02133 | 0.01360 | 0.02278 | 2.136 |
| Undecacene | E1 | 0.02154 | 0.01293 | 0.02392 | 2.090 |
| Undecacene | F | 0.02162 | 0.01230 | 0.02500 | 2.076 |
| Undecacene | E2 | 0.02154 | 0.01293 | 0.02392 | 2.090 |
| Undecacene | D2 | 0.02133 | 0.01360 | 0.02278 | 2.136 |
| Undecacene | C2 | 0.02100 | 0.01429 | 0.02159 | 2.222 |
| Undecacene | B2 | 0.02099 | 0.01503 | 0.02033 | 2.354 |
| Undecacene | A2 | 0.02184 | 0.01580 | 0.01901 | 2.648 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
