General Method for Speeding Up Kinetic Monte Carlo Simulations

Kinetic Monte Carlo (MC) is the main stochastic strategy used to simulate polymerization systems, as it gives good results with simple formulation. Normally, the algorithm used in this method presents high computational times, being necessary to choose suitable control volume sizes, which gives reli...

Full description

Saved in:
Bibliographic Details
Published inIndustrial & engineering chemistry research Vol. 59; no. 19; pp. 9034 - 9042
Main Authors Rego, Artur S. C, Brandão, Amanda L. T
Format Journal Article
LanguageEnglish
Published American Chemical Society 13.05.2020
Subjects
Online AccessGet full text
ISSN0888-5885
1520-5045
1520-5045
DOI10.1021/acs.iecr.0c01069

Cover

Abstract Kinetic Monte Carlo (MC) is the main stochastic strategy used to simulate polymerization systems, as it gives good results with simple formulation. Normally, the algorithm used in this method presents high computational times, being necessary to choose suitable control volume sizes, which gives reliable results in moderate simulation times. The use of high-level languages (Python, MATLAB) over low-level languages (C, Fortran) usually aggravates this scenario, as it is slower despite being easier to use. The current study presents a simple method for speeding up the MC simulation of polymerization reactions. First, the code itself is optimized to reduce by half the computational time required compared with the original code, and then a benchmark of pure Python and Python with Numba is made. The results show a drop in the computational times above 99% when using Numba instead of pure Python codes.
AbstractList Kinetic Monte Carlo (MC) is the main stochastic strategy used to simulate polymerization systems, as it gives good results with simple formulation. Normally, the algorithm used in this method presents high computational times, being necessary to choose suitable control volume sizes, which gives reliable results in moderate simulation times. The use of high-level languages (Python, MATLAB) over low-level languages (C, Fortran) usually aggravates this scenario, as it is slower despite being easier to use. The current study presents a simple method for speeding up the MC simulation of polymerization reactions. First, the code itself is optimized to reduce by half the computational time required compared with the original code, and then a benchmark of pure Python and Python with Numba is made. The results show a drop in the computational times above 99% when using Numba instead of pure Python codes.
Author Rego, Artur S. C
Brandão, Amanda L. T
AuthorAffiliation Department of Chemical and Materials Engineering (DEQM)
Pontifı́cia Universidade Católica do Rio de Janeiro
AuthorAffiliation_xml – name: Pontifı́cia Universidade Católica do Rio de Janeiro
– name: Department of Chemical and Materials Engineering (DEQM)
Author_xml – sequence: 1
  givenname: Artur S. C
  orcidid: 0000-0002-1108-2123
  surname: Rego
  fullname: Rego, Artur S. C
  organization: Pontifı́cia Universidade Católica do Rio de Janeiro
– sequence: 2
  givenname: Amanda L. T
  orcidid: 0000-0001-7602-8980
  surname: Brandão
  fullname: Brandão, Amanda L. T
  email: amanda.lemette@puc-rio.br
  organization: Pontifı́cia Universidade Católica do Rio de Janeiro
