LP2R 1.0
Linear Polydisperse Polymer Rheology
Variables
LP2R_NS Namespace Reference

Variables

double M_Kuhn
 
double M_e
 
double N_e
 
double G_0
 
double tau_e
 
double G_glass
 
double tau_glass
 
double beta_glass
 
double Alpha =1.0
 
double t_CR_START =1.0
 
double deltaCR =0.30
 
double B_zeta =2.0
 
double A_eq =2.0
 
double B_eq =10.0
 
double ret_pref =0.189
 
double Rept_Switch_Factor =1.664
 
double Rouse_Switch_Factor =1.5
 
double Disentanglement_Switch =1.0
 
double ret_pref_0 =0.020
 
double ret_switch_exponent =0.42
 
double cur_time =1.0e-3
 
double DtMult =1.02
 
double Log_DtMult
 
double FreqMin =1.0e-3
 
double FreqMax =1.0e3
 
double FreqRatio =1.1
 
bool CalcDielectric =false
 
bool OutTermRelaxPathways =false
 
bool OutPhiPhiST =false
 
bool Output_G_of_t =false
 
std::string OutputFormat ="Default"
 
std::string CSVdelimiter =","
 
bool Add_header =true
 
bool has_temp =false
 
bool has_origin =false
 
bool has_label =false
 
bool has_chem =false
 
double reptate_temp =0.0
 
std::string reptate_origin
 
std::string reptate_label
 
std::string reptate_chem
 
bool GenLogFL =false
 
std::string inpFNM ="inp.dat"
 
std::string rcFNM ="LP2R.rc"
 
std::fstream f_Log
 
std::string RelSpecFNM ="RelSpec"
 
std::string MechRelSpecFNM
 
std::string DiRelSpecFNM
 
std::string MechRelFNM ="MechRel"
 
std::string OutTermRelaxFNM ="TermRelax"
 
std::string OutPhiPhiSTFNM ="STube"
 
std::fstream f_trelax
 
std::fstream f_phi
 
int npoly =0
 
std::vector< C_LPoly * > LPoly
 
double Rouse_wt =0.0
 
double Sys_MN =0.0
 
double Sys_MW =0.0
 
double Sys_PDI =1.0
 
bool Entangled_Dynamics =true
 
double phi_true =1.0
 
double phi_ST =1.0
 
double phi_rept =1.0
 
double phi_eq =1.0
 
double Psi_rept =1.0
 
double LastReptationTime =1.0
 
double LastReptZ =1.0
 
bool supertube_activated =false
 
bool AboveTauEFirst =false
 
double phi_ST_0 =1.0
 
double ST_activ_time =1.0
 
double STmaxDrop =1.0
 
std::vector< double > t_ar
 
std::vector< double > phi_ar
 
std::vector< double > phi_ST_ar
 
std::vector< double > t_eq_ar
 
int phi_eq_indx =0
 

Detailed Description

Global variables

Variable Documentation

◆ A_eq

double LP2R_NS::A_eq =2.0

Proportionality constant connecting "effective equilibrium time" and time to locally equiilbiate in a certain supertube

◆ AboveTauEFirst

bool LP2R_NS::AboveTauEFirst =false

Start with false and set to true once t > t_CR_START

◆ Add_header

bool LP2R_NS::Add_header =true

(true) Add appropriate headers in the output files

◆ Alpha

double LP2R_NS::Alpha =1.0

Dilution exponent

◆ B_eq

double LP2R_NS::B_eq =10.0

Constant delaying equilibrium for fast CR events

◆ B_zeta

double LP2R_NS::B_zeta =2.0

Proportionality constant relating friction coefficient to supertube fraction

◆ beta_glass

double LP2R_NS::beta_glass

stretching exponent for glassy relaxation

◆ CalcDielectric

bool LP2R_NS::CalcDielectric =false

(false) If true, output dielectric loss (assuming type-A dipoles)
Commad line flag -d takes precedence over resource file instruction.

◆ CSVdelimiter

std::string LP2R_NS::CSVdelimiter =","

Allow for non-standard delimiter (ex. some european locale uses semicolon)

◆ cur_time

double LP2R_NS::cur_time =1.0e-3

