DOI: 10.5281/zenodo.16696725
title: TopoSolv-6k: Radii of Gyration and Shear-Rate Dependent Viscosities for Topologically and Chemically Diverse Coarse-Grained Polymers

description: Dataset Description

This dataset contains 6710 structural configurations and solvophobicity values for topologically and chemically diverse coarse-grained polymer chains. Additionally, 480 polymers include shear-rate dependent viscosity profiles at 2 wt% polymer concentration.The data is provided as serialized objects using the pickle Python module.All files were generated using Python version 3.10.

Data

There are three pickle files containing serialized Python objects. Key files include:



data_aug10.pickle 



Contains the coarse-grained polymer dataset with 6710 entries.  Each entry includes:



Polymer graph

Squared radius of gyration (at lambda = 0).

Solvophobicity (lambda).

Bead count (N).

Chain virial number (Xi).





topo_param_visc.pickle  



Shear-rate-dependent viscosity profiles of 480 polymer systems.



target_curves.pickle 



Contains 30 target viscosity profiles used for active learning.




Usage

To load the dataset stored in data_aug10.pickle, use the following code:



import pickle

with open("data_aug10.pickle", "rb") as handle:    (        (x_train, y_train, c_train, l_train, graph_train),        (x_valid, y_valid, c_valid, l_valid, graph_valid),        (x_test, y_test, c_test, l_test, graph_test),        NAMES,        SCALER,        SCALER_y,        le    ) = pickle.load(handle)






x: node features for each polymer graph




y: labels (e.g., predicted properties)




c: topological class indices




l: topological descriptors




graph: NetworkX graphs representing polymer topology




NAMES: list of topological class names




SCALER: fitted scaler for topological descriptors (l)




SCALER_y: fitted scaler for property labels (y)




le: label encoder for topological class indices



 

To load the dataset stored in topo_param_visc.pickle, use the following code:



import pickle

with open("poly_data_ml.pickle", "rb") as handle:    desc_all, ps_all, curve_all, shear_rate, graph_all = pickle.load(handle)






desc_all: topological descriptors for each polymer graph




ps_all: fitted Carreau–Yasuda model parameters




curve_all: fitted viscosity curves




shear_rate: shear rates corresponding to each viscosity curve




graph_all: polymer graphs represented as NetworkX objects



 





First 30: seed dataset




Next 150: 5 iterations (30 each) from class-balanced space-filling




Following 150: space-filling without class balancing




Final 150: active learning samples



 

 To load the dataset stored in target_curves.pickle, use the following code:



import pickle

with open("target_curves.pickle", "rb") as handle:    data = pickle.load(f)

curves = data['curves']params = data['params']shear_rate = data["xx"]


 





curves: target viscosity curves used as design objectives




params: Carreau–Yasuda model parameters fitted to the target curves




shear_rate: shear rate values associated with the target curves



 

 

Help, Suggestions, Corrections?If you need help, have suggestions, identify issues, or have corrections, please send your comments to Shengli Jiang at sj0161@princeton.edu

GitHubAdditional data and code relevant for this study is additionally accessible at https://github.com/webbtheosim/cg-topo-solv