BookMark eNp9kDFPwzAQhS0EEm1hZ_TIQMo5jhN3QUIVFEQrhtI5OjkXcJXawU4G_j0p7YQE0xvufU-6b8xOnXfE2JWAqYBU3KKJU0smTMGAgHx2wkZCpZAoyNQpG4HWOlFaq3M2jnELAEpl2YjdLchRwIavqPvwFa994OuWqLLunW9a_mIdddbwlXcd8TmGxvO13fUNdta7eMHOamwiXR5zwjaPD2_zp2T5unie3y8TlEJ2Sa7RFEgCgLQQYKiQUKM2Qg6pC1Iwg5QQq6LCShYV5bMclTQqRYS6UHLCrg-7bfCfPcWu3NloqGnQke9jmao0k1KkohiqcKia4GMMVJdtsDsMX6WAcq-qHFSVe1XlUdWA5L8QY7ufB7uAtvkPvDmA-8vW98ENEv6ufwPTK4CZ
CitedBy_id crossref_primary_10_1016_j_jaap_2022_105683
crossref_primary_10_1021_acs_macromol_4c01662
crossref_primary_10_2139_ssrn_4147487
crossref_primary_10_1039_D2RE00451H
crossref_primary_10_1002_adts_202300637
crossref_primary_10_1021_acs_iecr_0c05795
crossref_primary_10_1021_acs_iecr_2c03979
crossref_primary_10_1016_j_cej_2022_136595
crossref_primary_10_1016_j_compchemeng_2021_107580
crossref_primary_10_1021_acs_macromol_3c01775
crossref_primary_10_1021_acs_iecr_0c03888
crossref_primary_10_1021_acs_iecr_1c00943
crossref_primary_10_1002_cjce_24889
crossref_primary_10_1016_j_cej_2024_149091
crossref_primary_10_1016_j_cej_2025_159955
crossref_primary_10_1021_acs_macromol_4c00835
crossref_primary_10_1016_j_compchemeng_2024_108945
crossref_primary_10_1021_acs_jpcc_1c07929
crossref_primary_10_1016_j_progpolymsci_2022_101555
crossref_primary_10_1021_acs_iecr_1c00356
Cites_doi 10.1002/1521-3919(20020201)11:2<222::aid-mats222>3.0.co;2-m
10.1016/j.polymer.2004.11.117
10.1002/pol.1953.120100306
10.3390/polym6041074
10.1021/ma9614858
10.1590/0104-6632.20150323s00003449
10.1021/acs.macromol.6b01699
10.1002/ijch.201100101
10.1002/pola.10004
10.1002/mats.1993.040020511
10.1002/mats.201400062
10.1002/(sici)1521-3919(19990501)8:3<199::aid-mats199>3.0.co;2-j
10.1016/0009-2509(89)87015-0
10.1039/tf9545001097
10.1002/mats.200700028
10.1002/mren.200700007
10.1021/acs.macromol.8b02508
10.1002/mren.200600015
10.1021/acs.iecr.8b01943
10.3390/polym4031416
10.1080/10543414.1999.10744507
10.1002/app.1972.070160319
10.1016/j.ces.2014.01.019
10.1021/ed300877z
10.1016/0009-2509(87)87054-9
10.1002/pen.760330802
10.1016/0021-9991(76)90041-3
10.1002/mren.200800051
10.1021/ma3017597
10.1021/ma201617r
10.1016/j.jprocont.2005.06.004
10.1021/acs.macromol.7b00333
10.1002/mren.200600004
10.1002/mren.201500020
10.1002/mats.201700040
10.1002/mren.200900073
10.1002/mats.200400082
10.1002/masy.201500111
10.1016/j.cpc.2016.02.005
10.1002/aic.15751
10.1002/mren.201200085
10.1002/cjce.5450580315
10.1002/mats.1997.040060301
10.1021/ma9019703
10.1002/aic.16723
10.1021/acs.iecr.6b01639
10.1002/masy.200950106
10.1038/s41467-019-11368-6
10.1016/j.eurpolymj.2015.04.018
10.1002/mren.201500007
10.1016/0009-2509(85)85103-4
10.1002/mats.200700007
10.1021/acs.iecr.5b03198
10.1002/mren.200700008
10.1016/0098-1354(191)80011-j
ContentType Journal Article
DBID AAYXX
CITATION
7S9
L.6
DOI 10.1021/acs.iecr.0c01069
DatabaseName CrossRef
AGRICOLA
AGRICOLA - Academic
DatabaseTitle CrossRef
AGRICOLA
AGRICOLA - Academic
DatabaseTitleList AGRICOLA

