#include <MoFEM.hpp>
#include <BasicFiniteElements.hpp>
#include <FreeSurfaceOps.hpp>
Go to the source code of this file.
|
int | main (int argc, char *argv[]) |
|
◆ AssemblyBoundaryEleOp
◆ AssemblyDomainEleOp
◆ BoundaryEle
◆ BoundaryEleOp
◆ DomainEle
◆ DomainEleOp
◆ EntData
◆ OpBaseTimesScalarField
◆ OpDomainMassH
◆ OpDomainMassP
◆ OpDomainMassU
◆ OpDomainSourceH
◆ OpDomainSourceU
◆ OpMixScalarTimesDiv
◆ PostProcEle
◆ main()
int main |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
- Examples
- free_surface.cpp.
Definition at line 744 of file free_surface.cpp.
751 auto core_log = logging::core::get();
752 core_log->add_sink(LogManager::createSink(LogManager::getStrmWorld(),
"FS"));
753 LogManager::setLog(
"FS");
759 DMType dm_name =
"DMMOFEM";
#define CATCH_ERRORS
Catch errors.
#define CHKERR
Inline error check.
PetscErrorCode DMRegister_MoFEM(const char sname[])
Register MoFEM problem.
#define MOFEM_LOG_TAG(channel, tag)
Tag channel.
DeprecatedCoreInterface Interface
static MoFEMErrorCode Initialize(int *argc, char ***args, const char file[], const char help[])
Initializes the MoFEM database PETSc, MOAB and MPI.
static MoFEMErrorCode Finalize()
Checks for options to be called at the conclusion of the program.
Deprecated interface functions.
◆ a0
constexpr double a0 = 0.98 |
|
constexpr |
◆ BASE_DIM
constexpr int BASE_DIM = 1 |
|
constexpr |
◆ coord_type
◆ cut_off
◆ cylindrical
Initial value:
else
return 1.;
}
constexpr CoordinateTypes coord_type
select coordinate system <CARTESIAN, CYLINDRICAL>;
const double r
rate factor
- Examples
- free_surface.cpp.
Definition at line 123 of file free_surface.cpp.
◆ d_cut_off
◆ d_phase_function_h
◆ eps
constexpr double eps = 1e-12 |
|
constexpr |
◆ eta
◆ eta2
constexpr double eta2 = eta * eta |
|
constexpr |
◆ get_D
Initial value:
return t_D;
}
FTensor::Index< 'j', SPACE_DIM > j
FTensor::Index< 'k', SPACE_DIM > k
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'l', SPACE_DIM > l
- Examples
- free_surface.cpp.
Definition at line 188 of file free_surface.cpp.
◆ get_f
auto get_f = [](const double h) { return 4 * W * h * (h * h - 1); } |
◆ get_f_dh
auto get_f_dh = [](const double h) { return 4 * W * (3 * h * h - 1); } |
◆ get_M
auto get_M = [](auto h) { return get_M0(h); } |
◆ get_M0
auto get_M0 = [](auto h) { return md; } |
◆ get_M0_dh
auto get_M0_dh = [](auto h) { return 0; } |
◆ get_M2
◆ get_M2_dh
◆ get_M3
Initial value:= [](auto h_tmp) {
const double h3 = h2 *
h;
return md * (2 * h3 - 3 * h2 + 1);
else
return md * (-2 * h3 - 3 * h2 + 1);
}
- Examples
- free_surface.cpp.
Definition at line 167 of file free_surface.cpp.
◆ get_M3_dh
◆ get_M_dh
constexpr double h = 0.02 |
|
constexpr |
◆ help
◆ init_h
◆ integration_rule
Initial value:
}
static constexpr int approx_order
- Examples
- approx_sphere.cpp, eigen_elastic.cpp, free_surface.cpp, hcurl_check_approx_in_2d.cpp, hcurl_curl_operator.cpp, hdiv_divergence_operator.cpp, heat_equation.cpp, helmholtz.cpp, nonlinear_elastic.cpp, photon_diffusion.cpp, scalar_check_approximation.cpp, shallow_wave.cpp, and wave_equation.cpp.
Definition at line 119 of file free_surface.cpp.
◆ kappa
◆ kernel_eye
Initial value:= [](
double r,
double y, double) {
constexpr double y0 = 0.5;
constexpr double R = 0.4;
y -= y0;
const double d = std::sqrt(
r *
r + y * y);
return tanh((R -
d) / (
eta * std::sqrt(2)));
}
const Tensor1_Expr< const dTensor0< T, Dim, i >, typename promote< T, double >::V, Dim, i > d(const Tensor0< T * > &a, const Index< i, Dim > index, const Tensor1< int, Dim > &d_ijk, const Tensor1< double, Dim > &d_xyz)
- Examples
- free_surface.cpp.
Definition at line 204 of file free_surface.cpp.
◆ kernel_oscillation
Initial value:= [](
double r,
double y, double) {
constexpr double R = 0.0125;
constexpr
double A = R * 0.2;
const double theta = atan2(
r, y);
const double w = R +
A * cos(
n * theta);
const double d = std::sqrt(
r *
r + y * y);
return tanh((
w -
d) / (
eta * std::sqrt(2)));
}
- Examples
- free_surface.cpp.
Definition at line 194 of file free_surface.cpp.
◆ lambda
constexpr double lambda = 7.4 |
|
constexpr |
- Examples
- ElasticityMixedFormulation.hpp, NavierStokesElement.hpp, Remodeling.cpp, Remodeling.hpp, bernstein_bezier_generate_base.cpp, cell_forces.cpp, free_surface.cpp, navier_stokes.cpp, shallow_wave.cpp, simple_contact.cpp, simple_contact_thermal.cpp, and wavy_surface.cpp.
Definition at line 99 of file free_surface.cpp.
◆ md
constexpr double md = 1e-2 |
|
constexpr |
◆ mu_ave
constexpr double mu_ave = (mu_p + mu_m) / 2 |
|
constexpr |
◆ mu_diff
constexpr double mu_diff = (mu_p - mu_m) / 2 |
|
constexpr |
◆ mu_m
constexpr double mu_m = 0.0101 |
|
constexpr |
◆ mu_p
constexpr double mu_p = 0.000182 |
|
constexpr |
◆ my_max
auto my_max = [](const double x) { return (x - 1 + std::abs(x + 1)) / 2; } |
◆ my_min
auto my_min = [](const double x) { return (x + 1 - std::abs(x - 1)) / 2; } |
◆ phase_function
◆ rho_ave
◆ rho_diff
◆ rho_m
constexpr double rho_m = 0.998 |
|
constexpr |
◆ rho_p
constexpr double rho_p = 0.0012 |
|
constexpr |
◆ SPACE_DIM
constexpr int SPACE_DIM = 2 |
|
constexpr |
◆ t_kd
- Examples
- EshelbianOperators.cpp, NeoHookean.hpp, PlasticOps.hpp, PlasticOpsGeneric.hpp, PlasticOpsLargeStrains.hpp, PlasticOpsSmallStrains.hpp, approx_sphere.cpp, contact.cpp, eigen_elastic.cpp, elasticity.cpp, free_surface.cpp, matrix_function.cpp, mortar_contact_thermal.cpp, nonlinear_elastic.cpp, plastic.cpp, shallow_wave.cpp, simple_contact_thermal.cpp, and thermo_plastic.cpp.
Definition at line 91 of file free_surface.cpp.
◆ tol
constexpr double tol = std::numeric_limits<float>::epsilon() |
|
constexpr |
◆ U_FIELD_DIM
constexpr double W = 0.25 |
|
constexpr |