Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
main.cpp File Reference
#include <iostream>
#include <sys/time.h>
#include "vlsv_writer.h"
#include "vlsv_reader_parallel.h"
#include "../../sysboundary/ionosphere.h"
#include "../../object_wrapper.h"
#include "../../datareduction/datareductionoperator.h"
#include "../../iowrite.h"
#include "../../ioread.h"
#include "../../velocity_mesh_parameters.h"
#include "../../logger.h"
#include "../../open_bucket_hashtable.h"
#include "../../sysboundary/ionosphere_tables.h"
#include <Eigen/Sparse>
#include <Eigen/Geometry>
Include dependency graph for main.cpp:

Go to the source code of this file.

Macros

#define NODE_CONSTRAINT_REDUCTION   1
#define ELEMENT_CONSTRAINT_REDUCTION   1

Functions

ObjectWrappergetObjectWrapper ()
const std::vector< CellID > & getLocalCells ()
void deallocateRemoteCellBlocks (dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > &)
void updateRemoteVelocityBlockLists (dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > &, unsigned int, unsigned int)
void recalculateLocalCellsCache (const dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > &)
Eigen::Vector3d getElementBarycentre (SphericalTriGrid &grid, uint32_t el)
Eigen::Vector3d getElementCircumcentre (SphericalTriGrid &grid, uint el)
Eigen::Vector3d getElementNormal (SphericalTriGrid &grid, uint32_t el)
Eigen::Vector3d getCommonEdgeMidpoint (SphericalTriGrid &grid, uint32_t el1, uint32_t el2)
Real getDualPolygonArea (SphericalTriGrid &grid, uint gridNode)
Real getAreaInDualPolygon (SphericalTriGrid &grid, uint gridNode, uint gridElem)
Real altcos (Real sza)
void assignConductivityTensor (std::vector< SphericalTriGrid::Node > &nodes, Real sigmaP, Real sigmaH)
void assignConductivityTensorFromLoadedData (std::vector< SphericalTriGrid::Node > &nodes)
std::tuple< uint, int > getEdgeIndexOrientation (uint32_t a, uint32_t b)
Eigen::Vector3d whitneyInterpolate (SphericalTriGrid &grid, uint32_t el, std::vector< Real > edgeValue)
std::tuple< Eigen::Vector3d, Eigen::Vector3d > connectingSegmentLengths (SphericalTriGrid &grid, uint32_t el1, uint32_t el2)
Eigen::Vector3d interpolateEdgeToNode (SphericalTriGrid &grid, uint32_t n, std::vector< Real > edgeValue)
int main (int argc, char **argv)

Variables

Logger logFile
Logger diagnostic
ObjectWrapper objectWrapper
std::vector< CellIDlocalCellDummy
std::function< Real(Real)> c4P
std::function< Real(Real)> c5P
std::function< Real(Real)> c4H
std::function< Real(Real)> c5H
std::vector< RealedgeLength
OpenBucketHashtable< uint64_t, uint > edgeIndex

Macro Definition Documentation

◆ ELEMENT_CONSTRAINT_REDUCTION

#define ELEMENT_CONSTRAINT_REDUCTION   1

Definition at line 19 of file main.cpp.

◆ NODE_CONSTRAINT_REDUCTION

#define NODE_CONSTRAINT_REDUCTION   1

Definition at line 18 of file main.cpp.

Function Documentation

◆ altcos()

Real altcos ( Real sza)

Definition at line 310 of file main.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assignConductivityTensor()

void assignConductivityTensor ( std::vector< SphericalTriGrid::Node > & nodes,
Real sigmaP,
Real sigmaH )

Definition at line 322 of file main.cpp.

Here is the caller graph for this function:

◆ assignConductivityTensorFromLoadedData()

void assignConductivityTensorFromLoadedData ( std::vector< SphericalTriGrid::Node > & nodes)

Definition at line 347 of file main.cpp.

Here is the caller graph for this function:

◆ connectingSegmentLengths()

std::tuple< Eigen::Vector3d, Eigen::Vector3d > connectingSegmentLengths ( SphericalTriGrid & grid,
uint32_t el1,
uint32_t el2 )

Definition at line 455 of file main.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deallocateRemoteCellBlocks()

void deallocateRemoteCellBlocks ( dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > & )

Definition at line 40 of file main.cpp.

◆ getAreaInDualPolygon()

Real getAreaInDualPolygon ( SphericalTriGrid & grid,
uint gridNode,
uint gridElem )

Definition at line 234 of file main.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCommonEdgeMidpoint()

Eigen::Vector3d getCommonEdgeMidpoint ( SphericalTriGrid & grid,
uint32_t el1,
uint32_t el2 )