DeliveryMethod fulltext_linktorsrc
Discipline Engineering
EISSN 1520-5045
EndPage 9042
ExternalDocumentID 10_1021_acs_iecr_0c01069
c145184747
GroupedDBID 02
53G
55A
5GY
7~N
AABXI
ABFLS
ABMVS
ABPTK
ABUCX
ACJ
ACS
AEESW
AENEX
AFEFF
ALMA_UNASSIGNED_HOLDINGS
AQSVZ
CS3
DU5
EBS
ED
ED~
F5P
GNL
IH9
JG
JG~
LG6
P2P
ROL
TAE
TN5
UI2
VF5
VG9
W1F
WH7
X
-~X
.DC
.K2
4.4
5VS
6TJ
AAYXX
ABBLG
ABLBI
ABQRX
ACGFO
ADHLV
AGXLV
AHGAQ
BAANH
CITATION
CUPRZ
GGK
~02
7S9
L.6
ID FETCH-LOGICAL-a313t-68ac7ae100e8110ce730fa8c1330f87e50902eaad7dad37de696a53c52aa0f753
IEDL.DBID ACS
ISSN 0888-5885
1520-5045
IngestDate Wed Oct 01 14:01:24 EDT 2025
Thu Apr 24 23:02:36 EDT 2025
Tue Jul 01 04:23:33 EDT 2025
Thu Aug 27 22:09:16 EDT 2020
IsPeerReviewed true
IsScholarly true
Issue 19
Language English
License https://doi.org/10.15223/policy-029
https://doi.org/10.15223/policy-037
https://doi.org/10.15223/policy-045
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-a313t-68ac7ae100e8110ce730fa8c1330f87e50902eaad7dad37de696a53c52aa0f753
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 23
ORCID 0000-0002-1108-2123
0000-0001-7602-8980
PQID 2524331217
PQPubID 24069
PageCount 9
ParticipantIDs proquest_miscellaneous_2524331217
crossref_primary_10_1021_acs_iecr_0c01069
crossref_citationtrail_10_1021_acs_iecr_0c01069
acs_journals_10_1021_acs_iecr_0c01069
ProviderPackageCode JG~
55A
AABXI
GNL
VF5
7~N
ACJ
VG9
W1F
ACS
AEESW
AFEFF
ABMVS
ABUCX
IH9
AQSVZ
ED~
UI2
CITATION
AAYXX
PublicationCentury 2000
PublicationDate 2020-05-13
PublicationDateYYYYMMDD 2020-05-13
PublicationDate_xml – month: 05
  year: 2020
  text: 2020-05-13
  day: 13
PublicationDecade 2020
PublicationTitle Industrial & engineering chemistry research
PublicationTitleAlternate Ind. Eng. Chem. Res
PublicationYear 2020
Publisher American Chemical Society
Publisher_xml – name: American Chemical Society
References ref9/cit9
ref45/cit45
ref3/cit3
ref27/cit27
ref56/cit56
Pinto J. (ref11/cit11) 1996; 26
ref16/cit16
ref52/cit52
ref23/cit23
ref8/cit8
ref31/cit31
ref2/cit2
ref34/cit34
ref37/cit37
ref20/cit20
ref48/cit48
ref17/cit17
ref10/cit10
ref35/cit35
ref53/cit53
ref19/cit19
ref21/cit21
ref42/cit42
ref46/cit46
ref49/cit49
ref13/cit13
ref24/cit24
ref38/cit38
ref50/cit50
ref54/cit54
ref6/cit6
ref36/cit36
ref18/cit18
ref25/cit25
ref29/cit29
ref32/cit32
ref39/cit39
ref14/cit14
ref57/cit57
ref5/cit5
ref51/cit51
ref43/cit43
ref28/cit28
ref40/cit40
ref26/cit26
ref55/cit55
ref12/cit12
ref15/cit15
ref41/cit41
ref58/cit58
ref22/cit22
ref33/cit33
ref4/cit4
ref30/cit30
ref47/cit47
ref1/cit1
ref44/cit44
ref7/cit7
References_xml – ident: ref50/cit50
  doi: 10.1002/1521-3919(20020201)11:2<222::aid-mats222>3.0.co;2-m
– ident: ref36/cit36
  doi: 10.1016/j.polymer.2004.11.117
– ident: ref4/cit4
  doi: 10.1002/pol.1953.120100306
– ident: ref28/cit28
  doi: 10.3390/polym6041074
– ident: ref38/cit38
  doi: 10.1021/ma9614858
– volume: 26
  start-page: 20
  year: 1996
  ident: ref11/cit11
  publication-title: Lat. Am. Appl. Res.
– ident: ref15/cit15
  doi: 10.1590/0104-6632.20150323s00003449
– ident: ref25/cit25
  doi: 10.1021/acs.macromol.6b01699
– ident: ref1/cit1
  doi: 10.1002/ijch.201100101
– ident: ref18/cit18
  doi: 10.1002/pola.10004
– ident: ref39/cit39
  doi: 10.1002/mats.1993.040020511
– ident: ref43/cit43
  doi: 10.1002/mats.201400062
– ident: ref10/cit10
  doi: 10.1002/(sici)1521-3919(19990501)8:3<199::aid-mats199>3.0.co;2-j
– ident: ref47/cit47
– ident: ref14/cit14
  doi: 10.1016/0009-2509(89)87015-0
– ident: ref5/cit5
  doi: 10.1039/tf9545001097
– ident: ref54/cit54
  doi: 10.1002/mats.200700028
