stefan_boltzmann_melt.cc File Reference
#include <fenv.h>
#include "math.h"
#include <complex>
#include "generic.h"
#include "unsteady_heat.h"
#include "heat_transfer_and_melt_elements.h"
#include "temporary_stefan_boltzmann_elements.h"
#include "solid.h"
#include "constitutive.h"
#include "meshes/triangle_mesh.h"

Classes

class  StefanBoltzmannMeltElement< ELEMENT >
 
class  MyIntegral
 
class  StefanBoltzmannProblem< ELEMENT >
 Problem class. More...
 

Namespaces

 GlobalParameters
 Global parameters.
 

Functions

void GlobalParameters::get_source (const double &time, const Vector< double > &x, double &source)
 Source function. More...
 
void GlobalParameters::get_exact_u (const double &time, const Vector< double > &x, Vector< double > &u)
 Exact solution as a Vector. More...
 
double GlobalParameters::melt_flux (const double &t)
 
double GlobalParameters::radius (const double &t)
 Exact radius of inner circle. More...
 
double GlobalParameters::incoming_sb_inside (const double &t)
 Incoming sb radiation on inside. More...
 
double GlobalParameters::incoming_sb_outside (const double &t)
 Incoming sb radiation on outside. More...
 
int main (int argc, char **argv)
 Solve 2D problem. More...
 

Variables

double GlobalParameters::Lambda_sq =0.0
 Non-dim density for pseudo-solid. More...
 
double GlobalParameters::Nu =0.3
 Poisson's ratio for pseudo-solid. More...
 
ConstitutiveLawGlobalParameters::Constitutive_law_pt =0
 Pointer to constitutive law. More...
 
double GlobalParameters::Melt_temperature =0.8288627710
 Melt-temperature. More...
 
double GlobalParameters::R_hat =0.1
 Temporal variation in inner radius (for exact solution) More...
 
double GlobalParameters::V0 =1.0
 Coeff for (time-)constant variation of temperature in inner circle. More...
 
double GlobalParameters::V0_hat =0.5
 Coeff for time variation inner circle. More...
 

Function Documentation

◆ main()

int main ( int argc  ,
char **  argv 
)

Solve 2D problem.

1719 {
1720 
1721  // Store command line arguments
1722  CommandLineArgs::setup(argc,argv);
1723 
1724  // Define possible command line arguments and parse the ones that
1725  // were actually specified
1726 
1727  // Number of integration points for new integration scheme.
1728  // Use normal Gauss rule if not specified.
1731 
1732  // Output directory
1735 
1736  // Timestep
1737  double dt=0.05;
1739 
1740  // Max time
1741  double t_max=2.0;
1743 
1744  // No source terms
1746 
1747  // Target area
1750 
1751  // Parse command line
1753 
1754  // Doc what has actually been specified on the command line
1756 
1757 
1758  // Create generalised Hookean constitutive equations
1761 
1762 
1763  oomph_info << "Building/solving for GlobalParameters::Target_area = "
1764  << GlobalParameters::Target_area << std::endl;
1765 
1766  // Set up the problem with 2D six-node elements
1770  TPVDElement<2,3> > > >
1771  problem;
1772 
1773  // Initialise timestep -- also sets the weights for all timesteppers
1774  // in the problem.
1775  problem.initialise_dt(dt);
1776  problem.assign_initial_values_impulsive();
1777 
1778  //Output initial condition
1779  problem.doc_solution();
1780 
1781  // Timestepping loop
1782  while (problem.time_pt()->time()<=t_max)
1783  {
1784  // Take timestep
1785  problem.unsteady_newton_solve(dt);
1786 
1787  //Output solution
1788  problem.doc_solution();
1789  }
1790 
1791 } //end of main
Problem class.
Definition: stefan_boltzmann.cc:297
Definition: constitutive_laws.h:699
UnsteadyHeat upgraded to become projectable.
Definition: unsteady_heat_elements.h:699
Definition: pseudosolid_node_update_elements.h:58
Definition: solid_elements.h:1756
void setup(Time *time_pt)
Create all GeomObjects needed to define the cylinder and the flag.
Definition: turek_flag_non_fsi.cc:277
double Nu
Poisson's ratio for pseudo-solid.
Definition: stefan_boltzmann_melt.cc:182
ConstitutiveLaw * Constitutive_law_pt
Pointer to constitutive law.
Definition: stefan_boltzmann_melt.cc:185
unsigned Nintpt
Number of integration points for new integration scheme (if used)
Definition: stefan_boltzmann.cc:112
double Target_area
Target element size.
Definition: stefan_boltzmann.cc:133
string Directory
Output directory.
Definition: stefan_boltzmann.cc:109
void specify_command_line_flag(const std::string &command_line_flag, const std::string &doc)
Specify possible argument-free command line flag.
Definition: oomph_utilities.cc:451
void parse_and_assign(int argc, char *argv[], const bool &throw_on_unrecognised_args)
Definition: oomph_utilities.cc:760
void doc_specified_flags()
Document specified command line flags.
Definition: oomph_utilities.cc:610
OomphInfo oomph_info
Definition: oomph_definitions.cc:319
Constructor for SteadyAxisymAdvectionDiffusion problem
Definition: steady_axisym_advection_diffusion.cc:213

References GlobalParameters::Constitutive_law_pt, GlobalParameters::Directory, oomph::CommandLineArgs::doc_specified_flags(), GlobalParameters::Nintpt, GlobalParameters::Nu, oomph::oomph_info, oomph::CommandLineArgs::parse_and_assign(), problem, oomph::CommandLineArgs::setup(), oomph::CommandLineArgs::specify_command_line_flag(), and GlobalParameters::Target_area.