32#ifndef MADNESS_WORLD_PRINT_H__INCLUDED
33#define MADNESS_WORLD_PRINT_H__INCLUDED
76std::ostream &
operator<<(std::ostream &s,
const std::complex<T> &
c) {
77 s <<
c.real() <<
"+" <<
c.imag() <<
"j";
88template <
typename T,
typename U>
89std::ostream &
operator<<(std::ostream &s,
const std::pair<T, U> &
p) {
90 s <<
"(" <<
p.first <<
"," <<
p.second <<
")";
117 typename std::list<T>::const_iterator it =
c.begin();
118 while (it !=
c.end()) {
135std::ostream &
operator<<(std::ostream &s,
const std::vector<T> &
c) {
137 typename std::vector<T>::const_iterator it =
c.begin();
138 while (it !=
c.end()) {
156template <
typename T, std::
size_t N>
157typename std::enable_if<!std::is_same<T, char>::value, std::ostream &>
::type
160 for (std::size_t i = 0; i <
N; ++i) {
210 template <
typename T,
typename... Ts>
212 const T& t,
const Ts&...
ts) {
213 using madness::operators::operator<<;
226 template<
typename T,
typename... Ts>
228 using madness::operators::operator<<;
242 template<
typename T,
typename... Ts>
244 using madness::operators::operator<<;
268 constexpr std::size_t
bufsize = 512;
274 std::filesystem::create_directories(
directory,
ec);
279 if (
debug) std::cout <<
"redirecting to file " <<
cfilename << std::endl;
281 ofile = std::ofstream(
"/dev/null");
284 std::cout.sync_with_stdio(
true);
294 std::cout.sync_with_stdio(
true);
305 std::cout.sync_with_stdio(
true);
310 std::cout.sync_with_stdio(
true);
Supplements to the std::array class, such as I/O operations, for convenience.
Mutex that is applied/released at start/end of a scope.
Definition worldmutex.h:239
double(* energy)()
Definition derivatives.cc:58
char * p(char *buf, const char *name, int k, int initial_level, double thresh, int order)
Definition derivatives.cc:72
const std::size_t bufsize
Definition derivatives.cc:16
Mode
File writes <directory>/<filename>.<NNNNN>; Discard silences cout via /dev/null.
Definition print.h:254
io_redirect(const long task_number, std::string filename, bool debug=false)
a file in the current directory
Definition print.h:288
std::streambuf * stream_buffer_cout
Definition print.h:256
io_redirect_cout()
Definition print.h:303
static std::streambuf * stream_buffer_cout_default
default stream buffer for cout, used to restore cout
Definition print.h:257
std::streambuf * stream_buffer_cout
Definition print.h:301
Mode mode
Definition print.h:259
bool debug
Definition print.h:260
std::ofstream ofile
Definition print.h:258
~io_redirect()
Definition print.h:291
~io_redirect_cout()
Definition print.h:308
io_redirect(Mode mode, const long task_number, std::string directory, std::string filename, bool debug=false)
Definition print.h:263
static const double v
Definition hatom_sf_dirac.cc:20
Mutex printmutex
Definition worldmutex.cc:146
std::ostream & operator<<(std::ostream &s, const std::array< T, N > &a)
Output std::array to stream for human consumption.
Definition array_addons.h:59
Namespace for all elements and tools of MADNESS.
Definition DFParameters.h:10
static const char * filename
Definition legendre.cc:96
void print_header2(const std::string &s)
medium section heading
Definition print.cc:54
std::ostream & print_helper(std::ostream &out)
Helper function for print. Base case.
Definition print.h:196
void print(const T &t, const Ts &... ts)
Print items to std::cout (items separated by spaces) and terminate with a new line.
Definition print.h:227
void print_justified(const char *s, int column, bool underline)
Print a string justified on the left to start at the given column with optional underlining.
Definition print.cc:75
void printf_msg_energy_time(const std::string msg, const double energy, const double time)
Definition print.cc:70
std::string type(const PairType &n)
Definition PNOParameters.h:18
void print_header1(const std::string &s)
big section heading
Definition print.cc:44
void print_centered(const char *s, int column, bool underline)
Print a string centered at the given column with optional underlining.
Definition print.cc:85
void print_header3(const std::string &s)
small section heading
Definition print.cc:63
static XNonlinearSolver< std::vector< Function< T, NDIM > >, T, vector_function_allocator< T, NDIM > > nonlinear_vector_solver(World &world, const long nvec)
Definition nonlinsol.h:371
void print_error(const T &t, const Ts &... ts)
Print items to std::cerr (items separated by spaces) and terminate with a new line.
Definition print.h:243
#define ENDL
Definition print.h:57
static const double c
Definition relops.cc:10
class to temporarily redirect output to cout
Definition print.h:300
RAII class to redirect cout to a file or to /dev/null.
Definition print.h:252
#define N
Definition testconv.cc:37
Implements Mutex, MutexFair, Spinlock, ConditionVariable.