– ident: ref40/cit40
  doi: 10.1002/mren.200700007
– ident: ref31/cit31
  doi: 10.1021/acs.macromol.8b02508
– ident: ref20/cit20
  doi: 10.1002/mren.200600015
– ident: ref52/cit52
  doi: 10.1021/acs.iecr.8b01943
– ident: ref56/cit56
  doi: 10.3390/polym4031416
– ident: ref49/cit49
  doi: 10.1080/10543414.1999.10744507
– ident: ref6/cit6
  doi: 10.1002/app.1972.070160319
– ident: ref23/cit23
  doi: 10.1016/j.ces.2014.01.019
– ident: ref26/cit26
  doi: 10.1021/ed300877z
– ident: ref13/cit13
  doi: 10.1016/0009-2509(87)87054-9
– ident: ref9/cit9
  doi: 10.1002/pen.760330802
– ident: ref22/cit22
  doi: 10.1016/0021-9991(76)90041-3
– ident: ref8/cit8
  doi: 10.1002/mren.200800051
– ident: ref30/cit30
  doi: 10.1021/ma3017597
– ident: ref44/cit44
  doi: 10.1021/ma201617r
– ident: ref19/cit19
  doi: 10.1016/j.jprocont.2005.06.004
– ident: ref24/cit24
  doi: 10.1021/acs.macromol.7b00333
– ident: ref33/cit33
  doi: 10.1002/mren.200600004
– ident: ref34/cit34
  doi: 10.1002/mren.201500020
– ident: ref21/cit21
  doi: 10.1002/mats.201700040
– ident: ref58/cit58
  doi: 10.1002/mren.200900073
– ident: ref41/cit41
  doi: 10.1002/mats.200400082
– ident: ref35/cit35
  doi: 10.1002/masy.201500111
– ident: ref45/cit45
  doi: 10.1016/j.cpc.2016.02.005
– ident: ref46/cit46
– ident: ref37/cit37
  doi: 10.1002/aic.15751
– ident: ref53/cit53
  doi: 10.1002/mren.201200085
– ident: ref16/cit16
  doi: 10.1002/cjce.5450580315
– ident: ref48/cit48
  doi: 10.1002/mats.1997.040060301
– ident: ref51/cit51
  doi: 10.1021/ma9019703
– ident: ref32/cit32
  doi: 10.1002/aic.16723
– ident: ref2/cit2
  doi: 10.1021/acs.iecr.6b01639
– ident: ref55/cit55
  doi: 10.1002/masy.200950106
– ident: ref27/cit27
  doi: 10.1038/s41467-019-11368-6
– ident: ref3/cit3
  doi: 10.1016/j.eurpolymj.2015.04.018
– ident: ref29/cit29
  doi: 10.1002/mren.201500007
– ident: ref17/cit17
  doi: 10.1016/0009-2509(85)85103-4
– ident: ref42/cit42
  doi: 10.1002/mats.200700007
– ident: ref57/cit57
  doi: 10.1021/acs.iecr.5b03198
– ident: ref7/cit7
  doi: 10.1002/mren.200700008
– ident: ref12/cit12
  doi: 10.1016/0098-1354(191)80011-j
