Bridge++  Ver. 2.0.2
GaugeConfig Class Reference

GaugeConfig class for file I/O of gauge configuration. More...

#include <gaugeConfig.h>

Inheritance diagram for GaugeConfig:
GaugeConfig_SF

Classes

class  DataSource
 
class  DataSource_Random
 
class  DataSource_Unit
 

Public Member Functions

 GaugeConfig (const string &type)
 
virtual ~GaugeConfig ()
 
void read (Field_G &U, const string &filename=string())
 
void write (Field_G &U, const string &filename=string())
 
void read_file (Field_G &U, const string &filename)
 
void write_file (Field_G &U, const string &filename)
 

Static Public Attributes

static const std::string class_name = "GaugeConfig"
 

Protected Attributes

Bridge::VerboseLevel m_vl
 
FieldIOm_fieldio
 
IO_Format::Formatm_format
 

Private Member Functions

 GaugeConfig (const GaugeConfig &)
 
GaugeConfigoperator= (const GaugeConfig &)
 

Private Attributes

DataSourcem_datasource
 

Detailed Description

GaugeConfig class for file I/O of gauge configuration.

This class family is used to setup and output the gauge configuration. This is the base class, which implements common functions, and read/write methods are implemented in subclasses. At present, cutting off the gauge field for each node and deliver it to the node is implemented in this class. It may be better to separate that to other class for general usage for other field objects. [28 Dec 2011 H.Matsufuru]

GaugeConfig class provides file I/O of gauge configuration. It provides an interface to underlying FieldIO class family;

The file format is specified by a string argument type to the constructor (in a somewhat similar manner as factory). Data layout is ILDG layout for most of the cases except for Fortran_JLQCD in which JLQCD layout is applied.

"NO_OUTPUT" is added to GaugeConfig::write_file() [22 Feb 2015 Y.Namekawa] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa] Config types "Unit" and "Random" are introduced to generate unit and random gauge configurations for cold and hot start, respectively. The methods are renamed to read/write. read_file/write_file are left for compatibility. these methods now take args of Field_G* type instead of Field*. [24 June 2016 T.Aoyama] "Null" config type is introduced that suppresses output. Specifying "NO_OUTPUT" for filename is also valid. [8 July 2016 T.Aoyama] "Null" renamed by "None" in compliance with yaml specifications. (kept for backward compatilibity) [21 November 2018 T.Aoyama]

Definition at line 80 of file gaugeConfig.h.

Constructor & Destructor Documentation

◆ GaugeConfig() [1/2]

GaugeConfig::GaugeConfig ( const string &  type)

Definition at line 61 of file gaugeConfig.cpp.

◆ ~GaugeConfig()

GaugeConfig::~GaugeConfig ( )
virtual

Definition at line 112 of file gaugeConfig.cpp.

◆ GaugeConfig() [2/2]

GaugeConfig::GaugeConfig ( const GaugeConfig )
private

Member Function Documentation

◆ operator=()

GaugeConfig& GaugeConfig::operator= ( const GaugeConfig )
private

◆ read()

void GaugeConfig::read ( Field_G U,
const string &  filename = string() 
)

Definition at line 121 of file gaugeConfig.cpp.

◆ read_file()

void GaugeConfig::read_file ( Field_G U,
const string &  filename 
)
inline

Definition at line 100 of file gaugeConfig.h.

◆ write()

void GaugeConfig::write ( Field_G U,
const string &  filename = string() 
)

Definition at line 137 of file gaugeConfig.cpp.

◆ write_file()

void GaugeConfig::write_file ( Field_G U,
const string &  filename 
)
inline

Definition at line 103 of file gaugeConfig.h.

Member Data Documentation

◆ class_name

const std::string GaugeConfig::class_name = "GaugeConfig"
static

Definition at line 83 of file gaugeConfig.h.

◆ m_datasource

DataSource* GaugeConfig::m_datasource
private

Definition at line 114 of file gaugeConfig.h.

◆ m_fieldio

FieldIO* GaugeConfig::m_fieldio
protected

Definition at line 108 of file gaugeConfig.h.

◆ m_format

IO_Format::Format* GaugeConfig::m_format
protected

Definition at line 109 of file gaugeConfig.h.

◆ m_vl

Bridge::VerboseLevel GaugeConfig::m_vl
protected

Definition at line 107 of file gaugeConfig.h.


The documentation for this class was generated from the following files: