ViennaSHE 1.3.0
Free open-source semiconductor device simulator using spherical harmonics expansions techniques.
rescaling.hpp File Reference

Rescales the linear system such that unknowns are approximately the same order of magnitude. More...

#include <iostream>
#include <math.h>
#include <cfloat>
#include "viennashe/config.hpp"
#include "viennashe/physics/constants.hpp"
#include "viennashe/she/she_quantity.hpp"
#include "viennagrid/mesh/mesh.hpp"

Go to the source code of this file.

Namespaces

namespace  viennashe
 The main ViennaSHE namespace. All functionality resides inside this namespace.
 
namespace  viennashe::she
 

Functions

template<typename DeviceType , typename SHEQuantity , typename VectorType >
void viennashe::she::setup_unknown_scaling (DeviceType const &device, viennashe::config const &conf, SHEQuantity &quan, VectorType &scaling_vector)
 Initializes the unknown scaling. Returns a vector holding the scaling factors. More...
 
template<typename MatrixType , typename VectorType >
void viennashe::she::rescale_system (MatrixType &system_matrix, VectorType const &scaling)
 Scales the system matrix (right-preconditioner) with respect to the rescaled unknowns. More...
 

Detailed Description

Rescales the linear system such that unknowns are approximately the same order of magnitude.

Definition in file rescaling.hpp.