SSID ssj0005544
Score 2.432167
Snippet Kinetic Monte Carlo (MC) is the main stochastic strategy used to simulate polymerization systems, as it gives good results with simple formulation. Normally,...
SourceID proquest
crossref
acs
SourceType Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 9034
SubjectTerms algorithms
polymerization
process design
Python
Title General Method for Speeding Up Kinetic Monte Carlo Simulations
URI http://dx.doi.org/10.1021/acs.iecr.0c01069
https://www.proquest.com/docview/2524331217
Volume 59
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVABC
  databaseName: American Chemical Society Journals
  customDbUrl:
  eissn: 1520-5045
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0005544
  issn: 0888-5885
  databaseCode: ACS
  dateStart: 19870101
  isFulltext: true
  titleUrlDefault: https://pubs.acs.org/action/showPublications?display=journals
  providerName: American Chemical Society
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV07T8MwELagLDDwRpSXjAQDQ1rHeTkLUlVRVaCylErdorPjSBUlrZp04ddzTlJKAVVdI1_k2L58d7rz9xFyB4jxDGzXEgJiyw18aUkbuGWLkCUgEj-Eotvi1e8O3OehN1zS5Pyu4HO7CSprjDCEajBl8pdwm-xwPwhM-16r3V-2c3iFcCs6jblJJLyqJPnfGwwQqWwViFb_wwW4dA5KlaKs4CQ0PSXvjXkuG-rzL2PjBvM-JPtVjElb5aE4Ils6PSZ7P5gHT8hjRTdNe4WCNMXQlfanJZLRwZS-4FC0pj1DXkXbMBtPaH_0UWl9Zadk0Hl6a3etSkrBAsd2cssXoALQNmNaIOArjY6NW6EwQ2WJCLRn2jM1QBzEEDtBrP3QB89RHgdgCaY0Z6SWTlJ9TqjwJMYokASxBBe4L5kbY5QYgy01kyDr5B4_PapcIYuKKje3I_PQrEdUrUedNBfrH6mKj9zIYozXWDx8W0xLLo41Y28XWxqhw5gqCKR6Ms8i7nFzSwxTsYsNZ3pJdrnJsg1nq3NFavlsrq8xFMnlTXEGvwB49NjT
linkProvider American Chemical Society
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LT8MwDLYGHIADb8SbIMGBQ0fSNm12QZom0GCPA2MSt8ppUwkB20S3C78ep-s2hhCCaxRHbhzXtmx_BjhHsvEche8ohYnjh4F2tEDXEarCU1RpUMG82qId1Lv-_ZN8KoGY9MIQExmdlOVJ_Bm6gLiya8_kSZV5bMOYygIsycAXNt6q1jqzqg6Zz28l3bENRUoWmcmfTrD2KM7m7dH87zi3Mbfr8DDlLi8teSmPhrocf3wDbvwX-xuwVnicrDp-IptQMr0tWP2CQ7gN1wX4NGvl86QZObKsMxjbNdYdsAZtJWrWslBWrIbvr33WeX4rJn9lO9C9vXms1Z1isIKDnvCGTqAwDtEIzo0i8x8bUnMSTEzxKk9VaKQt1jSISZhg4oWJCSoBSi-WLiJPKcDZhcVev2f2gCmpyWPBNEw0-ugGmvsJ-YwJCm24Rr0PF_TpUaEYWZTnvF0R2UV7H1FxH_twNRFDFBfo5HZIxusvFJdTisEYmeOXvWcTyUakPjYngj3TH2WRK13bM0aB2cEfOT2F5fpjqxk179qNQ1hxbfxt0Vy9I1gcvo_MMTkpQ32SP8tPJSThNQ
linkToPdf http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEB60gujBt_g2gh48bJt9ZDe9CFItvhFqxdsy2WRB1La47cVf72Sb1gcieg1JSDKZzDfM5BuAfSQbz9GPPClRe1ESK0_5GHi-rPMcZR7Xscy2uInP2tHFg3iYADH6C0OLKGimogziW63u6dwxDPg12_5IaKrKM-vK1CdhSsSk6RYRNVofmR2irOFK-mM_FUnhopM_zWBtUlZ8tUlfn-TSzjTn4X68wjK95Kk66Ktq9vaNvPHfW1iAOYc82fHwqizChOkswewnPsJlOHIk1Oy6rCvNCNCyVm9o31i7xy6pK41m15bSijXw9bnLWo8vrgJYsQLt5uld48xzBRY8DP2w78USswSNz7mRBAMyQ-pOAsrIb-W5TIywSZsGUScadZhoE9djFGEmAkSek6OzCpVOt2PWgEmhCLlgnmiFEQax4pEm7KjRV4YrVOtwQFtPnYIUaRn7DvzUNtrzSN15rENtJIo0cyzltljG8y8jDscjekOGjl_67o2km5Ia2dgIdkx3UKSBCOzfMXLQNv640l2Yvj1pplfnN5ebMBNYN9ySuoZbUOm_Dsw2YZW-2ilv5juKVuO4
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=General+Method+for+Speeding+Up+Kinetic+Monte+Carlo+Simulations&rft.jtitle=Industrial+%26+engineering+chemistry+research&rft.au=Rego%2C+Artur+S+C&rft.au=Brand%C3%A3o%2C+Amanda+L.+T.&rft.date=2020-05-13&rft.issn=1520-5045&rft.volume=59&rft.issue=19+p.9034-9042&rft.spage=9034&rft.epage=9042&rft_id=info:doi/10.1021%2Facs.iecr.0c01069&rft.externalDBID=NO_FULL_TEXT
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0888-5885&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0888-5885&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0888-5885&client=summon