Skip to content

Case 4: Polymer Mixture (PEO + LiTFSI)

In this case, we construct a mixed system of Polyethylene Oxide (PEO) and Lithium salt (LiTFSI), which is a representative system for polymer electrolytes.

  • Composition:
    • Polymer: PEO (DP 40) × 6 chains
    • Salt: Li+ × 40 / TFSI- × 40
  • Total Atoms: 2,332
  • Initial Target Density: 0.80 g/cm³
TFSI Anion
import fbtk
# 1. Define ionic components (Specify charges explicitly)
li = fbtk.Molecule.from_smiles("[Li+]", name="Li")
tfsi = fbtk.Molecule.from_smiles("C(F)(F)(F)S(=O)(=O)[N-]S(=O)(=O)C(F)(F)(F)", name="TFSI")
# 2. Initialize the Builder
builder = fbtk.Builder(density=0.80)
# 3. Add polymer
builder.add_polymer(
name="PEO",
smiles="*COC*",
count=6,
degree=40
)
# 4. Add ions (Treat as small molecules)
builder.add_molecule(li, count=40)
builder.add_molecule(tfsi, count=40)
# 5. Build the system and perform relaxation
system = builder.build()
print("Starting relaxation for PEO + LiTFSI...")
system.relax()
# 6. Output results
tfsi.to_file("tfsi.mol")
system.to_file("peo_litfsi_cell.mol2")
print("Done.")
Polymer Electrolyte Cell
Atoms: 2332 | Bonds: 2246
--------------------------------------------------------------------------------
| Fmax | FRMS | Total E |
Iter | (kcal/mol/Å) | (kcal/mol/Å) | (kcal/mol) | Status
--------------------------------------------------------------------------------
0 | 42460.5967 | 5751.8199 | 1522447504435.8914 |
10 | 6956.8469 | 332.1981 | 283012.9750 |
20 | 2197.2766 | 160.4736 | 162126.0113 |
...
230 | 3498.5209 | 55.5260 | 21639.1823 |
240 | 124.9193 | 2.7596 | 21638.9629 |
247 | 83.1694 | 2.3074 | 21638.9629 | E-Stalled
--------------------------------------------------------------------------------
=== Optimization Finished ===
Reason: E-Stalled
Total Time: 4.063s (Avg: 16.382ms / step)
Final Energy: 21638.9629 kcal/mol
Final Fmax: 83.1694 kcal/mol/Å
Final FRMS: 2.3074 kcal/mol/Å
Min Distance: 1.0080 Å (Atoms 123 and 126)
--------------------------------------------------------------------------------

In FBTK’s relax() (based on the UFF force field), electrostatic interactions (Coulombic forces between charges) are now considered during relaxation. By explicitly specifying charges in SMILES, such as [Li+] and [N-], FBTK automatically assigns partial charges and uses them to resolve overlaps and electrostatic imbalances during the initial structure generation.

The Min Distance is 1.0080 Å, which means that even in systems where ions and polymer chains are densely packed, the system has been relaxed to a state without physically fatal collisions. A standard workflow would be to pass this relaxed structure as an initial value to MD software for rigorous equilibration including electrostatic interactions using a charge-aware force field.