Commits (16)
......@@ -72,3 +72,9 @@ Zhang Ning <zhangning737@gmail.com> Rooney <43574869+zhangning737@users.noreply.
Zhang Ning <zhangning737@gmail.com> zhangning737 <zhangning737@gmail.com>
dependabot[bot] <no-email> dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
dependabot[bot] <no-email> dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Robert Habel <Robert.Habel@student.tu-freiberg.de> Robert Habel <robert.habel@student.tu-freiberg.de>
Linda Günther <linda.guenther@student.tu-freiberg.de> Linda Günther <Linda.Guenther@student.tu-freiberg.de>
Sophia Einspänner <sophia.einspaenner@student.tu-freiberg.de> Sophia Einspänner <Sophia.Einspaenner@student.tu-freiberg.de>
Jakob Randow <jakob.randow@web.de> jrandow <jakob.randow@htwk-leipzig.de>
Jakob Randow <jakob.randow@web.de> jrandow <jakob.randow@web.de>
Olaf Kolditz <olaf.kolditz@ufz.de>
......@@ -10,9 +10,9 @@ Packages = Hugo
BasedOnStyles = Vale, write-good, ogs
Vale.Spelling = None
write-good.ThereIs = suggestion
write-good.Passive = suggestion
write-good.TooWordy = suggestion
write-good.Weasel = suggestion
write-good.Passive = None
write-good.TooWordy = None
write-good.Weasel = None
write-good.E-Prime = None
TokenIgnores = \
......
......@@ -10,8 +10,11 @@ license: BSD-3-Clause
doi: 10.5281/zenodo.591265
# The following needs to be adapted on releases:
version: "6.4.3"
date-released: "2022-04-01"
date-released: "2022-09-19"
identifiers:
- type: doi
description: "Zenodo DOI for 6.4.3"
value: 10.5281/zenodo.7092676
- type: doi
description: "Zenodo DOI for 6.4.2"
value: 10.5281/zenodo.6405711
......
......@@ -47,16 +47,23 @@ public:
{
}
// TODO also implement derivative for Jacobian in Newton scheme.
void assemble(std::size_t const id,
NumLib::LocalToGlobalIndexMap const& dof_table_boundary,
double const t, std::vector<GlobalVector*> const& /*x*/,
int const /*process_id*/, GlobalMatrix& K, GlobalVector& b,
GlobalMatrix* /*Jac*/) override
double const t, std::vector<GlobalVector*> const& xs,
int const process_id, GlobalMatrix& K, GlobalVector& b,
GlobalMatrix* Jac) override
{
_local_K.setZero();
_local_rhs.setZero();
auto& x = *xs[process_id];
auto const indices = NumLib::getIndices(id, dof_table_boundary);
auto const local_x = x.get(indices);
auto const u =
MathLib::toVector<Eigen::Matrix<double, ShapeFunction::NPOINTS, 1>>(
local_x, ShapeFunction::NPOINTS);
unsigned const n_integration_points =
Base::_integration_method.getNumberOfPoints();
......@@ -86,19 +93,35 @@ public:
integral_measure = (*_data.integral_measure)(t, position)[0];
}
// flux = alpha * ( u_0 - u )
// adding a alpha term to the diagonal of the stiffness matrix
// and a alpha * u_0 term to the rhs vector
_local_K.diagonal().noalias() +=
N * alpha.dot(N) * w * integral_measure;
_local_rhs.noalias() +=
N * alpha.dot(N) * u_0.dot(N) * w * integral_measure;
double const a = alpha.dot(N) * w * integral_measure;
// The local K matrix is used for both, the Newton and Picard
// methods.
_local_K.noalias() += N.transpose() * N * a;
if (Jac != nullptr)
{
_local_rhs.noalias() -= N.transpose() * (u - u_0).dot(N) * a;
}
else
{
_local_rhs.noalias() += N.transpose() * (u_0.dot(N) * a);
}
}
auto const indices = NumLib::getIndices(id, dof_table_boundary);
K.add(NumLib::LocalToGlobalIndexMap::RowColumnIndices(indices, indices),
_local_K);
b.add(indices, _local_rhs);
if (Jac != nullptr)
{
Jac->add(NumLib::LocalToGlobalIndexMap::RowColumnIndices(indices,
indices),
_local_K);
}
else
{
K.add(NumLib::LocalToGlobalIndexMap::RowColumnIndices(indices,
indices),
_local_K);
}
}
private:
......
......@@ -2,6 +2,8 @@ if (NOT OGS_USE_MPI)
OgsTest(PROJECTFILE Parabolic/T/1D_freezing_column_Stefan/Stefan_problem.prj RUNTIME 2)
OgsTest(PROJECTFILE Parabolic/T/1D_freezing_column_Stefan/Stefan_problem_homogen.prj RUNTIME 1)
OgsTest(PROJECTFILE Parabolic/T/2D_freezing_disk/circle_disk.prj RUNTIME 2)
OgsTest(PROJECTFILE Parabolic/T/2D_Robin/square_1e4_robin.prj RUNTIME 1)
OgsTest(PROJECTFILE Parabolic/T/2D_Robin/square_1e4_robin_newton.xml RUNTIME 1)
endif()
AddTest(
......@@ -128,25 +130,31 @@ AddTest(
REQUIREMENTS OGS_USE_MPI
)
# SQUARE 1x1 HEAT CONDUCTION TEST -- AXIALLY SYMMETRIC
# test results are compared to 3D simulation on a wedge-shaped domain
# The results were compared to an analytical solution (method of manufactured
# solutions). The vtkdiff comparison is against the numerical solution.
AddTest(
NAME 2D_HeatConduction_axi
PATH Parabolic/T/2D_axially_symmetric
EXECUTABLE ogs
EXECUTABLE_ARGS square_1e2_axi.prj
TESTER vtkdiff
DIFF_DATA
wedge_1e2_axi_ang_0.02_t_2s_extracted_surface.vtu square_1e2_axi_ts_2_t_2.000000.vtu temperature temperature 1.7e-5 1e-5
wedge_1e2_axi_ang_0.02_t_2s_extracted_surface.vtu square_1e2_axi_ts_2_t_2.000000.vtu heat_flux heat_flux 1.7e-5 1e-5
NAME 2D_HeatConduction_axi
PATH Parabolic/T/2D_axially_symmetric
EXECUTABLE ogs
EXECUTABLE_ARGS square_1e2_axi.prj
TESTER vtkdiff
DIFF_DATA
square_1e2_axi_ts_10_t_1.000000.vtu square_1e2_axi_ts_10_t_1.000000.vtu temperature temperature 2e-15 0
square_1e2_axi_ts_10_t_1.000000.vtu square_1e2_axi_ts_10_t_1.000000.vtu heat_flux heat_flux 1e-14 0
REQUIREMENTS NOT OGS_USE_MPI
)
# WEDGE 1x1 HEAT CONDUCTION TEST -- same setup as above test but in cartesian coordinates
AddTest(
NAME 2D_HeatConduction_wedge
PATH Parabolic/T/2D_axially_symmetric
EXECUTABLE ogs
EXECUTABLE_ARGS wedge_1e2_axi_ang_0.02.prj
TESTER vtkdiff
DIFF_DATA
wedge_ang_0.02_ts_10_t_1.000000.vtu wedge_ang_0.02_ts_10_t_1.000000.vtu temperature temperature 2e-14 0
wedge_ang_0.02_ts_10_t_1.000000.vtu wedge_ang_0.02_ts_10_t_1.000000.vtu heat_flux heat_flux 1e-13 0
REQUIREMENTS NOT OGS_USE_MPI
)
# # WEDGE 1x1 HEATCONDUCTION TEST -- computes reference results for the above test
# AddTest(
# NAME 2D_HeatConduction_wedge
# PATH Parabolic/T/2D_axially_symmetric
# EXECUTABLE ogs
# EXECUTABLE_ARGS wedge_1e2_axi_ang_0.02.prj
# )
# The 25 BHE array benchmark
# test results are compared to 2D simulation result
......
......@@ -277,7 +277,7 @@ AddTest(
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
expected_square_1e2_UC_late_ts_10_t_1000.000000.vtu square_1e2_UC_late_ts_10_t_1000.000000.vtu displacement displacement 1e-13 1e-16
expected_square_1e2_UC_late_ts_10_t_1000.000000.vtu square_1e2_UC_late_ts_10_t_1000.000000.vtu pressure pressure 1e-13 1e-16
expected_square_1e2_UC_late_ts_10_t_1000.000000.vtu square_1e2_UC_late_ts_10_t_1000.000000.vtu pressure pressure 2e-13 1e-16
)
AddTest(
......
......@@ -336,8 +336,9 @@ AddTest(
wedge_1x1x1_1e3_prism_complete_surface_specific_flux_t_1.000000.vtu wedge_1e3_surfaceflux_wedge_1x1x1_1e3_prism_complete_surface_ts_1_t_1.000000.vtu specific_flux specific_flux 2e-14 0
)
# SQUARE 1x1 GROUNDWATER FLOW TEST -- AXIALLY SYMMETRIC
# test results are compared to 3D simulation on a wedge-shaped domain
# SQUARE 1x1 GROUNDWATER FLOW TEST -- AXIALLY SYMMETRIC, 1e2
# The results were compared to an analytical solution (method of manufactured
# solutions). The vtkdiff comparison is against the numerical solution.
AddTest(
NAME SteadyStateDiffusion_square_1x1_1e2_axi
PATH Elliptic/square_1x1_SteadyStateDiffusion
......@@ -346,18 +347,23 @@ AddTest(
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
wedge-1e2-ang-0.02-surface.vtu square_1e2_axi_ts_1_t_1.000000.vtu temperature temperature 1.6e-5 1e-5
square_1e2_axi_ts_1_t_1.000000.vtu square_1e2_axi_ts_1_t_1.000000.vtu temperature temperature 2e-15 0
)
# WEDGE 1x1 GROUNDWATER FLOW TEST -- same setup as above test but in cartesian coordinates
AddTest(
NAME SteadyStateDiffusion_wedge_1e2_ang_0.02
PATH Elliptic/square_1x1_SteadyStateDiffusion
EXECUTABLE ogs
EXECUTABLE_ARGS wedge_1e2_axi_ang_0.02.prj
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
wedge_1e2_ang_0.02_ts_1_t_1.000000.vtu wedge_1e2_ang_0.02_ts_1_t_1.000000.vtu temperature temperature 2e-14 0
)
# # WEDGE 1x1 GROUNDWATER FLOW TEST -- computes reference results for the above test
# AddTest(
# NAME SteadyStateDiffusion_wedge_1e2_ang_0.02
# PATH Elliptic/square_1x1_SteadyStateDiffusion
# EXECUTABLE ogs
# EXECUTABLE_ARGS wedge_1e2_axi_ang_0.02.prj
# )
# SQUARE 1x1 GROUNDWATER FLOW TEST -- AXIALLY SYMMETRIC
# test results are compared to 3D simulation on a wedge-shaped domain
# SQUARE 1x1 GROUNDWATER FLOW TEST -- AXIALLY SYMMETRIC, 1e4
# The results were compared to an analytical solution (method of manufactured
# solutions). The vtkdiff comparison is against the numerical solution.
AddTest(
NAME SteadyStateDiffusion_square_1x1_1e4_axi_ang_0.02
PATH Elliptic/square_1x1_SteadyStateDiffusion
......@@ -366,15 +372,19 @@ AddTest(
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
wedge-1e4-ang-0.02-surface.vtu square_1e4_axi_ts_1_t_1.000000.vtu temperature temperature 1.6e-5 1e-5
square_1e4_axi_ts_1_t_1.000000.vtu square_1e4_axi_ts_1_t_1.000000.vtu temperature temperature 2e-14 0
)
# WEDGE 1x1 GROUNDWATER FLOW TEST -- same setup as above test but in cartesian coordinates
AddTest(
NAME SteadyStateDiffusion_wedge_1e4_ang_0.02
PATH Elliptic/square_1x1_SteadyStateDiffusion
EXECUTABLE ogs
EXECUTABLE_ARGS wedge_1e4_axi_ang_0.02.prj
TESTER vtkdiff
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
wedge_1e4_axi_ang_0.02_ts_1_t_1.000000.vtu wedge_1e4_axi_ang_0.02_ts_1_t_1.000000.vtu temperature temperature 2e-14 0
)
# # WEDGE 1x1 GROUNDWATER FLOW TEST -- computes reference results for the above test
# AddTest(
# NAME SteadyStateDiffusion_wedge_1e4_ang_0.02
# PATH Elliptic/square_1x1_SteadyStateDiffusion
# EXECUTABLE ogs
# EXECUTABLE_ARGS wedge_1e4_axi_ang_0.02.prj
# )
# MPI groundwater flow tests
AddTest(
......
......@@ -44,13 +44,20 @@ AddTest(
inert-wedge-extracted-surface-t-1s.vtu tes_inert_axi_ts_4_t_1.000000.vtu temperature temperature 1e-12 2e-9
inert-wedge-extracted-surface-t-1s.vtu tes_inert_axi_ts_4_t_1.000000.vtu v_mass_frac v_mass_frac 1e-12 2e-9
)
# # WEDGE 1x1 TES TEST -- computes reference results for the above test
# AddTest(
# NAME TES_inert_wedge
# PATH Parabolic/TES/2D
# EXECUTABLE ogs
# EXECUTABLE_ARGS tes-inert-wedge.prj
# )
# WEDGE 1x1 TES TEST -- computes reference results for the above test
AddTest(
NAME TES_inert_wedge
PATH Parabolic/TES/2D
EXECUTABLE ogs
EXECUTABLE_ARGS tes-inert-wedge.prj
TESTER vtkdiff
RUNTIME 90
REQUIREMENTS NOT OGS_USE_MPI
DIFF_DATA
tes_inert_wedge_ts_4_t_1.000000.vtu tes_inert_wedge_ts_4_t_1.000000.vtu pressure pressure 1e-12 2e-9
tes_inert_wedge_ts_4_t_1.000000.vtu tes_inert_wedge_ts_4_t_1.000000.vtu temperature temperature 1e-12 2e-9
tes_inert_wedge_ts_4_t_1.000000.vtu tes_inert_wedge_ts_4_t_1.000000.vtu v_mass_frac v_mass_frac 1e-12 2e-9
)
# For PETSc/MPI
AddTest(
......
......@@ -16,7 +16,7 @@
#include "BaseLib/DynamicSpan.h"
#include "MathLib/KelvinVector.h"
#include "MathLib/LinAlg/Eigen/EigenMapTools.h"
#include "TransposeInPlace.h"
namespace ProcessLib
{
......@@ -65,17 +65,25 @@ std::vector<double> const& getIntegrationPointKelvinVectorData(
return cache;
}
//! Overload without \c cache argument.
//!
//! \note This function returns the data in transposed storage order compared to
//! the overloads that have a \c cache argument.
template <int DisplacementDim, typename IntegrationPointDataVector,
typename MemberType>
std::vector<double> getIntegrationPointKelvinVectorData(
IntegrationPointDataVector const& ip_data_vector, MemberType member)
{
std::vector<double> ip_kelvin_vector_values;
getIntegrationPointKelvinVectorData<DisplacementDim>(
ip_data_vector, member, ip_kelvin_vector_values);
constexpr int kelvin_vector_size =
MathLib::KelvinVector::kelvin_vector_dimensions(DisplacementDim);
return ip_kelvin_vector_values;
return transposeInPlace<kelvin_vector_size>(
[&](std::vector<double>& values)
{
return getIntegrationPointKelvinVectorData<DisplacementDim>(
ip_data_vector, member, values);
;
});
}
template <int DisplacementDim, typename IntegrationPointDataVector,
......@@ -207,9 +215,9 @@ std::vector<double> getIntegrationPointDataMaterialStateVariables(
std::vector<double> result;
result.reserve(ip_data_vector.size() * n_components);
for (auto& ip_data_vector : ip_data_vector)
for (auto& ip_data : ip_data_vector)
{
auto const values_span = get_values_span(*(ip_data_vector.*member));
auto const values_span = get_values_span(*(ip_data.*member));
assert(values_span.size() == static_cast<std::size_t>(n_components));
result.insert(end(result), values_span.begin(), values_span.end());
......@@ -230,7 +238,7 @@ std::size_t setIntegrationPointDataMaterialStateVariables(
auto const n_integration_points = ip_data_vector.size();
std::size_t position = 0;
for (auto& ip_data : ip_data_vector)
for (auto const& ip_data : ip_data_vector)
{
auto const values_span = get_values_span(*(ip_data.*member));
std::copy_n(values + position, values_span.size(), values_span.begin());
......
......@@ -85,14 +85,14 @@
</linear_solvers>
<parameters>
<parameter>
<name>T0</name>
<type>Constant</type>
<value>0</value>
<name>solution</name>
<type>Function</type>
<expression>sin(2*pi*y) * x^2</expression>
</parameter>
<parameter>
<name>heat_flux_bottom</name>
<type>Constant</type>
<value>1</value>
<name>dsolution_dy</name>
<type>Function</type>
<expression>-2*pi * cos(2*pi*y) * x^2</expression>
</parameter>
<parameter>
<name>heat_transfer_coefficient</name>
......@@ -101,8 +101,13 @@
</parameter>
<parameter>
<name>ambient_temperature</name>
<type>Constant</type>
<value>0</value>
<type>Function</type>
<expression>3 * sin(2*pi*y)</expression>
</parameter>
<parameter>
<name>source_term</name>
<type>Function</type>
<expression>4 * sin(2*pi*y) * (pi^2 * x^2 - 1)</expression>
</parameter>
</parameters>
<process_variables>
......@@ -110,13 +115,13 @@
<name>temperature</name>
<components>1</components>
<order>1</order>
<initial_condition>T0</initial_condition>
<initial_condition>solution</initial_condition>
<boundary_conditions>
<boundary_condition>
<geometrical_set>geometry</geometrical_set>
<geometry>bottom</geometry>
<type>Neumann</type>
<parameter>heat_flux_bottom</parameter>
<parameter>dsolution_dy</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>geometry</geometrical_set>
......@@ -132,6 +137,13 @@
<u_0>ambient_temperature</u_0>
</boundary_condition>
</boundary_conditions>
<source_terms>
<source_term>
<mesh>square_1x1_quad_1e2</mesh>
<type>Volumetric</type>
<parameter>source_term</parameter>
</source_term>
</source_terms>
</process_variable>
</process_variables>
</OpenGeoSysProject>
<?xml version="1.0"?>
<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64" compressor="vtkZLibDataCompressor">
<UnstructuredGrid>
<FieldData>
<DataArray type="Int8" Name="OGS_VERSION" NumberOfTuples="27" format="appended" RangeMin="45" RangeMax="121" offset="0" />
</FieldData>
<Piece NumberOfPoints="121" NumberOfCells="100" >
<PointData>
<DataArray type="Float64" Name="D1_left_bottom_N1_right" format="appended" RangeMin="1" RangeMax="1.6753144833" offset="92" />
<DataArray type="Float64" Name="Linear_1_to_minus1" format="appended" RangeMin="-1" RangeMax="1" offset="1236" />
<DataArray type="UInt64" Name="bulk_node_ids" format="appended" RangeMin="0" RangeMax="120" offset="1364" />
<DataArray type="Float64" Name="temperature" format="appended" RangeMin="-0.9512008155" RangeMax="0.93724397272" offset="1676" />
<DataArray type="Float64" Name="v" NumberOfComponents="2" format="appended" RangeMin="0.0008661429344" RangeMax="5.8792463601" offset="2964" />
</PointData>
<CellData>
<DataArray type="Int32" Name="MaterialIDs" format="appended" RangeMin="0" RangeMax="0" offset="5508" />
<DataArray type="UInt64" Name="bulk_element_ids" format="appended" RangeMin="0" RangeMax="99" offset="5572" />
</CellData>
<Points>
<DataArray type="Float64" Name="Points" NumberOfComponents="3" format="appended" RangeMin="0" RangeMax="1.4142135624" offset="5852" />
</Points>
<Cells>
<DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="6388" />
<DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="7112" />
<DataArray type="UInt8" Name="types" format="appended" RangeMin="" RangeMax="" offset="7420" />
</Cells>
</Piece>
</UnstructuredGrid>
<AppendedData encoding="base64">
_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eF5jYBgFgwkAAAGQAAE=AQAAAAAAAAAAgAAAAAAAACADAAAAAAAArwAAAAAAAAA=eF4txdciAgAAAMCQWSFbJCuzsjNDiuyMyo7y///gwd3LBQL/WtzqNgfd7g53usvd7nHIYUfc6z73O+oBD3rIwx7xqMc87pgnPOm4p5zwtGc86znPO+kFL3rJy17xqlNOO+M1r3vDm97ytnec9a73vO8DH/rIOR/7xKfO+8wFF33uC5d86Stf+8a3vvO9y37wo5/87IqrrvnFr37zuz/86S/X/e0fN9z0r/8AXBwTVw==AQAAAAAAAAAAgAAAAAAAAFgLAAAAAAAAcAEAAAAAAAA=eF511sFpQzEQhGH35ALcTXpKOnEJguTkk24CQUCQg0oIthjM7r+zJ78vy2y8fk/25VLX1+ez7rfaG/z6qofp7/BTw+RM+Merfk3+gv98P+vPzN3G+b51XXuDaw91f4efGiZnwrWHOn/BtYd67jbOzznuIXuDxz3k/g4/NUzOhMc95PwFj3vIc7dx3tfaQ+0Nruu6v8NPDZMz4dpDnb/g2kM9dxvncxzvh+wNrty6v8NPDZMz4fF+yPkLHu+HPHcbV42Ur+cne4PH/eb+Do/XOWfC4zmZ8xc8npN57jbOczo+F9kbXHuo+zv81DA5Ex6fi5y/4PG5yHO3cX4vaQ+1N/jJfZj+Dj81TM6E67rOX3DtoZ67jfN7OJ4P2Rtce6j7O/zUMDkTrv+7zl/weD7kuds4f3doD7U3uPZQ93f4qWFyJlx7qPMXXNf13G38/Xe9iudk9gbXHur+Dj81TM6Ex/s45y94fJ957ob/A7JFAhg=AQAAAAAAAAAAgAAAAAAAAIAMAAAAAAAA/QEAAAAAAAA=eF5d0EXXEGQABWFaGgWluwSV7v7oEAVJizBolI6fz4L32czd3HPmzGomTfq8yePnjp8TPmX8vHj41PHz4+HTxi+Ih08f/2U8fMb4r+LhX4xfGA+fOX5RPHzW+K/j4bPHfxNPJz2WjF8crsfSeLgey+LheiyPh+uxIh6ux8p4uB6r4uF6rI6H67EmHq7b2ng66bF+/LpwPTbEw/XYGA/XY1M8XI/N8XA9vo2H67ElHq7H1ni4Ht/Fw9eO/z6eTnpsG/9DuB7b4+F67IiH67EzHq7Hrni4Hrvj4XrsiYfrsTcerse+eLhu++PppMfB8QfC9TgUD9fjcDxcjyPxcD2OxsP1OBYP1+N4PFyPE/FwPSbi4bqdjKeTHqfHnwrX40w8XI+z8XA9zsXD9TgfD9fjQjxcj4vxcD0uxcMnxv8YD9ftcjyd9Ph5/E/helyJh+txNR6uxy/xcD2uxcP1uB4P1+NGPFyPm/FwPW7Fw3W7HU8nPX4b/2u4Hr/Hw/X4Ix6ux5/xcD3uxMP1uBsP1+NePFyP+/FwPf6Kh+v2dzyd9Ph3/D/hejyIh+vxMB6ux6N4uB6P4+F6PImH6/E0Hn5//LN4uB7P4+G6/RdPJz1ejP8/XI+X8XA9XsXD9XgdD9fjTTxcj7fxcD3excP1eB8P1+NDPFy3j/E+AWsoXcE=AQAAAAAAAAAAgAAAAAAAACADAAAAAAAAxgAAAAAAAAA=eF4txRF0QgEAAMB6LwiCIAiCIAiCIPgQBEEQBEEQBEEQBEEQBEEQBINBEARBEARBMBgEQRAMBoNBEARBEATdyUVCb1HHHHfCSaecdsZZ55x3wYGLLrnsiquuue6Gm2657Y677rnvgYceeeyJp575w5+ee+GlV15746133vvL3z746JPP/vGv//zvi6+++e6Hnw6F30UcdcxxJ5x0ymlnnHXOeRccuOiSy6646prrbrjpltvuuOue+x546JHHnnjqmV/7BioOAQAAAAAAAAAAgAAAAAAAAGQAAAAAAAAADAAAAAAAAAA=eF7j5KQ9AACx7gOF
</AppendedData>
</VTKFile>
......@@ -85,14 +85,14 @@
</linear_solvers>
<parameters>
<parameter>
<name>T0</name>
<type>Constant</type>
<value>0</value>
<name>solution</name>
<type>Function</type>
<expression>sin(2*pi*y) * x^2</expression>
</parameter>
<parameter>
<name>heat_flux_bottom</name>
<type>Constant</type>
<value>1</value>
<name>dsolution_dy</name>
<type>Function</type>
<expression>-2*pi * cos(2*pi*y) * x^2</expression>
</parameter>
<parameter>
<name>heat_transfer_coefficient</name>
......@@ -101,8 +101,13 @@
</parameter>
<parameter>
<name>ambient_temperature</name>
<type>Constant</type>
<value>0</value>
<type>Function</type>
<expression>3 * sin(2*pi*y)</expression>
</parameter>
<parameter>
<name>source_term</name>
<type>Function</type>
<expression>4 * sin(2*pi*y) * (pi^2 * x^2 - 1)</expression>
</parameter>
</parameters>
<process_variables>
......@@ -110,13 +115,13 @@
<name>temperature</name>
<components>1</components>
<order>1</order>
<initial_condition>T0</initial_condition>
<initial_condition>solution</initial_condition>
<boundary_conditions>
<boundary_condition>
<geometrical_set>geometry</geometrical_set>
<geometry>bottom</geometry>
<type>Neumann</type>
<parameter>heat_flux_bottom</parameter>
<parameter>dsolution_dy</parameter>
</boundary_condition>
<boundary_condition>
<geometrical_set>geometry</geometrical_set>
......@@ -132,6 +137,13 @@
<u_0>ambient_temperature</u_0>
</boundary_condition>
</boundary_conditions>
<source_terms>
<source_term>
<mesh>square_1x1_quad_1e4</mesh>
<type>Volumetric</type>
<parameter>source_term</parameter>
</source_term>
</source_terms>
</process_variable>
</process_variables>
</OpenGeoSysProject>
<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64" compressor="vtkZLibDataCompressor">
<UnstructuredGrid>
<Piece NumberOfPoints="121" NumberOfCells="100">
<PointData>
<DataArray type="Float64" Name="temperature" format="binary" RangeMin="-7.0059970286e-17" RangeMax="0.75965142783">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAAzgMAAAAAAAA=eJwdzIsz2wcAB3CcHKVKtHNMemPUHetq9epyHt/zbMepcsM6JY1Orz0SMW8tblK7rivzSD3aalFqevVql3n0R2KoCCVCQlRIPJMyazu7eVS6Wz9/wIdhN5tnEqJCm/Pu0BkvFdJML1cqzVSI6nBsuiVZxRlBwOusjFVsXo+d0dpbQWliFQpoK5AyjdSbt5dxiuxnHdqwBJ1dU7t9GYu4XTaeLVYqwf4qivXMZRl3G9VjnrbL0C1+kpCwt4SwOoM/j3YvYYArnKuhL6GBdZYdrVoE8+b9CN3Ti/BVUZKUBQtQ2/j5edcoYaQhUR2zFfg3rJAb4jaHNAe2Dz1oAXvmwu069wVEUHLuVJstoPGGfXiiTImUTtf38XlK9NDz+fnGSvRyNuXaOQqk3TpGauXMI+kyn0RVyDGmUa8IpS/BE2fWUtNkyHvyhlpuPQ8y5+aFa7rzqOhsf+jIn4My6ryUGTKH4fjgb0pb5Nh0ppGT5LOQV95g2EheQnsrwsGpZAZNAxaUWBMZSOmaV/TgKRjoEbufBUkQl9818UpnBsKHb3/ZVsmgqfp+gvxYhqx3058LTsqwXb+fcqhrGvKhFEOe1jQiPbxXwiymIEnKL2BoS1Gtb+2T2D6J3r6diFz3CVSUPxssLxrHPX3qDvu4BIe219l+lhJwhQOe5quTYN43LIwpnkQAx3W23nwSobZRJdeuTCB8limu6BDDeSBRf2J0HL8Pmu5sdIugNdVlanBgDJm8K5PG346AnxIYm1YrwtWgtcKQIhE2lqU1Q3EiOJPYNUZWIvzkdnfr1NUxBJWtmqbmjKJMo2L5+r+AntWsnYloGG6H9wavfyLEX5EXUoPdBJBtWm5csngOO8P3cC0VoJhy+HV1ugAdD76wP3hCgNzUmHD6i0EoE/5ODqcOorn1zZdGWc+RxYgJ3C0cgF7uHfaxjH709BEuzW59SDbM/Fo80ovKj7vTsr34SPnu3m9qZz56xZ5jdGs+JNK36+R1Hvr3HtkExvCwuP8pyaCiBwcaZl0yK7rBX+f7B9AIGFedc91Z78K0rTia5tuJon80XHlcOyL6LU+3neUifnXB+6B5KxTRP3PSSa2oTbRPVT9tgSDUS9p2pAUJkVat+2jN+GPuwXAgrQmRS3qK83aPoS3xH/mI+wjFIYIwhlEj6nhHP910aoATQ0FZc6gH88PLIhY/vCzCi/X/SyN+0HItp+fUeuj7mPudHLxIHGnUSmAf5xD2a6RfBZQ44pIO613OuRKi0t1MQxbGEsZFNRYnLtKJreTm0crsHz3+A8LD5BQ=
</DataArray>
<DataArray type="Float64" Name="v_x" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAAEQAAAAAAAAA=eJxjYBgFo2AUDHUAAAPIAAE=
</DataArray>
<DataArray type="Int32" Name="MaterialIDs" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAAOQBAAAAAAAADgAAAAAAAAA=eJxjYBgFwx0AAAHkAAE=
</DataArray>
<DataArray type="Int8" Name="vtkValidPointMask" format="binary" RangeMin="1" RangeMax="1">
AQAAAAAAAAAAgAAAAAAAAHkAAAAAAAAADAAAAAAAAAA=eJxjZBwgAAAdTgB6
</DataArray>
</PointData>
<CellData>
</CellData>
<Points>
<DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.4142135624">
AQAAAAAAAAAAgAAAAAAAAFgLAAAAAAAAawEAAAAAAAA=eJx11kFKgzEUxPHeyQN4G++kN/EIAV25yq4QEAIucgRpy6PM/Odl9/18TNoxX/Ryyevj/bY+X7MP+Mt9/TTzE/5Y1yZnwd/u67fJ3/Dvr9v6a/Y9jfN713P2Aa8e8vyEP9a1yVnw6iHnb3j1kPc9jfP3rD24D7j24PMTrj14zoJrD56/4dqD73sa57muHrIPeD3n+QmvHnLOglcPOX/Dq4e872mc77GeB/cB1/Pg8xNePeScBdfz4PkbrufB9z2NPz+X95B9wLVfn59wffacBdd70vM3XO9J3/c0znta3wv3Adf3wucnvD5HzllwfS88f8P1vfB9T+P8u1Q9ZB/w6iHPT3j1kHMWvJ5z/oZXD3nf0zj/Duv94D7gej/4/IRXDzlnwfV+8PwN1/vB9z2N8/+O6iH7gFcPeX7Cq4ecs+DVQ87f8HrO+57Gnz/3HrIPuN6TPj/h1UPOWXA9x56/4fo9fd8D/weyRQIY
</DataArray>
</Points>
<Cells>
<DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="120">
AQAAAAAAAAAAgAAAAAAAAIAMAAAAAAAA/QEAAAAAAAA=eJxd0EXXEGQABWFaGgWluwSV7v7oEAVJizBolI6fz4L32czd3HPmzGomTfq8yePnjp8TPmX8vHj41PHz4+HTxi+Ih08f/2U8fMb4r+LhX4xfGA+fOX5RPHzW+K/j4bPHfxNPJz2WjF8crsfSeLgey+LheiyPh+uxIh6ux8p4uB6r4uF6rI6H67EmHq7b2ng66bF+/LpwPTbEw/XYGA/XY1M8XI/N8XA9vo2H67ElHq7H1ni4Ht/Fw9eO/z6eTnpsG/9DuB7b4+F67IiH67EzHq7Hrni4Hrvj4XrsiYfrsTcerse+eLhu++PppMfB8QfC9TgUD9fjcDxcjyPxcD2OxsP1OBYP1+N4PFyPE/FwPSbi4bqdjKeTHqfHnwrX40w8XI+z8XA9zsXD9TgfD9fjQjxcj4vxcD0uxcMnxv8YD9ftcjyd9Ph5/E/helyJh+txNR6uxy/xcD2uxcP1uB4P1+NGPFyPm/FwPW7Fw3W7HU8nPX4b/2u4Hr/Hw/X4Ix6ux5/xcD3uxMP1uBsP1+NePFyP+/FwPf6Kh+v2dzyd9Ph3/D/hejyIh+vxMB6ux6N4uB6P4+F6PImH6/E0Hn5//LN4uB7P4+G6/RdPJz1ejP8/XI+X8XA9XsXD9XgdD9fjTTxcj7fxcD3excP1eB8P1+NDPFy3j/E+AWsoXcE=
</DataArray>
<DataArray type="Int64" Name="offsets" format="binary" RangeMin="4" RangeMax="400">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAAxgAAAAAAAAA=eJwtxRF0QgEAAMB6LwiCIAiCIAiCIPgQBEEQBEEQBEEQBEEQBEEQBINBEARBEARBMBgEQRAMBoNBEARBEATdyUVCb1HHHHfCSaecdsZZ55x3wYGLLrnsiquuue6Gm2657Y677rnvgYceeeyJp575w5+ee+GlV15746133vvL3z746JPP/vGv//zvi6+++e6Hnw6F30UcdcxxJ5x0ymlnnHXOeRccuOiSy6646prrbrjpltvuuOue+x546JHHnnjqmV/7BioO
</DataArray>
<DataArray type="UInt8" Name="types" format="binary" RangeMin="9" RangeMax="9">
AQAAAAAAAAAAgAAAAAAAAGQAAAAAAAAADAAAAAAAAAA=eJzj5KQ9AACx7gOF
</DataArray>
<DataArray type="Int64" Name="faces" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAAEAAAAAAAAAA=eJxjYBgFo2AU4AIAAyAAAQ==
</DataArray>
<DataArray type="Int64" Name="faceoffsets" format="binary" RangeMin="1" RangeMax="100">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAArwAAAAAAAAA=eJwtxdciAgAAAEAjkYRskazskpUtFJGRUbYI//8NHrp7ueamhha3OuA2B93uDofc6bC7HHG3e9zrqPvc7wEPesjDHvGoYx7zuOOecMKTnvK0ZzzrpOc87wUvesnLXnHKaa864zWve8Ob3nLW297xrve87wMf+sg5H/vEp8674DOfu+gLX7rkK1/7xrcu+873fvCjK676yc9+8avf/O4Pf7rmL3+77h//+s//+ewTuw==
</DataArray>
</Cells>
</Piece>
</UnstructuredGrid>
</VTKFile>
<VTKFile type="UnstructuredGrid" version="1.0" byte_order="LittleEndian" header_type="UInt64" compressor="vtkZLibDataCompressor">
<UnstructuredGrid>
<Piece NumberOfPoints="121" NumberOfCells="100">
<PointData>
<DataArray type="Float64" Name="temperature" format="binary" RangeMin="0" RangeMax="0.75812597136">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAAgQMAAAAAAAA=eJy1wYtTEgYAB2D1Ohao3GY55fR0YZolM3xtXbv5M5noDfWsE61RTm8noTJY01vTpPmo9fJMvc1M08xJEpaKl5JaIuUzEzBRAgUExOjWZlrLbGu3v2LfZ9C1ZVfHOlDskZliDnPAUG1RVZEcCJdsv1M88RTuAwxqD/8p3La8K+hcXcau+MBn+tRlRHGPETyr7UjY40WvaFrCCPdw9OB3NsTtyG2SL1hQZMnhHw224yu3vfnrXnbk+k6PM1eX4OMfHw7ZEi572AXvpS1hWVcw8KnRhuEPLhFEDBuo5lRB6CkreL0b0ht1FlSc4Lv4/LCI6aTJLzNoJshZxksVsCJCWPXSuNsK/757CW9JVkiOFS87qSxw7aHMpxy3gL3HmWXeZMEKNdyxkb+IXZFsz4QyM26dt7EJGiO8J11qzkzMQ8ZvoPXx9VC+CiOddzVDMFhKrfnThJ0LlWsiqQml7Hd5IXtNMG0Ig17VG1GuZJbLJxYwRW+ua74/D8XDJAWr1ID6Qr+1Wmc9Tg5dvM3cp4O0vT2OEzuLaKKNR1jRY/8Ikbx7Vo/+hm8zT9fpcUHd2iCO1KPXbB2pbHsCdQH/3NYVHV42/kxWbdZB0JI4w1ubhWxfYneqVIvc7puO+/QZZPC0eunZaaw8P/tbzEezqCwf9aWQZhEzlUwJmtPipwmOcapEi1OUTKZ4sxb+G57BLP4M8Nj06Kj0MbIOue1/rZxG9BqlZKBbA/7chV+v/63C3Dek5LTERyCEetZ88osGNDu7cXuZBr29189p0jXISPncL8dDg+EvPtO9yVKjJUjCLspWofuE2JkYOgXXrUUS8sAktE1hjbHuD+FIqSMyd4yjOTmmw5s8ioD0wgi2aBzrqf2HrVnjWKB9nNu6bRyGJ5xrhXfGQBAviiICxyAsf3b1DXcUFez6iDjRCBx+vpl03jDKOMMHR4MfIPpMctcRpRLxJatd6qghHPi66IZ34BDEx1/slHgMIS8vwIusVsB0mZnlEqvAgZnX9driQTBkktPyk/dwjSPYkh1/F/Oljnyhrh9J1iNCMb0Pz2Vz3Lw0OWikVtaLpB5Y5D9W+RG7ELKe4oj6oxOJrt8rWmo78b5PB4VG7MQ6NXLoCqMD/yj+/fBQ3C3gQXtGOvkmcpxCqnOuSvH7lcHbtW8lKN1m+Isb0AavMcZdd38xnP4n/wEVQq9I
</DataArray>
<DataArray type="Float64" Name="v_x" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAAEQAAAAAAAAA=eJxjYBgFo2AUDHUAAAPIAAE=
</DataArray>
<DataArray type="Int64" Name="vtkOriginalPointIds" format="binary" RangeMin="0" RangeMax="220">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAA2gAAAAAAAAA=eJwtxTkrBQAAAOAXET0REREhNzvxnDu52cnNTniu/cnNTm52crOTmx9j8H3LFwj8i3KeK93sPk864l1f+NnRjnG+q9zifk952Xu+9ItjHecCV7vVA572ivd95VfHO+hC17jNg57xqg987TcnONFFDrndQ571mg9943cnOdnFrnWHhx32uo986w+nONUlrnOnRzznDR/7zp9Oc7pLXe8uj3remz7xvb+c4UyXucHdHvOCt3zqB387y9kud6N7PO5Fb/vMj/5xjnNd4Sb3esJL3vG5n/zrP7UOMmw=
</DataArray>
<DataArray type="Int32" Name="MaterialIDs" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAAOQBAAAAAAAADgAAAAAAAAA=eJxjYBgFwx0AAAHkAAE=
</DataArray>
<DataArray type="Int64" Name="vtkOriginalCellIds" format="binary" RangeMin="2" RangeMax="208">
AQAAAAAAAAAAgAAAAAAAAMgDAAAAAAAAzwAAAAAAAAA=eJytzFkqBAAcwGFNkiRJ0oz9ALJzgMnOAWQdDiA7B5CdA8g6HEB2cwDZBkfy4Hv6P/u9fG+/RMFfCVaxiWmOco4bPOI1X8Lvv7+FwSSb2cMxznOTx7zhK4uCKbawl+Nc4BZPeMs3Fger2co+TnCR2zzlHd9ZEqxhG/s5ySXu8Iz3/GBpsJbtHOAUl7nLcz7wk2XBOnZwkNNc4R4v+Mg8y4P17OQQM1zlPrN84hcrgg3s4jBnuMYDXvKZ36wMNrKbI5zlOg95xRx/+AtuNy1R
</DataArray>
<DataArray type="Int8" Name="vtkValidPointMask" format="binary" RangeMin="1" RangeMax="1">
AQAAAAAAAAAAgAAAAAAAAHkAAAAAAAAADAAAAAAAAAA=eJxjZBwgAAAdTgB6
</DataArray>
</PointData>
<CellData>
</CellData>
<Points>
<DataArray type="Float64" Name="Points" NumberOfComponents="3" format="binary" RangeMin="0" RangeMax="1.4142135624">
AQAAAAAAAAAAgAAAAAAAAFgLAAAAAAAAawEAAAAAAAA=eJx11kFKgzEUxPHeyQN4G++kN/EIAV25yq4QEAIucgRpy6PM/Odl9/18TNoxX/Ryyevj/bY+X7MP+Mt9/TTzE/5Y1yZnwd/u67fJ3/Dvr9v6a/Y9jfN713P2Aa8e8vyEP9a1yVnw6iHnb3j1kPc9jfP3rD24D7j24PMTrj14zoJrD56/4dqD73sa57muHrIPeD3n+QmvHnLOglcPOX/Dq4e872mc77GeB/cB1/Pg8xNePeScBdfz4PkbrufB9z2NPz+X95B9wLVfn59wffacBdd70vM3XO9J3/c0znta3wv3Adf3wucnvD5HzllwfS88f8P1vfB9T+P8u1Q9ZB/w6iHPT3j1kHMWvJ5z/oZXD3nf0zj/Duv94D7gej/4/IRXDzlnwfV+8PwN1/vB9z2N8/+O6iH7gFcPeX7Cq4ecs+DVQ87f8HrO+57Gnz/3HrIPuN6TPj/h1UPOWXA9x56/4fo9fd8D/weyRQIY
</DataArray>
</Points>
<Cells>
<DataArray type="Int64" Name="connectivity" format="binary" RangeMin="0" RangeMax="120">
AQAAAAAAAAAAgAAAAAAAAIAMAAAAAAAA/QEAAAAAAAA=eJxd0EXXEGQABWFaGgWluwSV7v7oEAVJizBolI6fz4L32czd3HPmzGomTfq8yePnjp8TPmX8vHj41PHz4+HTxi+Ih08f/2U8fMb4r+LhX4xfGA+fOX5RPHzW+K/j4bPHfxNPJz2WjF8crsfSeLgey+LheiyPh+uxIh6ux8p4uB6r4uF6rI6H67EmHq7b2ng66bF+/LpwPTbEw/XYGA/XY1M8XI/N8XA9vo2H67ElHq7H1ni4Ht/Fw9eO/z6eTnpsG/9DuB7b4+F67IiH67EzHq7Hrni4Hrvj4XrsiYfrsTcerse+eLhu++PppMfB8QfC9TgUD9fjcDxcjyPxcD2OxsP1OBYP1+N4PFyPE/FwPSbi4bqdjKeTHqfHnwrX40w8XI+z8XA9zsXD9TgfD9fjQjxcj4vxcD0uxcMnxv8YD9ftcjyd9Ph5/E/helyJh+txNR6uxy/xcD2uxcP1uB4P1+NGPFyPm/FwPW7Fw3W7HU8nPX4b/2u4Hr/Hw/X4Ix6ux5/xcD3uxMP1uBsP1+NePFyP+/FwPf6Kh+v2dzyd9Ph3/D/hejyIh+vxMB6ux6N4uB6P4+F6PImH6/E0Hn5//LN4uB7P4+G6/RdPJz1ejP8/XI+X8XA9XsXD9XgdD9fjTTxcj7fxcD3excP1eB8P1+NDPFy3j/E+AWsoXcE=
</DataArray>
<DataArray type="Int64" Name="offsets" format="binary" RangeMin="4" RangeMax="400">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAAxgAAAAAAAAA=eJwtxRF0QgEAAMB6LwiCIAiCIAiCIPgQBEEQBEEQBEEQBEEQBEEQBINBEARBEARBMBgEQRAMBoNBEARBEATdyUVCb1HHHHfCSaecdsZZ55x3wYGLLrnsiquuue6Gm2657Y677rnvgYceeeyJp575w5+ee+GlV15746133vvL3z746JPP/vGv//zvi6+++e6Hnw6F30UcdcxxJ5x0ymlnnHXOeRccuOiSy6646prrbrjpltvuuOue+x546JHHnnjqmV/7BioO
</DataArray>
<DataArray type="UInt8" Name="types" format="binary" RangeMin="9" RangeMax="9">
AQAAAAAAAAAAgAAAAAAAAGQAAAAAAAAADAAAAAAAAAA=eJzj5KQ9AACx7gOF
</DataArray>
<DataArray type="Int64" Name="faces" format="binary" RangeMin="0" RangeMax="0">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAAEAAAAAAAAAA=eJxjYBgFo2AU4AIAAyAAAQ==
</DataArray>
<DataArray type="Int64" Name="faceoffsets" format="binary" RangeMin="1" RangeMax="100">
AQAAAAAAAAAAgAAAAAAAACADAAAAAAAArwAAAAAAAAA=eJwtxdciAgAAAEAjkYRskazskpUtFJGRUbYI//8NHrp7ueamhha3OuA2B93uDofc6bC7HHG3e9zrqPvc7wEPesjDHvGoYx7zuOOecMKTnvK0ZzzrpOc87wUvesnLXnHKaa864zWve8Ob3nLW297xrve87wMf+sg5H/vEp8674DOfu+gLX7rkK1/7xrcu+873fvCjK676yc9+8avf/O4Pf7rmL3+77h//+s//+ewTuw==
</DataArray>
</Cells>
</Piece>
</UnstructuredGrid>
</VTKFile>
This source diff could not be displayed because it is too large. You can view the blob instead.