<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1171300650412348178</id><updated>2012-02-16T07:13:59.022-08:00</updated><title type='text'>My codes</title><subtitle type='html'>I am intending here to share some of my small codes. The codes would mostly be for physics and/or related people. The codes are for very simple. If you have any better idea and/or suggestions I will appreciate that.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>5</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1171300650412348178.post-5996424730214252899</id><published>2009-04-21T07:49:00.000-07:00</published><updated>2009-11-16T16:26:37.824-08:00</updated><title type='text'>Installing packages in Latex</title><content type='html'>I am giving you a manual installation procedure for advanced packages in Latex for Windows. Installing it in Ubuntu is easier and I won't discuss here. Usually MikTex or other Latex editor softwares install packages automatically or give you the option to install it from the internet. But this does not work always. I am witting two procedure to install a missing package which worked for me. Remember after installation, you have to refresh the latex as instructed in red color.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000099;"&gt;1.&lt;/span&gt; Sometimes, installing a package is simple. I just type the package name in google ('package.sty')  then copy the whole code in a ASCII editor, (e.g. vi or the latex editor itself)  and save it with the extension '.sty'. (If you are using documentclass then the extension is '.cls'). This file now has to be placed in a correct directory which you can do in two ways. First, you can create a folder naming 'package' and put your 'package.sty' file in it. Now copy this folder to the location where you have your texmf folder into its subdiretory  '...\texmf\tex\latex\'. Second, you can put your 'package.sty' in  '...\texmf\tex\latex\misc'. See which one works. &lt;span style="color: red;"&gt;Run 'Refresh Now' from 'Start -&amp;gt; MikTeX -&amp;gt; MikTeX Option -&amp;gt; General -&amp;gt; Refresh Now' or in Vista I see its in  'Start -&amp;gt; MikTeX -&amp;gt; settings'. If you are not using MikTeX, find out the way to refresh your latex compiler. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000099;"&gt;2. (i)&lt;/span&gt;  Download the package from &lt;a href="http://www.ctan.org/tex-archive/macros/latex/"&gt;CTAN&lt;/a&gt; (look in contrib or others wherever it is) or just search in google (&lt;span style="font-style: italic;"&gt;e.g.  install 'package' latex&lt;/span&gt; &lt;span style="font-style: italic;"&gt;CTAN&lt;/span&gt;). After unzipping, you will find a folder with the same name. If that folder contains the appropriate 'package.sty' file you are all set otherwise it should contain a installation file 'package.ins'. Once yourun it, the required 'package.sty' should be created in the same folder. Now copy this folder into  '...\texmf\tex\latex\'.   &lt;span style="color: red;"&gt;Refresh your compiler now as written in red color before.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000099;"&gt;(ii)&lt;/span&gt; Some people suggest that you have to run the 'package.ins' file in this directory '...\texmf\source\latex\'. If the previous trial does not work, then copy your 'package' folder  to this  directory and then hit 'package.ins' and copy the folder to '...\texmf\tex\latex\'. &lt;span style="color: red;"&gt;Finally Refresh as given in red color before.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000099;"&gt;(iii)&lt;/span&gt; Again somewhere I find that you have to perform step &lt;span style="color: #000099;"&gt;2&lt;/span&gt;&lt;span style="color: #000099;"&gt;(i)&lt;/span&gt; in '...\localtexmf\tex\latex'. See which one works.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #000099;"&gt;3.&lt;/span&gt; Sometimes the package you find from internet contains the folder 'package' inside several other directories. Don't bother other folders or anything, just copy your needed folder 'package' wherever you find it and then paste into  '...\texmf\tex\latex\'. And &lt;span style="color: red;"&gt;Refresh.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You may still find difficulties, in that case try to permute all the procedures I mentioned above and get google's help.&lt;br /&gt;&lt;br /&gt;Even if you are not using MikTeX, the procedure should be same in principle, but the location of the directories might be different and you should be able to find the appropriate locations using analogy.&lt;br /&gt;&lt;br /&gt;Lastly I hope you did not miss this advanced manual for latex 'The Not so short introduction to Latex 2'. Just google it. Thanks to Baris for letting me know that.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1171300650412348178-5996424730214252899?l=encodedcode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/5996424730214252899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1171300650412348178&amp;postID=5996424730214252899' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/5996424730214252899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/5996424730214252899'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/2009/04/installing-packages-in-latex.html' title='Installing packages in Latex'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1171300650412348178.post-3658498354146685815</id><published>2008-10-11T07:14:00.000-07:00</published><updated>2008-10-11T07:20:48.057-07:00</updated><title type='text'>Bibliography sorting (Matlab Code)</title><content type='html'>Those who write papers, especially longer one, they know how difficult and irritating it is to sort the bibliography every time you change the text. I made this little code to sort the bibliography as they appear in the text using '\cite{}'. Some journal does not allow to sort the bibliography as it appear in the figure caption. I have not given any special care to it for simplicity. The code appears below in a very misaligned fashion. It should work pretty well.&lt;br /&gt;&lt;br /&gt;function bibsort(fname,bibfile,outfile)&lt;br /&gt;% &lt;br /&gt;%   'bibsort' sorts the bibliography of the main latex file &lt;br /&gt;%   as the references appear in the text.  &lt;br /&gt;%   &lt;br /&gt;%   bibsort('paper.tex','bibliography.tex',''outputfile.tex') &lt;br /&gt;%   will find the citation from file 'paper.tex' and find the &lt;br /&gt;%   bibliography from file 'bibliography.tex' and the sorted bibliograpy &lt;br /&gt;%   will be written in 'outputfile.tex'. Default biblography file is the &lt;br /&gt;%   main file and the default outputfile is 'bib.tex'.&lt;br /&gt;%&lt;br /&gt;%   This program will identify a reference as written in '\cite{reference}' &lt;br /&gt;%   in the main file and then search for that reference in the bibliograpy &lt;br /&gt;%   as written in '\bibitem{refererence}'. More reference as seperated &lt;br /&gt;%   by , inside one '\cite{}' is incorporated. Again, one '\cite{}' as&lt;br /&gt;%   splitted into two lines are also taken care of.   &lt;br /&gt;%&lt;br /&gt;%   Tanmoy Das. &lt;br /&gt;%   Feb 12 2008.&lt;br /&gt;% &lt;br /&gt; if nargin&lt;1;error('Specify your input latex file');end;&lt;br /&gt; if nargin ==1;bibfile=fname;outfile = 'bib.tex';end;&lt;br /&gt; if nargin ==2;outfile = 'bib.tex';end;&lt;br /&gt; %&lt;br /&gt; fid = fopen(fname,'rt');&lt;br /&gt; if fid&lt;0;error(sprintf('%s%s%s','Input file [',fname,'] NOT found'));end&lt;br /&gt; bfid = fopen(bibfile,'rt');&lt;br /&gt; if bfid&lt;0;error(sprintf('%s%s%s','Bibliography file [',bibname,'] NOT found'));end&lt;br /&gt; ofid = fopen(outfile,'w');&lt;br /&gt; %&lt;br /&gt; % Identify all the references and save in variable 'd' &lt;br /&gt; b = 'cite{'; &lt;br /&gt; ii = 1; % No of references as identified&lt;br /&gt; while feof(fid) == 0;&lt;br /&gt;       tline = fgetl(fid); %read one line&lt;br /&gt;       len = length(tline);&lt;br /&gt;       if len&gt;=1&amp;tline(1)=='%';continue;end &lt;br /&gt;       % find the indices where refereces are located&lt;br /&gt;       indi = findstr(tline, b);&lt;br /&gt;       %num = length(indi);   &lt;br /&gt;      if length(indi) &gt; 0&lt;br /&gt;         len1= length(indi);&lt;br /&gt;         ik = 1; % index for the length of a reference&lt;br /&gt;         ij = 1; % index for the no of reference in one line&lt;br /&gt;         while (ij&lt;=len1)&lt;br /&gt;             %tline(indi(ij)-1)&lt;br /&gt;            if (indi(ij)&gt;2)&amp;(tline(indi(ij)-2)=='%');ij=ij+1;continue;end;&lt;br /&gt;            il = indi(ij)+5;&lt;br /&gt;            while(il&lt;=len)&lt;br /&gt;                c = tline(il); % store one character of the line&lt;br /&gt;                %} is found then the ref(s) in \cite{} is identified&lt;br /&gt;                if c=='}' ;ii= ii+1; ik=1; break; end;&lt;br /&gt;                % if , in \cite{} is found then one ref if identified&lt;br /&gt;                if c==','; ik=1; ii=ii+1; il = il+1; end;&lt;br /&gt;                d(ii,ik)=tline(il); % Store one character of a ref. &lt;br /&gt;                ik = ik+1; % increases the character length of a ref &lt;br /&gt;                % check if the line is finished before identifying one full&lt;br /&gt;                % ref.&lt;br /&gt;                if il==len;&lt;br /&gt;                    tlinen = fgetl(fid); % go to net line&lt;br /&gt;                    while length(tlinen)&gt;=1&amp;tlinen(1)=='%';&lt;br /&gt;                        tlinen = fgetl(fid); % go to net line&lt;br /&gt;                    end&lt;br /&gt;                    tline = [tline tlinen]; % add the new line to old one&lt;br /&gt;                    len = length(tline); % modify the new line length&lt;br /&gt;                    % look for aditional '\cite{' in the new line &lt;br /&gt;                    indi = findstr(tline, b); &lt;br /&gt;                    % modify the new no of '\cite{' in the total line  &lt;br /&gt;                    len1=length(indi); &lt;br /&gt;                end&lt;br /&gt;                il = il+1; % go to the next character in the line&lt;br /&gt;            end %while: all ref found under one '\cite'&lt;br /&gt;            ij = ij+1; % go to the next '\cite'  &lt;br /&gt;         end %while &lt;br /&gt;      end % if&lt;br /&gt; end % while&lt;br /&gt; %%%%%%%%%%%%%%%%%%%%%&lt;br /&gt; % Now remove the same reference and store all independent references in&lt;br /&gt; % 'f', as they are in order&lt;br /&gt; %%%%%%%%%%%%%%%%%%%%%&lt;br /&gt; ii = 1;&lt;br /&gt; f(ii,:) = d(ii,:);&lt;br /&gt; for ij = 2:size(d,1)&lt;br /&gt;      flag = 0;&lt;br /&gt;      for ik = ij-1:-1:1&lt;br /&gt;          if d(ij,:)==d(ik,:);flag = 1;break;end;  &lt;br /&gt;      end&lt;br /&gt;      if (flag==0)&lt;br /&gt;          ii = ii+1;&lt;br /&gt;          f(ii,:) = d(ij,:);&lt;br /&gt;      else&lt;br /&gt;          continue&lt;br /&gt;      end&lt;br /&gt; end   &lt;br /&gt; fclose(fid);&lt;br /&gt; %&lt;br /&gt; % Now look for the references fron 'The bibliograpy' &lt;br /&gt; %&lt;br /&gt; bfid = fopen(bibfile,'rt');&lt;br /&gt; while feof(bfid) == 0;&lt;br /&gt;     tline = fgetl(bfid);&lt;br /&gt;       %if length(tline)&gt;=1&amp;tline(1)=='%';continue;end &lt;br /&gt;     indi = findstr(tline, sprintf('%s%s%s','\begin{thebibliography'));&lt;br /&gt;     num = length(indi);&lt;br /&gt;     if num &gt; 0&lt;br /&gt;        fprintf(ofid,'%s\n',tline);&lt;br /&gt;        break;&lt;br /&gt;     end&lt;br /&gt; end&lt;br /&gt; fclose(bfid);&lt;br /&gt; %&lt;br /&gt; for ii = 1:size(f,1)&lt;br /&gt;    bfid = fopen(bibfile,'rt');&lt;br /&gt;    while feof(bfid) == 0;&lt;br /&gt;        tline = fgetl(bfid);&lt;br /&gt;        %if length(tline)&gt;=1&amp;tline(1)=='%';continue;end &lt;br /&gt;        indi = findstr(tline, sprintf('%s%s%s','\bibitem{',f(ii,:),'}'));&lt;br /&gt;        num = length(indi);&lt;br /&gt;        if num &gt; 0&lt;br /&gt;            if (indi(1)&gt;1)&amp;(tline(indi(1)-1)=='%');continue;end;&lt;br /&gt;            fprintf(ofid,'%s\n',tline);&lt;br /&gt;            num2 = 0;&lt;br /&gt;            while (num2==0)&lt;br /&gt;                tline1 = fgetl(bfid);&lt;br /&gt;                %while length(tline1)&gt;=1;%&amp;tline1(1)=='%';&lt;br /&gt;                %    tline1 = fgetl(fid);&lt;br /&gt;                %end&lt;br /&gt;                ind1 = findstr(tline1, '\end{thebibliography');&lt;br /&gt;                num1 = length(ind1);&lt;br /&gt;                if num1 &gt;0;break;end;&lt;br /&gt;                ind2 = findstr(tline1, '\bibitem{');&lt;br /&gt;                num2 = length(ind2);&lt;br /&gt;                if num2==0;&lt;br /&gt;                    %tline = [tline; tline1];&lt;br /&gt;                    fprintf(ofid,'%s\n',tline1);&lt;br /&gt;                end; &lt;br /&gt;            end&lt;br /&gt;%             fprintf(ofid,'%s\n',tline);&lt;br /&gt;            break&lt;br /&gt;        end&lt;br /&gt;    end&lt;br /&gt;    fclose(bfid);&lt;br /&gt;    if(num&lt;=0)error(sprintf('%s%s%s','Reference[',f(ii,:),']not found'));end; &lt;br /&gt; end&lt;br /&gt; %&lt;br /&gt;  bfid = fopen(bibfile,'rt');&lt;br /&gt;  while feof(bfid) == 0;&lt;br /&gt;     tline = fgetl(bfid);&lt;br /&gt;       %if length(tline)&gt;=1&amp;tline(1)=='%';continue;end &lt;br /&gt;     indi = findstr(tline, sprintf('%s%s%s','\end{thebibliography'));&lt;br /&gt;     num = length(indi);&lt;br /&gt;     if num &gt; 0&lt;br /&gt;        fprintf(ofid,'%s\n',tline);&lt;br /&gt;     end&lt;br /&gt;  end&lt;br /&gt; fclose(bfid);&lt;br /&gt; fclose(ofid);&lt;br /&gt; &lt;br /&gt; return&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1171300650412348178-3658498354146685815?l=encodedcode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/3658498354146685815/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1171300650412348178&amp;postID=3658498354146685815' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/3658498354146685815'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/3658498354146685815'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/2008/10/bibliography-sorting-matlab-code.html' title='Bibliography sorting (Matlab Code)'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1171300650412348178.post-1148721158805652381</id><published>2008-10-11T07:11:00.000-07:00</published><updated>2009-04-23T07:22:23.592-07:00</updated><title type='text'>spline interpolation function for advanced fortran</title><content type='html'>This subroutine will help you to spline the whole dimension of a vector. This can be easily modified to multi-dimensional matrix calculation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     subroutine spline(n,x,y,yp1,ypn,no,xo,yo)&lt;br /&gt;cccccccccccccccccccccccccccccccccccccccccccccccccccc&lt;br /&gt;c  This subroutine will calculate the cubic-spline intepolated value of&lt;br /&gt;c  given any function for single variable of any dimension  &lt;br /&gt;c&lt;br /&gt;c  inputs/output: &lt;br /&gt;c  n : (input) [scalar] dimension of input array&lt;br /&gt;c  x : (input) [vector of length 'n'], independent variable of dimension 'n'&lt;br /&gt;c  y : (input)[vector of length 'n']' the function of x (an array of dimension 'n'&lt;br /&gt;c  yp1 : (input) [scalar] =1.e+30 :: the routine is signaled to set&lt;br /&gt;c                                    the corresponding boundary condition&lt;br /&gt;c                                    for a natural spline, with zero&lt;br /&gt;c                                    second derivative on that boundary&lt;br /&gt;c  ypn : (input) same to yp1 = 1.e+30&lt;br /&gt;c  no : (input) [scalar] dimension output array&lt;br /&gt;c  xo : (input) [vector of length 'no'], 'x' values at which you want to spline&lt;br /&gt;c  yo : (output) [vector of length 'no'], splined value&lt;br /&gt;c&lt;br /&gt;c  Note: This works properly in any inter fortran compiler and f90-compiler&lt;br /&gt;ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc&lt;br /&gt;c&lt;br /&gt;c   Tanmoy Das.&lt;br /&gt;c&lt;br /&gt;c   Feb 13, 2008.&lt;br /&gt;c&lt;br /&gt;cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc&lt;br /&gt;     integer::n,no,io&lt;br /&gt;     real,dimension(1:n)::x,y,y2,u&lt;br /&gt;     real,dimension(1:no)::xo,yo&lt;br /&gt;c&lt;br /&gt;     if (yp1.gt.0.99e30) then&lt;br /&gt;        y2(1)=0.&lt;br /&gt;        u(1)=0.&lt;br /&gt;     else&lt;br /&gt;        y2(1)=-0.5&lt;br /&gt;        u(1)=(3./(x(2)-x(1)))*((y(2)-y(1))/(x(2)-x(1))-yp1)&lt;br /&gt;     endif&lt;br /&gt;     do 11 i=2,n-1&lt;br /&gt;        sig=(x(i)-x(i-1))/(x(i+1)-x(i-1))&lt;br /&gt;        p=sig*y2(i-1)+2.&lt;br /&gt;        y2(i)=(sig-1.)/p&lt;br /&gt;        u(i)=(6.*((y(i+1)-y(i))/(x(i+1)-x(i))-(y(i)-y(i-1))&lt;br /&gt;    &amp;amp;         /(x(i)-x(i-1)))/(x(i+1)-x(i-1))-sig*u(i-1))/p&lt;br /&gt;11   continue&lt;br /&gt;     if (ypn.gt.0.99e30) then&lt;br /&gt;        qn=0.&lt;br /&gt;        un=0.&lt;br /&gt;     else&lt;br /&gt;        qn=0.5&lt;br /&gt;        un=(3./(x(n)-x(n-1)))*(ypn-(y(n)-y(n-1))/(x(n)-x(n-1)))&lt;br /&gt;     endif&lt;br /&gt;     y2(n)=(un-qn*u(n-1))/(qn*y2(n-1)+1.)&lt;br /&gt;     do 12 k=n-1,1,-1&lt;br /&gt;        y2(k)=y2(k)*y2(k+1)+u(k)&lt;br /&gt;12   continue&lt;br /&gt;cccccccccccccccccccccccccccccccccccccccccccccc&lt;br /&gt;c  now for any arbitrary x&lt;br /&gt;cccccccccccccccccccccccccccccccccccccccccccccc&lt;br /&gt;     do io = 1,no&lt;br /&gt;      klo=1&lt;br /&gt;      khi=n&lt;br /&gt;1     if (khi-klo.gt.1) then&lt;br /&gt;        k=(khi+klo)/2.&lt;br /&gt;        if (x(k).gt.xo(io)) then&lt;br /&gt;            khi=k&lt;br /&gt;        else&lt;br /&gt;            klo=k&lt;br /&gt;        endif&lt;br /&gt;      goto 1&lt;br /&gt;      endif&lt;br /&gt;      h=x(khi)-x(klo)&lt;br /&gt;      if (h.eq.0.) pause 'bad XA input'&lt;br /&gt;      a=(x(khi)-xo(io))/h&lt;br /&gt;      b=(xo(io)-x(klo))/h&lt;br /&gt;      yo(io)=a*y(klo)+b*y(khi)+&lt;br /&gt;    &amp;amp;    (a*(a*a-1.)*y2(klo)+b*(b*b-1.)*y2(khi))*h*h/6.&lt;br /&gt;      &lt;br /&gt;     enddo&lt;br /&gt;c &lt;br /&gt;     return&lt;br /&gt;     end&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1171300650412348178-1148721158805652381?l=encodedcode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/1148721158805652381/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1171300650412348178&amp;postID=1148721158805652381' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/1148721158805652381'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/1148721158805652381'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/2008/10/spline-interpolation-function-for.html' title='spline interpolation function for advanced fortran'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1171300650412348178.post-1660598488851073502</id><published>2008-10-11T07:07:00.000-07:00</published><updated>2008-10-11T07:10:12.258-07:00</updated><title type='text'>The main code to use mpi_distrbt</title><content type='html'>This is the example of the script you can insert in your main program to use mpi_istrbt.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;       max_ipara=bzq ! the maximum array dimension to be parallelized&lt;br /&gt;       if(MPImyid.eq.0)then ! do the distribution in main node only&lt;br /&gt;          write(6,*)' Master process #',MPImyid,' starting'&lt;br /&gt;c        &lt;br /&gt;          call mpi_distrbt(max_ipara,nummpiprocsm,&lt;br /&gt;     &amp;                   MPInumprocs,ipara_ini_fin)&lt;br /&gt;      endif ! master processor selection&lt;br /&gt;CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&lt;br /&gt;c&lt;br /&gt;c THIS IS EXECUTED BY ALL (MASTER+SLAVE) PROCESSORS&lt;br /&gt;c&lt;br /&gt;CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC&lt;br /&gt;        write(6,*)' Slave process #',MPImyid,' starting'&lt;br /&gt;c       blocking receive of integer data&lt;br /&gt;        icount=2*MPInumprocs&lt;br /&gt;        iroot=0 &lt;br /&gt;        call MPI_BCAST(ipara_ini_fin, icount, MPI_INTEGER, iroot,&lt;br /&gt;     &amp;  MPI_COMM_WORLD, ierr)&lt;br /&gt;        &lt;br /&gt;c     call the serial version&lt;br /&gt;        ipara_ini=ipara_ini_fin(1,MPImyid)&lt;br /&gt;        ipara_fin=ipara_ini_fin(2,MPImyid)&lt;br /&gt;&lt;br /&gt;        write(6,*)'Slave #',MPImyid,&lt;br /&gt;     &amp;        ' computing from ipara ',ipara_ini,' to ',ipara_fin&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1171300650412348178-1660598488851073502?l=encodedcode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/1660598488851073502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1171300650412348178&amp;postID=1660598488851073502' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/1660598488851073502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/1660598488851073502'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/2008/10/main-code-to-use-mpidistrbt.html' title='The main code to use mpi_distrbt'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1171300650412348178.post-5089186476848394687</id><published>2008-02-25T17:01:00.001-08:00</published><updated>2008-06-15T17:26:02.448-07:00</updated><title type='text'>Fortran paraller programming : job distributor to several processors</title><content type='html'>&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;       &lt;span style="color: rgb(255, 153, 255);"&gt;subroutine&lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt;mpi_distrbt&lt;/span&gt;(max_ipara,nummpiprocsm,&lt;br /&gt;  &lt;span style="color: rgb(255, 204, 0);"&gt;&amp;amp;&lt;/span&gt;                       MPInumprocs,ipara_ini_fin)&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;ccccccccccccccccccccccccccccccc&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc This subroutine helps to distribute your total no of array dimension into the total number of&lt;br /&gt;cc avaiable processor.&lt;br /&gt;cc max_ipara = array dimension&lt;br /&gt;cc &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:times new roman;font-size:130%;"  &gt;nummpiprocsm = maximum number of processor available in the cluster&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:times new roman;font-size:130%;"  &gt;MPInumprocs = Number of processors you are using&lt;br /&gt;cc &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:times new roman;font-size:130%;"  &gt;ipara_ini_fin = output: real, dimension (1:2,1:MPImyid), where MPImyid is the identification number for&lt;br /&gt;cc                                 the processor&lt;br /&gt;cc&lt;br /&gt;cc   A typical code to demonstrate how to use this is given in the blog.&lt;br /&gt;cc&lt;br /&gt;cc  ALL COPYRIGHT IS RESERVED by Tanmoy Das.&lt;br /&gt;cc Created in 2006/2007.&lt;br /&gt;cc&lt;br /&gt;cc I thank Seppo Sharakorpi for creating the basic structure and the algorithm of this code.&lt;br /&gt;cc&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;ccccccccccccccccccccccc&lt;br /&gt;&lt;/span&gt;      &lt;span style="color: rgb(51, 204, 0);"&gt;real :: &lt;/span&gt;dummy&lt;br /&gt;   &lt;span style="color: rgb(153, 255, 153);"&gt;i&lt;span style="color: rgb(51, 204, 0);"&gt;nteger ::&lt;/span&gt; &lt;/span&gt;nummpiprocsm,max_ipara&lt;br /&gt;   &lt;span style="color: rgb(51, 204, 0);"&gt;integer,dimension&lt;/span&gt;(&lt;span style="color: rgb(255, 204, 102);"&gt;0&lt;/span&gt;:nummpiprocsm) :: isendcounts&lt;br /&gt;   &lt;span style="color: rgb(51, 204, 0);"&gt;integer,dimension&lt;/span&gt;(&lt;span style="color: rgb(255, 204, 102);"&gt;1&lt;/span&gt;:&lt;span style="color: rgb(255, 204, 102);"&gt;2&lt;/span&gt;,&lt;span style="color: rgb(255, 204, 102);"&gt;0&lt;/span&gt;:nummpiprocsm) :: ipara_ini_fin&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c     &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;C THESE ARE THE START AND FINISH VALUES OF OLD LOOP, NOW PARALLELIZED&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;br /&gt;     ipara_ini_tot=1&lt;br /&gt;     ipara_fin_tot=max_ipara&lt;br /&gt;     &lt;span style="color: rgb(255, 153, 255);"&gt;write(6,*)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 153, 255);"&gt;        write(6,*)&lt;/span&gt;' ipara ranging from ',&lt;br /&gt;  &lt;span style="color: rgb(255, 204, 51);"&gt;&amp;amp; &lt;/span&gt;       ipara_ini_tot,' to ',ipara_fin_tot&lt;br /&gt;    &lt;span style="color: rgb(255, 153, 255);"&gt; write(6,*)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c     broadcast tasks to slaves&lt;/span&gt;&lt;br /&gt;     nummpitask_tot=ipara_fin_tot-ipara_ini_tot+1&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;        &lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)'---------------------------------------------------'       &lt;br /&gt;                               &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 153, 255);"&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt; &lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;&lt;/span&gt; 'MPI MASTER: Scattering total of ',nummpitask_tot,&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 204, 0);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;' tasks'&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;        &lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)'---------------------------------------------------'                                                  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;&lt;/span&gt;&lt;br /&gt;      &lt;span style="color: rgb(255, 153, 255);"&gt;if&lt;/span&gt; ( nummpitask_tot &lt; style="color: rgb(255, 153, 255);"&gt;then&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;                 &lt;span style=";font-family:times new roman;font-size:130%;"  &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;font-size:130%;"  &gt;'&lt;span style="color: rgb(255, 153, 102);"&gt; SERIOUS ERROR:: nummpitask_tot &lt;&gt;'&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;br /&gt;         &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;        write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; ipara_ini_tot, ipara_fin_tot, MPInumprocs&lt;br /&gt;     &lt;span style="color: rgb(255, 153, 255);"&gt; endif&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;br /&gt;     dummy=nummpitask_tot/MPInumprocs&lt;br /&gt;     islavetasks=floor(dummy)+1&lt;br /&gt;     isendcounts(0)=nummpitask_tot-(MPInumprocs-1)*islavetasks&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;       &lt;span style="color: rgb(255, 153, 102);"&gt; &lt;span style="color: rgb(255, 153, 255);"&gt;if&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 255);"&gt; &lt;/span&gt;( isendcounts(0) &gt; 0 )&lt;span style="color: rgb(255, 153, 102);"&gt; &lt;span style="color: rgb(255, 153, 255);"&gt;then&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;        ipara_ini_fin(1,0)=ipara_ini_tot&lt;br /&gt;        ipara_ini_fin(2,0)=ipara_ini_tot+isendcounts(0)-1&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;          &lt;span style="color: rgb(255, 153, 102);"&gt; &lt;span style="color: rgb(255, 153, 255);"&gt;do&lt;/span&gt;&lt;/span&gt; ii=1,(MPInumprocs-1)&lt;br /&gt;           isendcounts(ii)=islavetasks&lt;br /&gt;           ipara_ini_fin(1,ii)=ipara_ini_fin(2,ii-1)+1&lt;br /&gt;           ipara_ini_fin(2,ii)=ipara_ini_fin(1,ii)+isendcounts(ii)-1&lt;br /&gt;       &lt;span style="color: rgb(255, 153, 255);"&gt; end do&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;           &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; isendcounts(0),' tasks for the master'&lt;br /&gt;        &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; isendcounts(1),' tasks for each of the ',&lt;br /&gt;  &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; &lt;span style="color: rgb(255, 153, 255);"&gt;&amp;amp;&lt;/span&gt;  &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;           (MPInumprocs-1),' slaves'&lt;br /&gt;        &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;       &lt;span style="color: rgb(255, 153, 255);"&gt; else&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;c     if number of tasks is only slightly larger than MPInumprocs&lt;/span&gt;&lt;br /&gt;        islavetasks=floor(dummy)&lt;br /&gt;        isendcounts(0)=islavetasks&lt;br /&gt;        ipara_ini_fin(1,0)=ipara_ini_tot&lt;br /&gt;        ipara_ini_fin(2,0)=ipara_ini_tot+isendcounts(0)-1&lt;br /&gt;        idummy=nummpitask_tot-(MPInumprocs)*islavetasks&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc&lt;/span&gt;&lt;br /&gt;        &lt;span style="color: rgb(255, 153, 255);"&gt;do&lt;/span&gt; ii=1,(MPInumprocs-1)&lt;br /&gt;           isendcounts(ii)=islavetasks&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;              &lt;span style="color: rgb(255, 153, 255);"&gt;if &lt;/span&gt;( ii &lt;= idummy ) then                  isendcounts(ii)=isendcounts(ii)+1              &lt;span style="color: rgb(255, 153, 255);"&gt; end if&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;              ipara_ini_fin(1,ii)=ipara_ini_fin(2,ii-1)+1&lt;br /&gt;           ipara_ini_fin(2,ii)=ipara_ini_fin(1,ii)+isendcounts(ii)-1&lt;br /&gt;        &lt;span style="color: rgb(255, 153, 255);"&gt;end do&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;           &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; isendcounts(0),' tasks for the master,'&lt;br /&gt;        &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;isendcounts(1),' tasks for each of the first',&lt;br /&gt; &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 204, 0);"&gt;&amp;amp;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt; &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;           idummy,' slaves and'&lt;br /&gt;        &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;isendcounts(idummy+1),&lt;br /&gt;  &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 204, 0);"&gt;&amp;amp;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;           ' tasks for each of the other',&lt;br /&gt;  &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 204, 0);"&gt;&amp;amp;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;           (MPInumprocs-1)-idummy,' slaves'&lt;br /&gt;        &lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 153, 255);"&gt;write&lt;span style="color: rgb(0, 0, 0);"&gt;(6,*)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;br /&gt;      &lt;span style="color: rgb(255, 153, 255);"&gt; end if&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;&lt;span style="color: rgb(255, 0, 0);"&gt;cc&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:times new roman;" &gt;     &lt;br /&gt;       &lt;span style="color: rgb(255, 153, 255);"&gt;return&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 153, 255);"&gt;          end subroutine&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1171300650412348178-5089186476848394687?l=encodedcode.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://encodedcode.blogspot.com/feeds/5089186476848394687/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1171300650412348178&amp;postID=5089186476848394687' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/5089186476848394687'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1171300650412348178/posts/default/5089186476848394687'/><link rel='alternate' type='text/html' href='http://encodedcode.blogspot.com/2008/02/subroutine-mpidistrbt.html' title='Fortran paraller programming : job distributor to several processors'/><author><name>Tanmoy Das</name><uri>http://www.blogger.com/profile/14554891090722296750</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='23' height='32' src='http://2.bp.blogspot.com/_ab09hyqP2uU/S_DQ7EYz6XI/AAAAAAAAAY8/O6ctezkq3T4/S220/me10.JPG'/></author><thr:total>0</thr:total></entry></feed>