Definition at line 162 of file main.cpp.

Here is the caller graph for this function:

◆ getDualPolygonArea()

Real getDualPolygonArea ( SphericalTriGrid & grid,
uint gridNode )

Definition at line 192 of file main.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getEdgeIndexOrientation()

std::tuple< uint, int > getEdgeIndexOrientation ( uint32_t a,
uint32_t b )

Definition at line 378 of file main.cpp.

Here is the caller graph for this function:

◆ getElementBarycentre()

Eigen::Vector3d getElementBarycentre ( SphericalTriGrid & grid,
uint32_t el )

Definition at line 48 of file main.cpp.

Here is the caller graph for this function:

◆ getElementCircumcentre()

Eigen::Vector3d getElementCircumcentre ( SphericalTriGrid & grid,
uint el )

Definition at line 64 of file main.cpp.

Here is the caller graph for this function:

◆ getElementNormal()

Eigen::Vector3d getElementNormal ( SphericalTriGrid & grid,
uint32_t el )

Definition at line 135 of file main.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLocalCells()

const std::vector< CellID > & getLocalCells ( )

Definition at line 39 of file main.cpp.

◆ getObjectWrapper()

ObjectWrapper & getObjectWrapper ( )

Definition at line 33 of file main.cpp.

◆ interpolateEdgeToNode()

Eigen::Vector3d interpolateEdgeToNode ( SphericalTriGrid & grid,
uint32_t n,
std::vector< Real > edgeValue )

Definition at line 507 of file main.cpp.

Here is the call graph for this function:

◆ main()

int main ( int argc,
char ** argv )

Definition at line 582 of file main.cpp.

Here is the call graph for this function:

◆ recalculateLocalCellsCache()

void recalculateLocalCellsCache ( const dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > & )

Definition at line 42 of file main.cpp.

◆ updateRemoteVelocityBlockLists()

void updateRemoteVelocityBlockLists ( dccrg::Dccrg< spatial_cell::SpatialCell, dccrg::Cartesian_Geometry, std::tuple<>, std::tuple<> > & ,
unsigned int ,
unsigned int  )

Definition at line 41 of file main.cpp.

◆ whitneyInterpolate()

Eigen::Vector3d whitneyInterpolate ( SphericalTriGrid & grid,
uint32_t el,
std::vector< Real > edgeValue )

Definition at line 409 of file main.cpp.

Here is the call graph for this function:

Variable Documentation

◆ c4H

std::function<Real(Real)> c4H
Initial value:
= [](Real MLT) {
MLT = fmod(MLT, 24.);
int sector = MLT;
Real interpolant = MLT - sector;
return (1.-interpolant)*c4H_values[sector] + interpolant * c4H_values[(sector+1)%24];
}
float Real
Definition definitions.h:41
static const Real c4H_values[]

Definition at line 287 of file main.cpp.

◆ c4P

std::function<Real(Real)> c4P
Initial value:
= [](Real MLT) {
MLT = fmod(MLT, 24.);
int sector = MLT;
Real interpolant = MLT - sector;
return (1.-interpolant)*c4P_values[sector] + interpolant * c4P_values[(sector+1)%24];
}
static const Real c4P_values[]

Definition at line 273 of file main.cpp.

◆ c5H

std::function<Real(Real)> c5H
Initial value:
= [](Real MLT) {
MLT = fmod(MLT, 24.);
int sector = MLT;
Real interpolant = MLT - sector;
return (1.-interpolant)*c5H_values[sector] + interpolant * c5H_values[(sector+1)%24];
}
static const Real c5H_values[]

Definition at line 295 of file main.cpp.

◆ c5P

std::function<Real(Real)> c5P
Initial value:
= [](Real MLT) {
MLT = fmod(MLT, 24.);
int sector = MLT;
Real interpolant = MLT - sector;
return (1.-interpolant)*c5P_values[sector] + interpolant * c5P_values[(sector+1)%24];
}
static const Real c5P_values[]

Definition at line 280 of file main.cpp.

◆ diagnostic

Logger diagnostic

Definition at line 25 of file main.cpp.

◆ edgeIndex

OpenBucketHashtable<uint64_t, uint> edgeIndex

Definition at line 375 of file main.cpp.

◆ edgeLength

std::vector<Real> edgeLength

Definition at line 374 of file main.cpp.

◆ localCellDummy

std::vector<CellID> localCellDummy

Definition at line 38 of file main.cpp.

◆ logFile

Logger logFile

Definition at line 25 of file main.cpp.

◆ objectWrapper

ObjectWrapper objectWrapper

Definition at line 32 of file main.cpp.