<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE ArticleSet PUBLIC "-//NLM//DTD PubMed 2.7//EN" "https://dtd.nlm.nih.gov/ncbi/pubmed/in/PubMed.dtd">
<ArticleSet>
		<Article>
		<Journal>
			<PublisherName>Journal of Theoretical and Applied Physics (JTAP)</PublisherName>
			<JournalTitle>Parallelization and implementation of multi-spin Monte Carlo simulation of 2D square Ising model using MPI and C++</JournalTitle>
			<Issn></Issn>
			<Volume>Volume 12 (2018)</Volume>
			<Issue>Issue 3, September and October 2018</Issue>
			<PubDate PubStatus="epublish">
                <Year>2023</Year>
                <Month>11</Month>
                <Day>17</Day>
			</PubDate>
		</Journal>
		<ArticleTitle>Parallelization and implementation of multi-spin Monte Carlo simulation of 2D square Ising model using MPI and C++</ArticleTitle>
		<VernacularTitle></VernacularTitle>
		<FirstPage></FirstPage>
		<LastPage></LastPage>
		<ELocationID EIdType="doi">10.1007/s40094-018-0301-4</ELocationID>
		<Language>EN</Language>
		<AuthorList>
            		</AuthorList>
		<PublicationType>Journal Article</PublicationType>
		<History>
			<PubDate PubStatus="received">
				<Year>2023</Year>
				<Month>11</Month>
				<Day>17</Day>
			</PubDate>
		</History>
		<Abstract>AbstractIn this paper, we present a parallel algorithm for Monte Carlo simulation of the 2D Ising Model to perform efficiently on a cluster computer using MPI. We use C++ programming language to implement the algorithm. In our algorithm, every process creates a sub-lattice and the energy is calculated after each Monte Carlo iteration. Each process communicates with its two neighbor processes during the job, and they exchange the boundary spin variables. Finally, the total energy of lattice is calculated by map-reduce method versus the temperature. We use multi-spin coding technique to reduce the inter-process communications. This algorithm has been designed in a way that an appropriate load-balancing and good scalability exist. It has been executed on the cluster computer of Plasma Physics Research Center which includes 9 nodes and each node consists of two quad-core CPUs. Our results show that this algorithm is more efficient for large lattices and more iterations.</Abstract>
		<ObjectList>
            			<Object Type="keyword">
				<Param Name="value">Ising model</Param>
			</Object>
						<Object Type="keyword">
				<Param Name="value">Monte Carlo method</Param>
			</Object>
						<Object Type="keyword">
				<Param Name="value">MPI</Param>
			</Object>
						<Object Type="keyword">
				<Param Name="value">Spin coding</Param>
			</Object>
						<Object Type="keyword">
				<Param Name="value">Multi</Param>
			</Object>
					</ObjectList>
	</Article>
	</ArticleSet>