Read as Start_time from resource file, start of integration time

◆ deltaCR

double LP2R_NS::deltaCR =0.30

Fractional drop in tube constraints at CR events (in long polymers)

◆ DiRelSpecFNM

std::string LP2R_NS::DiRelSpecFNM

Output file name for Dielectric relaxation (reptate mode)

◆ Disentanglement_Switch

double LP2R_NS::Disentanglement_Switch =1.0

Number of entanglement in the supertube below which chains relax by "disentanglement".

◆ DtMult

double LP2R_NS::DtMult =1.02

Read as Time_ratio from resource file, ratio of consecutive discrete times

◆ Entangled_Dynamics

bool LP2R_NS::Entangled_Dynamics =true

true if polymers are entangled to begin with

◆ f_Log

std::fstream LP2R_NS::f_Log

File stream for log

◆ f_phi

std::fstream LP2R_NS::f_phi

File stream for tube diameters as a function of time

◆ f_trelax

std::fstream LP2R_NS::f_trelax

File stream for detailed relaxation information

◆ FreqMax

double LP2R_NS::FreqMax =1.0e3

Maximum frequency for dynamic rheology output

◆ FreqMin

double LP2R_NS::FreqMin =1.0e-3

Minimum frequency for dynamic rheology output

◆ FreqRatio

double LP2R_NS::FreqRatio =1.1

Multiplier ( >1 ) between subsequent freqencies for output

◆ G_0

double LP2R_NS::G_0

Plateau modulus

◆ G_glass

double LP2R_NS::G_glass

Glassy modulus

◆ GenLogFL

bool LP2R_NS::GenLogFL =false

(false) If true, create a log file to output each step

◆ has_chem

bool LP2R_NS::has_chem =false

flag to note if reptate header variables have been set

◆ has_label

bool LP2R_NS::has_label =false

flag to note if reptate header variables have been set

◆ has_origin

bool LP2R_NS::has_origin =false

flag to note if reptate header variables have been set

◆ has_temp

bool LP2R_NS::has_temp =false

flag to note if reptate header variables have been set

◆ inpFNM

std::string LP2R_NS::inpFNM ="inp.dat"

Input file name

◆ LastReptationTime

double LP2R_NS::LastReptationTime =1.0

Keep track of time at which some chain switched to reptation.
Any subsequent molecules may not have reptation time smaller than this.

◆ LastReptZ

double LP2R_NS::LastReptZ =1.0

Z_chain corresponding to the largest reptation time assigned so far

◆ Log_DtMult

double LP2R_NS::Log_DtMult

Log(DtMult)

◆ LPoly

std::vector< C_LPoly * > LP2R_NS::LPoly

Polymer objects

◆ M_e

double LP2R_NS::M_e

Entanglement molar mass

◆ M_Kuhn

double LP2R_NS::M_Kuhn

Kuhn Molar mass

◆ MechRelFNM

std::string LP2R_NS::MechRelFNM ="MechRel"

Output file name for G(t)

◆ MechRelSpecFNM

std::string LP2R_NS::MechRelSpecFNM

Output file name for Mechanical relaxation (Reptate mode)

◆ N_e

double LP2R_NS::N_e

N_e == M_e/M_Kuhn; Number of Kuhn beads in one entanglement

◆ npoly

int LP2R_NS::npoly =0

Number of polymers

◆ OutPhiPhiST

bool LP2R_NS::OutPhiPhiST =false

(false) If true, time evolution of different phi (can be mapped to tube diameters) as a function of time is written in a file

◆ OutPhiPhiSTFNM

std::string LP2R_NS::OutPhiPhiSTFNM ="STube"

File in which different phi are written to

◆ Output_G_of_t

bool LP2R_NS::Output_G_of_t =false

(false) If true, output mechanical relaxation in the time domain.

◆ OutputFormat

std::string LP2R_NS::OutputFormat ="Default"

