diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/i_deactivated_subdomain.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/i_deactivated_subdomain.md
index 5c64bbd2f559d7b4b825455dec2265a9a7c6a1d9..09035e93f47cd2acf13cf8cb64555407f62bbeb9 100644
--- a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/i_deactivated_subdomain.md
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/i_deactivated_subdomain.md
@@ -1,2 +1 @@
-It defines a set of deactivated subdomains, which includes  a time interval and
- material IDs.
+\copydoc ProcessLib::DeactivatedSubdomain
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/i_line_segment.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/i_line_segment.md
new file mode 100644
index 0000000000000000000000000000000000000000..8af8a86f1b79e88a5383d8b19bbb5098dc68382b
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/i_line_segment.md
@@ -0,0 +1 @@
+\copydoc ProcessLib::DeactivatedSubdomain::line_segment
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_end.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_end.md
new file mode 100644
index 0000000000000000000000000000000000000000..988f10533b87f58e437dec9cd6fee8003de9320f
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_end.md
@@ -0,0 +1 @@
+Endpoint of a line segment.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_start.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_start.md
new file mode 100644
index 0000000000000000000000000000000000000000..ae5ffe2dc4d3ecf2a4e6e0dad5bcb815ba4388ef
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/line_segment/t_start.md
@@ -0,0 +1 @@
+Starting point of the line segment.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_curve.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_curve.md
new file mode 100644
index 0000000000000000000000000000000000000000..647f7fe91a31057bacf12825aa40a4da5a9a58dc
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_curve.md
@@ -0,0 +1,4 @@
+A curve for time dependent element deactivation. This allows fine graded control
+over the elements being deactivated compared to the time interval. The curve,
+referenced by name here, is used to map the time to position along the line
+segment.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_interval.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_interval.md
deleted file mode 100644
index c6052b5abbcbbda9bee4bc646e1acadc0fe4176b..0000000000000000000000000000000000000000
--- a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/t_time_interval.md
+++ /dev/null
@@ -1,4 +0,0 @@
-The time interval of a set of deactivated subdomains.
-
-For its input syntax, please also see:
-\copydoc ogs_file_param__prj__time_loop__processes__process__time_interval
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/i_time_interval.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/i_time_interval.md
new file mode 100644
index 0000000000000000000000000000000000000000..b14388d939ba8303eeaaa24306332641432e34fc
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/i_time_interval.md
@@ -0,0 +1,3 @@
+Time interval for subdomain deactivation. Contrary to a time curve the
+deactivation happens at once as soon as the start time is reached until the end
+time.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_end.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_end.md
new file mode 100644
index 0000000000000000000000000000000000000000..2da79a4ca941ad082ad7427cb193545bcc23ad67
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_end.md
@@ -0,0 +1 @@
+End time for domain deactivation.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_start.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_start.md
new file mode 100644
index 0000000000000000000000000000000000000000..c0fe06cb4536ddb0a80b6724b8f06b8156513cfc
--- /dev/null
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/deactivated_subdomain/time_interval/t_start.md
@@ -0,0 +1 @@
+Start time for domain deactivation.
diff --git a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/i_deactivated_subdomains.md b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/i_deactivated_subdomains.md
index 4f14a8960fdd4b9dcc6571dca33d3e2df50a7683..e930f0d3fece076f59840fb1ead95dff31e95b5f 100644
--- a/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/i_deactivated_subdomains.md
+++ b/Documentation/ProjectFile/prj/process_variables/process_variable/deactivated_subdomains/i_deactivated_subdomains.md
@@ -1,8 +1 @@
-It defines sets of deactivated subdomains, each of which contains a time
- interval and material IDs. When the time is in the time interval of a set of
- deactivated subdomains, the elements in the deactivated subdomains are excluded
- from the local and global assembly, and also from the computation of the
- secondary variables.
-
-Note: the nodes at the borders among active subdomains and inactive subdomains
- are included through the entire computations.
+Definition of subdomains for time dependent deactivation.
diff --git a/ProcessLib/DeactivatedSubdomain.h b/ProcessLib/DeactivatedSubdomain.h
index a2832b63dd470a6580024df06e21bcd2adb21c17..282b3ace0a30e695ccfc8088a931ddafddc20f52 100644
--- a/ProcessLib/DeactivatedSubdomain.h
+++ b/ProcessLib/DeactivatedSubdomain.h
@@ -38,6 +38,25 @@ struct DeactivatedSubdomainMesh
     std::vector<MeshLib::Node*> const inner_nodes;
 };
 
+/// Time depend subdomain deactivation.
+///
+/// Subdomain deactivation is space and time dependent.
+/// The spatial extent of deactivated elements is defined through a set of
+/// material ids.
+/// Additionally a line segment separates through its normal plane and position
+/// on the line segment an active and inactive part.
+///
+/// The subdomain can be deactivated at once using a time interval.
+/// For fine grained control a time curve can be specified.
+/// It maps current time to position on the line segment.
+/// Elements, which center points lie left of this position are deactivated.
+///
+/// \internal
+/// The deactivated elements are excluded from the assembly, pre and post call,
+/// secondary variables computation and the like. To keep the size of the global
+/// linear equation system artificial Dirichlet boundary conditions are applied
+/// on the interior of the deactivated subdomain. The nodes on the border
+/// between the active and inactive elements are not affected.
 struct DeactivatedSubdomain
 {
     DeactivatedSubdomain(