|
HermesCommon
3.0
|
Vector used with MUMPS solver. More...
#include <vector.h>
Inheritance diagram for Hermes::Algebra::SimpleVector< Scalar >:Public Member Functions | |
| SimpleVector (unsigned int size) | |
| virtual void | alloc (unsigned int ndofs) |
| virtual void | free () |
| free the memory | |
| virtual Scalar | get (unsigned int idx) const |
| virtual void | extract (Scalar *v) const |
| virtual void | zero () |
| Zero the vector. | |
| virtual Vector< Scalar > * | change_sign () |
| Multiply by minus one. | |
| Vector< Scalar > * | duplicate () const |
| Duplicates a matrix (including allocation). | |
| virtual void | set (unsigned int idx, Scalar y) |
| virtual void | add (unsigned int idx, Scalar y) |
| virtual void | add (unsigned int n, unsigned int *idx, Scalar *y) |
| virtual Vector< Scalar > * | add_vector (Vector< Scalar > *vec) |
| Add a vector. | |
| virtual Vector< Scalar > * | add_vector (Scalar *vec) |
| Add a vector. | |
| virtual Vector< Scalar > * | subtract_vector (Vector< Scalar > *vec) |
| Subtract a vector. | |
| virtual Vector< Scalar > * | subtract_vector (Scalar *vec) |
| Subtract a vector. | |
| virtual Vector< Scalar > * | set_vector (Vector< Scalar > *vec) |
| Set values from a user-provided vector. | |
| virtual Vector< Scalar > * | set_vector (Scalar *vec) |
| Set values from a user-provided array. | |
| virtual void | export_to_file (const char *filename, const char *var_name, MatrixExportFormat fmt, char *number_format="%lf") |
| virtual void | import_from_file (const char *filename, const char *var_name, MatrixExportFormat fmt) |
| template<> | |
| void | add (unsigned int idx, double y) |
| template<> | |
| void | add (unsigned int idx, std::complex< double > y) |
Public Member Functions inherited from Hermes::Algebra::Vector< Scalar > | |
| Vector () | |
| Default constructor. | |
| Vector (unsigned int size) | |
| virtual void | finish () |
| finish the assembly of the vector | |
| unsigned int | get_size () const |
| Get vector length. | |
Public Member Functions inherited from Hermes::Mixins::Loggable | |
| Loggable (bool verbose_output=false, callbackFn verbose_callback=NULL, bool add_newline=true) | |
| void | set_file_output_only (bool onOff) |
| void | set_timestamps (bool onOff) |
| Sets the addition of a time stamp on each line in the log file. By default it is on. | |
| void | set_erase_on_beginning (bool onOff) |
| Sets the logFile being always erased before logging. | |
| void | set_logFile_name (const char *filename) |
| void | set_logFile_name (std::string filename) |
| void | info (const char *msg,...) const |
| void | info_if (bool cond, const char *msg,...) const |
| void | warn (const char *msg,...) const |
| void | warn_if (bool cond, const char *msg,...) const |
| void | error (const char *msg,...) const |
| void | error_if (bool cond, const char *msg,...) const |
| virtual void | set_verbose_output (bool to_set) |
| bool | get_verbose_output () const |
| Returns the current value of verbose_output;. | |
| virtual void | set_verbose_callback (callbackFn callback) |
| callbackFn | get_verbose_callback () const |
| Returns the current value of verbose_callback;. | |
Public Member Functions inherited from Hermes::Algebra::Mixins::MatrixRhsImportExport< Scalar > | |
| void | export_to_file (std::string filename, const char *var_name, Algebra::MatrixExportFormat fmt, char *number_format="%lf") |
| void | export_to_file (std::string filename, std::string var_name, Algebra::MatrixExportFormat fmt, char *number_format="%lf") |
| void | import_from_file (std::string filename, const char *var_name, Algebra::MatrixExportFormat fmt) |
| void | import_from_file (std::string filename, std::string var_name, Algebra::MatrixExportFormat fmt) |
Public Attributes | |
| Scalar * | v |
| Raw data. | |
Public Attributes inherited from Hermes::Mixins::Loggable | |
| char * | logFileName |
| Logfile name. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Hermes::Mixins::Loggable | |
| static void | set_static_logFile_name (const char *filename) |
| static void | set_static_logFile_name (std::string filename) |
Static Public Attributes inherited from Hermes::Mixins::Loggable | |
| static char * | staticLogFileName = nullptr |
Protected Member Functions inherited from Hermes::Mixins::Loggable | |
| void | hermes_fwrite (const void *ptr, size_t size, size_t nitems, FILE *stream) const |
| void | hermes_fread (void *ptr, size_t size, size_t nitems, FILE *stream) const |
Protected Attributes inherited from Hermes::Algebra::Vector< Scalar > | |
| unsigned int | size |
| size of vector | |
Vector used with MUMPS solver.
|
virtual |
update element on the specified position
| [in] | idx | - indices where to update |
| [in] | y | - value |
Implements Hermes::Algebra::Vector< Scalar >.
|
virtual |
update subset of the elements
| [in] | n | - number of positions to update |
| [in] | idx | - indices where to update |
| [in] | y | - values |
Implements Hermes::Algebra::Vector< Scalar >.
Definition at line 469 of file vector.cpp.
|
virtual |
allocate memory for storing ndofs elements
| [in] | ndofs | - number of elements of the vector |
Implements Hermes::Algebra::Vector< Scalar >.
Reimplemented in Hermes::Algebra::ParalutionVector< Scalar >.
Definition at line 417 of file vector.cpp.
Referenced by Hermes::Algebra::ParalutionVector< Scalar >::alloc(), and Hermes::Solvers::SimpleExternalSolver< Scalar >::solve().
|
virtual |
writing matrix.
| [in] | filename | obvious |
| [in] | var_name | name of variable (will be written to output file) |
| [in] | fmt | output file format |
| [in] | number_format | specifies the number format where possible |
Implements Hermes::Algebra::Mixins::MatrixRhsImportExport< Scalar >.
Definition at line 124 of file vector.cpp.
|
virtual |
Extract vector values into user-provided array.
| [out] | v | - array which will contain extracted values |
Implements Hermes::Algebra::Vector< Scalar >.
Definition at line 490 of file vector.cpp.
|
virtual |
Get the value from a position
| [in] | idx | - index which to obtain the value from |
Implements Hermes::Algebra::Vector< Scalar >.
Definition at line 476 of file vector.cpp.
|
virtual |
reading matrix
| [in] | filename | obvious |
| [in] | var_name | name of variable (will be searched for to output file) |
| [in] | fmt | input file format |
Reimplemented from Hermes::Algebra::Mixins::MatrixRhsImportExport< Scalar >.
Definition at line 261 of file vector.cpp.
|
virtual |
set the entry on a specified position
| [in] | idx | - indices where to update |
| [in] | y | - value |
Implements Hermes::Algebra::Vector< Scalar >.
Definition at line 447 of file vector.cpp.