Output format in result files:
Default (.dat extension, space as dilimiter, header as comment with hash)
Text (.txt extension, space as dilimiter, header as string)
CSV (.csv extension, comma as (default) dilimiter)
RepTate (various extensions, see https://reptate.readthedocs.io )

◆ OutTermRelaxFNM

std::string LP2R_NS::OutTermRelaxFNM ="TermRelax"

File in which terminal relaxation information should be written to

◆ OutTermRelaxPathways

bool LP2R_NS::OutTermRelaxPathways =false

(false) If true, terminal relaxation of each chain triggers detailed output

◆ phi_ar

std::vector< double > LP2R_NS::phi_ar

unrelaxed fraction (as function of time)

◆ phi_eq

double LP2R_NS::phi_eq =1.0

related to tube in which CLF is possible

◆ phi_eq_indx

int LP2R_NS::phi_eq_indx =0

index in t_eq_ar closest to the current time

◆ phi_rept

double LP2R_NS::phi_rept =1.0

related to the tube in which reptation is preferred currently

◆ phi_ST

double LP2R_NS::phi_ST =1.0

current unrelaxed supertube fraction

◆ phi_ST_0

double LP2R_NS::phi_ST_0 =1.0

phi_ST just before supertube relaxation is activated

◆ phi_ST_ar

std::vector< double > LP2R_NS::phi_ST_ar

unrelaxed supertube fraction (as function of time)

◆ phi_true

double LP2R_NS::phi_true =1.0

current unrelaxed fraction

◆ Psi_rept

double LP2R_NS::Psi_rept =1.0

Speed up factor for reptation by accessing fatter tube

◆ rcFNM

std::string LP2R_NS::rcFNM ="LP2R.rc"

resource file name

◆ RelSpecFNM

std::string LP2R_NS::RelSpecFNM ="RelSpec"

Output filename for relaxation spectra in default mode

◆ Rept_Switch_Factor

double LP2R_NS::Rept_Switch_Factor =1.664

Constant deciding transition from CLF to reptation

◆ reptate_chem

std::string LP2R_NS::reptate_chem

reptate header string

◆ reptate_label

std::string LP2R_NS::reptate_label

reptate header string

◆ reptate_origin

std::string LP2R_NS::reptate_origin

reptate header string

◆ reptate_temp

double LP2R_NS::reptate_temp =0.0

temperature for reptate header

◆ ret_pref

double LP2R_NS::ret_pref =0.189

Constant in arm retraction formula ( $ \mathcal{C}_{a,\infty} $ )

◆ ret_pref_0

double LP2R_NS::ret_pref_0 =0.020

Short-time prefactor for CLF ( $ \mathcal{C}_{a,0} $ )

◆ ret_switch_exponent

double LP2R_NS::ret_switch_exponent =0.42

Exponent $ \epsilon_{a} $ determining how steeply CLF switches to long-time strength

◆ Rouse_Switch_Factor

double LP2R_NS::Rouse_Switch_Factor =1.5

Minimum number of bare entanglements to be considered entangled ( $ Z_u $ )

◆ Rouse_wt

double LP2R_NS::Rouse_wt =0.0

Weight fraction of chains that relax by free Rouse

◆ ST_activ_time

double LP2R_NS::ST_activ_time =1.0

time at which current supertube relaxation is activated

◆ STmaxDrop

double LP2R_NS::STmaxDrop =1.0

Long time maximum drop in phi_ST druing one time step.
STmaxDrop = exp(-log(DtMult)/(2.0*Alpha))

◆ supertube_activated

bool LP2R_NS::supertube_activated =false

(false) set to true during supertube relaxation

◆ Sys_MN

double LP2R_NS::Sys_MN =0.0

Number averaged molar mass of the blend

◆ Sys_MW

double LP2R_NS::Sys_MW =0.0

Weight averaged molar mass of the blend

◆ Sys_PDI

double LP2R_NS::Sys_PDI =1.0

polydispersity index of the blend

◆ t_ar

std::vector< double > LP2R_NS::t_ar

Discrete times at which relaxation is tracked

◆ t_CR_START

double LP2R_NS::t_CR_START =1.0

Time (units of tau_e) below which no CR events are included in the tube model. (faster events are accounted in the bare tube picture itself.)

◆ t_eq_ar

std::vector< double > LP2R_NS::t_eq_ar

equilibration time in current supertube

◆ tau_e

double LP2R_NS::tau_e

Entanglement time

◆ tau_glass

double LP2R_NS::tau_glass

Glassy relaxation time