ParaMonte MATLAB 3.0.0
Parallel Monte Carlo and Machine Learning Library
See the latest version documentation.
readChain.m
Go to the documentation of this file.
1%> \brief
2%> Return a list of objects of superclass [pm.sampling.FileContentsChain](@ref FileContentsChain)
3%> containing the content(s) of the ParaMonte simulation output chain file(s) whose path(s)
4%> match the specified input ``pattern`` or the simulation
5%> specification ``sampler.spec.outputFileName``.
6%>
7%> \warning
8%> This method is to be only used for post-processing of the output chain file(s) of an already finished simulation.<br>
9%> Although possible, this method is NOT meant to be called by all processes in MPI-parallel simulations.<br>
10%>
11%> \param[in] self : The input parent object of superclass [pm.sampling.Sampler](@ref Sampler)
12%> which is **implicitly** passed to this dynamic method (not by the user).<br>
13%> \param[in] pattern : The input scalar MATLAB string containing the pattern matching
14%> the desired chain file(s) whose contents is to be read.<br>
15%> The specified ``pattern`` only needs to partially identify
16%> the name of the simulation to which the chain file belongs.<br>
17%> For example, specifying ``"./mydir/mysim"`` as input will
18%> lead to a search for file(s) beginning with "mysim" and
19%> ending with ``"_chain.txt"`` inside the directory ``"./mydir/"``.<br>
20%> If there are multiple files matching in the input ``pattern``,
21%> then all such files will be read and returned as elements of a list.<br>
22%> If the specified pattern is a valid existing URL, the file will be
23%> downloaded as a temporary file to the local system, its contents
24%> shall be parsed and the file will be subsequently removed.<br>
25%> If the input ``pattern`` is empty, then the method will search
26%> for any possible candidate files with the appropriate suffix
27%> in the current working directory.<br>
28%> (**optional**, default = ``sampler.spec.outputFileName`` or ``"./"``)
29%> \param[in] sep : The input MATLAB string containing the field separator used in the file(s).<br>
30%> (**optional**, default = ``sampler.spec.outputSeparator`` or automatically inferred.)
31%> \param[in] varargin : Any set of arguments that must be directly passed to the relevant file contents parser class.<br>
32%> (**optional**. default is empty, corresponding to no extra input arguments.)
33%>
34%> \return
35%> ``chainList`` : The output MATLAB cell array of objects
36%> of superclass [pm.sampling.FileContentsChain](@ref FileContentsChain),
37%> each of which corresponds to the contents of a unique chain file.<br>
38%>
39%> \interface{readChain}
40%> \code{.m}
41%>
42%> sampler = pm.sampling.Sampler();
43%> chainList = sampler.readChain();
44%> chainList = sampler.readChain([]);
45%> chainList = sampler.readChain([], []);
46%> chainList = sampler.readChain(pattern);
47%> chainList = sampler.readChain([], sep);
48%> chainList = sampler.readChain(pattern, sep, varargin);
49%>
50%> \endcode
51%>
52%> \note
53%> See the documentation of the subclasses of [pm.sampling.Sampler](@ref Sampler)
54%> (e.g., [pm.sampling.Paradram](@ref Paradram)) for example usage in action.<br>
55%>
56%> \example{readChain}
57%> \code{.m}
58%>
59%> sampler.readChain("./out/test_run_");
60%>
61%> sampler.spec.outputFileName = "./out/test_run_";
62%> sampler.readChain();
63%>
64%> sampler.readChain("./out/test_run_", ",");
65%>
66%> sampler.spec.outputSeparator = ",";
67%> sampler.readChain("./out/test_run_");
68%>
69%> sampler.spec.outputFileName = "./out/test_run_";
70%> sampler.spec.outputSeparator = ",";
71%> sampler.readChain();
72%>
73%> \endcode
74%>
75%> \final{readChain}
76%>
77%> \author
78%> \JoshuaOsborne, May 21 2024, 12:18 AM, University of Texas at Arlington<br>
79%> \FatemehBagheri, May 20 2024, 1:25 PM, NASA Goddard Space Flight Center (GSFC), Washington, D.C.<br>
80%> \AmirShahmoradi, May 16 2016, 9:03 AM, Oden Institute for Computational Engineering and Sciences (ICES), UT Austin<br>
81function chainList = readChain(self, pattern, sep, varargin)
82
83 if nargin < 3
84 sep = [];
85 end
86
87 if nargin < 2
88 pattern = [];
89 end
90
91 chainList = pm.sampling.readChain(self, pattern, sep, varargin{:});
92
93end
function name(in vendor)
Return the MPI library name as used in naming the ParaMonte MATLAB shared library directories.
function list()
Return a list of MATLAB strings containing the names of OS platforms supported by the ParaMonte MATLA...
This is the base class for generating objects that contain the contents of a chain file generated by ...
This is the ParaDRAM class for generating instances of serial and parallel Delayed-Rejection Adaptive...
Definition: Paradram.m:18
This is the base class for the ParaMonte sampler routines.
Definition: Sampler.m:21
function parallel()
Return a scalar MATLAB logical that is true if and only if the current installation of MATLAB contain...
function readChain(in sampler, in pattern, in sep, in varargin)
Return a list of objects of superclass pm.sampling.FileContentsChain containing the contents of a (se...
function which(in vendor)
Return the a MATLAB string containing the path to the first mpiexec executable binary found in system...