User-defined Plugin: Pure Solidification
pfm_solidification_config.h
Go to the documentation of this file.
1
10// //
11// P A N P H A S E F I E L D //
12// //
13// Version 2021 //
14// CompuTherm, LLC //
15// Copyright, 2000-2021 //
16// //
17// www.computherm.com //
18// //
20
21#pragma once
22
23// C++ libraries
24#include <iostream>
25#include <iomanip> // In order to format the output
26#include <stdio.h>
27#include <stdlib.h>
28#include <math.h>
29#ifdef WIN32
30#include <direct.h>
31#endif // WIN32
32#include <sys/stat.h> // for mkdir function
33#include <time.h>
34#include <string.h>
35#include <vector>
36#include <ctime> // timer for cpp routine
37#include <map>
38#include <set>
39#include "omp.h"
40
41// PFM Utility
42#include "tensors.h"
43#include "temperature.h"
44#include "pfm_writers.h"
45#include "atomic_weight.h"
46
47// SDK API related
48#include <pfm_sdk.h>
49#include <PanPhaseFieldArguments.h>
50#include "Pan_Global.h"
51#include "Pan_Global_Def.h"
52#include "PanEngineX.h"
53
57#ifndef Sqr
58#define Sqr(x) ( (x)*(x) ) // square of x
59#endif
60
64#ifndef PDN_BSZ // size of array used chemical mobility
65#define PDN_BSZ 32
66#endif
67
68#ifndef DISABLE_OPTIMIZE_OMP_LOOP // Disable optimizing omp loop by rearranging dimensions
69//#define DISABLE_OPTIMIZE_OMP_LOOP true
70#endif
71
72// -------------------------------------------------- //
73// Macros to optional features in console mode //
74// -------------------------------------------------- //
75
79#ifndef ENABLE_PANDAT_RESULT_TABLE
80#define ENABLE_PANDAT_RESULT_TABLE true
81#endif
82
86#ifndef ENABLE_PANDAT_PROGRESS_MESSAGE
87#define ENABLE_PANDAT_PROGRESS_MESSAGE true
88#endif
89
93#ifndef ENABLE_PERFORMANCE_LOG
94#define ENABLE_PERFORMANCE_LOG true
95#endif