diff --git a/.marksman.toml b/.marksman.toml
new file mode 100644
index 00000000..90b5af20
--- /dev/null
+++ b/.marksman.toml
@@ -0,0 +1,52 @@
+# This file lists all configuration options with their default values.
+# You do not need to duplicate all the values in your own user or project config.
+# Only override what is needed.
+
+[core]
+markdown.file_extensions = ["md", "markdown", "mdx", "qmd"]
+# Enable GitLab Flavored Markdown heading ID disambiguation method described
+# in https://docs.gitlab.com/ee/user/markdown.html#heading-ids-and-links.
+# This enables multiple headings with equal IDs to be deterministically
+# referenced by links and impacts ID generation in "Table of Contents"
+# code action.
+markdown.glfm_heading_ids.enable = true
+# Configures text sync protocol between the editor (LSP client)
+# and Marksman (LSP server).
+# Can be either 'full' or `incremental`:
+# * full: the whole copy of a document is sent by the editor
+# on every update,
+# * incremental: only the changed parts are sent by
+# the editor. This will result in less trafic between
+# the editor and Marksman, but the overall performance
+# impact is marginal.
+# Defaults to `full` because the editors have bugs in incremental
+# sync which result in slightly correpted state and are really hard
+# to diagnose.
+text_sync = "full"
+# When set to true, level 1 headings will be treated as document titles
+# (this includes an assumption of having a single title in the document).
+# Setting this to false automatically changes the default wiki link
+# completion style to a file-based one.
+title_from_heading = true
+# Use incremental resolution of project-wide references.
+# This is much more efficient but is currently experimental
+incremental_references = false
+# For debugging only! Enables extra validation checks around
+# incremental state updates. SIGNIFICANTLY IMPACTS PERFORMANCE
+paranoid = false
+
+[code_action]
+# Enable/disable "Table of Contents" code action
+toc.enable = true
+
+# Enable/disable "Create missing linked file" code action
+create_missing_file.enable = true
+
+[completion]
+# The maximum number of candidates returned for a completion
+candidates = 50
+# The style of wiki links completion.
+# Other values include:
+# * "file-stem" to complete using file name without an extension,
+# * "file-path-stem" same as above but using file path.
+wiki.style = "title-slug"
diff --git a/.yarnrc.yml b/.yarnrc.yml
new file mode 100644
index 00000000..9debbee8
--- /dev/null
+++ b/.yarnrc.yml
@@ -0,0 +1 @@
+ignoreEngines: true
diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md
index d4a3ef8e..08d44b9b 100644
--- a/CODE_OF_CONDUCT.md
+++ b/CODE_OF_CONDUCT.md
@@ -1,3 +1,3 @@
# Code of Conduct
-All Dyte repos are governed by our Community Participation Guidelines, available at: https://dyte.notion.site/dyte/Dyte-Community-Participation-Guidelines-CPG-4b3af58fdf3545c2a3065773a9154728
\ No newline at end of file
+TODO
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 7df81c75..c0df9d56 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -5,10 +5,7 @@
1. Make your changes, and make sure the site still builds.
1. Push to your fork and [submit a pull request][compare] from your branch to `master`
1. Pat yourself on the back and wait for your pull request to be reviewed.
-1. *Here are a few things you have to do:*
+1. _Here are a few things you have to do:_
- Write a good commit message.
- Follow the style guide where possible.
- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
-
-[fork]: https://github.com/YoussefRaafatNasry/portfolYOU/fork
-[compare]: https://github.com/YoussefRaafatNasry/portfolYOU/compare
diff --git a/README.md b/README.md
index 582d482c..7d59e2be 100644
--- a/README.md
+++ b/README.md
@@ -54,7 +54,7 @@ Our website can be found at `https://easifem.github.io/`, but we want to use cus
We will use `deploy` command that helps you deploy your site from the source branch to the deployment branch in one command: clone, build, and commit.
-First we need to configure our project by modyfing `docusaurus.config.js` file. We need to set the
+First we need to configure our project by modyfing `docusaurus.config.js` file. We need to set the
- `organizationName`, The GitHub user or organization name.
- `projectName`, The name of the deployment repository.
@@ -63,9 +63,9 @@ First we need to configure our project by modyfing `docusaurus.config.js` file.
In this repository we have set the following parameters in `docusaurus.config.js` file:
```js
- organizationName: "easifem",
- projectName: "easifem.github.io",
- deploymentBranch: "gh-pages",
+organizationName: "easifem",
+projectName: "easifem.github.io",
+deploymentBranch: "gh-pages",
```
Note that GitHub Pages adds a trailing slash to Docusaurus URLs by default. Therefore, we have set `trailingSlash` to `false` in `docusaurus.config.js` file. This is important for the website to work properly.
diff --git a/babel.config.js b/babel.config.js
index 9c44bbe7..26e2e1aa 100644
--- a/babel.config.js
+++ b/babel.config.js
@@ -1,5 +1,5 @@
/* eslint-disable */
module.exports = {
- presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
+ presets: [require.resolve("@docusaurus/core/lib/babel/preset")],
};
diff --git a/cspell.json b/cspell.json
index bdf5c56c..98db702c 100644
--- a/cspell.json
+++ b/cspell.json
@@ -21,4 +21,4 @@
"waitlisted",
"htmlui"
]
-}
\ No newline at end of file
+}
diff --git a/docs/about/SystemRequirements.md b/docs/about/SystemRequirements.md
index 62c46ec4..82171e02 100644
--- a/docs/about/SystemRequirements.md
+++ b/docs/about/SystemRequirements.md
@@ -11,25 +11,24 @@ import simpleGraph from '!!raw-loader!/img/drawio/easifem-system-requirements.dr
-| Component | Version | Latest tested version | Comment |
-|:--- | :---: | :---: | :--- |
-| **Gfortran**| >=9.0 | 12.0 | GNU Fortran compiler |
-| **GCC**| >=9.0 | 12.0 | GNU-compiler collection|
-| **OpenMP**| >= 4.5 | | Multithread shared memory parallelisation|
-| **Curl**| >=7.87 | 7.87 | A command-line utility for transferring data from or to a remote server|
-| **Git**| >=2.34 | 2.34.1 | A version control system and command-line utility for downloading packages from GitHub |
-| **Cmake** | >=3.19 | 3.22.4 | Cross-platform family of tools designed to build, test and package software |
-| **Ninja-build** | >=1.10 | 1.11.0 | Build system |
-| **Python3** | >=3.7 | 3.11.0 | Scripting language |
-| **Pip** | >=20 | 23.1.0 | Command line tool for downloading python packages |
-| **LAPACK** | >=3.11.0 | 3.11.0 | Linear algebra package |
-| **OpenBlas** | >= 0.3.20| 0.3.30 | Optimize BLAS library |
-| **HDF5** | >=1.10 | 1.10.7 | High-performance data software-library and file-format |
-| **PlPlot** | >=5.15.0 | 5.15.0 | Cross-platform, scientific graphics plotting library |
-| **Boost** | | | |
-| **Gnuplot** | >=5.0 | 5.4 | Portable command-line driven graphing utility |
-| **Doxygen** | >=1.9.1 | 1.9.1 | documentation generation |
-| **GTK-4** | | | n |
+| Component | Version | Latest tested version | Comment |
+| :-------------- | :-------: | :-------------------: | :------------------------------------------------------------------------------------- |
+| **Gfortran** | >=9.0 | 12.0 | GNU Fortran compiler |
+| **GCC** | >=9.0 | 12.0 | GNU-compiler collection |
+| **OpenMP** | >= 4.5 | | Multithread shared memory parallelisation |
+| **Curl** | >=7.87 | 7.87 | A command-line utility for transferring data from or to a remote server |
+| **Git** | >=2.34 | 2.34.1 | A version control system and command-line utility for downloading packages from GitHub |
+| **Cmake** | >=3.19 | 3.22.4 | Cross-platform family of tools designed to build, test and package software |
+| **Ninja-build** | >=1.10 | 1.11.0 | Build system |
+| **Python3** | >=3.7 | 3.11.0 | Scripting language |
+| **Pip** | >=20 | 23.1.0 | Command line tool for downloading python packages |
+| **LAPACK** | >=3.11.0 | 3.11.0 | Linear algebra package |
+| **OpenBlas** | >= 0.3.20 | 0.3.30 | Optimize BLAS library |
+| **HDF5** | >=1.10 | 1.10.7 | High-performance data software-library and file-format |
+| **PlPlot** | >=5.15.0 | 5.15.0 | Cross-platform, scientific graphics plotting library |
+| **Boost** | | | |
+| **Gnuplot** | >=5.0 | 5.4 | Portable command-line driven graphing utility |
+| **Doxygen** | >=1.9.1 | 1.9.1 | documentation generation |
+| **GTK-4** | | | n |
You can use following instructions to satisfy the above-mentioned requirements depending upon your system.
-
diff --git a/docs/about/easifemClasses.md b/docs/about/easifemClasses.md
index 1225c979..4c34df6b 100644
--- a/docs/about/easifemClasses.md
+++ b/docs/about/easifemClasses.md
@@ -18,7 +18,7 @@ USE easifemClasses
## Structure
-- [ ] TODO add key-features to ` easifemClasses`
+- [ ] TODO add key-features to `easifemClasses`
Similar to the Base library, the `Classes` library has two directories in the `src` directory:
@@ -44,14 +44,14 @@ If you want to implement a class called `XXX_`, then perform following task:
1. Make a subdirectory `XXX` in `src/modules` and `src/submodules`
2. In both `XXX` make a subdirectory `XXX/src`
3. Create a file `modules/XXX/src/XXX_Class.F90` and define a module called `XXX_Class`:
-4. Create submodules in `submodule/XXX/src/XXX_Class@CategoryofMethods.F90` and implement the methods.
+4. Create submodules in `submodule/XXX/src/XXX_Class@CategoryofMethods.F90` and implement the methods.
```fortran
MODULE XXX_Class
!! Use modules
PRIVATE
!! Define class here
-END MODULE XXX_Class
+END MODULE XXX_Class
```
:::
diff --git a/docs/about/easifemMaterials.md b/docs/about/easifemMaterials.md
deleted file mode 100644
index d032acfe..00000000
--- a/docs/about/easifemMaterials.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-sidebar_position: 7
----
-
-# easifemMaterials
-
-Coming soon.
diff --git a/docs/about/extpkgs.md b/docs/about/extpkgs.md
index 838d5e1b..8118b089 100644
--- a/docs/about/extpkgs.md
+++ b/docs/about/extpkgs.md
@@ -5,11 +5,11 @@ sidebar_position: 4
For some functionality EASIFEM depends upon FORTRAN packages developed by the others. The table given below briefly describes about the external packages which have been used in EASIFEM. [You can find more information about the external packages here.](/guides/install/extpkgs)
-:::info ❤️ 🙌
-The developers of EASIFEM appreciate the creators of these external packages as these packages have eased the development of EASIFEM.
-:::
+:::info
+The developers of EASIFEM appreciate the creators of these external packages as these packages have eased the development of EASIFEM.
+:::
-:::note
+:::note
Some external packages shipped with the EASIFEM as they have been modified according to the need of EASIFEM. All these packages are meant to be used within EASIFEM, if you are interested in any of these external packages, then please refer to the original and official documentation of these external packages.
:::
@@ -22,4 +22,3 @@ import {columns, data} from "../guides/install/extpkgs/extpkgs.table.js";
/>
Click on 🚀 icon to get the information about how a package has been incorporated in the EASIFEM.
-
diff --git a/docs/blog/generating-2d-mesh-in-easifem.md b/docs/blog/generating-2d-mesh-in-easifem.md
new file mode 100644
index 00000000..1611c3be
--- /dev/null
+++ b/docs/blog/generating-2d-mesh-in-easifem.md
@@ -0,0 +1,221 @@
+---
+title: Creating structured mesh in 2D using EASIFEM
+description: This post explains methods of creating 2D mesh in easifem.
+authors:
+ - vickysharma0812
+ - shishiousan
+tags: [mesh, gmsh, tutorial]
+hide_table_of_contents: false
+---
+
+## Creating a structured mesh of quadrangles
+
+To create a structured mesh of quadrangles in easifem, we will need following classes:
+
+- GmshStructuredMesh_Class: This is high-level interface on top of Gmsh library to create structured meshes.
+- Gmsh_Class: Interface to Gmsh library.
+- MSHFile_Class: Reading gmsh files
+- HDF5File_Class: Writing gmsh files to HDF5 file.
+
+
+
+```fortran
+PROGRAM main
+USE GmshStructuredMesh_Class
+USE Gmsh_Class
+USE FPL
+USE GlobalData
+USE MSHFIle_Class
+USE HDF5File_Class
+
+IMPLICIT NONE
+
+TYPE(GmshStructuredMesh_) :: obj
+TYPE(Gmsh_) :: gmsh
+TYPE(ParameterList_) :: param
+! CHARACTER(*), PARAMETER :: title = "small_quad4_mesh"
+CHARACTER(*), PARAMETER :: title = "very_small_quad4_mesh"
+REAL(DFP), PARAMETER :: pointsOnAxis1(2) = [0.0, 1.0]
+REAL(DFP), PARAMETER :: pointsOnAxis2(2) = [0.0, 1.0]
+
+INTEGER(I4B), PARAMETER :: transfinitePointsOnAxis1(1) = [3]
+INTEGER(I4B), PARAMETER :: transfinitePointsOnAxis2(1) = [3]
+
+INTEGER(I4B) :: ierr
+
+TYPE(MSHFile_) :: mshFile
+TYPE(HDF5File_) :: hdf5file
+
+CALL FPL_Init()
+CALL param%Initiate()
+
+CALL SetGmshStructuredMeshParam(param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ recombineAll=.TRUE.)
+
+CALL obj%Initiate(param)
+
+ierr = gmsh%initialize()
+ierr = gmsh%model%add("GmshStructuredMesh2D")
+CALL obj%Generate(gmsh)
+! ierr = gmsh%fltk%run()
+ierr = gmsh%finalize()
+
+CALL param%DEALLOCATE()
+CALL obj%DEALLOCATE()
+
+CALL mshFile%Initiate(filename=title//'.msh', STATUS="OLD", ACTION="READ")
+CALL mshFile%OPEN()
+CALL mshFile%READ()
+CALL hdf5file%Initiate(title//'.h5', MODE="NEW")
+CALL hdf5file%OPEN()
+CALL mshFile%Export(hdf5=hdf5file, group="")
+CALL mshFile%DEALLOCATE()
+CALL hdf5file%DEALLOCATE()
+
+END PROGRAM main
+```
+
+
+
+## Creating a structured mesh of quadrangles with two regions
+
+
+
+```fortran
+PROGRAM main
+USE GmshStructuredMesh_Class
+USE Gmsh_Class
+USE FPL
+USE GlobalData
+USE MSHFile_Class
+USE HDF5File_Class
+
+IMPLICIT NONE
+
+TYPE(GmshStructuredMesh_) :: obj
+TYPE(Gmsh_) :: gmsh
+TYPE(ParameterList_) :: param
+CHARACTER(*), PARAMETER :: title = "very_small_quad4_mesh_two_region"
+REAL(DFP), PARAMETER :: pointsOnAxis1(3) = [0.0, 1.0, 2.0]
+REAL(DFP), PARAMETER :: pointsOnAxis2(2) = [0.0, 1.0]
+
+INTEGER(I4B), PARAMETER :: transfinitePointsOnAxis1(2) = [3, 3]
+INTEGER(I4B), PARAMETER :: transfinitePointsOnAxis2(1) = [2]
+
+INTEGER(I4B) :: ierr
+
+TYPE(MSHFile_) :: mshFile
+TYPE(HDF5File_) :: hdf5file
+
+CALL FPL_Init()
+CALL param%Initiate()
+
+CALL SetGmshStructuredMeshParam( &
+ param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ recombineAll=.TRUE.)
+
+CALL obj%Initiate(param)
+
+ierr = gmsh%initialize()
+ierr = gmsh%model%add("GmshStructuredMesh2D")
+CALL obj%Generate(gmsh)
+! ierr = gmsh%fltk%run()
+ierr = gmsh%finalize()
+
+CALL param%DEALLOCATE()
+CALL obj%DEALLOCATE()
+
+CALL mshFile%Initiate(filename=title//'.msh', STATUS="OLD", ACTION="READ")
+CALL mshFile%OPEN()
+CALL mshFile%READ()
+CALL hdf5file%Initiate(title//'.h5', MODE="NEW")
+CALL hdf5file%OPEN()
+CALL mshFile%Export(hdf5=hdf5file, group="")
+CALL mshFile%DEALLOCATE()
+CALL hdf5file%DEALLOCATE()
+
+END PROGRAM main
+```
+
+## Creating a structured mesh of triangles
+
+
+
+```fortran
+PROGRAM main
+USE easifemBase
+USE Gmsh_Class
+USE HDF5File_Class
+USE MSHFile_Class
+
+TYPE(Gmsh_) :: gmsh
+
+CHARACTER(LEN=*), PARAMETER :: title = "small_tri3_mesh"
+REAL(DFP), PARAMETER :: lx = 2.0
+REAL(DFP), PARAMETER :: ly = 2.0
+INTEGER(I4B), PARAMETER :: order = 1
+
+REAL(DFP), PARAMETER :: meshSize = 1.0
+REAL(DFP), PARAMETER :: corner(3) = 0.0_DFP
+INTEGER(I4B) :: ierr
+REAL(DFP) :: x, y, z, lc
+
+TYPE(MSHFile_) :: mshFile
+TYPE(HDF5File_) :: hdf5file
+
+ierr = gmsh%Initialize()
+ierr = gmsh%model%add(title)
+
+x = corner(1); y = corner(2); z = corner(3); lc = meshSize
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=1)
+
+x = x + lx; y = y; z = z; lc = lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=2)
+
+x = x; y = y + ly; z = z; lc = lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=3)
+
+x = corner(1); y = y; z = z; lc = lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=4)
+
+ierr = gmsh%model%geo%addLine(1, 2, 1)
+ierr = gmsh%model%geo%addLine(2, 3, 2)
+ierr = gmsh%model%geo%addLine(3, 4, 3)
+ierr = gmsh%model%geo%addLine(4, 1, 4)
+
+ierr = gmsh%model%geo%addCurveLoop([1, 2, 3, 4], tag=1)
+
+ierr = gmsh%model%geo%addPlaneSurface([1], 1)
+
+ierr = gmsh%model%geo%synchronize()
+
+ierr = gmsh%option%setNumber(VALUE=1, name="Mesh.SaveAll")
+ierr = gmsh%model%mesh%generate(2)
+
+ierr = gmsh%model%mesh%setOrder(order)
+
+ierr = gmsh%WRITE(title//'.msh')
+
+ierr = gmsh%Finalize()
+
+CALL mshFile%Initiate(filename=title//'.msh', STATUS="OLD", ACTION="READ")
+CALL mshFile%OPEN()
+CALL mshFile%READ()
+CALL hdf5file%Initiate(title//'.h5', MODE="NEW")
+CALL hdf5file%OPEN()
+CALL mshFile%Export(hdf5=hdf5file, group="")
+CALL mshFile%DEALLOCATE()
+CALL hdf5file%DEALLOCATE()
+
+END PROGRAM main
+```
diff --git a/docs/blog/how-to-setup-a-new-kernel-in-easifem.md b/docs/blog/how-to-setup-a-new-kernel-in-easifem.md
index f19af92b..037c3d0f 100644
--- a/docs/blog/how-to-setup-a-new-kernel-in-easifem.md
+++ b/docs/blog/how-to-setup-a-new-kernel-in-easifem.md
@@ -236,7 +236,7 @@ Create following directory in the root directory of your kernel.
3. tests: This directory will contain the test code of your kernel.
4. examples: This directory will contain the example code and tutorials of your kernel.
5. cmake: This directory will contain the cmake files necessary to build your kernel.
-6. docker: This directory will contain the docker files.
+6. docker: This directory will contain the docker files.
7. bin: This directory will contain the binary files of application based on your kernel
8. media: This directory will contain the figures and images used for the documentation
9. pages: This directory will contain the pages for documentation by using ford.
@@ -248,7 +248,7 @@ The `src` directory will contain the following directories and files.
- `modules`: This directory contains the header files of the kernel. These header files are called modules.
- `submodules`: This directory contains the `submodules` of the kernel. These `submodules` are contains the implementation of the header files.
-Let us say you want to develop a class called `Abstract1DUVSTFEM_` (note that all user defined data types end with an underscore). Then you should create a directory called `Abstract1DUVSTFEM` in the `src/modules` directory.
+Let us say you want to develop a class called `Abstract1DUVSTFEM_` (note that all user defined data types end with an underscore). Then you should create a directory called `Abstract1DUVSTFEM` in the `src/modules` directory.
Now in `Abstract1DUVSTFEM` directory create another directory called `src` which will contain the header file. In this source directory you will create `Abstract1DUVSTFEM_Class.F90`.
@@ -666,7 +666,7 @@ isActive = true
buildSystem = "cmake"
git = 'github.com/easifem/oneDimElasticity.git'
sourceDir = "${HOME}/Dropbox/easifem/oneDimElasticity"
-installDir= "${HOME}/.easifem/install/oneDimElasticity/"
+installDir = "${HOME}/.easifem/install/oneDimElasticity/"
buildType = "Debug"
buildSharedLibs = true
buildStaticLibs = true
@@ -702,4 +702,3 @@ To install the kernel with downloading the files from git, that is, by using the
```bash
easifem install oneDimElasticity --no-download
```
-
diff --git a/docs/docs-api/ARPACK/SSAUPD.md b/docs/docs-api/ARPACK/SSAUPD.md
index 7d360caf..8181a8c3 100644
--- a/docs/docs-api/ARPACK/SSAUPD.md
+++ b/docs/docs-api/ARPACK/SSAUPD.md
@@ -1,9 +1,9 @@
# SSAUPD
-Reverse communication interface (RCI) for the Implicitly Restarted Arnoldi Iteration.
+Reverse communication interface (RCI) for the Implicitly Restarted Arnoldi Iteration.
For symmetric problems this reduces to a variant of the Lanczos
-method. This method has been designed to compute approximations to a
+method. This method has been designed to compute approximations to a
few eigenpairs of a linear operator represented by matrix $\mathcal{L}$, which is real and symmetric with respect to a real positive semi-definite symmetric matrix $B$, i.e.
$$
@@ -100,7 +100,7 @@ So, we can use shift and inverted method to find the smallest value of $\lambda$
### Mode 4 (Buckling)
$$
-{K} \cdot {x} = \lambda M \cdot {x}
+{K} \cdot {x} = \lambda M \cdot {x}
$$
where,
@@ -165,7 +165,7 @@ $$
or through an iterative method for solving these systems.
- If an iterative method is used, the convergence test must be more stringent than the accuracy requirements for the eigenvalue approximations.
-:::
+ :::
## Smallest eigenvalue problem
@@ -229,7 +229,7 @@ CALL SSAUPD( &
```
| Argument | Type | Intent | Options |
-|:---------|:---------------|:-------|:--------------------------|
+| :------- | :------------- | :----- | :------------------------ |
| IDO | Int | INOUT | |
| BMAT | Char(1) | IN | I, G |
| N | Int | IN | |
@@ -260,41 +260,41 @@ These arguments are explained below.
:::caution IDO must be zero on the first call to SSAUPD.
:::
-IDO will be set internally to indicate the type of operation to be performed. Control is then given back to the calling routine which has the responsibility to carry out the requested operation and call SSAUPD with the result. The operand is given in `WORKD(IPNTR(1))`, the result must be put in `WORKD(IPNTR(2))`.
+IDO will be set internally to indicate the type of operation to be performed. Control is then given back to the calling routine which has the responsibility to carry out the requested operation and call SSAUPD with the result. The operand is given in `WORKD(IPNTR(1))`, the result must be put in `WORKD(IPNTR(2))`.
:::note If Mode = 2 see [Remark 5](#remarks)
:::
-### IDO = 0
+### IDO = 0
First call to the reverse communication interface
### IDO = -1
-Task to be performed: $y = \mathcal{L} \cdot x$, where
+Task to be performed: $y = \mathcal{L} \cdot x$, where
- `IPNTR(1)` is the pointer into `WORKD` for X,
- `IPNTR(2)` is the pointer into `WORKD` for Y.
- This is for the initialization phase to force the starting vector into the range of $\mathcal{L}$.
-### IDO = 1
+### IDO = 1
Task to be peformed: $y = \mathcal{L} \cdot x$, where
- `IPNTR(1)` is the pointer into `WORKD` for `X`,
- `IPNTR(2)` is the pointer into `WORKD` for `Y`.
-:::note In mode 3,4 and 5 , the vector $B \cdot x$ is already available in `WORKD`(ipntr(3)). It does not need to be recomputed in forming $\mathcal{L} \cdot x$.
+:::note In mode 3,4 and 5 , the vector $B \cdot x$ is already available in `WORKD`(ipntr(3)). It does not need to be recomputed in forming $\mathcal{L} \cdot x$.
:::
-### IDO = 2
+### IDO = 2
-Compute $y = B \cdot x$, where,
+Compute $y = B \cdot x$, where,
- `IPNTR(1)` is the pointer into `WORKD` for `X`,
- `IPNTR(2)` is the pointer into `WORKD` for `Y`.
-### IDO = 3
+### IDO = 3
Compute the `IPARAM(8)` shifts where `IPNTR(11)` is the pointer into `WORKL` for placing the shifts. See [Remark 6](#remarks) below.
@@ -330,7 +330,7 @@ Specify which of the Ritz values of OP to compute.
- 'SA' - compute the NEV smallest (algebraic) eigenvalues.
- 'LM' - compute the NEV largest (in magnitude) eigenvalues.
- 'SM' - compute the NEV smallest (in magnitude) eigenvalues.
-- 'BE' - compute NEV eigenvalues, half from each end of the spectrum. When NEV is odd, compute one more from the high end than from the low end. (see remark 1 below)
+- 'BE' - compute NEV eigenvalues, half from each end of the spectrum. When NEV is odd, compute one more from the high end than from the low end. (see remark 1 below)
## NEV
@@ -380,14 +380,14 @@ On OUTPUT:
:::info `NCV` should be less than or equal to `N`
:::
-Number of columns of the matrix V (less than or equal to N). This will indicate how many Lanczos vectors are generated at each iteration. After the startup phase in which `NEV` Lanczos vectors are generated, the algorithm generates `NCV-NEV` Lanczos vectors at each subsequent update iteration.
+Number of columns of the matrix V (less than or equal to N). This will indicate how many Lanczos vectors are generated at each iteration. After the startup phase in which `NEV` Lanczos vectors are generated, the algorithm generates `NCV-NEV` Lanczos vectors at each subsequent update iteration.
:::note Most of the cost in generating each Lanczos vector is in the matrix-vector product $\mathcal{L} \cdot x$. See, [Remark 4](#remarks).
:::
## V
-- Real N by NCV array
+- Real N by NCV array
- OUTPUT
The NCV columns of V contain the Lanczos basis vectors.
@@ -404,26 +404,26 @@ Leading dimension of V exactly as declared in the calling program.
- Integer array of length 11
- INOUT
-| | | Options | Safe Default | Comment |
-| --- | --- | --- | --- | --- |
-| IPARAM (1) | ISHIFT | 1,2 | 1 | IN |
-| IPARAM (2) | LEVEC | NA | NA | IN: Deprecated |
-| IPARAM (3) | MAXITER | | | IN: Max iteration allowed OUT: no. of iteration performed. |
-| IPARAM (4) | NB | 1 | 1 | IN: Number of blocks |
-| IPARAM (5) | NCONV | | | OUT: Number of converged Ritz values |
-| IPARAM (6) | IUPD | NA | NA | IN: Deprecated |
-| IPARAM (7) | MODE | 1,2,3,4,5 | | IN: Mode of eigenvalue problem |
-| IPARAM (8) | NP | | | IN: See the docs |
-| IPARAM (9) | NUMOP | | | OUT: No. of `OP*x` operations performed |
-| IPARAM (10) | NUMOPB | | | OUT: No. of `B*x` operations performed. |
-| IPARAM (11) | NUMREO | | | OUT: No. of steps of re-orthogonalization |
+| | | Options | Safe Default | Comment |
+| ----------- | ------- | --------- | ------------ | ---------------------------------------------------------- |
+| IPARAM (1) | ISHIFT | 1,2 | 1 | IN |
+| IPARAM (2) | LEVEC | NA | NA | IN: Deprecated |
+| IPARAM (3) | MAXITER | | | IN: Max iteration allowed OUT: no. of iteration performed. |
+| IPARAM (4) | NB | 1 | 1 | IN: Number of blocks |
+| IPARAM (5) | NCONV | | | OUT: Number of converged Ritz values |
+| IPARAM (6) | IUPD | NA | NA | IN: Deprecated |
+| IPARAM (7) | MODE | 1,2,3,4,5 | | IN: Mode of eigenvalue problem |
+| IPARAM (8) | NP | | | IN: See the docs |
+| IPARAM (9) | NUMOP | | | OUT: No. of `OP*x` operations performed |
+| IPARAM (10) | NUMOPB | | | OUT: No. of `B*x` operations performed. |
+| IPARAM (11) | NUMREO | | | OUT: No. of steps of re-orthogonalization |
### IPARAM(1)
- It stands for `ISHIFT`, which is method for selecting the implicit shifts.
- The shifts selected at each iteration are used to restart the Arnoldi iteration in an implicit fashion.
-- `ISHIFT = 0`: the shifts are provided by the user via reverse communication. The `NCV` eigenvalues of the current tridiagonal matrix `T` are returned in the part of `WORKL` array corresponding to RITZ. See [remark 6](#remarks).
-- `ISHIFT = 1`: exact shifts with respect to the reduced tridiagonal matrix `T`. This is equivalent to restarting the iteration with a starting vector that is a linear combination of Ritz vectors associated with the "wanted" Ritz values.
+- `ISHIFT = 0`: the shifts are provided by the user via reverse communication. The `NCV` eigenvalues of the current tridiagonal matrix `T` are returned in the part of `WORKL` array corresponding to RITZ. See [remark 6](#remarks).
+- `ISHIFT = 1`: exact shifts with respect to the reduced tridiagonal matrix `T`. This is equivalent to restarting the iteration with a starting vector that is a linear combination of Ritz vectors associated with the "wanted" Ritz values.
### IPARAM(2)
@@ -431,7 +431,7 @@ LEVEC: No longer referenced. See [remark 2](#remarks) below.
### IPARAM(3)
-- On INPUT: maximum number of Arnoldi update iterations allowed.
+- On INPUT: maximum number of Arnoldi update iterations allowed.
- On OUTPUT: actual number of Arnoldi update iterations taken.
### IPARAM(4)
@@ -461,7 +461,7 @@ LEVEC: No longer referenced. See [remark 2](#remarks) below.
### IPARAM(9)
-`NUMOP`: On OUTPUT, total number of $\mathcal{L} \cdot x$ operations
+`NUMOP`: On OUTPUT, total number of $\mathcal{L} \cdot x$ operations
### IPARAM(10)
@@ -536,7 +536,7 @@ Upon termination WORKD(1:N) contains `B*RESID(1:N)`. If the Ritz vectors are des
- Real work array of length `LWORKL`.
- OUTPUT, WORKSPACE
-Private (replicated) array on each PE or array allocated on the front end. See Data Distribution Note below.
+Private (replicated) array on each PE or array allocated on the front end. See Data Distribution Note below.
## LWORKL
@@ -563,25 +563,25 @@ Private (replicated) array on each PE or array allocated on the front end. See
On output `INFO` represents the Error flag.
-| 0 | Normal exit. |
-|:---|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| 1 | Maximum number of iterations taken. All possible eigenvalues of OP has been found. IPARAM(5) returns the number of wanted converged Ritz values. |
-| 2 | No longer an informational error. Deprecated starting with release 2 of ARPACK. |
-| 3 | No shifts could be applied during a cycle of the Implicitly restarted Arnoldi iteration. One possibility is to increase the size of NCV relative to NEV. See remark 4 below. |
-| -1 | N must be positive. |
-| -2 | NEV must be positive. |
-| -3 | NCV must be greater than NEV and less than or equal to N. |
-| -4 | The maximum number of Arnoldi update iterations allowed must be greater than zero. |
-|-5| WHICH must be one of 'LM'| 'SM'| 'LA'| 'SA' or 'BE'.|
-|-6| BMAT must be one of 'I' or 'G'.|
-|-7| Length of private work array WORKL is not sufficient.|
-|-8| Error return from trid. eigenvalue calculation. Informatinal error from LAPACK routine ssteqr.|
-|-9| Starting vector is zero.|
-|-10| IPARAM(7) must be 1|2|3|4|5.|
-|-11| IPARAM(7) = 1 and BMAT = 'G' are incompatible.|
-|-12| IPARAM(1) must be equal to 0 or 1.|
-|-13| NEV and WHICH = 'BE' are incompatible.|
-|-9999| Could not build an Arnoldi factorization. IPARAM(5) returns the size of the current Arnoldi factorization. The user is advised to check that enough workspace and array storage has been allocated.|
+| 0 | Normal exit. |
+| :---- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| 1 | Maximum number of iterations taken. All possible eigenvalues of OP has been found. IPARAM(5) returns the number of wanted converged Ritz values. |
+| 2 | No longer an informational error. Deprecated starting with release 2 of ARPACK. |
+| 3 | No shifts could be applied during a cycle of the Implicitly restarted Arnoldi iteration. One possibility is to increase the size of NCV relative to NEV. See remark 4 below. |
+| -1 | N must be positive. |
+| -2 | NEV must be positive. |
+| -3 | NCV must be greater than NEV and less than or equal to N. |
+| -4 | The maximum number of Arnoldi update iterations allowed must be greater than zero. |
+| -5 | WHICH must be one of 'LM' |
+| -6 | BMAT must be one of 'I' or 'G'. |
+| -7 | Length of private work array WORKL is not sufficient. |
+| -8 | Error return from trid. eigenvalue calculation. Informatinal error from LAPACK routine ssteqr. |
+| -9 | Starting vector is zero. |
+| -10 | IPARAM(7) must be 1 |
+| -11 | IPARAM(7) = 1 and BMAT = 'G' are incompatible. |
+| -12 | IPARAM(1) must be equal to 0 or 1. |
+| -13 | NEV and WHICH = 'BE' are incompatible. |
+| -9999 | Could not build an Arnoldi factorization. IPARAM(5) returns the size of the current Arnoldi factorization. The user is advised to check that enough workspace and array storage has been allocated. |
## Remarks
@@ -639,10 +639,10 @@ NP WORKL(IPNTR(11)+NP-1).
```
- The eigenvalues of the current tridiagonal matrix are located in
-`WORKL(IPNTR(6))` through `WORKL(IPNTR(6)+NCV-1)`.
+ `WORKL(IPNTR(6))` through `WORKL(IPNTR(6)+NCV-1)`.
- They are in the order defined by `WHICH`.
- The associated Ritz estimates are located in `WORKL(IPNTR(8))`,
-`WORKL(IPNTR(8)+1)`, ... , `WORKL(IPNTR(8)+NCV-1)`.
+ `WORKL(IPNTR(8)+1)`, ... , `WORKL(IPNTR(8)+NCV-1)`.
## References
@@ -651,6 +651,6 @@ NP WORKL(IPNTR(11)+NP-1).
3. B.N. Parlett, "The Symmetric Eigenvalue Problem". Prentice-Hall, 1980.
4. B.N. Parlett, B. Nour-Omid, "Towards a Black Box Lanczos Program", Computer Physics Communications, 53 (1989), pp 169-179.
5. B. Nour-Omid, B.N. Parlett, T. Ericson, P.S. Jensen, "How to Implement the Spectral Transformation", Math. Comp., 48 (1987), pp 663-673.
-6. R.G. Grimes, J.G. Lewis and H.D. Simon, "A Shifted Block Lanczos Algorithm for Solving Sparse Symmetric Generalized Eigenproblems", SIAM J. Matr. Anal. Apps., January (1993).
+6. R.G. Grimes, J.G. Lewis and H.D. Simon, "A Shifted Block Lanczos Algorithm for Solving Sparse Symmetric Generalized Eigenproblems", SIAM J. Matr. Anal. Apps., January (1993).
7. L. Reichel, W.B. Gragg, "Algorithm 686: FORTRAN Subroutines for Updating the QR decomposition", ACM TOMS, December 1990, Volume 16 Number 4, pp 369-377.
8. R.B. Lehoucq, D.C. Sorensen, "Implementation of Some Spectral Transformations in a k-Step Arnoldi Method". In Preparation.
diff --git a/docs/docs-api/ARPACK/SSEUPD.md b/docs/docs-api/ARPACK/SSEUPD.md
index f7df7a28..44fd03a2 100644
--- a/docs/docs-api/ARPACK/SSEUPD.md
+++ b/docs/docs-api/ARPACK/SSEUPD.md
@@ -12,26 +12,26 @@ Optionally, it can also return:
An orthonormal (Lanczos) basis is always computed. There is an additional storage cost of `n*nev` if both are requested (in this case a separate array Z must be supplied).
:::
-These quantities are obtained from the Lanczos factorization computed by [SSAUPD](SSAUPD.md) for the linear operator `OP` prescribed by the `MODE` selection, see [IPARAM(7)](SSAUPD.md#iparam7) in SSAUPD documentation. Therefore, `SSAUPD` must be called before this routine is called. These approximate eigenvalues and vectors are commonly called `Ritz values` and `Ritz vectors` respectively. They are referred to as such in the comments that follow.
+These quantities are obtained from the Lanczos factorization computed by [SSAUPD](SSAUPD.md) for the linear operator `OP` prescribed by the `MODE` selection, see [IPARAM(7)](SSAUPD.md#iparam7) in SSAUPD documentation. Therefore, `SSAUPD` must be called before this routine is called. These approximate eigenvalues and vectors are commonly called `Ritz values` and `Ritz vectors` respectively. They are referred to as such in the comments that follow.
The computed orthonormal basis for the invariant subspace corresponding to these Ritz values is referred to as a Lanczos basis.
-See documentation in the header of the subroutine SSAUPD for a definition of OP as well as other terms and the relation of computed Ritz values and vectors of OP with respect to the given problem `A*z = lambda*B*z`.
+See documentation in the header of the subroutine SSAUPD for a definition of OP as well as other terms and the relation of computed Ritz values and vectors of OP with respect to the given problem `A*z = lambda*B*z`.
-The approximate eigenvalues of the original problem are returned in ascending algebraic order. The user may elect to call this routine once for each desired Ritz vector and store it peripherally if desired.
+The approximate eigenvalues of the original problem are returned in ascending algebraic order. The user may elect to call this routine once for each desired Ritz vector and store it peripherally if desired.
There is also the option of computing a selected set of these vectors with a single call.
## Usage
```fortran
- CALL SSEUPD( &
- & RVEC, HOWMNY, SELECT, &
- & D, Z, LDZ, SIGMA, BMAT, &
- & N, WHICH, NEV, TOL, RESID, &
- & NCV, V, LDV, IPARAM, &
- & IPNTR, WORKD, WORKL, &
- & LWORKL, INFO )
+CALL SSEUPD( &
+ & RVEC, HOWMNY, SELECT, &
+ & D, Z, LDZ, SIGMA, BMAT, &
+ & N, WHICH, NEV, TOL, RESID, &
+ & NCV, V, LDV, IPARAM, &
+ & IPNTR, WORKD, WORKL, &
+ & LWORKL, INFO )
```
RVEC, LOGICAL, INPUT
@@ -43,10 +43,10 @@ RVEC, LOGICAL, INPUT
Specifies whether Ritz vectors corresponding to the Ritz value approximations to the eigenproblem `A*z = lambda*B*z` are computed.
-|RVEC| task|
-|---|---|
-|`.FALSE.`| Compute Ritz values only.|
-|`.TRUE.`| Compute Ritz vectors.|
+| RVEC | task |
+| --------- | ------------------------- |
+| `.FALSE.` | Compute Ritz values only. |
+| `.TRUE.` | Compute Ritz vectors. |
## HOWMNY
@@ -83,7 +83,7 @@ If `HOWMNY = 'A'`, `SELECT` is used as a workspace for reordering the Ritz value
On exit, Z contains the B-orthonormal Ritz vectors of the eigensystem `A*z = lambda*B*z` corresponding to the Ritz value approximations.
-:::info If `RVEC = .FALSE.` then Z is not referenced.
+:::info If `RVEC = .FALSE.` then Z is not referenced.
:::
:::note The array `Z` may be set equal to first `NEV` columns of the Arnoldi/Lanczos basis array `V` computed by SSAUPD.
@@ -94,7 +94,7 @@ On exit, Z contains the B-orthonormal Ritz vectors of the eigensystem `A*z = lam
- Type: Integer.
- Intent: INPUT
-The leading dimension of the array Z. If Ritz vectors are desired, then `LDZ .ge. max( 1, N )`. In any case, `LDZ .ge. 1`.
+The leading dimension of the array Z. If Ritz vectors are desired, then `LDZ .ge. max( 1, N )`. In any case, `LDZ .ge. 1`.
## SIGMA
@@ -133,11 +133,11 @@ Two of these parameters (`WORKL`, `INFO`) are also output parameters:
## WORKL
-Real work array of length LWORKL. (OUTPUT/WORKSPACE)
+Real work array of length LWORKL. (OUTPUT/WORKSPACE)
-- `WORKL(1:4*ncv)` contains information obtained in `ssaupd`. They are not changed by `sseupd`.
+- `WORKL(1:4*ncv)` contains information obtained in `ssaupd`. They are not changed by `sseupd`.
- `WORKL(4*ncv+1:ncv*ncv+8*ncv)` holds the untransformed Ritz values, the computed error estimates,
-and the associated eigenvector matrix of H.
+ and the associated eigenvector matrix of H.
:::note `IPNTR(8:10)` contains the pointer into `WORKL` for addresses of the above information computed by SSEUPD.
:::
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_2.md b/docs/docs-api/ARPACK/_ARPACK_test_2.md
index 47b6ca37..3ae82268 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_2.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_2.md
@@ -13,20 +13,20 @@ Implicit none
Arguments to SAUPD
| Argument | Type | Intent | Value |
-|----------|----------------|--------|-------------------------|
+| -------- | -------------- | ------ | ----------------------- |
| IDO | Int | INOUT | 0 |
-| BMAT | Char(1) | IN | I |
+| BMAT | Char(1) | IN | I |
| N | Int | IN | SIZE(A,1) |
| WHICH | Char(2) | IN | LA |
| NEV | Int | IN | 1 |
| TOL | Real32 | IN | 1.0E-10 |
-| RESID | Real32(N) | INOUT | NA, as info `.EQ.` 0 |
-| NCV | Int | IN | `3*N` |
+| RESID | Real32(N) | INOUT | NA, as info `.EQ.` 0 |
+| NCV | Int | IN | `3*N` |
| V | Real32(N, NCV) | OUT | |
| LDV | Int | IN | SIZE(V,1) |
| IPARAM | Int (11) | INOUT | See below |
| IPNTR | Int (11) | OUT | NA |
-| WORKD | Real32(`3*N`) | INOUT | NA |
+| WORKD | Real32(`3*N`) | INOUT | NA |
| WORKL | Real32(LWORKL) | OUT | NA |
| LWORKL | Int | IN | at least NCV**2 + 8*NCV |
| INFO | Int | INOUT | 0 |
@@ -34,7 +34,7 @@ Arguments to SAUPD
Arguments to IPARAM:
| | | Options | Selected value | Intent |
-|-------------|---------|-----------|----------------|----------------|
+| ----------- | ------- | --------- | -------------- | -------------- |
| IPARAM (1) | ISHIFT | 1,2 | 1 | IN |
| IPARAM (2) | LEVEC | | | IN: Deprecated |
| IPARAM (3) | MAXITER | | `3*N` | IN |
@@ -58,10 +58,10 @@ INTEGER( I4B ) :: ncv
Getting the algebraic largest eigenvalue of a diagonal matrix.
```fortran title="Algebraic Largest Eigenvalue"
- mat = zeros(100,100, 1.0_DFP)
- call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
- maxEV = SymLargestEigenVal(mat=mat)
- CALL Display(maxEV, "maxEV=")
+mat = zeros(100,100, 1.0_DFP)
+call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
+maxEV = SymLargestEigenVal(mat=mat)
+CALL Display(maxEV, "maxEV=")
```
Getting the absolute largest eigenvalue of a diagonal matrix. In this case we
@@ -72,10 +72,10 @@ default value of `which` is `"LA"` which stands for largest ALGEBRAIC eigenvalue
:::
```fortran title="Absolute Largest Eigenvalue"
- call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
- mat(SIZE(mat,1), SIZE(mat,2) ) = -1000
- maxEV = SymLargestEigenVal(mat=mat, which="LM" )
- CALL Display(maxEV, "max absolute EV=")
+call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
+mat(SIZE(mat,1), SIZE(mat,2) ) = -1000
+maxEV = SymLargestEigenVal(mat=mat, which="LM" )
+CALL Display(maxEV, "max absolute EV=")
```
:::caution When `which="LA"`, the returned eigenvalue can be positive.
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_3.md b/docs/docs-api/ARPACK/_ARPACK_test_3.md
index 958bda04..aa6e4fc1 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_3.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_3.md
@@ -11,52 +11,52 @@ implicit none
## Declare variables
```fortran
- real( dfp ) :: maxev
- real( dfp ), allocatable :: mat(:,:)
- integer( i4b ) :: ncv
- integer(I4B) :: nx, ny, n, ii
- integer(I4B), allocatable :: dbcnptrs(:)
- real(DFP) :: inv_dx2
+real( dfp ) :: maxev
+real( dfp ), allocatable :: mat(:,:)
+integer( i4b ) :: ncv
+integer(I4B) :: nx, ny, n, ii
+integer(I4B), allocatable :: dbcnptrs(:)
+real(DFP) :: inv_dx2
```
```fortran title="declare variables"
- nx = 10; ny=nx; n = nx*ny
- inv_dx2 = 1.0 !REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
+nx = 10; ny=nx; n = nx*ny
+inv_dx2 = 1.0 !REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
```
```fortran title="make diffusion matrix"
- mat = zeros(n,n, 1.0_DFP)
- call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
- call GetSym(mat=mat, from="U")
+mat = zeros(n,n, 1.0_DFP)
+call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
+call GetSym(mat=mat, from="U")
```
```fortran title="display matrix"
- call display( MdEncode(mat(1:5, 1:5)), "mat(1:5, 1:5) = " )
+call display( MdEncode(mat(1:5, 1:5)), "mat(1:5, 1:5) = " )
```
```fortran title="apply dirichlet boundary condition"
- dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
- & .APPEND. &
- & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
+dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
+ & .APPEND. &
+ & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
```
```fortran title="applying dirichlet boundary condition"
- mat(:, dbcnptrs) = 0.0_DFP
- mat(dbcnptrs, :) = 0.0_DFP
- do concurrent(ii=1:size(dbcnptrs))
- mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
- end do
+mat(:, dbcnptrs) = 0.0_DFP
+mat(dbcnptrs, :) = 0.0_DFP
+do concurrent(ii=1:size(dbcnptrs))
+ mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
+end do
```
```fortran title="display matrix"
- call display( MdEncode(mat(1:5, 1:5)), "mat(1:5, 1:5) = " )
+call display( MdEncode(mat(1:5, 1:5)), "mat(1:5, 1:5) = " )
```
```fortran title="Calculate absolute largest eigenvalue"
- maxEV = SymLargestEigenVal(mat=mat, which="LM")
- call Display(maxEV, "maxEV=")
+maxEV = SymLargestEigenVal(mat=mat, which="LM")
+call Display(maxEV, "maxEV=")
```
results
@@ -64,7 +64,7 @@ results
mat(1:5, 1:5) =
| | | | | |
-|----|----|----|----|----|
+| -- | -- | -- | -- | -- |
| 4 | -1 | 0 | 0 | 0 |
| -1 | 4 | -1 | 0 | 0 |
| 0 | -1 | 4 | -1 | 0 |
@@ -74,7 +74,7 @@ mat(1:5, 1:5) =
mat(1:5, 1:5) =
| | | | | |
-|---|---|---|---|---|
+| - | - | - | - | - |
| 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_4.md b/docs/docs-api/ARPACK/_ARPACK_test_4.md
index b0e4cdd2..bf55b234 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_4.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_4.md
@@ -20,10 +20,10 @@ INTEGER( I4B ) :: ncv
Getting the first five algebraic largest eigenvalues of a diagonal matrix.
```fortran title="Algebraic Largest Eigenvalue"
- mat = zeros(100,100, 1.0_DFP)
- call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
- maxEV = SymLargestEigenVal(mat=mat, nev=5)
- CALL Display(maxEV, "maxEV=")
+mat = zeros(100,100, 1.0_DFP)
+call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
+maxEV = SymLargestEigenVal(mat=mat, nev=5)
+CALL Display(maxEV, "maxEV=")
```
```txt title="results"
@@ -44,10 +44,10 @@ default value of `which` is `"LA"` which stands for largest absolute eigenvalue.
:::
```fortran title="Absolute Largest Eigenvalue"
- call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
- mat(SIZE(mat,1), SIZE(mat,2) ) = -1000
- maxEV = SymLargestEigenVal(mat=mat, nev=5, which="LM" )
- CALL Display(maxEV, "max absolute EV=")
+call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
+mat(SIZE(mat,1), SIZE(mat,2) ) = -1000
+maxEV = SymLargestEigenVal(mat=mat, nev=5, which="LM" )
+CALL Display(maxEV, "max absolute EV=")
```
```txt title="results"
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_5.md b/docs/docs-api/ARPACK/_ARPACK_test_5.md
index faed851d..77957df3 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_5.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_5.md
@@ -13,44 +13,44 @@ implicit none
## Declare variables
```fortran
- integer( i4b ) :: nev
- real( dfp ), allocatable :: mat(:,:), eigenVal(:)
- integer( i4b ) :: ncv
- integer(I4B) :: nx, ny, n, ii
- integer(I4B), allocatable :: dbcnptrs(:)
- real(DFP) :: inv_dx2
+integer( i4b ) :: nev
+real( dfp ), allocatable :: mat(:,:), eigenVal(:)
+integer( i4b ) :: ncv
+integer(I4B) :: nx, ny, n, ii
+integer(I4B), allocatable :: dbcnptrs(:)
+real(DFP) :: inv_dx2
```
```fortran title="declare variables"
- nev = 5; nx = 10; ny=nx; n = nx*ny
- inv_dx2 = 1.0 !REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
+nev = 5; nx = 10; ny=nx; n = nx*ny
+inv_dx2 = 1.0 !REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
```
```fortran title="make diffusion matrix"
- mat = zeros(n,n, 1.0_DFP)
- call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
- call GetSym(mat=mat, from="U")
+mat = zeros(n,n, 1.0_DFP)
+call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
+call GetSym(mat=mat, from="U")
```
```fortran title="apply dirichlet boundary condition"
- dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
- & .APPEND. &
- & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
+dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
+ & .APPEND. &
+ & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
```
```fortran title="applying dirichlet boundary condition"
- mat(:, dbcnptrs) = 0.0_DFP
- mat(dbcnptrs, :) = 0.0_DFP
- do concurrent(ii=1:size(dbcnptrs))
- mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
- end do
+mat(:, dbcnptrs) = 0.0_DFP
+mat(dbcnptrs, :) = 0.0_DFP
+do concurrent(ii=1:size(dbcnptrs))
+ mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
+end do
```
```fortran title="Calculate absolute largest eigenvalue"
- eigenVal = SymLargestEigenVal(mat=mat, which="LM", nev=nev)
- call Display(eigenVal, "maxEV=")
+eigenVal = SymLargestEigenVal(mat=mat, which="LM", nev=nev)
+call Display(eigenVal, "maxEV=")
```
```txt title="results"
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_6.md b/docs/docs-api/ARPACK/_ARPACK_test_6.md
index a2649dcd..a03255a7 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_6.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_6.md
@@ -26,11 +26,11 @@ Getting the ALGEBRAIC Smallest eigen
```fortran {4}
- mat = zeros(100,100, 1.0_DFP)
- call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
- mat(1,1) = -1
- minEigenVal = SymSmallestEigenVal(mat=mat )
- CALL Display(minEigenVal, "smallest Algebraic eigen val =")
+mat = zeros(100,100, 1.0_DFP)
+call SetDiag(mat=mat, d=arange(1, SIZE(mat,1)), diagNo=0)
+mat(1,1) = -1
+minEigenVal = SymSmallestEigenVal(mat=mat )
+CALL Display(minEigenVal, "smallest Algebraic eigen val =")
```
@@ -57,8 +57,8 @@ smallest Algebraic eigen val =2.00000
```fortran
- minEigenVal = SymSmallestEigenVal(mat=mat, which="SM")
- call display(minEigenVal, "smallest absolute eigen val=")
+minEigenVal = SymSmallestEigenVal(mat=mat, which="SM")
+call display(minEigenVal, "smallest absolute eigen val=")
```
diff --git a/docs/docs-api/ARPACK/_ARPACK_test_7.md b/docs/docs-api/ARPACK/_ARPACK_test_7.md
index d867ee3f..9036b82a 100644
--- a/docs/docs-api/ARPACK/_ARPACK_test_7.md
+++ b/docs/docs-api/ARPACK/_ARPACK_test_7.md
@@ -34,51 +34,51 @@ implicit none
## Declare variables
```fortran
- real( dfp ) :: eigenVal
- real( dfp ), allocatable :: mat(:,:)
- integer( i4b ) :: ncv
- integer(I4B) :: nx, ny, n, ii
- integer(I4B), allocatable :: dbcnptrs(:)
- real(DFP) :: inv_dx2
+real( dfp ) :: eigenVal
+real( dfp ), allocatable :: mat(:,:)
+integer( i4b ) :: ncv
+integer(I4B) :: nx, ny, n, ii
+integer(I4B), allocatable :: dbcnptrs(:)
+real(DFP) :: inv_dx2
```
```fortran title="declare variables"
- nx = 10; ny=nx; n = nx*ny
- inv_dx2 = REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
+nx = 10; ny=nx; n = nx*ny
+inv_dx2 = REAL(nx-1, kind=DFP) * REAL(nx-1, kind=DFP)
```
```fortran title="make diffusion matrix"
- mat = zeros(n,n, 1.0_DFP)
- call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
- call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
- call GetSym(mat=mat, from="U")
+mat = zeros(n,n, 1.0_DFP)
+call SetDiag(mat=mat, d=inv_dx2 * [4.0], diagNo=0)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=1)
+call SetDiag(mat=mat, d=inv_dx2 * [-1.0], diagNo=5)
+call GetSym(mat=mat, from="U")
```
```fortran title="apply dirichlet boundary condition"
- dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
- & .APPEND. &
- & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
+dbcnptrs = (arange(2, nx-1, 1) .APPEND. arange(n-nx+2, n-1, 1)) &
+ & .APPEND. &
+ & (arange(1, nx*ny, nx ) .APPEND. arange(nx, nx*(ny-1)+1, nx))
```
```fortran title="applying dirichlet boundary condition"
- mat(:, dbcnptrs) = 0.0_DFP
- mat(dbcnptrs, :) = 0.0_DFP
- do concurrent(ii=1:size(dbcnptrs))
- mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
- end do
+mat(:, dbcnptrs) = 0.0_DFP
+mat(dbcnptrs, :) = 0.0_DFP
+do concurrent(ii=1:size(dbcnptrs))
+ mat(dbcnptrs(ii), dbcnptrs(ii)) = 1.0_DFP
+end do
```
```fortran title="Calculate ABSOLUTE smallest eigenvalue"
- eigenVal = SymSmallestEigenVal(mat=mat, which="SM")
- call Display(eigenVal, "eigenVal, SM =")
+eigenVal = SymSmallestEigenVal(mat=mat, which="SM")
+call Display(eigenVal, "eigenVal, SM =")
```
eigenVal=1.0
```fortran title="Calculate ALGEBRAIC smallest eigenvalue"
- eigenVal = SymSmallestEigenVal(mat=mat, which="SA")
- call Display(eigenVal, "eigenVal, SA =")
+eigenVal = SymSmallestEigenVal(mat=mat, which="SA")
+call Display(eigenVal, "eigenVal, SA =")
```
eigenVal=1.0
diff --git a/docs/docs-api/AbstractBC/CheckEssentialParam.md b/docs/docs-api/AbstractBC/CheckEssentialParam.md
index 070ac9a4..5856c318 100644
--- a/docs/docs-api/AbstractBC/CheckEssentialParam.md
+++ b/docs/docs-api/AbstractBC/CheckEssentialParam.md
@@ -6,8 +6,6 @@ Check essential parameters required for constructing the [AbstractBC](./Abstract
This routine is for internal use only.
:::
- @ConstructorMethods
-
## Interface
```fortran
diff --git a/docs/docs-api/AbstractDomain/AbstractDomain_.md b/docs/docs-api/AbstractDomain/AbstractDomain_.md
index 93b6c75f..557cc6fb 100644
--- a/docs/docs-api/AbstractDomain/AbstractDomain_.md
+++ b/docs/docs-api/AbstractDomain/AbstractDomain_.md
@@ -70,10 +70,33 @@ TYPE, ABSTRACT :: AbstractDomain_
END TYPE AbstractDomain_
```
-## What is the difference between domain and mesh
+| Field Name | Description |
+|------------|-------------|
+| showTime | Logical flag to show time taken by various routines when set to true |
+| isInitiated | Logical flag indicating if the domain has been initiated |
+| engine | String containing the name of the engine used for generating the meshes |
+| majorVersion | Major version number |
+| minorVersion | Minor version number |
+| version | Version number (MajorVersion.MinorVersion) |
+| nsd | Number of spatial dimensions |
+| maxNptrs | Largest node number in the domain |
+| minNptrs | Smallest node number in the domain |
+| tNodes | Total number of nodes in the mesh |
+| isNodeNumberSparse | True if node numbers are not continuous |
+| maxElemNum | Largest element number in the domain |
+| minElemNum | Smallest element number in the domain |
+| isElemNumberSparse | True if element numbers are sparse |
+| tEntitiesForNodes | Total number of entities required for reading nodes |
+| tEntitiesForElements | Total number of entities required for reading elements |
+| tElements | Array containing total number of elements inside the domain by dimension (point, line, surface, volume) |
+| tEntities | Array containing total number of entities inside the domain by dimension (point, line, surface, volume) |
+| nodeCoord | Nodal coordinates in XiJ format (rows are coordinates, columns are nodes) |
+| kdtree | Pointer to Kdtree2_ structure for spatial queries |
+| kdresult | Array storing Kdtree query results |
+## What is the difference between domain and mesh
-A mesh is a collection of same topological order, that is,
+A mesh is a collection of same topological order, that is,
- a mesh of volume elements
- a mesh of surface elements
@@ -81,3 +104,4 @@ A mesh is a collection of same topological order, that is,
- a mesh of point elements
The element number and the node number in the mesh can be sparse. Therefore, we need to create a mapping from local numbering to global numbering. The mesh data does not contain any node coordinate information. The node coordinate data is available in `Domain`. It is stored inside `nodeCoord` array in `xij` format. We need global node number to access the entries in nodeCoord. These global node numbers are stored inside the mesh.
+
diff --git a/docs/docs-api/AbstractDomain/index.md b/docs/docs-api/AbstractDomain/index.md
index 56763f36..e6ec55b2 100644
--- a/docs/docs-api/AbstractDomain/index.md
+++ b/docs/docs-api/AbstractDomain/index.md
@@ -18,9 +18,66 @@ tags:
`AbstractDomain` is defined by a collection of the meshes of different dimensions (such as 1, 2, 3). It represents the finite element computation domain.
+## Summary of methods
+
+
+### GetMethods
+
+| Method Name | Description |
+|-------------|-------------|
+| GetMeshPointer | Returns pointer to the mesh in the domain |
+| IsNodePresent | Checks if a node is present in domain |
+| IsElementPresent | Checks if an element is present in domain |
+| GetConnectivity | Gets the vertex connectivity |
+| GetConnectivity_ | Gets the vertex connectivity (subroutine version) |
+| GetNNE | Gets number of nodes/vertices in element |
+| GetNodeToElements | Gets list of elements connected to specified node(s) |
+| GetNodeToElements_ | Gets list of elements connected to specified node(s) (subroutine version) |
+| GetTotalNodes | Returns the total number of nodes in domain/mesh/part |
+| .tNodes. | Operator for getting total nodes |
+| GetTotalElements | Returns the total number of elements in domain/mesh/part |
+| .tElements. | Operator for getting total elements |
+| GetLocalNodeNumber | Gets local node numbers stored in the domain |
+| GetGlobalNodeNumber | Returns global node number from local node number |
+| GetTotalEntities | Returns total number of mesh entities |
+| GetTotalMesh | Returns total number of mesh entities (deprecated) |
+| GetDimEntityNum | Returns dim and entity-num of mesh containing element |
+| GetNodeCoord | Returns nodal coordinates |
+| GetNodeCoordPointer | Returns pointer to nodal coordinates |
+| GetNearestNode | Gets the nearest node(s) to a given point |
+| GetNptrs | Returns node numbers (function version) |
+| GetNptrs_ | Returns node numbers (subroutine version) |
+| GetInternalNptrs | Returns internal node numbers |
+| GetNptrsInBox | Gets node numbers in a bounding box |
+| GetNptrsInBox_ | Gets node numbers in a box with allocation |
+| GetBoundingBox | Returns bounding box |
+| GetNSD | Returns the spatial dimension |
+| GetOrder | Gets order information |
+| GetTotalMeshFacetData | Gets size of mesh facet data |
+| GetTotalMaterial | Gets total number of materials |
+| GetElemType | Returns element type of each mesh |
+| GetUniqueElemType | Returns unique element types in the mesh |
+| IsInit | Returns initialization status |
+| GetMaxNodeNumber | Returns maximum node number |
+| GetMinNodeNumber | Returns minimum node number |
+| GetMaxElemNumber | Returns maximum element number |
+| GetMinElemNumber | Returns minimum element number |
+| GetParam | Returns various parameters |
+
+### Constructor Methods
+
+| Method Name | Description |
+|-------------|-------------|
+| Initiate | Initiates an instance of domain |
+| DEALLOCATE | Deallocates data stored inside an instance of domain |
+| DeallocateKdtree | Deallocates kdtree related data |
+| IMPORT | Initiates an instance of domain by importing data from meshfile |
+| ImportFromToml | Initiates an instance of domain by importing meshfile name from Toml file |
+| Display | Displays the domain information |
+| DisplayDomainInfo | Displays detailed domain information |
+
## All methods
import DocCardList from '@theme/DocCardList';
-
diff --git a/docs/docs-api/AbstractField/CheckEssentialParam.md b/docs/docs-api/AbstractField/CheckEssentialParam.md
index 7ed47fb6..fd250aa2 100644
--- a/docs/docs-api/AbstractField/CheckEssentialParam.md
+++ b/docs/docs-api/AbstractField/CheckEssentialParam.md
@@ -13,5 +13,3 @@ SUBROUTINE checkEssentialParam( obj, param )
END SUBROUTINE checkEssentialParam
END INTERFACE
```
-
-
diff --git a/docs/docs-api/AbstractField/Display.md b/docs/docs-api/AbstractField/Display.md
index ed28f5ca..897449ba 100644
--- a/docs/docs-api/AbstractField/Display.md
+++ b/docs/docs-api/AbstractField/Display.md
@@ -14,5 +14,3 @@ SUBROUTINE Display( obj, msg, unitNo )
END SUBROUTINE Display
END INTERFACE
```
-
-
diff --git a/docs/docs-api/AbstractField/Import.md b/docs/docs-api/AbstractField/Import.md
index 9d44b169..53b317c5 100644
--- a/docs/docs-api/AbstractField/Import.md
+++ b/docs/docs-api/AbstractField/Import.md
@@ -15,5 +15,3 @@ SUBROUTINE Import( obj, hdf5, group, dom )
END SUBROUTINE Import
END INTERFACE
```
-
-
diff --git a/docs/docs-api/AbstractField/index.md b/docs/docs-api/AbstractField/index.md
index 63ed2fba..8b29deec 100644
--- a/docs/docs-api/AbstractField/index.md
+++ b/docs/docs-api/AbstractField/index.md
@@ -17,7 +17,6 @@ tags:
# AbstractField
-
## Methods
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/AbstractFile/AbstractFile_.md b/docs/docs-api/AbstractFile/AbstractFile_.md
index fca9ff2c..6ffe8a7d 100644
--- a/docs/docs-api/AbstractFile/AbstractFile_.md
+++ b/docs/docs-api/AbstractFile/AbstractFile_.md
@@ -68,7 +68,6 @@ END INTERFACE
Method to delete a file. The generic interface is given below.
```fortran
-
ABSTRACT INTERFACE
SUBROUTINE Delete(obj)
IMPORT :: AbstractFile_
@@ -84,14 +83,12 @@ END INTERFACE
Add surrogate to the module error handler.
```fortran
-
INTERFACE
MODULE SUBROUTINE addSurrogate( obj, UserObj )
CLASS( AbstractFile_ ), INTENT( INOUT ) :: obj
TYPE( ExceptionHandler_ ), INTENT( IN ) :: UserObj
END SUBROUTINE addSurrogate
END INTERFACE
-
```
### Deallocate
@@ -105,7 +102,6 @@ MODULE SUBROUTINE Deallocate( obj, delete )
LOGICAL( LGT ), OPTIONAL, INTENT( IN ) :: delete
END SUBROUTINE Deallocate
END INTERFACE
-
```
## SetMethods
@@ -134,7 +130,6 @@ MODULE SUBROUTINE setFileName( obj, fileName )
TYPE( String ), INTENT( IN ) :: fileName
END SUBROUTINE setFileName
END INTERFACE
-
```
### SetFileExt
@@ -174,7 +169,6 @@ MODULE SUBROUTINE setOpenStat( obj, stat )
LOGICAL( LGT ), INTENT( IN ) :: stat
END SUBROUTINE setOpenStat
END INTERFACE
-
```
### SetReadStat
@@ -188,7 +182,6 @@ MODULE SUBROUTINE setReadStat( obj, stat )
LOGICAL( LGT ), INTENT( IN ) :: stat
END SUBROUTINE setReadStat
END INTERFACE
-
```
### SetWriteStat
@@ -202,7 +195,6 @@ MODULE SUBROUTINE setWriteStat( obj, stat )
LOGICAL( LGT ), INTENT( IN ) :: stat
END SUBROUTINE setWriteStat
END INTERFACE
-
```
## GetMethods
@@ -231,7 +223,6 @@ MODULE FUNCTION getFileName( obj ) RESULT( fileName )
TYPE( String ) :: fileName
END FUNCTION getFileName
END INTERFACE
-
```
### GetFileExt
@@ -245,7 +236,6 @@ MODULE FUNCTION getFileExt( obj ) RESULT( Ext )
TYPE( String ) :: Ext
END FUNCTION getFileExt
END INTERFACE
-
```
### GetFileParts
@@ -261,7 +251,6 @@ MODULE PURE SUBROUTINE getFileParts( obj, path, fileName, ext )
TYPE( String ), INTENT( OUT ) :: ext
END SUBROUTINE getFileParts
END INTERFACE
-
```
## EnquireMethods
@@ -316,5 +305,4 @@ MODULE FUNCTION isWrite( obj ) RESULT( ans )
LOGICAL( LGT ) :: ans
END FUNCTION isWrite
END INTERFACE
-
```
diff --git a/docs/docs-api/AbstractKernel/Set.md b/docs/docs-api/AbstractKernel/Set.md
index 15e20a68..fa3ff038 100644
--- a/docs/docs-api/AbstractKernel/Set.md
+++ b/docs/docs-api/AbstractKernel/Set.md
@@ -1,6 +1,6 @@
# Set
-This subroutine sets the option of the kernel and build the kernel.
+This subroutine sets the option of the kernel and build the kernel.
We can start the main computation after calling `Set`. In this way, the call to this subroutine indicates that all the options have been set to the kernel, and it is ready to be used.
diff --git a/docs/docs-api/AbstractLinSolver/Deallocate.md b/docs/docs-api/AbstractLinSolver/Deallocate.md
index adfcda4d..d79c03cc 100644
--- a/docs/docs-api/AbstractLinSolver/Deallocate.md
+++ b/docs/docs-api/AbstractLinSolver/Deallocate.md
@@ -12,5 +12,3 @@ INTERFACE
END SUBROUTINE Deallocate
END INTERFACE
```
-
-
diff --git a/docs/docs-api/AbstractLinSolver/Initiate.md b/docs/docs-api/AbstractLinSolver/Initiate.md
index 815e53a3..a826b2bb 100644
--- a/docs/docs-api/AbstractLinSolver/Initiate.md
+++ b/docs/docs-api/AbstractLinSolver/Initiate.md
@@ -13,6 +13,3 @@ INTERFACE
END SUBROUTINE Initiate
END INTERFACE
```
-
-
-
diff --git a/docs/docs-api/AbstractLinSolver/SetParam.md b/docs/docs-api/AbstractLinSolver/SetParam.md
index 653e08bb..cca1cde1 100644
--- a/docs/docs-api/AbstractLinSolver/SetParam.md
+++ b/docs/docs-api/AbstractLinSolver/SetParam.md
@@ -72,5 +72,4 @@ INTERFACE
!! Pointer to child of [[AbstractMatrixField_]]
END SUBROUTINE SetParam
END INTERFACE
-
```
diff --git a/docs/docs-api/AbstractMaterialModel/index.md b/docs/docs-api/AbstractMaterialModel/index.md
index 543833d6..d499facb 100644
--- a/docs/docs-api/AbstractMaterialModel/index.md
+++ b/docs/docs-api/AbstractMaterialModel/index.md
@@ -17,4 +17,4 @@ tags:
import DocCardList from '@theme/DocCardList';
-
\ No newline at end of file
+
diff --git a/docs/docs-api/AbstractMatrixField/GetColumn.md b/docs/docs-api/AbstractMatrixField/GetColumn.md
index 136a0da7..05e3627f 100644
--- a/docs/docs-api/AbstractMatrixField/GetColumn.md
+++ b/docs/docs-api/AbstractMatrixField/GetColumn.md
@@ -10,7 +10,6 @@ Calling example:
- `GetColumn(obj, globalnode(:), ivar, spacecompo, timecompo(:), value(:), nodefieldval, scale, addcontribution`
- `GetColumn(obj, globalnode(:), ivar, spacecompo(:), timecompo, value(:), nodefieldval, scale, addcontribution`
-
## Interface
```fortran
diff --git a/docs/docs-api/AbstractMatrixField/GetRow.md b/docs/docs-api/AbstractMatrixField/GetRow.md
index 688c855c..2c966d3c 100644
--- a/docs/docs-api/AbstractMatrixField/GetRow.md
+++ b/docs/docs-api/AbstractMatrixField/GetRow.md
@@ -10,7 +10,6 @@ Calling example:
- `GetRow(obj, globalnode(:), ivar, spacecompo, timecompo(:), value(:), nodefieldval, scale, addcontribution`
- `GetRow(obj, globalnode(:), ivar, spacecompo(:), timecompo, value(:), nodefieldval, scale, addcontribution`
-
# Interface
```fortran
@@ -47,7 +46,6 @@ END INTERFACE
```
```fortran
-
INTERFACE
SUBROUTINE getRow3(obj, globalNode, ivar, spacecompo, timecompo, &
& VALUE, nodeFieldVal, scale, addContribution)
@@ -66,7 +64,6 @@ END INTERFACE
```
```fortran
-
INTERFACE
SUBROUTINE getRow4(obj, globalNode, ivar, spacecompo, timecompo, &
& VALUE, nodeFieldVal, scale, addContribution)
@@ -85,7 +82,6 @@ END INTERFACE
```
```fortran
-
INTERFACE
SUBROUTINE getRow5(obj, globalNode, ivar, spacecompo, timecompo, &
& VALUE, nodeFieldVal, scale, addContribution)
@@ -104,7 +100,6 @@ END INTERFACE
```
```fortran
-
INTERFACE
SUBROUTINE getRow6(obj, globalNode, ivar, spacecompo, timecompo, &
& VALUE, nodeFieldVal, scale, addContribution)
@@ -123,7 +118,6 @@ END INTERFACE
```
```fortran
-
INTERFACE
SUBROUTINE getRow7(obj, globalNode, ivar, spacecompo, timecompo, &
& VALUE, nodeFieldVal, scale, addContribution)
diff --git a/docs/docs-api/AbstractMatrixField/ILUSolve.md b/docs/docs-api/AbstractMatrixField/ILUSolve.md
index 9c786308..f6d4f612 100644
--- a/docs/docs-api/AbstractMatrixField/ILUSolve.md
+++ b/docs/docs-api/AbstractMatrixField/ILUSolve.md
@@ -30,7 +30,6 @@ INTERFACE
END INTERFACE
```
-
```fortran
! If transp is not present or it is false then:
! This routine solves (LU) sol = rhs
diff --git a/docs/docs-api/AbstractMatrixField/Import.md b/docs/docs-api/AbstractMatrixField/Import.md
index f09f583e..11f44bab 100644
--- a/docs/docs-api/AbstractMatrixField/Import.md
+++ b/docs/docs-api/AbstractMatrixField/Import.md
@@ -19,14 +19,14 @@ END INTERFACE
Following is the template
-| Variable | Data type | Value | Comment |
-| ------------ | --------- | -------- | ------------------------------------------------------------ |
-| `name` | String | | |
-| `fieldType` | String | | |
-| `matrixProp` | String | | |
-| `spaceCompo` | | | |
-| `timeCompo`* | | | |
-| `restart`* | CHAR | `T`, `F` | |
-| | | | |
+| Variable | Data type | Value | Comment |
+| ------------ | --------- | -------- | ------- |
+| `name` | String | | |
+| `fieldType` | String | | |
+| `matrixProp` | String | | |
+| `spaceCompo` | | | |
+| `timeCompo`* | | | |
+| `restart`* | CHAR | `T`, `F` | |
+| | | | |
-`restart` The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary.
\ No newline at end of file
+`restart` The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary.
diff --git a/docs/docs-api/AbstractMatrixField/Initiate.md b/docs/docs-api/AbstractMatrixField/Initiate.md
index 0db3b929..cf67fd02 100644
--- a/docs/docs-api/AbstractMatrixField/Initiate.md
+++ b/docs/docs-api/AbstractMatrixField/Initiate.md
@@ -60,32 +60,32 @@ END INTERFACE
-## Example
+## Example
```fortran
- type( domain_ ) :: dom
- type( MatrixField_ ) :: obj
- type( HDF5File_ ) :: meshfile, hdf5
- type( ParameterList_ ) :: param
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND Deallocate" )
- CALL FPL_INIT()
- call meshfile%initiate( filename="./mesh.h5", mode="READ" )
- call meshfile%open()
- call dom%initiate( meshfile )
- call meshfile%close()
- call meshfile%Deallocate()
- tnodes = dom%getTotalNodes()
- call param%initiate()
- call setMatrixFieldParam( param, "K", "UNSYM", 3, 2, FIELD_TYPE_NORMAL )
- call obj%initiate( param, dom )
- CALL hdf5%initiate(filename="./matrixField.h5", mode="NEW" )
- CALL hdf5%open()
- CALL obj%export(hdf5=hdf5,group='')
- CALL hdf5%close()
- CALL hdf5%Deallocate()
- call obj%Deallocate()
- call dom%Deallocate()
- call param%Deallocate()
- call FPL_FINALIZE()
+type( domain_ ) :: dom
+type( MatrixField_ ) :: obj
+type( HDF5File_ ) :: meshfile, hdf5
+type( ParameterList_ ) :: param
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND Deallocate" )
+CALL FPL_INIT()
+call meshfile%initiate( filename="./mesh.h5", mode="READ" )
+call meshfile%open()
+call dom%initiate( meshfile )
+call meshfile%close()
+call meshfile%Deallocate()
+tnodes = dom%getTotalNodes()
+call param%initiate()
+call setMatrixFieldParam( param, "K", "UNSYM", 3, 2, FIELD_TYPE_NORMAL )
+call obj%initiate( param, dom )
+CALL hdf5%initiate(filename="./matrixField.h5", mode="NEW" )
+CALL hdf5%open()
+CALL obj%export(hdf5=hdf5,group='')
+CALL hdf5%close()
+CALL hdf5%Deallocate()
+call obj%Deallocate()
+call dom%Deallocate()
+call param%Deallocate()
+call FPL_FINALIZE()
```
diff --git a/docs/docs-api/AbstractMatrixField/MatVec.md b/docs/docs-api/AbstractMatrixField/MatVec.md
index bfc07e10..fcea71f4 100644
--- a/docs/docs-api/AbstractMatrixField/MatVec.md
+++ b/docs/docs-api/AbstractMatrixField/MatVec.md
@@ -47,4 +47,3 @@ INTERFACE
END SUBROUTINE Matvec2
END INTERFACE
```
-
diff --git a/docs/docs-api/AbstractMatrixField/Set.md b/docs/docs-api/AbstractMatrixField/Set.md
index e067f3de..2dba844d 100644
--- a/docs/docs-api/AbstractMatrixField/Set.md
+++ b/docs/docs-api/AbstractMatrixField/Set.md
@@ -191,4 +191,3 @@ INTERFACE
END SUBROUTINE set10
END INTERFACE
```
-
diff --git a/docs/docs-api/AbstractMatrixField/SetColumn.md b/docs/docs-api/AbstractMatrixField/SetColumn.md
index 54f73826..eb4a7812 100644
--- a/docs/docs-api/AbstractMatrixField/SetColumn.md
+++ b/docs/docs-api/AbstractMatrixField/SetColumn.md
@@ -10,7 +10,6 @@ Calling example
- `SetColumn(obj, globalnode(:), ivar, spacecompo, timecompo(:), scalarval, vecval(:), nodefieldval)`
- `SetColumn(obj, globalnode(:), ivar, spacecompo(:), timecompo, scalarval, vecval(:), nodefieldval)`
-
## Interface
```fortran
@@ -42,11 +41,9 @@ INTERFACE
CLASS(AbstractNodeField_), OPTIONAL, INTENT(IN) :: nodeFieldVal
END SUBROUTINE setColumn2
END INTERFACE
-
```
```fortran
-
INTERFACE
SUBROUTINE setColumn3(obj, globalNode, ivar, spacecompo, &
& timecompo, scalarVal, vecVal, nodeFieldVal)
@@ -61,7 +58,6 @@ INTERFACE
CLASS(AbstractNodeField_), OPTIONAL, INTENT(IN) :: nodeFieldVal
END SUBROUTINE setColumn3
END INTERFACE
-
```
```fortran
@@ -79,7 +75,6 @@ INTERFACE
CLASS(AbstractNodeField_), OPTIONAL, INTENT(IN) :: nodeFieldVal
END SUBROUTINE setColumn4
END INTERFACE
-
```
```fortran
@@ -97,7 +92,6 @@ INTERFACE
CLASS(AbstractNodeField_), OPTIONAL, INTENT(IN) :: nodeFieldVal
END SUBROUTINE setColumn5
END INTERFACE
-
```
```fortran
@@ -115,7 +109,6 @@ INTERFACE
CLASS(AbstractNodeField_), OPTIONAL, INTENT(IN) :: nodeFieldVal
END SUBROUTINE setColumn6
END INTERFACE
-
```
```fortran
diff --git a/docs/docs-api/AbstractMatrixField/SetRow.md b/docs/docs-api/AbstractMatrixField/SetRow.md
index 11673f88..6dee6c10 100644
--- a/docs/docs-api/AbstractMatrixField/SetRow.md
+++ b/docs/docs-api/AbstractMatrixField/SetRow.md
@@ -1,6 +1,6 @@
# SetRow
-Calling example
+Calling example
- `SetRow(obj, globalnode, idof, scalarval, vecval(:), nodefieldval)`
- `SetRow(obj, globalnode, ivar, idof, scalarval, vecval(:), nodefieldval)`
@@ -10,7 +10,6 @@ Calling example
- `SetRow(obj, globalnode(:), ivar, spacecompo, timecompo(:), scalarval, vecval(:), nodefieldval)`
- `SetRow(obj, globalnode(:), ivar, spacecompo(:), timecompo, scalarval, vecval(:), nodefieldval)`
-
## Interface
```fortran
diff --git a/docs/docs-api/AbstractMesh/Deallocate.md b/docs/docs-api/AbstractMesh/Deallocate.md
new file mode 100644
index 00000000..6ed07bfe
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/Deallocate.md
@@ -0,0 +1,13 @@
+# Deallocate
+
+Deallocate data stored in the mesh object.
+
+## Interface
+
+```fortran
+INTERFACE AbstractMeshDeallocate
+ MODULE SUBROUTINE Deallocate(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ END SUBROUTINE Deallocate
+END INTERFACE AbstractMeshDeallocate
+```
diff --git a/docs/docs-api/AbstractMesh/DeallocateKdTree.md b/docs/docs-api/AbstractMesh/DeallocateKdTree.md
new file mode 100644
index 00000000..ed8d2d53
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/DeallocateKdTree.md
@@ -0,0 +1,11 @@
+# DeallocateKdTree
+
+Deallocate data related to the kd-tree.
+
+## Interface
+
+```fortran
+SUBROUTINE DeallocateKdtree(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+END SUBROUTINE DeallacateKdtree
+```
diff --git a/docs/docs-api/AbstractMesh/Display.md b/docs/docs-api/AbstractMesh/Display.md
index 5a08bc9c..3c7778d9 100644
--- a/docs/docs-api/AbstractMesh/Display.md
+++ b/docs/docs-api/AbstractMesh/Display.md
@@ -1,6 +1,6 @@
# Display
-Display the mesh on the screen.
+Displays comprehensive information about the AbstractMesh_ object including its properties, status flags, and data structures.
## Interface
@@ -17,3 +17,24 @@ INTERFACE AbstractMeshDisplay
END INTERFACE AbstractMeshDisplay
```
+### Arguments
+
+- `obj`: The AbstractMesh_ object to be displayed
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method displays all the properties of the AbstractMesh_ object, including:
+
+- Initialization and status flags (isInitiated, showTime, readFromFile, etc.)
+- Element topology information (number of elements by topology type)
+- Mesh dimensions (nsd, xidim)
+- Node and element counts (tNodes, tElements, tEdges, tFaces)
+- Boundary information (minX, maxX, minY, maxY, minZ, maxZ)
+- Centroid coordinates (X, Y, Z)
+- Allocation status of various arrays (boundingEntity, local_elemNumber, etc.)
+- Data structure sizes (nodeData, elementData, facetData)
+- Status of KDTree data structures
+
+The method first displays the provided message, then checks if the mesh is initialized before displaying the remaining information.
diff --git a/docs/docs-api/AbstractMesh/DisplayBoundaryFacetData.md b/docs/docs-api/AbstractMesh/DisplayBoundaryFacetData.md
index e5548186..78645576 100644
--- a/docs/docs-api/AbstractMesh/DisplayBoundaryFacetData.md
+++ b/docs/docs-api/AbstractMesh/DisplayBoundaryFacetData.md
@@ -1,5 +1,7 @@
# DisplayBoundaryFacetData
+Displays information about boundary facet data in the mesh.
+
## Interface
```fortran
@@ -11,3 +13,25 @@ INTERFACE
END SUBROUTINE mesh_DisplayBoundaryFacetData
END INTERFACE
```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing facet data to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method displays boundary facet data, specifically showing both regular boundary facets (`BOUNDARY_ELEMENT`) and domain boundary facets (`DOMAIN_BOUNDARY_ELEMENT`). For each facet, it uses `FacetData_Display_Filter` twice:
+
+1. First to display facets of type `BOUNDARY_ELEMENT` (facets at mesh boundaries)
+2. Then to display facets of type `DOMAIN_BOUNDARY_ELEMENT` (facets at domain boundaries)
+
+This provides a comprehensive view of all boundary facets in the mesh, showing:
+
+- Master cell information (boundary facets typically have only a master cell)
+- Local facet ID within the cell
+- Node connectivity
+- Boundary conditions (if applicable)
+
+A blank line is inserted between facet entries for better readability.
diff --git a/docs/docs-api/AbstractMesh/DisplayElementData.md b/docs/docs-api/AbstractMesh/DisplayElementData.md
index 22b7ad6a..cc805fe7 100644
--- a/docs/docs-api/AbstractMesh/DisplayElementData.md
+++ b/docs/docs-api/AbstractMesh/DisplayElementData.md
@@ -1,13 +1,49 @@
# DisplayElementData
+Displays detailed information about element data in the mesh, either for a specific element or all elements.
+
## Interface
```fortran
INTERFACE
- MODULE SUBROUTINE mesh_DisplayElementData(obj, msg, unitno)
- CLASS(Mesh_), INTENT(IN) :: obj
+ MODULE SUBROUTINE DisplayElementData(obj, msg, unitno, globalElement, &
+ islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! object
CHARACTER(*), INTENT(IN) :: msg
+ !! message
INTEGER(I4B), OPTIONAL, INTENT(IN) :: unitno
- END SUBROUTINE mesh_DisplayElementData
+ !! unit number
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: globalElement
+ !! global element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then globalElement is local
+ END SUBROUTINE DisplayElementData
END INTERFACE
```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing element data to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+- `globalElement`: Optional global element number to display; if not provided, all elements are displayed
+- `islocal`: Optional flag indicating if globalElement is a local element number
+
+### Description
+
+This method displays element data in two possible modes:
+
+1. If `globalElement` is provided, it displays information for only that specific element
+2. Otherwise, it iterates through all elements in the mesh and displays their data
+
+For each element, it calls `elemData_Display` to show:
+
+- Element number (local and global)
+- Element type and properties
+- Node connectivity
+- Boundary information
+- Material properties
+- Any other element-specific data
+
+A blank line is inserted between element entries for better readability.
diff --git a/docs/docs-api/AbstractMesh/DisplayFacetData.md b/docs/docs-api/AbstractMesh/DisplayFacetData.md
new file mode 100644
index 00000000..0a67be9d
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/DisplayFacetData.md
@@ -0,0 +1,33 @@
+# DisplayFacetData
+
+Displays information about all facet data in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE DisplayFacetData(obj, msg, unitno)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ CHARACTER(*), INTENT(IN) :: msg
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: unitno
+ END SUBROUTINE DisplayFacetData
+END INTERFACE
+```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing facet data to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method displays all facet data contained in the mesh. It first checks if the facetData array is allocated, then iterates through all facet elements to display their information using `FacetData_Display`. For each facet, it shows:
+
+- Master and slave cell information
+- Local facet IDs within cells
+- Facet element type
+- Node connectivity
+- Other facet-specific properties
+
+A blank line is inserted between facet entries for better readability.
diff --git a/docs/docs-api/AbstractMesh/DisplayFacetElements.md b/docs/docs-api/AbstractMesh/DisplayFacetElements.md
index f88e3b4e..bc302032 100644
--- a/docs/docs-api/AbstractMesh/DisplayFacetElements.md
+++ b/docs/docs-api/AbstractMesh/DisplayFacetElements.md
@@ -1,5 +1,11 @@
# DisplayFacetElements
+Displays information about facet elements in the mesh.
+
+:::info
+This method has been deprecated. Earlier this method was used to display FacetElements of reference element of the Mesh. In the current implementation Mesh architecture is changed and reference elements are not stored, therefore this methid is not functional anymore. Please use DisplayFacetData method instead.
+:::
+
## Interface
```fortran
@@ -11,3 +17,13 @@ INTERFACE
END SUBROUTINE mesh_DisplayFacetElements
END INTERFACE
```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing facet elements to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method is designed to display facet element information, but is currently under development. When called, it raises an error indicating that the routine is not fully implemented yet. Once implemented, it would display detailed information about the shape and properties of facet elements in the mesh.
diff --git a/docs/docs-api/AbstractMesh/DisplayInternalFacetData.md b/docs/docs-api/AbstractMesh/DisplayInternalFacetData.md
index f4b66d68..b41fc2d7 100644
--- a/docs/docs-api/AbstractMesh/DisplayInternalFacetData.md
+++ b/docs/docs-api/AbstractMesh/DisplayInternalFacetData.md
@@ -1,5 +1,7 @@
# DisplayInternalFacetData
+Displays information specifically about internal facet data in the mesh.
+
## Interface
```fortran
@@ -11,3 +13,20 @@ INTERFACE
END SUBROUTINE mesh_DisplayInternalFacetData
END INTERFACE
```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing facet data to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method displays only the internal facet data (facets between elements within the mesh). It filters the facet data using the `INTERNAL_ELEMENT` filter constant and calls `FacetData_Display_Filter` to display only facets of that type. For each internal facet, it shows:
+
+- Master and slave cell information
+- Local facet IDs within cells
+- Node connectivity
+- Other facet-specific properties
+
+A blank line is inserted between facet entries for better readability.
diff --git a/docs/docs-api/AbstractMesh/DisplayMeshInfo.md b/docs/docs-api/AbstractMesh/DisplayMeshInfo.md
new file mode 100644
index 00000000..919b3062
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/DisplayMeshInfo.md
@@ -0,0 +1,32 @@
+# DisplayMeshInfo
+
+Displays concise summary information about the mesh.
+
+## Interfac
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE DisplayMeshInfo(obj, msg, unitno)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ CHARACTER(*), INTENT(IN) :: msg
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: unitno
+ END SUBROUTINE DisplayMeshInfo
+END INTERFACE
+```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object to display information about
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method provides a brief summary of the mesh's key statistics, including:
+
+- Total number of nodes
+- Total number of elements
+- Total number of edges
+- Total number of faces
+
+The output is formatted with equal lines before and after the statistics for better readability. This method is useful for quickly getting an overview of the mesh size without the detailed information provided by other display methods.
diff --git a/docs/docs-api/AbstractMesh/DisplayNodeData.md b/docs/docs-api/AbstractMesh/DisplayNodeData.md
index 1ea1ab9a..6c3b4fa6 100644
--- a/docs/docs-api/AbstractMesh/DisplayNodeData.md
+++ b/docs/docs-api/AbstractMesh/DisplayNodeData.md
@@ -1,5 +1,7 @@
# DisplayNodeData
+Displays detailed information about all node data in the mesh.
+
## Interface
```fortran
@@ -11,3 +13,20 @@ INTERFACE
END SUBROUTINE mesh_DisplayNodeData
END INTERFACE
```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object containing node data to display
+- `msg`: A message to display at the beginning of the output
+- `unitno`: Optional output unit number (defaults to stdout if not provided)
+
+### Description
+
+This method iterates through all nodes in the mesh and displays their detailed information by calling the `nodeData_Display` method for each node. For each node, it displays:
+
+- Local and global node numbers
+- Node type (internal, boundary)
+- Node coordinates
+- Any associated element information
+
+A blank line is inserted between node entries for better readability.
diff --git a/docs/docs-api/AbstractMesh/ElemData_.md b/docs/docs-api/AbstractMesh/ElemData_.md
index 17f623f8..d2d8a591 100644
--- a/docs/docs-api/AbstractMesh/ElemData_.md
+++ b/docs/docs-api/AbstractMesh/ElemData_.md
@@ -178,7 +178,7 @@ The `ElemdataType_` is private but you can use its instance called `TypeElem`. F
This module exposes following methods.
-## Elemdata_Copy
+## Elemdata_Copy
- Copy obj2 to obj1
@@ -338,7 +338,8 @@ END SUBROUTINE
## Elemdata_GetConnectivity
-This subroutine returns the connectivity of the element.
+This subroutine returns the connectivity of the element.
+
- tsize is the size of data written in con
- con is the connectivity array, it should be allocated
- opt is the type of connectivity, following options are allowed
@@ -490,7 +491,6 @@ END FUNCTION Elemdata_GetTotalEdgeDOF
## Elemdata_GetTotalFaceDOF
-
This function returns the total number of face dofs on the face of an element.
All dofs are internal to face, that is edge and vertex dof are not included.
diff --git a/docs/docs-api/AbstractMesh/Export.md b/docs/docs-api/AbstractMesh/Export.md
new file mode 100644
index 00000000..8417f4fa
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/Export.md
@@ -0,0 +1,15 @@
+# Export
+
+This method exports the mesh to a hdf5 file format.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE Export(obj, hdf5, group)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ TYPE(HDF5File_), INTENT(INOUT) :: hdf5
+ CHARACTER(*), INTENT(IN) :: group
+ END SUBROUTINE Export
+END INTERFACE
+```
diff --git a/docs/docs-api/AbstractMesh/ExportToVTK.md b/docs/docs-api/AbstractMesh/ExportToVTK.md
new file mode 100644
index 00000000..3fd76dfa
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/ExportToVTK.md
@@ -0,0 +1,79 @@
+# ExportToVTK
+
+Exports an AbstractMesh_ object to a VTK file format, which can be visualized in applications like ParaView or VisIt.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE ExportToVTK(obj, vtk, nodeCoord, filename, &
+ opentag, content, closetag)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ TYPE(VTKFile_), INTENT(INOUT) :: vtk
+ REAL(DFP), OPTIONAL, INTENT(IN) :: nodeCoord(:, :)
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: filename
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: opentag
+ !! Default is true
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: closetag
+ !! Default is true
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: content
+ !! Default is true
+ END SUBROUTINE ExportToVTK
+END INTERFACE
+```
+
+### Arguments
+
+| Argument | Intent | Type | Description |
+| ----------- | ------------ | -------------------- | ----------------------------------------------- |
+| `obj` | IN | CLASS(AbstractMesh_) | The AbstractMesh_ object to be exported |
+| `vtk` | INOUT | TYPE(VTKFile_) | VTK file handler for writing the mesh data |
+| `nodeCoord` | OPTIONAL, IN | REAL(DFP) (:,:) | Node coordinates array with shape [3, nPoints] |
+| `filename` | OPTIONAL, IN | CHARACTER(*) | Output filename when creating a new VTK file |
+| `opentag` | OPTIONAL, IN | LOGICAL(LGT) | Whether to open VTK piece tags (default: TRUE) |
+| `closetag` | OPTIONAL, IN | LOGICAL(LGT) | Whether to close VTK piece tags (default: TRUE) |
+| `content` | OPTIONAL, IN | LOGICAL(LGT) | Whether to write mesh cell data (default: TRUE) |
+
+### Description
+
+This subroutine exports the mesh to a VTK file in the UnstructuredGrid format. It performs the following operations:
+
+1. If the VTK file is not already initialized, it creates a new one using the provided filename
+2. Writes the piece information if `opentag` is true
+3. Writes the node coordinates (points):
+ - Uses provided `nodeCoord` if present
+ - Otherwise extracts coordinates from the mesh
+4. If `content` is true, writes cell connectivity data including:
+ - Connectivity information
+ - Offsets for each cell
+ - Cell types in VTK format
+5. Closes the piece and VTK file if `closetag` is true
+
+### Implementation Details
+
+- Uses binary appended VTK format for efficient file size
+- Converts mesh element types to VTK-compatible element types
+- Handles local-to-global node number mapping
+- Only writes data for active elements in the mesh
+- Properly handles different element topologies
+
+### Usage Example
+
+```fortran
+TYPE(FEMesh_) :: mesh
+TYPE(VTKFile_) :: vtk
+CHARACTER(*), PARAMETER :: filename = "mesh.vtk"
+
+! Read mesh from HDF5 file
+CALL mesh%IMPORT(hdf5file, "/meshGroup")
+
+! Export to VTK
+CALL mesh%ExportToVTK(vtk=vtk, filename=filename)
+```
+
+### Notes
+
+- If the `vtk` object is already initialized, it will use the existing file
+- If `nodeCoord` is not provided, the method will extract coordinates from the mesh
+- The VTK file format is compatible with visualization tools like ParaView and VisIt
+- Elements are only exported if they are active (isElementActive returns true)
diff --git a/docs/docs-api/AbstractMesh/FindEdge.md b/docs/docs-api/AbstractMesh/FindEdge.md
new file mode 100644
index 00000000..6d2b2b7f
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/FindEdge.md
@@ -0,0 +1,55 @@
+# Find Edge
+
+Find an edge in a cell (only for 3D meshes).
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE FindEdge(obj, globalElement, edgeCon, isEdge, &
+ localEdgeNumber, onlyBoundaryElement, islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! abstract mesh
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local elem number
+ INTEGER(I4B), INTENT(IN) :: edgeCon(:)
+ !! vertex connectivity of Edge
+ LOGICAL(LGT), INTENT(OUT) :: isEdge
+ !! if EdgeCon is a Edge of globalElement then it is true, else false
+ INTEGER(I4B), INTENT(OUT) :: localEdgeNumber
+ !! local Edge number if found, else 0
+ LOGICAL(LGT), INTENT(IN) :: onlyBoundaryElement
+ !! if true then we will search if the element is boundary element
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+END SUBROUTINE FindEdge
+```
+
+## Description
+
+Searches for a specific edge in a 3D element. This routine checks if the specified edge connectivity exists in the given element and returns the local edge number if found.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number to search in.
+- `edgeCon`: Array containing the vertex connectivity of the edge to find.
+- `isEdge`: Returns true if the edge is found in the element.
+- `localEdgeNumber`: Returns the local edge number if found, 0 otherwise.
+- `onlyBoundaryElement`: If true, only searches if the element is a boundary element.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: elemNum = 10, edgeNodes(2) = [15, 23]
+LOGICAL(LGT) :: found
+INTEGER(I4B) :: edgeNum
+
+CALL mesh%FindEdge(elemNum, edgeNodes, found, edgeNum, .FALSE.)
+
+IF (found) THEN
+ PRINT*, "Edge found with local number:", edgeNum
+ELSE
+ PRINT*, "Edge not found in element"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/FindFace.md b/docs/docs-api/AbstractMesh/FindFace.md
new file mode 100644
index 00000000..8446e009
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/FindFace.md
@@ -0,0 +1,55 @@
+# FindFace
+
+Find a face in a cell.
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE FindFace(obj, globalElement, faceCon, isFace, &
+ localFaceNumber, onlyBoundaryElement, islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! abstract mesh
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local elem number
+ INTEGER(I4B), INTENT(IN) :: faceCon(:)
+ !! vertex connectivity of face
+ LOGICAL(LGT), INTENT(OUT) :: isFace
+ !! if faceCon is a face of globalElement then it is true, else false
+ INTEGER(I4B), INTENT(OUT) :: localFaceNumber
+ !! local face number if found, else 0
+ LOGICAL(LGT), INTENT(IN) :: onlyBoundaryElement
+ !! if true then we will search if the element is boundary element
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+END SUBROUTINE FindFace
+```
+
+## Description
+
+Searches for a specific face in an element. This routine checks if the specified face connectivity exists in the given element and returns the local face number if found.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number to search in.
+- `faceCon`: Array containing the vertex connectivity of the face to find.
+- `isFace`: Returns true if the face is found in the element.
+- `localFaceNumber`: Returns the local face number if found, 0 otherwise.
+- `onlyBoundaryElement`: If true, only searches if the element is a boundary element.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: elemNum = 5, faceNodes(4) = [10, 11, 15, 14]
+LOGICAL(LGT) :: found
+INTEGER(I4B) :: faceNum
+
+CALL mesh%FindFace(elemNum, faceNodes, found, faceNum, .FALSE.)
+
+IF (found) THEN
+ PRINT *, "Face found with local number:", faceNum
+ELSE
+ PRINT *, "Face not found in element"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/GetBoundaryElementData.md b/docs/docs-api/AbstractMesh/GetBoundaryElementData.md
index 3f42b30f..63d8ae26 100644
--- a/docs/docs-api/AbstractMesh/GetBoundaryElementData.md
+++ b/docs/docs-api/AbstractMesh/GetBoundaryElementData.md
@@ -1,15 +1,43 @@
# GetBoundaryElementData
-Returns the boundary element data.
+Returns boundary element data for a given element.
## Interface
```fortran
-MODULE PURE FUNCTION GetBoundaryElementData(obj, globalElement) &
- & RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+MODULE FUNCTION GetBoundaryElementData(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B), ALLOCATABLE :: ans(:)
END FUNCTION GetBoundaryElementData
```
+## Description
+
+This function returns the boundary element data for a specified element. If the element is a boundary element, the function returns the local facet numbers that coincide with the mesh boundary. If the element is not a boundary element, an array of zero size is returned.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Returns
+
+- `ans`: An array containing the local facet numbers that are on the boundary. If the element is not a boundary element, an array of size zero is returned.
+
+## Example
+
+```fortran
+INTEGER(I4B), ALLOCATABLE :: boundaryFacets(:)
+INTEGER(I4B) :: elemNum = 15
+
+boundaryFacets = mesh%GetBoundaryElementData(elemNum)
+
+IF (SIZE(boundaryFacets) > 0) THEN
+ PRINT*, "Element has boundary facets:", boundaryFacets
+ELSE
+ PRINT*, "Element is not on the boundary"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/GetBoundaryNptrs.md b/docs/docs-api/AbstractMesh/GetBoundaryNptrs.md
index 33066f82..e8b44b30 100644
--- a/docs/docs-api/AbstractMesh/GetBoundaryNptrs.md
+++ b/docs/docs-api/AbstractMesh/GetBoundaryNptrs.md
@@ -1,10 +1,58 @@
# GetBoundaryNptrs
+The `GetBoundaryNptrs` method returns the global node numbers of all boundary nodes in the mesh. Boundary nodes are nodes that lie on the boundary of the domain.
+
## Interface
```fortran
- MODULE PURE FUNCTION getBoundaryNptrs(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetBoundaryNptrs(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getBoundaryNptrs
+ END FUNCTION GetBoundaryNptrs
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+boundaryNodes = mesh%GetBoundaryNptrs()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| ------------------------------ | ----------------------------------------------- |
+| `INTEGER(I4B), ALLOCATABLE(:)` | Array of global node numbers for boundary nodes |
+
+## Description
+
+`GetBoundaryNptrs` returns an array of global node numbers for all boundary nodes in the mesh. Boundary nodes are those that lie on the boundary of the domain. Identifying boundary nodes is crucial for applying boundary conditions in numerical simulations.
+
+The method allocates a new array to hold the result, with a size equal to the number of boundary nodes.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B), ALLOCATABLE :: boundaryNodes(:)
+
+! Initialize mesh...
+
+! Get all boundary nodes
+boundaryNodes = mesh%GetBoundaryNptrs()
+
+PRINT *, "Mesh has", SIZE(boundaryNodes), "boundary nodes"
+
+! Apply boundary conditions
+DO i = 1, SIZE(boundaryNodes)
+ nodeNum = boundaryNodes(i)
+ ! Apply boundary condition to this node
+END DO
```
diff --git a/docs/docs-api/AbstractMesh/GetBoundingBox.md b/docs/docs-api/AbstractMesh/GetBoundingBox.md
index 346c34e2..a04929d3 100644
--- a/docs/docs-api/AbstractMesh/GetBoundingBox.md
+++ b/docs/docs-api/AbstractMesh/GetBoundingBox.md
@@ -1,21 +1,51 @@
# GetBoundingBox
+Return the bounding box of the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION getBoundingBox(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- TYPE(BoundingBox_) :: ans
- END FUNCTION getBoundingBox
+! Version 1 - Get bounding box of the entire mesh
+MODULE FUNCTION GetBoundingBox1(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ TYPE(BoundingBox_) :: ans
+END FUNCTION GetBoundingBox1
+
+! Version 2 - Get bounding box from specified nodes
+MODULE FUNCTION GetBoundingBox2(obj, nodes, local_nptrs) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(IN) :: nodes(:, :)
+ !! Nodal coordinates in XiJ format
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: local_nptrs(:)
+ TYPE(BoundingBox_) :: ans
+END FUNCTION GetBoundingBox2
```
+## Description
+
+These functions return a bounding box object that encloses either the entire mesh (Version 1) or a specified set of nodes (Version 2). The bounding box contains the minimum and maximum coordinates in each dimension.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `nodes` (Version 2): A 2D array containing nodal coordinates in XiJ format (rows are spatial dimensions, columns are nodes).
+- `local_nptrs` (Version 2, optional): A mapping array for node numbers.
+
+## Returns
+
+- `ans`: A BoundingBox_ object containing the minimum and maximum coordinates in each dimension.
+
+## Example
+
```fortran
- MODULE PURE FUNCTION getBoundingBox(obj, nodes, local_nptrs) &
- & RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- REAL(DFP), INTENT(IN) :: nodes(:, :)
- !! Nodal coordinates in XiJ format
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: local_nptrs(:)
- TYPE(BoundingBox_) :: ans
- END FUNCTION getBoundingBox
+! Get bounding box of the entire mesh
+TYPE(BoundingBox_) :: bbox
+bbox = mesh%GetBoundingBox()
+PRINT*, "Mesh bounds: X min/max =", bbox%xmin, bbox%xmax
+
+! Get bounding box of specific nodes
+REAL(DFP), ALLOCATABLE :: nodeCoords(:,:)
+TYPE(BoundingBox_) :: nodeBbox
+! Assuming nodeCoords is filled with coordinates
+nodeBbox = mesh%GetBoundingBox(nodeCoords)
```
diff --git a/docs/docs-api/AbstractMesh/GetBoundingEntity.md b/docs/docs-api/AbstractMesh/GetBoundingEntity.md
index 79df25d0..fd59bbfe 100644
--- a/docs/docs-api/AbstractMesh/GetBoundingEntity.md
+++ b/docs/docs-api/AbstractMesh/GetBoundingEntity.md
@@ -1,10 +1,69 @@
# GetBoundingEntity
+The `GetBoundingEntity` method retrieves the bounding entity numbers of the mesh. Bounding entities are higher-dimensional geometric entities that contain or bound the current mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION getBoundingEntity(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetBoundingEntity(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getBoundingEntity
+ END FUNCTION GetBoundingEntity
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+boundingEntities = mesh%GetBoundingEntity()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| ------------------------------ | -------------------------------- |
+| `INTEGER(I4B), ALLOCATABLE(:)` | Array of bounding entity numbers |
+
+## Description
+
+`GetBoundingEntity` returns an array containing the entity numbers of geometric entities that bound or contain the current mesh. These bounding entities are typically higher-dimensional geometric objects in the model hierarchy.
+
+For example:
+
+- For a mesh representing a surface, the bounding entities might be the volumes that share this surface
+- For a mesh representing a curve, the bounding entities might be the surfaces that share this curve
+
+If no bounding entities are defined, the method returns an empty array.
+
+This information is useful for understanding the geometric context of the mesh and for operations that involve neighboring domains.
+
+## Implementation Note
+
+The method description in the class table states "Returns the nodal coordinates," but the actual implementation returns bounding entity numbers. The documentation here follows the implementation.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B), ALLOCATABLE :: boundingEntities(:)
+
+! Initialize mesh...
+
+! Get the bounding entities
+boundingEntities = mesh%GetBoundingEntity()
+
+! Check if there are any bounding entities
+IF (SIZE(boundingEntities) > 0) THEN
+ PRINT *, "Mesh is bounded by", SIZE(boundingEntities), "entities:"
+ PRINT *, boundingEntities
+ELSE
+ PRINT *, "Mesh has no defined bounding entities"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/GetCellNumber.md b/docs/docs-api/AbstractMesh/GetCellNumber.md
index 4999f68a..e1ed789e 100644
--- a/docs/docs-api/AbstractMesh/GetCellNumber.md
+++ b/docs/docs-api/AbstractMesh/GetCellNumber.md
@@ -1,14 +1,42 @@
# GetCellNumber
+Returns the master and slave cell numbers of a facet element.
+
## Interface
```fortran
- MODULE PURE FUNCTION getCellNumber( obj, facetElement, &
- & elementType, facetBoundary ) RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: facetElement
- INTEGER( I4B ), INTENT( IN ) :: elementType
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: facetBoundary
- INTEGER( I4B ) :: ans( 2 )
- END FUNCTION getCellNumber
+MODULE FUNCTION GetCellNumber(obj, facetElement, elementType) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), INTENT(IN) :: elementType
+ INTEGER(I4B) :: ans(2)
+END FUNCTION GetCellNumber
+```
+
+## Description
+
+This function returns the global element numbers of the master and slave cells associated with a facet element. The master cell is the first cell that contains the facet, and the slave cell is the second cell that contains the facet (if any).
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement`: The local facet element number.
+- `elementType`: The element type of the facet.
+
+## Returns
+
+- `ans`: A 2-element array where:
+ - `ans(1)` is the master cell number
+ - `ans(2)` is the slave cell number (or 0 if the facet is on a boundary)
+
+## Example
+
+```fortran
+INTEGER(I4B) :: facetNum = 8, facetType = 3
+INTEGER(I4B) :: cellNumbers(2)
+
+cellNumbers = mesh%GetCellNumber(facetNum, facetType)
+
+PRINT*, "Master cell:", cellNumbers(1)
+PRINT*, "Slave cell:", cellNumbers(2)
```
diff --git a/docs/docs-api/AbstractMesh/GetConnectivity.md b/docs/docs-api/AbstractMesh/GetConnectivity.md
index 62517693..87686595 100644
--- a/docs/docs-api/AbstractMesh/GetConnectivity.md
+++ b/docs/docs-api/AbstractMesh/GetConnectivity.md
@@ -1,11 +1,50 @@
# GetConnectivity
+This function returns the global node numbers that define the connectivity of a given element. By default, it returns the vertex connectivity, but you can use the `opt` parameter to request different types of connectivity (edge, face, cell, or all).
+
## Interface
```fortran
- MODULE PURE FUNCTION getConnectivity(obj, globalElement) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: globalElement
- INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getConnectivity
+MODULE PURE FUNCTION getConnectivity(obj, globalElement) RESULT(ans)
+ CLASS(Mesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+END FUNCTION getConnectivity
+```
+
+## Purpose
+
+Retrieves the connectivity information for a specified element in the mesh.
+
+## Syntax
+
+```fortran
+connectivity = mesh%GetConnectivity(globalElement, islocal, opt)
+```
+
+## Arguments
+
+- `globalElement` (INTEGER, input): The global (or local) element number to retrieve connectivity information for.
+- `islocal` (LOGICAL, optional, input): If present and true, then `globalElement` is treated as a local element number. Default is false.
+- `opt` (CHARACTER, optional, input): Specifies which type of connectivity to retrieve.
+ - "V" or "Vertex" - Vertex connectivity (default)
+ - "E" or "Edge" - Edge connectivity
+ - "F" or "Face" - Face connectivity
+ - "C" or "Cell" - Cell connectivity
+ - "A" or "All" - All connectivity types
+
+## Returns
+
+- `connectivity` (INTEGER array): A 1D array containing the global node numbers that define the specified element's connectivity.
+
+## Example
+
+```fortran
+INTEGER(I4B), ALLOCATABLE :: vertexConn(:)
+! Get vertex connectivity for element 5
+vertexConn = mesh%GetConnectivity(5)
+
+! Get edge connectivity for element 10
+INTEGER(I4B), ALLOCATABLE :: edgeConn(:)
+edgeConn = mesh%GetConnectivity(10, opt="E")
```
diff --git a/docs/docs-api/AbstractMesh/GetConnectivity_.md b/docs/docs-api/AbstractMesh/GetConnectivity_.md
new file mode 100644
index 00000000..750e403c
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetConnectivity_.md
@@ -0,0 +1,59 @@
+# GetConnectivity_
+
+A more memory-efficient version of GetConnectivity that allows reusing existing arrays.
+
+## Syntax
+
+```fortran
+! Version 1 - Single output array
+CALL mesh%GetConnectivity_(globalElement, ans, tsize, islocal, opt)
+
+! Version 2 - Separate arrays for different entity types
+CALL mesh%GetConnectivity_(cellCon, faceCon, edgeCon, nodeCon, tCellCon, tFaceCon, tEdgeCon, tNodeCon, globalElement, islocal)
+```
+
+## Arguments for Version 1
+
+- `globalElement` (INTEGER, input): The global (or local) element number.
+- `ans` (INTEGER array, output): Pre-allocated array to store connectivity data.
+- `tsize` (INTEGER, output): Actual size of data written to `ans`.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalElement` is treated as local. Default is false.
+- `opt` (CHARACTER, optional, input): Type of connectivity to retrieve (V, E, F, C, A). Default is "V" (vertex).
+
+## Arguments for Version 2
+
+- `cellCon` (INTEGER array, output): Pre-allocated array to store cell connectivity.
+- `faceCon` (INTEGER array, output): Pre-allocated array to store face connectivity.
+- `edgeCon` (INTEGER array, output): Pre-allocated array to store edge connectivity.
+- `nodeCon` (INTEGER array, output): Pre-allocated array to store node (vertex) connectivity.
+- `tCellCon` (INTEGER, output): Size of data written to `cellCon`.
+- `tFaceCon` (INTEGER, output): Size of data written to `faceCon`.
+- `tEdgeCon` (INTEGER, output): Size of data written to `edgeCon`.
+- `tNodeCon` (INTEGER, output): Size of data written to `nodeCon`.
+- `globalElement` (INTEGER, input): The global (or local) element number.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalElement` is treated as local. Default is false.
+
+## Description
+
+These subroutines retrieve connectivity information without allocating new memory. They write the connectivity data to pre-allocated arrays and return the actual sizes of data written.
+
+Version 1 retrieves a single type of connectivity (specified by `opt`) into a single array.
+
+Version 2 retrieves all types of connectivity data (cell, face, edge, and node) into separate arrays in a single call.
+
+## Example
+
+```fortran
+! Version 1 example
+INTEGER(I4B) :: conn(100), tsize
+CALL mesh%GetConnectivity_(5, conn, tsize, opt="V")
+! Now conn(1:tsize) contains the vertex connectivity
+
+! Version 2 example
+INTEGER(I4B) :: cellCon(20), faceCon(50), edgeCon(30), nodeCon(10)
+INTEGER(I4B) :: tCellCon, tFaceCon, tEdgeCon, tNodeCon
+CALL mesh%GetConnectivity_(cellCon, faceCon, edgeCon, nodeCon, tCellCon, tFaceCon, tEdgeCon, tNodeCon, 5)
+! Now all connectivity arrays are populated
+```
+
+Need any clarification or additional information about these methods?
diff --git a/docs/docs-api/AbstractMesh/GetElemData.md b/docs/docs-api/AbstractMesh/GetElemData.md
new file mode 100644
index 00000000..5abc9d87
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElemData.md
@@ -0,0 +1,53 @@
+# GetElemData
+
+The `GetElemData` method retrieves a complete copy of the element data for a specific element in the mesh. The element data contains all information about the element including its nodes, connectivity, and properties.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetElemData(obj, elemdata, globalElement, islocal)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ TYPE(ElemData_), INTENT(INOUT) :: elemdata
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE GetElemData
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetElemData(elemdata, globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `elemdata` | `TYPE(ElemData_)` | `INOUT` | Variable to store the element data |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Description
+
+`GetElemData` creates a copy of all data for a specified element in the mesh. This provides a complete snapshot of the element's properties, which can be useful for detailed element analysis or processing.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+TYPE(ElemData_) :: elemData
+INTEGER(I4B) :: elemNum
+
+! Initialize mesh, elemNum...
+
+! Get the complete element data
+CALL mesh%GetElemData(elemData, elemNum)
+
+! Use the element data
+PRINT *, "Element type:", elemData%name
+PRINT *, "Number of nodes:", SIZE(elemData%globalNodes)
+```
+
diff --git a/docs/docs-api/AbstractMesh/GetElemDataPointer.md b/docs/docs-api/AbstractMesh/GetElemDataPointer.md
new file mode 100644
index 00000000..72600a0b
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElemDataPointer.md
@@ -0,0 +1,65 @@
+# GetElemDataPointer
+
+The `GetElemDataPointer` method returns a pointer to the element data for a specific element in the mesh. This provides direct access to the element data without creating a copy.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION obj_GetElemDataPointer(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), TARGET, INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ TYPE(ElemData_), POINTER :: ans
+ END FUNCTION obj_GetElemDataPointer
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+elemDataPtr => mesh%GetElemDataPointer(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_), TARGET` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+|------|-------------|
+| `TYPE(ElemData_), POINTER` | Pointer to the element data |
+
+## Description
+
+`GetElemDataPointer` returns a pointer to the internal element data for a specified element. This provides direct access to the element data without copying, which can be more efficient for operations that only need to read the data or for advanced manipulation.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_), TARGET :: mesh
+TYPE(ElemData_), POINTER :: elemDataPtr
+INTEGER(I4B) :: elemNum
+
+! Initialize mesh, elemNum...
+
+! Get a pointer to the element data
+elemDataPtr => mesh%GetElemDataPointer(elemNum)
+
+! Use the element data pointer
+IF (ASSOCIATED(elemDataPtr)) THEN
+ PRINT*, "Element type:", elemDataPtr%name
+ PRINT*, "Number of nodes:", SIZE(elemDataPtr%globalNodes)
+ELSE
+ PRINT*, "Element data not available"
+END IF
+```
+
+---
+
diff --git a/docs/docs-api/AbstractMesh/GetElemNum.md b/docs/docs-api/AbstractMesh/GetElemNum.md
index 3b426591..95d4aaba 100644
--- a/docs/docs-api/AbstractMesh/GetElemNum.md
+++ b/docs/docs-api/AbstractMesh/GetElemNum.md
@@ -1,10 +1,75 @@
# GetElemNum
+The `GetElemNum` method retrieves the element numbers (global or local) present in the mesh. It can return either all element numbers or those belonging to a specific mesh ID.
+
## Interface
```fortran
- MODULE FUNCTION getElemNum(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetElemNum1(obj, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+ END FUNCTION GetElemNum1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetElemNum2(obj, meshid, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: meshid
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getElemNum
+ END FUNCTION GetElemNum2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get all element numbers
+elemNumbers = mesh%GetElemNum([islocal])
+
+! Get element numbers for a specific mesh ID
+elemNumbers = mesh%GetElemNum(meshid, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | --------------- | ------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, return local element numbers instead of global |
+| `meshid` | `INTEGER(I4B)` | `IN` | Mesh ID to filter elements by |
+
+## Return Value
+
+| Type | Description |
+| ------------------------------ | ------------------------ |
+| `INTEGER(I4B), ALLOCATABLE(:)` | Array of element numbers |
+
+## Description
+
+`GetElemNum` returns an array of element numbers present in the mesh. The method has two versions:
+
+1. Return all element numbers in the mesh
+2. Return only element numbers that belong to a specific mesh ID
+
+The `islocal` parameter determines whether the returned numbers are global (default) or local element numbers.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B), ALLOCATABLE :: allElements(:), subdomainElements(:)
+
+! Initialize mesh...
+
+! Get all element numbers
+allElements = mesh%GetElemNum()
+
+! Get element numbers for a specific subdomain
+subdomainElements = mesh%GetElemNum(meshid=2)
+
+PRINT *, "Total elements:", SIZE(allElements)
+PRINT *, "Subdomain elements:", SIZE(subdomainElements)
```
diff --git a/docs/docs-api/AbstractMesh/GetElemTopology.md b/docs/docs-api/AbstractMesh/GetElemTopology.md
new file mode 100644
index 00000000..c875a952
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElemTopology.md
@@ -0,0 +1,100 @@
+# GetElemTopology
+
+The `GetElemTopology` method retrieves the topology information for elements in the mesh. It can return either all element topologies present in the mesh or the topology of a specific element. Element topology refers to the geometric arrangement of nodes that defines the element shape (e.g., triangle, quadrilateral, tetrahedron, hexahedron).
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetElemTopology1(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans(8)
+ END FUNCTION GetElemTopology1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetElemTopology2(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ INTEGER(I4B) :: ans
+ END FUNCTION GetElemTopology2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get all element topologies in the mesh
+topologies = mesh%GetElemTopology()
+
+! Get the topology of a specific element
+elemTopology = mesh%GetElemTopology(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Version | Type | Description |
+| --------- | ----------------- | --------------------------------------------------------- |
+| Version 1 | `INTEGER(I4B)(8)` | Array of element topology identifiers present in the mesh |
+| Version 2 | `INTEGER(I4B)` | Topology identifier of the specified element |
+
+## Description
+
+`GetElemTopology` provides information about the geometric arrangement of nodes that defines elements in the mesh. Element topology is a fundamental property that determines how elements are shaped and behave.
+
+The method has two versions:
+
+1. Return an array of all element topologies present in the mesh
+2. Return the topology of a specific element
+
+The topology identifiers correspond to specific element shapes, such as:
+
+- Point
+- Line
+- Triangle
+- Quadrilateral
+- Tetrahedron
+- Hexahedron
+- Prism
+- Pyramid
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, elemTopology
+INTEGER(I4B) :: allTopologies(8)
+
+! Initialize mesh, elemNum...
+
+! Get all topologies in the mesh
+allTopologies = mesh%GetElemTopology()
+
+! Get the topology of a specific element
+elemTopology = mesh%GetElemTopology(elemNum)
+
+! Process based on element topology
+SELECT CASE (elemTopology)
+CASE (TRIANGLE)
+ PRINT *, "Element is a triangle"
+CASE (QUADRILATERAL)
+ PRINT *, "Element is a quadrilateral"
+CASE (TETRAHEDRON)
+ PRINT *, "Element is a tetrahedron"
+CASE (HEXAHEDRON)
+ PRINT *, "Element is a hexahedron"
+ ! Other cases...
+END SELECT
+```
diff --git a/docs/docs-api/AbstractMesh/GetElemTopologyIndx.md b/docs/docs-api/AbstractMesh/GetElemTopologyIndx.md
new file mode 100644
index 00000000..949e8eca
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElemTopologyIndx.md
@@ -0,0 +1,86 @@
+# GetElemTopologyIndx
+
+The `GetElemTopologyIndx` method returns the topology index of a specific element in the mesh. The topology index is a numerical identifier for the element shape (1 for point, 2 for line, 3 for triangle, etc.).
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetElemTopologyIndx(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ INTEGER(I4B) :: ans
+ END FUNCTION GetElemTopologyIndx
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+topoIndex = mesh%GetElemTopologyIndx(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | --------------------------------------- |
+| `INTEGER(I4B)` | Topology index of the specified element |
+
+## Description
+
+`GetElemTopologyIndx` returns the topology index for a specified element. The topology index is a numerical identifier that corresponds to specific element shapes:
+
+1. Point
+2. Line
+3. Triangle
+4. Quadrilateral
+5. Tetrahedron
+6. Hexahedron
+7. Prism
+8. Pyramid
+
+This index is useful for algorithms that need to handle different element types differently.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, topoIndex
+
+! Initialize mesh, elemNum...
+
+! Get the topology index of the element
+topoIndex = mesh%GetElemTopologyIndx(elemNum)
+
+! Process based on topology index
+SELECT CASE (topoIndex)
+CASE (1)
+ PRINT *, "Element is a point"
+CASE (2)
+ PRINT *, "Element is a line"
+CASE (3)
+ PRINT *, "Element is a triangle"
+CASE (4)
+ PRINT *, "Element is a quadrilateral"
+CASE (5)
+ PRINT *, "Element is a tetrahedron"
+CASE (6)
+ PRINT *, "Element is a hexahedron"
+CASE (7)
+ PRINT *, "Element is a prism"
+CASE (8)
+ PRINT *, "Element is a pyramid"
+END SELECT
+```
diff --git a/docs/docs-api/AbstractMesh/GetElemType.md b/docs/docs-api/AbstractMesh/GetElemType.md
new file mode 100644
index 00000000..81b34180
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElemType.md
@@ -0,0 +1,63 @@
+# GetElemType
+
+The `GetElemType` method retrieves the type (name) of a specific element in the mesh. Element types define the geometric and interpolation properties of mesh elements.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetElemType(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans
+ END FUNCTION GetElemType
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+elemType = mesh%GetElemType(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------- |
+| `INTEGER(I4B)` | Element type identifier |
+
+## Description
+
+`GetElemType` returns the type of a specified element in the mesh. The element type is an integer identifier that corresponds to a specific geometric and interpolation element type (such as hexahedron, tetrahedron, etc.).
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, elemType
+
+! Initialize mesh, elemNum...
+
+! Get the element type
+elemType = mesh%GetElemType(elemNum)
+
+! Process based on element type
+SELECT CASE (elemType)
+CASE (HEXAHEDRON)
+ PRINT *, "Element is a hexahedron"
+CASE (TETRAHEDRON)
+ PRINT *, "Element is a tetrahedron"
+ ! Other cases...
+END SELECT
+```
+
+---
diff --git a/docs/docs-api/AbstractMesh/GetElementToElements.md b/docs/docs-api/AbstractMesh/GetElementToElements.md
index 26798c36..19de7617 100644
--- a/docs/docs-api/AbstractMesh/GetElementToElements.md
+++ b/docs/docs-api/AbstractMesh/GetElementToElements.md
@@ -1,12 +1,12 @@
# GetElementToElements
-Get element to elements connectivity information.
+Retrieves information about elements that are connected to a specified element.
## Interface
```fortran
MODULE PURE FUNCTION getElementToElements(obj, globalElement, &
- & onlyElements) RESULT(ans)
+ onlyElements) RESULT(ans)
CLASS(Mesh_), INTENT(IN) :: obj
!! mesh data
INTEGER(I4B), INTENT(IN) :: globalElement
@@ -20,3 +20,37 @@ MODULE PURE FUNCTION getElementToElements(obj, globalElement, &
!! list of elements surrounding elements
END FUNCTION getElementToElements
```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `globalElement` (INTEGER, input): The global (or local) element number.
+- `onlyElements` (LOGICAL, optional, input): If present and true, only the element numbers are returned. If absent or false, full connection information is returned.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalElement` is treated as local. Default is false.
+
+## Returns
+
+- `ans` (INTEGER array): A 2D array containing element connection information.
+ - If `onlyElements` is true, `ans` is an Nx1 array where each row contains a connected element number.
+ - If `onlyElements` is false, `ans` is an Nx3 array where:
+ - Column 1: Global element number of the neighbor
+ - Column 2: Local face number of the specified element
+ - Column 3: Local face number of the neighbor element
+
+## Description
+
+This function returns information about elements that share a face with the specified element. It can return either just the element numbers or detailed face connection information.
+
+## Example
+
+```fortran
+! Get only element numbers connected to element 10
+INTEGER(I4B), ALLOCATABLE :: connectedElems(:, :)
+connectedElems = mesh%GetElementToElements(10, onlyElements=.TRUE.)
+
+! Get full connection information for element 10
+connectedElems = mesh%GetElementToElements(10)
+! connectedElems(i,1) = connected element number
+! connectedElems(i,2) = local face number in element 10
+! connectedElems(i,3) = local face number in connected element
+```
diff --git a/docs/docs-api/AbstractMesh/GetElementToElements_.md b/docs/docs-api/AbstractMesh/GetElementToElements_.md
new file mode 100644
index 00000000..62a80499
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetElementToElements_.md
@@ -0,0 +1,76 @@
+# GetElementToElements_
+
+A memory-efficient version of GetElementToElements that allows reusing existing arrays.
+
+## Interface
+
+```fortran
+! Version 1 - Returns only element numbers
+MODULE SUBROUTINE obj_GetElementToElements1_(obj, ans, tsize, globalElement, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ !! mesh
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ !! list of elements surrounding elements
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ !! Size of data written to ans
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! Global element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! If islocal is present and true then globalElement is a local element
+END SUBROUTINE obj_GetElementToElements1_
+
+! Version 2 - Returns full connection information
+MODULE SUBROUTINE obj_GetElementToElements2_(obj, ans, nrow, ncol, globalElement, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ !! mesh
+ INTEGER(I4B), INTENT(INOUT) :: ans(:, :)
+ !! list of elements surrounding elements
+ INTEGER(I4B), INTENT(OUT) :: nrow
+ !! number of rows written to ans
+ INTEGER(I4B), INTENT(OUT) :: ncol
+ !! number of columns written to ans
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! Global element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! If islocal is present and true then globalElement is a local element
+END SUBROUTINE obj_GetElementToElements2_
+```
+
+## Arguments for Version 1
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `ans` (INTEGER array, output): Pre-allocated 1D array to store connected element numbers.
+- `tsize` (INTEGER, output): Actual size of data written to `ans`.
+- `globalElement` (INTEGER, input): The global (or local) element number.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalElement` is treated as local. Default is false.
+
+## Arguments for Version 2
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `ans` (INTEGER array, output): Pre-allocated 2D array to store full connection information.
+- `nrow` (INTEGER, output): Number of rows written to `ans`.
+- `ncol` (INTEGER, output): Number of columns written to `ans`.
+- `globalElement` (INTEGER, input): The global (or local) element number.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalElement` is treated as local. Default is false.
+
+## Description
+
+These subroutines retrieve element-to-element connectivity information without allocating new memory.
+
+Version 1 returns only the element numbers connected to the specified element.
+
+Version 2 returns full connection information (element numbers and local face numbers).
+
+## Example
+
+```fortran
+! Version 1 - Only element numbers
+INTEGER(I4B) :: connectedElems(10), tsize
+CALL mesh%GetElementToElements_(connectedElems, tsize, 10)
+! Now connectedElems(1:tsize) contains the connected element numbers
+
+! Version 2 - Full connection information
+INTEGER(I4B) :: connInfo(10,3), nrow, ncol
+CALL mesh%GetElementToElements_(connInfo, nrow, ncol, 10)
+! Now connInfo(1:nrow, 1:ncol) contains the full connection information
+```
diff --git a/docs/docs-api/AbstractMesh/GetFacetConnectivity.md b/docs/docs-api/AbstractMesh/GetFacetConnectivity.md
index 0230d074..d81b7994 100644
--- a/docs/docs-api/AbstractMesh/GetFacetConnectivity.md
+++ b/docs/docs-api/AbstractMesh/GetFacetConnectivity.md
@@ -1,31 +1,65 @@
# GetFacetConnectivity
+Generic method to get the connectivity of a facet element.
+
## Interface
```fortran
- MODULE PURE FUNCTION getFacetConnectivity( obj, facetElement, &
- & elementType, isMaster, facetBoundary ) RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: facetElement
- INTEGER( I4B ), INTENT( IN ) :: elementType
- LOGICAL( LGT ), INTENT( IN ) :: isMaster
- !! if isMaster is true then connectivity of facet in master-cell
- !! is returned, otherwise connectivity of facet in slave-cell
- !! is returned. This is only applicable for internal facet element
- !! because for domain facet we do not have slave-cell.
- !! Currently, we do not support slave-cell for meshFacet because
- !! the slave of meshFacet lives in different instance of
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: facetBoundary
- INTEGER( I4B ), ALLOCATABLE :: ans( : )
- END FUNCTION getFacetConnectivity
+! AbstractMeshGetFacetConnectivity - Get connectivity of a facet element
+MODULE FUNCTION AbstractMeshGetFacetConnectivity(obj, facetElement, elementType, isMaster) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), INTENT(IN) :: elementType
+ LOGICAL(LGT), INTENT(IN) :: isMaster
+ !! if isMaster is true then connectivity of facet in master-cell
+ !! is returned, otherwise connectivity of facet in slave-cell
+ !! is returned. This is only applicable for internal facet element
+ !! because for domain facet we do not have slave-cell.
+ !! Currently, we do not support slave-cell for meshFacet because
+ !! the slave of meshFacet lives in different instance of
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+END FUNCTION AbstractMeshGetFacetConnectivity
+
+! GetFacetConnectivity - Get connectivity of a facet in a cell
+MODULE FUNCTION GetFacetConnectivity(obj, globalElement, iface, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ INTEGER(I4B), INTENT(IN) :: iface
+ LOGICAL(I4B), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+END FUNCTION GetFacetConnectivity
```
+## Description
+
+These functions return the connectivity (global node numbers) of facet elements.
+
+The first function (AbstractMeshGetFacetConnectivity) gets the connectivity of a facet element by specifying the facet element number, element type, and whether to use the master or slave cell's perspective.
+
+The second function (GetFacetConnectivity) gets the connectivity of a facet by specifying a cell element and the local face number within that element.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement` (first function): The local facet element number.
+- `elementType` (first function): The element type of the facet.
+- `isMaster` (first function): If true, returns connectivity from master cell's perspective; otherwise, from slave cell's perspective.
+- `globalElement` (second function): The global (or local) element number.
+- `iface` (second function): The local face number within the element.
+- `islocal` (second function): If present and true, `globalElement` is treated as a local element number.
+
+## Returns
+
+- `ans`: An array containing the global node numbers that define the facet element.
+
+## Example
+
```fortran
- MODULE PURE FUNCTION getFacetConnectivity( obj, globalElement, &
- & iface ) RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: globalElement
- INTEGER( I4B ), INTENT( IN ) :: iface
- INTEGER( I4B ), ALLOCATABLE :: ans( : )
- END FUNCTION getFacetConnectivity
+! Get facet connectivity from facet element
+INTEGER(I4B), ALLOCATABLE :: facetNodes(:)
+facetNodes = mesh%GetFacetConnectivity(10, 3, .TRUE.)
+
+! Get facet connectivity from cell and local face
+INTEGER(I4B), ALLOCATABLE :: faceNodes(:)
+faceNodes = mesh%GetFacetConnectivity(5, 2)
```
diff --git a/docs/docs-api/AbstractMesh/GetFacetElementType.md b/docs/docs-api/AbstractMesh/GetFacetElementType.md
index fae6cee9..9ea400bc 100644
--- a/docs/docs-api/AbstractMesh/GetFacetElementType.md
+++ b/docs/docs-api/AbstractMesh/GetFacetElementType.md
@@ -1,12 +1,45 @@
# GetFacetElementType
+Returns the facet element type of a given cell element number.
+
## Interface
```fortran
- MODULE PURE FUNCTION getFacetElementType( obj, globalElement ) &
- & RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: globalElement
- INTEGER( I4B ), ALLOCATABLE :: ans( : )
- END FUNCTION getFacetElementType
+MODULE FUNCTION GetFacetElementType(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+END FUNCTION GetFacetElementType
+```
+
+## Description
+
+This function returns the facet element types for all facets of a specified element. The facet element type indicates whether a facet is an internal element, boundary element, or domain boundary element.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Returns
+
+- `ans`: An array containing the facet element types for each facet of the specified element.
+
+## Example
+
+```fortran
+INTEGER(I4B), ALLOCATABLE :: facetTypes(:)
+facetTypes = mesh%GetFacetElementType(15)
+
+DO i = 1, SIZE(facetTypes)
+ IF (facetTypes(i) == INTERNAL_ELEMENT) THEN
+ PRINT*, "Facet", i, "is an internal facet"
+ ELSE IF (facetTypes(i) == BOUNDARY_ELEMENT) THEN
+ PRINT*, "Facet", i, "is a boundary facet"
+ ELSE IF (facetTypes(i) == DOMAIN_BOUNDARY_ELEMENT) THEN
+ PRINT*, "Facet", i, "is a domain boundary facet"
+ END IF
+END DO
```
diff --git a/docs/docs-api/AbstractMesh/GetFacetParam.md b/docs/docs-api/AbstractMesh/GetFacetParam.md
new file mode 100644
index 00000000..e9768ee9
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetFacetParam.md
@@ -0,0 +1,32 @@
+# GetFacetParam
+
+Get the parameters of facet elements.
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE GetFacetParam(obj, facetElement, elementType)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), OPTIONAL, INTENT(OUT) :: elementType
+END SUBROUTINE GetFacetParam
+```
+
+## Description
+
+This subroutine retrieves parameters of a specified facet element, such as the element type.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement`: The local facet element number.
+- `elementType` (optional, output): Returns the element type of the facet.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: facetNum = 12, facetType
+
+CALL mesh%GetFacetParam(facetNum, facetType)
+PRINT*, "Facet element type:", facetType
+```
diff --git a/docs/docs-api/AbstractMesh/GetGlobalEdgeNumber.md b/docs/docs-api/AbstractMesh/GetGlobalEdgeNumber.md
new file mode 100644
index 00000000..e5893675
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetGlobalEdgeNumber.md
@@ -0,0 +1,43 @@
+# GetGlobalEdgeNumber
+
+Get global Edge number from global element and localEdgenumber.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetGlobalEdgeNumber(obj, globalElement, localEdgeNumber, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! local or global element number
+ INTEGER(I4B), INTENT(IN) :: localEdgeNumber
+ !! local Edge number in global element
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ INTEGER(I4B) :: ans
+ !! global Edge number
+END FUNCTION GetGlobalEdgeNumber
+```
+
+## Description
+
+This function returns the global edge number for a specified local edge within an element. This is useful for identifying unique edges across the entire mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number.
+- `localEdgeNumber`: The local edge number within the element.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Returns
+
+- `ans`: The global edge number.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: elemNum = 8, localEdge = 3, globalEdge
+
+globalEdge = mesh%GetGlobalEdgeNumber(elemNum, localEdge)
+PRINT*, "Global edge number:", globalEdge
+```
diff --git a/docs/docs-api/AbstractMesh/GetGlobalElemNumber.md b/docs/docs-api/AbstractMesh/GetGlobalElemNumber.md
index 9c50f4d6..93fe02a8 100644
--- a/docs/docs-api/AbstractMesh/GetGlobalElemNumber.md
+++ b/docs/docs-api/AbstractMesh/GetGlobalElemNumber.md
@@ -1,20 +1,77 @@
# GetGlobalElemNumber
+The `GetGlobalElemNumber` method converts local element numbers to global element numbers in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION getGlobalElemNumber(obj, LocalElement) &
+INTERFACE
+ MODULE FUNCTION GetGlobalElemNumber1(obj, localElement) &
& RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: LocalElement(:)
- INTEGER(I4B) :: ans(SIZE(LocalElement))
- END FUNCTION getGlobalElemNumber
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: localElement(:)
+ INTEGER(I4B) :: ans(SIZE(localElement))
+ END FUNCTION GetGlobalElemNumber1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetGlobalElemNumber2(obj, localElement) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: localElement
+ INTEGER(I4B) :: ans
+ END FUNCTION GetGlobalElemNumber2
+END INTERFACE
```
+## Syntax
+
```fortran
- MODULE PURE FUNCTION getGlobalElemNumber(obj, LocalElement) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: LocalElement
- INTEGER(I4B) :: ans
- END FUNCTION getGlobalElemNumber
+! Convert a single local element number
+globalElem = mesh%GetGlobalElemNumber(localElement)
+
+! Convert multiple local element numbers
+globalElems = mesh%GetGlobalElemNumber(localElementArray)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| -------------- | ----------------------------------- | ------ | ---------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `localElement` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Local element number(s) to convert |
+
+## Return Value
+
+| Version | Type | Description |
+| ----------------- | ----------------- | ------------------------------- |
+| Single element | `INTEGER(I4B)` | Global element number |
+| Multiple elements | `INTEGER(I4B)(:)` | Array of global element numbers |
+
+## Description
+
+`GetGlobalElemNumber` converts local element numbers to global element numbers. This is useful for operations that work with the internal (local) element numbering but need to report results using the global element numbers.
+
+The method has two versions:
+
+1. Convert a single local element number to a global element number
+2. Convert an array of local element numbers to an array of global element numbers
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: localElem, globalElem
+INTEGER(I4B) :: localElems(3), globalElems(3)
+
+! Initialize mesh...
+
+! Convert a single local element number
+localElem = 5
+globalElem = mesh%GetGlobalElemNumber(localElem)
+
+! Convert multiple local element numbers
+localElems = [1, 3, 5]
+globalElems = mesh%GetGlobalElemNumber(localElems)
+
+PRINT *, "Local element", localElem, "is global element", globalElem
```
diff --git a/docs/docs-api/AbstractMesh/GetGlobalFaceNumber.md b/docs/docs-api/AbstractMesh/GetGlobalFaceNumber.md
new file mode 100644
index 00000000..4bb0f6a3
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetGlobalFaceNumber.md
@@ -0,0 +1,43 @@
+# GetGlobalFaceNumber
+
+Get global face number from global element and localFacenumber.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetGlobalFaceNumber(obj, globalElement, localFaceNumber, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! local or global element number
+ INTEGER(I4B), INTENT(IN) :: localFaceNumber
+ !! local face number in global element
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ INTEGER(I4B) :: ans
+ !! global face number
+END FUNCTION GetGlobalFaceNumber
+```
+
+## Description
+
+This function returns the global face number for a specified local face within an element. This is useful for identifying unique faces across the entire mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `globalElement`: The global (or local) element number.
+- `localFaceNumber`: The local face number within the element.
+- `islocal`: If present and true, `globalElement` is treated as a local element number.
+
+## Returns
+
+- `ans`: The global face number.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: elemNum = 8, localFace = 2, globalFace
+
+globalFace = mesh%GetGlobalFaceNumber(elemNum, localFace)
+PRINT*, "Global face number:", globalFace
+```
diff --git a/docs/docs-api/AbstractMesh/GetGlobalNodeNumber.md b/docs/docs-api/AbstractMesh/GetGlobalNodeNumber.md
index 5544b193..dfd32f05 100644
--- a/docs/docs-api/AbstractMesh/GetGlobalNodeNumber.md
+++ b/docs/docs-api/AbstractMesh/GetGlobalNodeNumber.md
@@ -1,19 +1,83 @@
# GetGlobalNodeNumber
+The `GetGlobalNodeNumber` method converts local node numbers to global node numbers in the mesh. Global node numbers are used for cross-mesh references and for output/visualization.
+
## Interface
```fortran
- MODULE PURE FUNCTION getGlobalNodeNumber(obj, localNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetGlobalNodeNumber1(obj, localNode) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: localNode(:)
INTEGER(I4B) :: ans(SIZE(localNode))
- END FUNCTION getGlobalNodeNumber
-```
+ END FUNCTION GetGlobalNodeNumber1
+END INTERFACE
-```fortran
- MODULE PURE FUNCTION getGlobalNodeNumber(obj, localNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetGlobalNodeNumber2(obj, localNode) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: localNode
INTEGER(I4B) :: ans
- END FUNCTION getGlobalNodeNumber
+ END FUNCTION GetGlobalNodeNumber2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Convert a single local node number
+globalNode = mesh%GetGlobalNodeNumber(localNode)
+
+! Convert multiple local node numbers
+globalNodes = mesh%GetGlobalNodeNumber(localNodeArray)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ----------- | ----------------------------------- | ------ | ------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `localNode` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Local node number(s) to convert |
+
+## Return Value
+
+| Version | Type | Description |
+| -------------- | ----------------- | ---------------------------- |
+| Single node | `INTEGER(I4B)` | Global node number |
+| Multiple nodes | `INTEGER(I4B)(:)` | Array of global node numbers |
+
+## Description
+
+`GetGlobalNodeNumber` converts local node numbers to global node numbers in the mesh. Local node numbers are consecutive integers starting from 1 that are used for internal mesh operations, while global node numbers are unique identifiers that may not be consecutive.
+
+The method has two versions:
+
+1. Convert a single local node number to a global node number
+2. Convert an array of local node numbers to an array of global node numbers
+
+This method is useful when working with multiple meshes or when exporting results to external formats that require global node numbering.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: localNode, globalNode
+INTEGER(I4B) :: localNodes(3), globalNodes(3)
+
+! Initialize mesh...
+
+! Convert a single local node number
+localNode = 5
+globalNode = mesh%GetGlobalNodeNumber(localNode)
+
+! Convert multiple local node numbers
+localNodes = [1, 5, 10]
+globalNodes = mesh%GetGlobalNodeNumber(localNodes)
+
+PRINT *, "Local node", localNode, "is global node", globalNode
+
+! Use global node numbers for output or visualization
+DO i = 1, SIZE(globalNodes)
+ WRITE (outputUnit, *) "Node", globalNodes(i), ":", nodeData(i)
+END DO
```
diff --git a/docs/docs-api/AbstractMesh/GetInternalNptrs.md b/docs/docs-api/AbstractMesh/GetInternalNptrs.md
index 1c513583..4ff15dcc 100644
--- a/docs/docs-api/AbstractMesh/GetInternalNptrs.md
+++ b/docs/docs-api/AbstractMesh/GetInternalNptrs.md
@@ -1,10 +1,59 @@
# GetInternalNptrs
+The `GetInternalNptrs` method returns the global node numbers of all internal nodes in the mesh. Internal nodes are nodes that are not on the boundary of the domain.
+
## Interface
```fortran
- MODULE PURE FUNCTION getInternalNptrs(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetInternalNptrs(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getInternalNptrs
+ END FUNCTION GetInternalNptrs
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+internalNodes = mesh%GetInternalNptrs()
```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| ------------------------------ | ----------------------------------------------- |
+| `INTEGER(I4B), ALLOCATABLE(:)` | Array of global node numbers for internal nodes |
+
+## Description
+
+`GetInternalNptrs` returns an array of global node numbers for all internal nodes in the mesh. Internal nodes are those that are not on the boundary of the domain. This distinction is important for many numerical methods, as boundary nodes often require special treatment for boundary conditions.
+
+The method allocates a new array to hold the result, with a size equal to the number of internal nodes.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B), ALLOCATABLE :: internalNodes(:)
+
+! Initialize mesh...
+
+! Get all internal nodes
+internalNodes = mesh%GetInternalNptrs()
+
+PRINT *, "Mesh has", SIZE(internalNodes), "internal nodes"
+
+! Apply some operation to internal nodes only
+DO i = 1, SIZE(internalNodes)
+ nodeNum = internalNodes(i)
+ ! Process internal node
+END DO
+```
+
diff --git a/docs/docs-api/AbstractMesh/GetInternalNptrs_.md b/docs/docs-api/AbstractMesh/GetInternalNptrs_.md
new file mode 100644
index 00000000..f496386b
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetInternalNptrs_.md
@@ -0,0 +1,61 @@
+# GetInternalNptrs_
+
+The `GetInternalNptrs_` method retrieves the global node numbers of internal nodes without allocating new memory. The caller provides a pre-allocated array to store the results.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetInternalNptrs_(obj, nptrs)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(INOUT) :: nptrs(:)
+ END SUBROUTINE GetInternalNptrs_
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetInternalNptrs_(nptrs)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------- | ------------------------------------------------------ |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `nptrs` | `INTEGER(I4B)(:)` | `INOUT` | Pre-allocated array to store the internal node numbers |
+
+## Description
+
+`GetInternalNptrs_` retrieves the global node numbers of all internal nodes in the mesh and stores them in a pre-allocated array. This version avoids memory allocation, making it more efficient for repeated operations.
+
+The caller must ensure that the `nptrs` array is large enough to hold all internal nodes. The total number of internal nodes can be determined by calling `GetTotalInternalNodes()` before using this method.
+
+Unlike the function version, this subroutine does not return the size of the data. It fills the array with internal node numbers in sequence.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: numInternalNodes
+INTEGER(I4B), ALLOCATABLE :: nodeBuffer(:)
+
+! Initialize mesh...
+
+! Get the number of internal nodes
+numInternalNodes = mesh%GetTotalInternalNodes()
+
+! Allocate a buffer of the exact size needed
+ALLOCATE (nodeBuffer(numInternalNodes))
+
+! Get internal nodes without allocation
+CALL mesh%GetInternalNptrs_(nodeBuffer)
+
+PRINT *, "Mesh has", numInternalNodes, "internal nodes"
+
+! Process all internal nodes
+DO i = 1, numInternalNodes
+ ! Process nodeBuffer(i)
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetLocalElemNumber.md b/docs/docs-api/AbstractMesh/GetLocalElemNumber.md
index ca8f534a..5d9265b0 100644
--- a/docs/docs-api/AbstractMesh/GetLocalElemNumber.md
+++ b/docs/docs-api/AbstractMesh/GetLocalElemNumber.md
@@ -1,19 +1,83 @@
# GetLocalElemNumber
+The `GetLocalElemNumber` method converts global element numbers to local element numbers in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION getLocalElemNumber(obj, GlobalElement) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: GlobalElement(:)
- INTEGER(I4B) :: ans(SIZE(GlobalElement))
- END FUNCTION getLocalElemNumber
+INTERFACE
+ MODULE FUNCTION GetLocalElemNumber1(obj, globalElement, islocal) &
+ & RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans(SIZE(globalElement))
+ END FUNCTION GetLocalElemNumber1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetLocalElemNumber2(obj, globalElement, islocal) &
+ & RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans
+ END FUNCTION GetLocalElemNumber2
+END INTERFACE
```
+## Syntax
+
```fortran
- MODULE PURE FUNCTION getLocalElemNumber(obj, GlobalElement) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: GlobalElement
- INTEGER(I4B) :: ans
- END FUNCTION getLocalElemNumber
+! Convert a single global element number
+localElem = mesh%GetLocalElemNumber(globalElement, [islocal])
+
+! Convert multiple global element numbers
+localElems = mesh%GetLocalElemNumber(globalElementArray, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ----------------------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Global element number(s) to convert |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, input is already local and no conversion is needed |
+
+## Return Value
+
+| Version | Type | Description |
+| ----------------- | ----------------- | ------------------------------ |
+| Single element | `INTEGER(I4B)` | Local element number |
+| Multiple elements | `INTEGER(I4B)(:)` | Array of local element numbers |
+
+## Description
+
+`GetLocalElemNumber` converts global element numbers to local element numbers. This is useful for operations that need to work with the internal (local) element numbering of the mesh.
+
+The method has two versions:
+
+1. Convert a single global element number to a local element number
+2. Convert an array of global element numbers to an array of local element numbers
+
+If the optional `islocal` parameter is set to true, the method simply returns the input values assuming they're already local element numbers.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: globalElem, localElem
+INTEGER(I4B) :: globalElems(3), localElems(3)
+
+! Initialize mesh...
+
+! Convert a single global element number
+globalElem = 1001
+localElem = mesh%GetLocalElemNumber(globalElem)
+
+! Convert multiple global element numbers
+globalElems = [1001, 1005, 1010]
+localElems = mesh%GetLocalElemNumber(globalElems)
+
+PRINT *, "Global element", globalElem, "is local element", localElem
```
diff --git a/docs/docs-api/AbstractMesh/GetLocalFacetID.md b/docs/docs-api/AbstractMesh/GetLocalFacetID.md
index ac258cbd..a27c20da 100644
--- a/docs/docs-api/AbstractMesh/GetLocalFacetID.md
+++ b/docs/docs-api/AbstractMesh/GetLocalFacetID.md
@@ -1,15 +1,40 @@
# GetLocalFacetID
+Return the local facet id, so that we can get reference element of the facet element.
+
## Interface
```fortran
- MODULE PURE FUNCTION getLocalFacetID( obj, facetElement, &
- & elementType, isMaster, facetBoundary ) RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: facetElement
- INTEGER( I4B ), INTENT( IN ) :: elementType
- LOGICAL( LGT ), INTENT( IN ) :: isMaster
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: facetBoundary
- INTEGER( I4B ) :: ans
- END FUNCTION getLocalFacetID
+MODULE FUNCTION GetLocalFacetID(obj, facetElement, elementType, isMaster) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), INTENT(IN) :: elementType
+ LOGICAL(LGT), INTENT(IN) :: isMaster
+ INTEGER(I4B) :: ans
+END FUNCTION GetLocalFacetID
+```
+
+## Description
+
+This function returns the local facet ID within a cell for a given facet element. This ID can be used to get the reference element of the facet.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement`: The local facet element number.
+- `elementType`: The element type of the facet.
+- `isMaster`: If true, returns the local facet ID in the master cell; otherwise, in the slave cell.
+
+## Returns
+
+- `ans`: The local facet ID.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: facetNum = 10, facetType = 3, localID
+
+! Get local facet ID in the master cell
+localID = mesh%GetLocalFacetID(facetNum, facetType, .TRUE.)
+PRINT*, "Local facet ID in master cell:", localID
```
diff --git a/docs/docs-api/AbstractMesh/GetLocalNodeNumber.md b/docs/docs-api/AbstractMesh/GetLocalNodeNumber.md
index a3c5fa1d..efcb0cf6 100644
--- a/docs/docs-api/AbstractMesh/GetLocalNodeNumber.md
+++ b/docs/docs-api/AbstractMesh/GetLocalNodeNumber.md
@@ -1,19 +1,89 @@
# GetLocalNodeNumber
+The `GetLocalNodeNumber` method converts global node numbers to local node numbers in the mesh. Local node numbers are used for internal mesh operations and array indexing.
+
## Interface
```fortran
- MODULE PURE FUNCTION getLocalNodeNumber(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetLocalNodeNumber1(obj, globalNode, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B) :: ans(SIZE(globalNode))
- END FUNCTION getLocalNodeNumber
-```
+ END FUNCTION GetLocalNodeNumber1
+END INTERFACE
-```fortran
- MODULE PURE FUNCTION getLocalNodeNumber(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetLocalNodeNumber2(obj, globalNode, islocal) &
+ & RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalNode
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B) :: ans
- END FUNCTION getLocalNodeNumber
+ END FUNCTION GetLocalNodeNumber2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Convert a single global node number
+localNode = mesh%GetLocalNodeNumber(globalNode, [islocal])
+
+! Convert multiple global node numbers
+localNodes = mesh%GetLocalNodeNumber(globalNodeArray, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Global node number(s) to convert |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, input is already local and no conversion is needed |
+
+## Return Value
+
+| Version | Type | Description |
+|---------|------|-------------|
+| Single node | `INTEGER(I4B)` | Local node number |
+| Multiple nodes | `INTEGER(I4B)(:)` | Array of local node numbers |
+
+## Description
+
+`GetLocalNodeNumber` converts global node numbers to local node numbers in the mesh. Local node numbers are consecutive integers starting from 1 that are used for internal mesh operations and array indexing.
+
+The method has two versions:
+1. Convert a single global node number to a local node number
+2. Convert an array of global node numbers to an array of local node numbers
+
+If the optional `islocal` parameter is set to true, the method simply returns the input values assuming they're already local node numbers.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: globalNode, localNode
+INTEGER(I4B) :: globalNodes(3), localNodes(3)
+
+! Initialize mesh...
+
+! Convert a single global node number
+globalNode = 1001
+localNode = mesh%GetLocalNodeNumber(globalNode)
+
+! Convert multiple global node numbers
+globalNodes = [1001, 1005, 1010]
+localNodes = mesh%GetLocalNodeNumber(globalNodes)
+
+PRINT*, "Global node", globalNode, "is local node", localNode
+
+! Use local node numbers for array indexing
+DO i = 1, SIZE(localNodes)
+ ! Access node data using local node number
+ nodeCoord = nodeCoordArray(:, localNodes(i))
+END DO
```
+
diff --git a/docs/docs-api/AbstractMesh/GetLocalNodeNumber_.md b/docs/docs-api/AbstractMesh/GetLocalNodeNumber_.md
new file mode 100644
index 00000000..a7025c80
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetLocalNodeNumber_.md
@@ -0,0 +1,63 @@
+# GetLocalNodeNumber_
+
+The `GetLocalNodeNumber_` method converts global node numbers to local node numbers without allocating new memory. The caller provides a pre-allocated array to store the results.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetLocalNodeNumber1_(obj, globalNode, ans, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE GetLocalNodeNumber1_
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetLocalNodeNumber_(globalNode, ans, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------ | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)(:)` | `IN` | Global node numbers to convert |
+| `ans` | `INTEGER(I4B)(:)` | `INOUT` | Pre-allocated array to store local node numbers |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, input is already local and no conversion is needed |
+
+## Description
+
+`GetLocalNodeNumber_` converts global node numbers to local node numbers without allocating new memory. This subroutine version is more efficient for repeated operations because it avoids memory allocation overhead.
+
+The caller must ensure that the `ans` array is large enough to hold all results. Typically, `ans` should have the same size as `globalNode`.
+
+If the optional `islocal` parameter is set to true, the method simply copies the input values to the output array, assuming they're already local node numbers.
+
+## Example Usage
+
+```fortran
+TYPE(FEMesh_) :: mesh
+INTEGER(I4B) :: globalNodes(3), localNodes(3)
+
+! Initialize mesh...
+
+! Set up global node numbers
+globalNodes = [1001, 1005, 1010]
+
+! Convert to local node numbers without allocation
+CALL mesh%GetLocalNodeNumber_(globalNodes, localNodes)
+
+PRINT *, "Global nodes:", globalNodes
+PRINT *, "Local nodes:", localNodes
+
+! Use local node numbers for array indexing
+DO i = 1, SIZE(localNodes)
+ ! Access node data using local node number
+ nodeCoord = nodeCoordArray(:, localNodes(i))
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetMasterCellNumber.md b/docs/docs-api/AbstractMesh/GetMasterCellNumber.md
index 939c6858..c3403406 100644
--- a/docs/docs-api/AbstractMesh/GetMasterCellNumber.md
+++ b/docs/docs-api/AbstractMesh/GetMasterCellNumber.md
@@ -1,15 +1,37 @@
# GetMasterCellNumber
+Returns the master cell number of a facet element.
+
## Interface
```fortran
- MODULE PURE FUNCTION getMasterCellNumber( obj, facetElement, &
- & elementType, facetBoundary )&
- & RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: facetElement
- INTEGER( I4B ), INTENT( IN ) :: elementType
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: facetBoundary
- INTEGER( I4B ) :: ans
- END FUNCTION getMasterCellNumber
+MODULE FUNCTION GetMasterCellNumber(obj, facetElement, elementType) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), INTENT(IN) :: elementType
+ INTEGER(I4B) :: ans
+END FUNCTION GetMasterCellNumber
+```
+
+## Description
+
+This function returns the global element number of the master cell associated with a facet element. The master cell is the first cell that contains the facet.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement`: The local facet element number.
+- `elementType`: The element type of the facet.
+
+## Returns
+
+- `ans`: The global element number of the master cell.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: facetNum = 8, facetType = 3, masterCell
+
+masterCell = mesh%GetMasterCellNumber(facetNum, facetType)
+PRINT*, "Master cell number:", masterCell
```
diff --git a/docs/docs-api/AbstractMesh/GetMaterial.md b/docs/docs-api/AbstractMesh/GetMaterial.md
new file mode 100644
index 00000000..59677fdc
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaterial.md
@@ -0,0 +1,74 @@
+# GetMaterial
+
+The `GetMaterial` method retrieves the material ID assigned to a specific element and medium within the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION obj_GetMaterial1(obj, medium, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: medium
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans
+ END FUNCTION obj_GetMaterial1
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+materialID = mesh%GetMaterial(medium, globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `medium` | `INTEGER(I4B)` | `IN` | Medium number (e.g., soil, water) |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | --------------------------------------------------- |
+| `INTEGER(I4B)` | Material ID for the specified medium in the element |
+
+## Description
+
+`GetMaterial` returns the material ID assigned to a specific medium within a given element. Materials are used to define physical properties of elements in the mesh for simulation purposes. Each element can have multiple materials corresponding to different media (e.g., soil, water, air).
+
+## Implementation Details
+
+The method first converts the global element number to a local element number if needed, then accesses the material property from the element data structure.
+
+```fortran
+MODULE PROCEDURE obj_GetMaterial1
+INTEGER(I4B) :: iel
+iel = obj%GetLocalElemNumber(globalElement, islocal=islocal)
+ans = obj%elementData(iel)%ptr%material(medium)
+END PROCEDURE obj_GetMaterial1
+```
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: materialID, elementNum, mediumType
+
+! Initialize mesh, elementNum, mediumType...
+
+! Get the material ID for a specific element and medium
+materialID = mesh%GetMaterial(medium=mediumType, globalElement=elementNum)
+
+! Use the material ID for further calculations
+```
+
+## See Also
+
+- `SetMaterial`: Sets the material properties for elements
+- `GetTotalMaterial`: Gets the total number of materials for an element
diff --git a/docs/docs-api/AbstractMesh/GetMaxElemNumber.md b/docs/docs-api/AbstractMesh/GetMaxElemNumber.md
new file mode 100644
index 00000000..5b45dd4c
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxElemNumber.md
@@ -0,0 +1,58 @@
+# GetMaxElemNumber
+
+The `GetMaxElemNumber` method returns the maximum global element number present in the mesh. This is useful for determining the range of element numbers and for array sizing.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetMaxElemNumber(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetMaxElemNumber
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+maxElemNum = mesh%GetMaxElemNumber()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------------------------- |
+| `INTEGER(I4B)` | Maximum global element number in the mesh |
+
+## Description
+
+`GetMaxElemNumber` returns the maximum global element number present in the mesh. This value is useful for determining the range of element numbers and for array sizing, especially when creating arrays indexed by global element numbers.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: minElem, maxElem
+INTEGER(I4B), ALLOCATABLE :: elemData(:)
+
+! Initialize mesh...
+
+! Get the maximum element number
+maxElem = mesh%GetMaxElemNumber()
+
+! Allocate an array that can be indexed by global element numbers
+ALLOCATE (elemData(maxElem))
+
+! Use the array with global element numbers as indices
+DO i = 1, mesh%SIZE()
+ globalElem = mesh%GetElemNum_() [i]
+ elemData(globalElem) = computeSomething(globalElem)
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetMaxElementToElements.md b/docs/docs-api/AbstractMesh/GetMaxElementToElements.md
new file mode 100644
index 00000000..a8fba015
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxElementToElements.md
@@ -0,0 +1,34 @@
+# GetMaxElementToElements
+
+Retrieves the maximum number of elements connected to any element in the mesh.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetMaxElementToElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetMaxElementToElements
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input/output): The mesh object. May be modified if element-to-elements mapping needs to be initiated.
+
+## Returns
+
+- `ans` (INTEGER): The maximum number of elements connected to any element in the mesh.
+
+## Description
+
+This function returns the maximum number of elements connected to any element in the mesh. If the element-to-elements mapping has not been initiated, it will be initiated first.
+
+This information is useful for pre-allocating arrays when working with element-to-element relationships.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: maxConnectedElements
+maxConnectedElements = mesh%GetMaxElementToElements()
+! Now maxConnectedElements contains the maximum number of elements connected to any element
+```
diff --git a/docs/docs-api/AbstractMesh/GetMaxNNE.md b/docs/docs-api/AbstractMesh/GetMaxNNE.md
new file mode 100644
index 00000000..855f82e9
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxNNE.md
@@ -0,0 +1,55 @@
+# GetMaxNNE
+
+The `GetMaxNNE` method returns the maximum number of nodes in any element of the mesh. This is useful for allocating arrays that need to accommodate any element in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetMaxNNE(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetMaxNNE
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+maxNodes = mesh%GetMaxNNE()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------- |
+| `INTEGER(I4B)` | Maximum number of nodes in any element |
+
+## Description
+
+`GetMaxNNE` returns the maximum number of nodes in any element of the mesh. This is useful for allocating arrays that need to be large enough to handle any element in the mesh without knowing the specific element type in advance.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: maxNodes
+REAL(DFP), ALLOCATABLE :: nodalValues(:)
+
+! Initialize mesh...
+
+! Get the maximum number of nodes in any element
+maxNodes = mesh%GetMaxNNE()
+
+! Allocate an array that can handle any element
+ALLOCATE (nodalValues(maxNodes))
+
+! Use the array for operations on different elements
+```
+
diff --git a/docs/docs-api/AbstractMesh/GetMaxNodeNumber.md b/docs/docs-api/AbstractMesh/GetMaxNodeNumber.md
new file mode 100644
index 00000000..1c40f993
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxNodeNumber.md
@@ -0,0 +1,66 @@
+# GetMaxNodeNumber
+
+The `GetMaxNodeNumber` method returns the maximum global node number present in the mesh. This is useful for determining the range of node numbers and for array sizing.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetMaxNodeNumber(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetMaxNodeNumber
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+maxNodeNum = mesh%GetMaxNodeNumber()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------- |
+| `INTEGER(I4B)` | Maximum global node number in the mesh |
+
+## Description
+
+`GetMaxNodeNumber` returns the maximum global node number present in the mesh. This value is useful for determining the range of node numbers and for array sizing, especially when creating arrays indexed by global node numbers.
+
+The maximum node number is stored in the mesh object as `maxNptrs` and is typically determined during mesh construction or import.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: minNode, maxNode, nodeRange
+LOGICAL(LGT), ALLOCATABLE :: nodeExists(:)
+
+! Initialize mesh...
+
+! Get the maximum node number
+maxNode = mesh%GetMaxNodeNumber()
+minNode = mesh%GetMinNodeNumber()
+nodeRange = maxNode - minNode + 1
+
+! Create a mask for node existence
+ALLOCATE (nodeExists(maxNode))
+nodeExists = .FALSE.
+
+! Mark existing nodes
+DO i = 1, mesh%GetTotalNodes()
+ globalNode = mesh%GetNptrs() (i)
+ nodeExists(globalNode) = .TRUE.
+END DO
+
+PRINT *, "Highest node number in mesh:", maxNode
+PRINT *, "Number of gaps in node numbering:", nodeRange - mesh%GetTotalNodes()
+```
diff --git a/docs/docs-api/AbstractMesh/GetMaxNodeToElements.md b/docs/docs-api/AbstractMesh/GetMaxNodeToElements.md
new file mode 100644
index 00000000..71b7df92
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxNodeToElements.md
@@ -0,0 +1,34 @@
+# GetMaxNodeToElements
+
+Retrieves the maximum number of elements connected to any node in the mesh.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetMaxNodeToElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetMaxNodeToElements
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input/output): The mesh object. May be modified if node-to-elements mapping needs to be initiated.
+
+## Returns
+
+- `ans` (INTEGER): The maximum number of elements connected to any node in the mesh.
+
+## Description
+
+This function returns the maximum number of elements connected to any node in the mesh. If the node-to-elements mapping has not been initiated, it will be initiated first.
+
+This information is useful for pre-allocating arrays when working with node-to-element relationships.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: maxElements
+maxElements = mesh%GetMaxNodeToElements()
+! Now maxElements contains the maximum number of elements connected to any node
+```
diff --git a/docs/docs-api/AbstractMesh/GetMaxNodeToNodes.md b/docs/docs-api/AbstractMesh/GetMaxNodeToNodes.md
new file mode 100644
index 00000000..7faa680e
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMaxNodeToNodes.md
@@ -0,0 +1,34 @@
+# GetMaxNodeToNodes
+
+Retrieves the maximum number of nodes connected to any node in the mesh.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetMaxNodeToNodes(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetMaxNodeToNodes
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input/output): The mesh object. May be modified if node-to-nodes mapping needs to be initiated.
+
+## Returns
+
+- `ans` (INTEGER): The maximum number of nodes connected to any node in the mesh.
+
+## Description
+
+This function returns the maximum number of nodes connected to any node in the mesh. If the node-to-nodes mapping has not been initiated, it will be initiated first.
+
+This information is useful for pre-allocating arrays when working with node-to-node relationships.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: maxConnectedNodes
+maxConnectedNodes = mesh%GetMaxNodeToNodes()
+! Now maxConnectedNodes contains the maximum number of nodes connected to any node
+```
diff --git a/docs/docs-api/AbstractMesh/GetMinElemNumber.md b/docs/docs-api/AbstractMesh/GetMinElemNumber.md
new file mode 100644
index 00000000..ce2674a9
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMinElemNumber.md
@@ -0,0 +1,53 @@
+# GetMinElemNumber
+
+The `GetMinElemNumber` method returns the minimum global element number present in the mesh. This is useful for determining the range of element numbers and for array indexing.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetMinElemNumber(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetMinElemNumber
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+minElemNum = mesh%GetMinElemNumber()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------------------------- |
+| `INTEGER(I4B)` | Minimum global element number in the mesh |
+
+## Description
+
+`GetMinElemNumber` returns the minimum global element number present in the mesh. This value is useful for determining the range of element numbers and for array indexing, especially when working with global element numbers directly.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: minElem, maxElem, rangeSize
+
+! Initialize mesh...
+
+! Get the minimum and maximum element numbers
+minElem = mesh%GetMinElemNumber()
+maxElem = mesh%GetMaxElemNumber()
+rangeSize = maxElem - minElem + 1
+
+PRINT *, "Element numbers range from", minElem, "to", maxElem
+PRINT *, "Range size:", rangeSize
+```
diff --git a/docs/docs-api/AbstractMesh/GetMinNodeNumber.md b/docs/docs-api/AbstractMesh/GetMinNodeNumber.md
new file mode 100644
index 00000000..59b6cdf5
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetMinNodeNumber.md
@@ -0,0 +1,63 @@
+# GetMinNodeNumber
+
+The `GetMinNodeNumber` method returns the minimum global node number present in the mesh. This is useful for determining the range of node numbers and for array indexing.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetMinNodeNumber(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetMinNodeNumber
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+minNodeNum = mesh%GetMinNodeNumber()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------- |
+| `INTEGER(I4B)` | Minimum global node number in the mesh |
+
+## Description
+
+`GetMinNodeNumber` returns the minimum global node number present in the mesh. This value is useful for determining the range of node numbers and for array indexing, especially when working with global node numbers directly.
+
+The minimum node number is stored in the mesh object as `minNptrs` and is typically determined during mesh construction or import.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: minNode, maxNode, rangeSize
+
+! Initialize mesh...
+
+! Get the minimum and maximum node numbers
+minNode = mesh%GetMinNodeNumber()
+maxNode = mesh%GetMaxNodeNumber()
+rangeSize = maxNode - minNode + 1
+
+PRINT *, "Node numbers range from", minNode, "to", maxNode
+PRINT *, "Range size:", rangeSize
+
+! Create an array indexed by global node number
+IF (rangeSize < 1000000) THEN ! Avoid excessive memory use
+ ALLOCATE (nodeData(minNode:maxNode))
+
+ ! Now can access data by global node number directly
+ nodeData(nodeNum) = someValue
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/GetNNE.md b/docs/docs-api/AbstractMesh/GetNNE.md
new file mode 100644
index 00000000..bc907587
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNNE.md
@@ -0,0 +1,60 @@
+# GetNNE
+
+The `GetNNE` method returns the number of nodes in a specific element of the mesh. This is useful for determining the size of arrays needed for element-based operations.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetNNE(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans
+ END FUNCTION GetNNE
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numNodes = mesh%GetNNE(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------ |
+| `INTEGER(I4B)` | Number of nodes in the element |
+
+## Description
+
+`GetNNE` returns the number of nodes in a specified element. This is an important property as different element types and orders have different numbers of nodes. The method can be used to allocate arrays of appropriate size for element-based operations.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, numNodes
+REAL(DFP), ALLOCATABLE :: nodalValues(:)
+
+! Initialize mesh, elemNum...
+
+! Get the number of nodes in the element
+numNodes = mesh%GetNNE(elemNum)
+
+! Allocate an array for nodal values
+ALLOCATE (nodalValues(numNodes))
+
+! Use the array for element operations
+```
+
+---
diff --git a/docs/docs-api/AbstractMesh/GetNSD.md b/docs/docs-api/AbstractMesh/GetNSD.md
new file mode 100644
index 00000000..d6a0b940
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNSD.md
@@ -0,0 +1,32 @@
+# GetNSD
+
+Return the NSD (Number of Spatial Dimensions).
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetNSD(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetNSD
+```
+
+## Description
+
+This function returns the number of spatial dimensions (NSD) of the mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The number of spatial dimensions (typically 1, 2, or 3).
+
+## Example
+
+```fortran
+INTEGER(I4B) :: nsd
+nsd = mesh%GetNSD()
+PRINT*, "Number of spatial dimensions:", nsd
+```
diff --git a/docs/docs-api/AbstractMesh/GetNearestNode.md b/docs/docs-api/AbstractMesh/GetNearestNode.md
new file mode 100644
index 00000000..bbe737fe
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNearestNode.md
@@ -0,0 +1,93 @@
+# GetNearestNode
+
+The `GetNearestNode` method finds the node(s) in the mesh that are closest to a given query point in space. It uses a k-d tree for efficient spatial searching.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNearestNode1(obj, qv, x, globalNode)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ REAL(DFP), INTENT(IN) :: qv(:)
+ !! Query vector
+ REAL(DFP), INTENT(INOUT) :: x(:)
+ !! node coord of nearest node
+ INTEGER(I4B), INTENT(OUT) :: globalNode
+ !! globalNode number
+ END SUBROUTINE GetNearestNode1
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNearestNode2(obj, qv, x, globalNode, nn)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ REAL(DFP), INTENT(IN) :: qv(:)
+ !! Query vector
+ REAL(DFP), INTENT(INOUT) :: x(:, :)
+ !! node coord of nearest node
+ !! the size(x, 2) should be atleast nn
+ INTEGER(I4B), INTENT(INOUT) :: globalNode(:)
+ !! globalNode number, size of globalNode should be atleast nn
+ INTEGER(I4B), INTENT(IN) :: nn
+ !! number of nearest points
+ END SUBROUTINE GetNearestNode2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Find single nearest node
+CALL mesh%GetNearestNode(qv, x, globalNode)
+
+! Find multiple nearest nodes
+CALL mesh%GetNearestNode(qv, x, globalNode, nn)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------ | ----------------------------------- | ---------------- | --------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `qv` | `REAL(DFP)(:)` | `IN` | Query point coordinates |
+| `x` | `REAL(DFP)(:)` or `REAL(DFP)(:,:)` | `INOUT` | Array to store coordinates of nearest node(s) |
+| `globalNode` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `OUT` or `INOUT` | Global node number(s) of nearest node(s) |
+| `nn` | `INTEGER(I4B)` | `IN` | Number of nearest nodes to find |
+
+## Description
+
+`GetNearestNode` finds the node(s) in the mesh that are closest to a specified query point in space. It uses a k-d tree for efficient spatial searching, initializing one if it doesn't already exist.
+
+The method has two versions:
+
+1. Find the single closest node to the query point
+2. Find the `nn` closest nodes to the query point
+
+This functionality is useful for point location, interpolation, and mesh refinement operations. It provides both the global node numbers and the coordinates of the found nodes.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+REAL(DFP) :: queryPoint(3), nearestCoord(3)
+REAL(DFP) :: multiNearestCoord(3, 5)
+INTEGER(I4B) :: nearestNode, multiNearestNodes(5)
+
+! Initialize mesh...
+
+! Set up query point
+queryPoint = [1.0_DFP, 2.0_DFP, 3.0_DFP]
+
+! Find single nearest node
+CALL mesh%GetNearestNode(queryPoint, nearestCoord, nearestNode)
+PRINT *, "Nearest node to query point is", nearestNode
+PRINT *, "At coordinates:", nearestCoord
+
+! Find 5 nearest nodes
+CALL mesh%GetNearestNode(queryPoint, multiNearestCoord, multiNearestNodes, 5)
+PRINT *, "5 nearest nodes:", multiNearestNodes
+
+! Use for interpolation
+DO i = 1, 5
+ ! Perform distance-weighted interpolation using the 5 nearest nodes
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetNodeConnectivity.md b/docs/docs-api/AbstractMesh/GetNodeConnectivity.md
new file mode 100644
index 00000000..6596946b
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNodeConnectivity.md
@@ -0,0 +1,38 @@
+## GetNodeConnectivity
+
+Retrieves the global node numbers (vertex connectivity) for all elements in the mesh.
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE obj_GetNodeConnectivity(obj, VALUE)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(INOUT) :: VALUE(:, :)
+ !! The number of columns are equal to the total number of elements
+ !! in the mesh, the number of rows equal to the maximum number of
+ !! nodes in the elements of mesh
+END SUBROUTINE obj_GetNodeConnectivity
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `VALUE` (INTEGER, output): A 2D array to store the connectivity data. The array must have dimensions of at least (maxNNE, tElements), where maxNNE is the maximum number of nodes in any element and tElements is the total number of elements in the mesh.
+
+## Description
+
+This subroutine fills the provided 2D array with the global node numbers that define each element in the mesh. Each column represents an element, and each row contains a node number for that element.
+
+## Example
+
+```fortran
+INTEGER(I4B), ALLOCATABLE :: nodeConn(:,:)
+INTEGER(I4B) :: maxNodes, totalElements
+
+maxNodes = mesh%GetMaxNNE()
+totalElements = mesh%GetTotalElements()
+ALLOCATE(nodeConn(maxNodes, totalElements))
+
+CALL mesh%GetNodeConnectivity(nodeConn)
+! Now nodeConn contains the global node numbers for each element
+```
diff --git a/docs/docs-api/AbstractMesh/GetNodeCoord.md b/docs/docs-api/AbstractMesh/GetNodeCoord.md
new file mode 100644
index 00000000..8e3882af
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNodeCoord.md
@@ -0,0 +1,130 @@
+# GetNodeCoord
+
+The `GetNodeCoord` method retrieves the coordinates of nodes in the mesh. It has multiple versions for different use cases, including getting coordinates from files, for all nodes, for specific elements, or for individual nodes.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNodeCoord1(obj, nodeCoord, hdf5, group)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), ALLOCATABLE, INTENT(INOUT) :: nodeCoord(:, :)
+ TYPE(HDF5File_), INTENT(INOUT) :: hdf5
+ CHARACTER(*), INTENT(IN) :: group
+ END SUBROUTINE GetNodeCoord1
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNodeCoord2(obj, nodeCoord, nrow, ncol)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(INOUT) :: nodeCoord(:, :)
+ INTEGER(I4B), INTENT(OUT) :: nrow, ncol
+ END SUBROUTINE GetNodeCoord2
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNodeCoord3(obj, nodeCoord, nrow, &
+ ncol, globalElement, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(INOUT) :: nodeCoord(:, :)
+ INTEGER(I4B), INTENT(OUT) :: nrow, ncol
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE GetNodeCoord3
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNodeCoord4(obj, nodeCoord, nrow, ncol, &
+ globalNode, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(INOUT) :: nodeCoord(:, :)
+ INTEGER(I4B), INTENT(OUT) :: nrow, ncol
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE GetNodeCoord4
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNodeCoord5(obj, nodeCoord, tsize, &
+ globalNode, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(INOUT) :: nodeCoord(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ INTEGER(I4B), INTENT(IN) :: globalNode
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE GetNodeCoord5
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get node coordinates from an HDF5 file
+CALL mesh%GetNodeCoord(nodeCoord, hdf5, group)
+
+! Get coordinates for all nodes
+CALL mesh%GetNodeCoord(nodeCoord, nrow, ncol)
+
+! Get coordinates for nodes in a specific element
+CALL mesh%GetNodeCoord(nodeCoord, nrow, ncol, globalElement, [islocal])
+
+! Get coordinates for specific nodes
+CALL mesh%GetNodeCoord(nodeCoord, nrow, ncol, globalNode, [islocal])
+
+! Get coordinates for a single node
+CALL mesh%GetNodeCoord(nodeCoord, tsize, globalNode, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ----------------------------------- | --------------- | --------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `nodeCoord` | `REAL(DFP)(:,:)` or `REAL(DFP)(:)` | `INOUT` | Array to store node coordinates |
+| `nrow`, `ncol` | `INTEGER(I4B)` | `OUT` | Dimensions of data written to nodeCoord |
+| `tsize` | `INTEGER(I4B)` | `OUT` | Size of data written to nodeCoord (for single node) |
+| `hdf5` | `TYPE(HDF5File_)` | `INOUT` | HDF5 file containing node coordinates |
+| `group` | `CHARACTER(*)` | `IN` | Group in HDF5 file containing node coordinates |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `globalNode` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Global or local node number(s) |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, input numbers are local rather than global |
+
+## Description
+
+`GetNodeCoord` retrieves the coordinates of nodes in the mesh. The method has multiple versions to handle different use cases:
+
+1. Read node coordinates from an HDF5 file
+2. Get coordinates for all nodes in the mesh
+3. Get coordinates for all nodes in a specific element
+4. Get coordinates for specific nodes by their node numbers
+5. Get coordinates for a single node
+
+Node coordinates are returned in a format where rows represent spatial dimensions (x, y, z) and columns represent node indices. For a single node, coordinates are returned as a 1D array.
+
+This method is fundamental for geometric operations, visualization, and numerical calculations that depend on spatial positions.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+REAL(DFP), ALLOCATABLE :: allCoords(:, :), elemCoords(:, :), nodeCoords(:)
+REAL(DFP) :: singleNodeCoord(3)
+INTEGER(I4B) :: nrow, ncol, tsize, elemNum, nodeNum
+
+! Initialize mesh...
+elemNum = 10
+nodeNum = 25
+
+! Get coordinates for all nodes
+ALLOCATE (allCoords(3, mesh%GetTotalNodes()))
+CALL mesh%GetNodeCoord(allCoords, nrow, ncol)
+
+! Get coordinates for nodes in element 10
+ALLOCATE (elemCoords(3, mesh%GetNNE(elemNum)))
+CALL mesh%GetNodeCoord(elemCoords, nrow, ncol, elemNum)
+
+! Get coordinates for a single node
+CALL mesh%GetNodeCoord(singleNodeCoord, tsize, nodeNum)
+
+PRINT *, "Coordinates of node", nodeNum, ":", singleNodeCoord(1:tsize)
+```
diff --git a/docs/docs-api/AbstractMesh/GetNodeMask.md b/docs/docs-api/AbstractMesh/GetNodeMask.md
new file mode 100644
index 00000000..1b7e877e
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNodeMask.md
@@ -0,0 +1,73 @@
+# GetNodeMask
+
+The `GetNodeMask` method creates a logical mask array indicating which global node numbers are present in the mesh. This is useful for quickly checking if nodes exist and for filtering operations.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNodeMask(obj, mask, local_nptrs)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT), INTENT(INOUT) :: mask(:)
+ !! the size of mask should be more than or equal to the maxNptrs
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: local_nptrs(:)
+ !! additional mapping
+ END SUBROUTINE GetNodeMask
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetNodeMask(mask, [local_nptrs])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------- | ---------------------- | --------------- | ------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `mask` | `LOGICAL(LGT)(:)` | `INOUT` | Array to store the node presence mask |
+| `local_nptrs` | `INTEGER(I4B)(:)` | `IN` (optional) | Additional mapping for node numbers |
+
+## Description
+
+`GetNodeMask` creates a logical mask array where each element indicates whether a corresponding global node number is present in the mesh. For each global node number that exists in the mesh, the corresponding position in the mask array is set to true.
+
+The mask array must be pre-allocated with a size at least equal to the maximum node number in the mesh (`maxNptrs`).
+
+The optional `local_nptrs` parameter allows for an additional level of mapping, which is useful when working with multiple meshes or when a custom node numbering scheme is in use.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+LOGICAL(LGT), ALLOCATABLE :: nodeMask(:)
+INTEGER(I4B) :: maxNode, nodeToCheck
+
+! Initialize mesh...
+
+! Allocate mask array
+maxNode = mesh%GetMaxNodeNumber()
+ALLOCATE (nodeMask(maxNode))
+
+! Get the node mask
+CALL mesh%GetNodeMask(nodeMask)
+
+! Check if specific nodes exist
+nodeToCheck = 1001
+IF (nodeMask(nodeToCheck)) THEN
+ PRINT *, "Node", nodeToCheck, "exists in the mesh"
+ELSE
+ PRINT *, "Node", nodeToCheck, "does not exist in the mesh"
+END IF
+
+! Count total nodes (should match GetTotalNodes())
+PRINT *, "Total nodes:", COUNT(nodeMask)
+
+! Use mask for vector operations
+! For example, only process values corresponding to existing nodes
+WHERE (nodeMask)
+ nodeValues = someCalculation()
+END WHERE
+```
diff --git a/docs/docs-api/AbstractMesh/GetNodeToElements.md b/docs/docs-api/AbstractMesh/GetNodeToElements.md
index cafdd15d..ca8ff3ed 100644
--- a/docs/docs-api/AbstractMesh/GetNodeToElements.md
+++ b/docs/docs-api/AbstractMesh/GetNodeToElements.md
@@ -1,31 +1,63 @@
# GetNodeToElements
-Get node to elements connectivity.
+Retrieves the global element numbers that are connected to a specified node or nodes.
There are two interfaces to this method.
-## Interface 1
+## Interface
```fortran
-MODULE PURE FUNCTION getNodeToElements(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+! Version 1 - For a single node
+MODULE FUNCTION GetNodeToElements1(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
!! mesh data
INTEGER(I4B), INTENT(IN) :: globalNode
!! global node number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B), ALLOCATABLE :: ans(:)
!! A vector of local element number
-END FUNCTION getNodeToElements
-```
-
-## Interface 2
+END FUNCTION GetNodeToElements1
-```fortran
-MODULE PURE FUNCTION getNodeToElements(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+! Version 2 - For multiple nodes
+MODULE FUNCTION GetNodeToElements2(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
!! mesh data
INTEGER(I4B), INTENT(IN) :: globalNode(:)
!! global node number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
INTEGER(I4B), ALLOCATABLE :: ans(:)
!! A vector of local element number
-END FUNCTION getNodeToElements
+END FUNCTION GetNodeToElements2
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input/output): The mesh object.
+- `globalNode` (INTEGER, input): The global (or local) node number(s).
+- `islocal` (LOGICAL, optional, input): If present and true, `globalNode` is treated as local node number(s). Default is false.
+
+## Returns
+
+- `ans` (INTEGER array): A 1D array containing the global element numbers connected to the specified node(s).
+
+## Description
+
+This function returns the global element numbers that are connected to the specified node or nodes.
+
+In Version 1, a single node is specified, and all elements containing that node are returned.
+
+In Version 2, multiple nodes are specified, and all elements containing any of those nodes are returned (without duplicates).
+
+If a node is not present in the mesh, the returned array will have zero size.
+
+## Example
+
+```fortran
+! Find all elements connected to node 25
+INTEGER(I4B), ALLOCATABLE :: elems(:)
+elems = mesh%GetNodeToElements(25)
+
+! Find all elements connected to nodes 10, 11, and 12
+INTEGER(I4B) :: nodes(3) = [10, 11, 12]
+elems = mesh%GetNodeToElements(nodes)
```
diff --git a/docs/docs-api/AbstractMesh/GetNodeToNodes.md b/docs/docs-api/AbstractMesh/GetNodeToNodes.md
index 16a3ce3a..560acef2 100644
--- a/docs/docs-api/AbstractMesh/GetNodeToNodes.md
+++ b/docs/docs-api/AbstractMesh/GetNodeToNodes.md
@@ -1,6 +1,6 @@
# GetNodeToNodes
-Returns node to node connectivity in the mess.
+Retrieves the global node numbers that are connected to a specified node or nodes.
## Interface 1
@@ -25,3 +25,36 @@ MODULE PURE FUNCTION getNodeToNodes(obj, globalNode, IncludeSelf) &
INTEGER(I4B), ALLOCATABLE :: ans(:)
END FUNCTION getNodeToNodes
```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `globalNode` (INTEGER, input): The global (or local) node number(s).
+- `includeSelf` (LOGICAL, input): If true, the specified node(s) will be included in the result.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalNode` is treated as local node number(s). Default is false.
+
+## Returns
+
+- `ans` (INTEGER array): A 1D array containing the global node numbers connected to the specified node(s).
+
+## Description
+
+This function returns the global node numbers that are connected to the specified node or nodes through element connectivity.
+
+In Version 1, a single node is specified, and all nodes connected to that node are returned.
+
+In Version 2, multiple nodes are specified, and all nodes connected to any of those nodes are returned (without duplicates).
+
+If a node is not present in the mesh, the returned array will have zero size.
+
+## Example
+
+```fortran
+! Find all nodes connected to node 25, including node 25 itself
+INTEGER(I4B), ALLOCATABLE :: connectedNodes(:)
+connectedNodes = mesh%GetNodeToNodes(25, includeSelf=.TRUE.)
+
+! Find all nodes connected to nodes 10, 11, and 12, excluding these nodes
+INTEGER(I4B) :: nodes(3) = [10, 11, 12]
+connectedNodes = mesh%GetNodeToNodes(nodes, includeSelf=.FALSE.)
+```
diff --git a/docs/docs-api/AbstractMesh/GetNodeToNodes_.md b/docs/docs-api/AbstractMesh/GetNodeToNodes_.md
new file mode 100644
index 00000000..c3a7c9a1
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNodeToNodes_.md
@@ -0,0 +1,56 @@
+# GetNodeToNodes_
+
+A memory-efficient version of GetNodeToNodes that allows reusing existing arrays.
+
+## Interface
+
+```fortran
+! Version 1 - For a single node
+MODULE SUBROUTINE GetNodeToNodes1_(obj, globalNode, includeSelf, ans, tsize, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode
+ LOGICAL(LGT), INTENT(IN) :: includeSelf
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+END SUBROUTINE GetNodeToNodes1_
+
+! Version 2 - For multiple nodes
+MODULE SUBROUTINE GetNodeToNodes2_(obj, globalNode, includeSelf, ans, tsize, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), INTENT(IN) :: includeSelf
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+END SUBROUTINE GetNodeToNodes2_
+```
+
+## Arguments
+
+- `obj` (AbstractMesh_, input): The mesh object.
+- `globalNode` (INTEGER, input): The global (or local) node number(s).
+- `includeSelf` (LOGICAL, input): If true, the specified node(s) will be included in the result.
+- `ans` (INTEGER array, output): Pre-allocated array to store connected node numbers.
+- `tsize` (INTEGER, output): Actual size of data written to `ans`.
+- `islocal` (LOGICAL, optional, input): If present and true, `globalNode` is treated as local. Default is false.
+
+## Description
+
+These subroutines retrieve node-to-node connectivity information without allocating new memory. They write the connected node numbers to a pre-allocated array and return the actual size of data written.
+
+Version 1 finds nodes connected to a single node, while Version 2 finds nodes connected to any of multiple nodes.
+
+## Example
+
+```fortran
+! For a single node
+INTEGER(I4B) :: nodes(100), tsize
+CALL mesh%GetNodeToNodes_(25, .TRUE., nodes, tsize)
+! Now nodes(1:tsize) contains the connected nodes including node 25
+
+! For multiple nodes
+INTEGER(I4B) :: nodeList(3) = [10, 11, 12]
+CALL mesh%GetNodeToNodes_(nodeList, .FALSE., nodes, tsize)
+! Now nodes(1:tsize) contains the connected nodes excluding the input nodes
+```
diff --git a/docs/docs-api/AbstractMesh/GetNptrs.md b/docs/docs-api/AbstractMesh/GetNptrs.md
index 2a524c86..8753a2be 100644
--- a/docs/docs-api/AbstractMesh/GetNptrs.md
+++ b/docs/docs-api/AbstractMesh/GetNptrs.md
@@ -1,10 +1,74 @@
# GetNptrs
+The `GetNptrs` method retrieves the global node numbers present in the mesh. It can return either all node numbers or those belonging to a specific mesh ID.
+
## Interface
```fortran
- MODULE PURE FUNCTION getNptrs(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetNptrs1(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans(obj%tNodes)
+ END FUNCTION GetNptrs1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetNptrs2(obj, meshid) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: meshid
INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getNptrs
+ END FUNCTION GetNptrs2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get all node numbers in the mesh
+nodeNumbers = mesh%GetNptrs()
+
+! Get node numbers for a specific mesh ID
+nodeNumbers = mesh%GetNptrs(meshid)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | -------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `meshid` | `INTEGER(I4B)` | `IN` | Mesh ID to filter nodes by |
+
+## Return Value
+
+| Version | Type | Description |
+| --------- | ------------------------------ | ------------------------------------------------------ |
+| Version 1 | `INTEGER(I4B)(obj%tNodes)` | Array of all global node numbers in the mesh |
+| Version 2 | `INTEGER(I4B), ALLOCATABLE(:)` | Array of global node numbers for the specified mesh ID |
+
+## Description
+
+`GetNptrs` returns an array of global node numbers present in the mesh. The method has two versions:
+
+1. Return all node numbers in the mesh
+2. Return only node numbers that belong to a specific mesh ID
+
+This information is essential for operations that need to iterate over or reference specific nodes in the mesh.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: allNodes(mesh%GetTotalNodes())
+INTEGER(I4B), ALLOCATABLE :: subdomainNodes(:)
+
+! Initialize mesh...
+
+! Get all node numbers
+allNodes = mesh%GetNptrs()
+
+! Get node numbers for a specific subdomain
+subdomainNodes = mesh%GetNptrs(meshid=2)
+
+PRINT *, "Total nodes:", SIZE(allNodes)
+PRINT *, "Subdomain nodes:", SIZE(subdomainNodes)
```
diff --git a/docs/docs-api/AbstractMesh/GetNptrsInBox.md b/docs/docs-api/AbstractMesh/GetNptrsInBox.md
new file mode 100644
index 00000000..602e8d11
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNptrsInBox.md
@@ -0,0 +1,66 @@
+# GetNptrsInBox
+
+The `GetNptrsInBox` method retrieves the global node numbers of all nodes located within a specified bounding box in 3D space.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNptrsInBox(obj, box, nptrs, isStrict)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! If Kdtree is not init then we init it
+ INTEGER(I4B), ALLOCATABLE, INTENT(INOUT) :: nptrs(:)
+ TYPE(BoundingBox_), INTENT(IN) :: box
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: isStrict
+ !! Default is true
+ !! If it is true the returned points are strictly inside or on the
+ !! box, but not outside of it
+ !! This is because we use radius of bounding box to find the points
+ !! this is over estimation.
+ END SUBROUTINE GetNptrsInBox
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetNptrsInBox(box, nptrs, [isStrict])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ---------- | ------------------------------ | --------------- | --------------------------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `box` | `TYPE(BoundingBox_)` | `IN` | Bounding box to search within |
+| `nptrs` | `INTEGER(I4B), ALLOCATABLE(:)` | `INOUT` | Array to store the node numbers |
+| `isStrict` | `LOGICAL(LGT)` | `IN` (optional) | If true (default), only return nodes strictly inside or on the box boundary |
+
+## Description
+
+`GetNptrsInBox` finds all nodes that are located within a specified 3D bounding box and returns their global node numbers. This method uses a k-d tree for efficient spatial searching, initializing one if it doesn't already exist.
+
+The `isStrict` parameter controls whether the method returns only nodes that are strictly inside or on the box boundary (true) or potentially includes some nodes slightly outside the box (false). The latter option may be faster but less precise.
+
+This method is useful for operations that need to work with nodes in a specific spatial region, such as localized refinement, domain decomposition, or identifying nodes for boundary conditions.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+TYPE(BoundingBox_) :: searchBox
+INTEGER(I4B), ALLOCATABLE :: nodesInBox(:)
+REAL(DFP) :: min_coords(3), max_coords(3)
+
+! Initialize mesh...
+
+! Define a search box
+min_coords = [0.0_DFP, 0.0_DFP, 0.0_DFP]
+max_coords = [1.0_DFP, 1.0_DFP, 1.0_DFP]
+CALL searchBox%Initiate(nsd=3, lim=[min_coords, max_coords])
+
+! Find nodes in the box
+CALL mesh%GetNptrsInBox(searchBox, nodesInBox)
+
+PRINT *, "Found", SIZE(nodesInBox), "nodes in the specified box"
+```
diff --git a/docs/docs-api/AbstractMesh/GetNptrsInBox_.md b/docs/docs-api/AbstractMesh/GetNptrsInBox_.md
new file mode 100644
index 00000000..38645648
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNptrsInBox_.md
@@ -0,0 +1,79 @@
+# GetNptrsInBox_
+
+The `GetNptrsInBox_` method retrieves the global node numbers of nodes within a specified bounding box without allocating new memory. The caller provides a pre-allocated array to store the results.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNptrsInBox_(obj, box, nptrs, tnodes, isStrict)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! If Kdtree is not init then we init it
+ TYPE(BoundingBox_), INTENT(IN) :: box
+ INTEGER(I4B), INTENT(INOUT) :: nptrs(:)
+ !! it should allocated, size of nptrs should be .ge. tnodes
+ INTEGER(I4B), INTENT(INOUT) :: tnodes
+ !! total nodes found
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: isStrict
+ !! Default is true
+ !! If it is true the returned points are strictly inside or on the
+ !! box, but not outside of it
+ !! This is because we use radius of bounding box to find the points
+ !! this is over estimation.
+ END SUBROUTINE GetNptrsInBox_
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetNptrsInBox_(box, nptrs, tnodes, [isStrict])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ---------- | ---------------------- | --------------- | --------------------------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `box` | `TYPE(BoundingBox_)` | `IN` | Bounding box to search within |
+| `nptrs` | `INTEGER(I4B)(:)` | `INOUT` | Pre-allocated array to store node numbers |
+| `tnodes` | `INTEGER(I4B)` | `INOUT` | Number of nodes found and stored in `nptrs` |
+| `isStrict` | `LOGICAL(LGT)` | `IN` (optional) | If true (default), only return nodes strictly inside or on the box boundary |
+
+## Description
+
+`GetNptrsInBox_` finds all nodes that are located within a specified 3D bounding box and stores their global node numbers in a pre-allocated array. This version avoids memory allocation, making it more efficient for repeated operations.
+
+Like `GetNptrsInBox`, this method uses a k-d tree for efficient spatial searching and allows control over whether nodes must be strictly inside the box or not.
+
+The caller must ensure that the `nptrs` array is large enough to hold all potential results. The actual number of nodes found is returned in `tnodes`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+TYPE(BoundingBox_) :: searchBox
+INTEGER(I4B), ALLOCATABLE :: nodeBuffer(:)
+INTEGER(I4B) :: nodesFound
+REAL(DFP) :: min_coords(3), max_coords(3)
+
+! Initialize mesh...
+
+! Define a search box
+min_coords = [0.0_DFP, 0.0_DFP, 0.0_DFP]
+max_coords = [1.0_DFP, 1.0_DFP, 1.0_DFP]
+CALL searchBox%Initiate(nsd=3, lim=[min_coords, max_coords])
+
+! Allocate a buffer large enough for any possible result
+ALLOCATE (nodeBuffer(mesh%GetTotalNodes()))
+
+! Find nodes in the box without allocation
+CALL mesh%GetNptrsInBox_(searchBox, nodeBuffer, nodesFound)
+
+PRINT *, "Found", nodesFound, "nodes in the specified box"
+
+! Process only the valid part of the buffer
+DO i = 1, nodesFound
+ ! Process nodeBuffer(i)
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetNptrs_.md b/docs/docs-api/AbstractMesh/GetNptrs_.md
new file mode 100644
index 00000000..2d74b8cc
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetNptrs_.md
@@ -0,0 +1,97 @@
+# GetNptrs_
+
+The `GetNptrs_` method is a subroutine version of `GetNptrs` that retrieves node numbers without allocation. It can return all node numbers, those for a specific mesh ID, or those for specified elements.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetNptrs1_(obj, ans, tsize)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ END SUBROUTINE GetNptrs1_
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNptrs2_(obj, meshid, ans, tsize)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: meshid
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ END SUBROUTINE GetNptrs2_
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE GetNptrs3_(obj, globalElement, ans, tsize, islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement(:)
+ !! global or local element number
+ INTEGER(I4B), INTENT(INOUT) :: ans(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then globalElement is local
+ END SUBROUTINE GetNptrs3_
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get all node numbers
+CALL mesh%GetNptrs_(ans, tsize)
+
+! Get node numbers for a specific mesh ID
+CALL mesh%GetNptrs_(meshid, ans, tsize)
+
+! Get node numbers for specified elements
+CALL mesh%GetNptrs_(globalElement, ans, tsize, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `ans` | `INTEGER(I4B)(:)` | `INOUT` | Array to store the node numbers |
+| `tsize` | `INTEGER(I4B)` | `OUT` | Number of node numbers stored in `ans` |
+| `meshid` | `INTEGER(I4B)` | `IN` | Mesh ID to filter nodes by |
+| `globalElement` | `INTEGER(I4B)(:)` | `IN` | Global or local element numbers to get nodes from |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement contains local element numbers |
+
+## Description
+
+`GetNptrs_` retrieves node numbers without allocating new memory. The caller provides a pre-allocated array `ans` to store the results, and the method returns the actual number of nodes in `tsize`. This approach is more efficient for repeated operations because it avoids memory allocation overhead.
+
+The method has three versions:
+
+1. Get all node numbers in the mesh
+2. Get node numbers for a specific mesh ID
+3. Get node numbers for specified elements
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: maxNodes, actualNodes
+INTEGER(I4B), ALLOCATABLE :: nodeBuffer(:)
+
+! Initialize mesh...
+
+! Allocate a buffer large enough for any possible result
+maxNodes = mesh%GetMaxNodeNumber()
+ALLOCATE (nodeBuffer(maxNodes))
+
+! Get all node numbers
+CALL mesh%GetNptrs_(nodeBuffer, actualNodes)
+PRINT *, "Total nodes:", actualNodes
+
+! Get nodes for a specific mesh ID
+CALL mesh%GetNptrs_(meshid=2, ans=nodeBuffer, tsize=actualNodes)
+PRINT *, "Nodes in subdomain 2:", actualNodes
+
+! Process only the valid part of the buffer
+DO i = 1, actualNodes
+ ! Process nodeBuffer(i)
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetOrder.md b/docs/docs-api/AbstractMesh/GetOrder.md
new file mode 100644
index 00000000..38b721a1
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetOrder.md
@@ -0,0 +1,78 @@
+# GetOrder
+
+The `GetOrder` method retrieves the polynomial order of elements in the mesh or of a specific element. The element order determines the degree of interpolation functions used in finite element analysis.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetOrder1(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetOrder1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetOrder2(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ INTEGER(I4B) :: ans
+ END FUNCTION GetOrder2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get the order of elements in the mesh
+meshOrder = mesh%GetOrder()
+
+! Get the order of a specific element
+elemOrder = mesh%GetOrder(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ---------------------------------- |
+| `INTEGER(I4B)` | Polynomial order of the element(s) |
+
+## Description
+
+`GetOrder` returns the polynomial order of elements in the mesh or of a specific element. The element order is crucial for finite element analysis as it determines the degree of interpolation functions used.
+
+The method has two versions:
+
+1. Get the order of elements in the mesh (note: this version is currently flagged as work-in-progress)
+2. Get the order of a specific element
+
+Higher-order elements (order > 1) have additional nodes and can represent curved geometries and higher-degree solutions.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, elemOrder
+
+! Initialize mesh, elemNum...
+
+! Get the order of a specific element
+elemOrder = mesh%GetOrder(elemNum)
+
+IF (elemOrder > 1) THEN
+PRINT*, "Element", elemNum, "is a higher-order element (order", elemOrder, ")"
+ELSE
+ PRINT *, "Element", elemNum, "is a linear element"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/GetOrientation.md b/docs/docs-api/AbstractMesh/GetOrientation.md
new file mode 100644
index 00000000..c85dd85b
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetOrientation.md
@@ -0,0 +1,76 @@
+# GetOrientation
+
+The `GetOrientation` method retrieves orientation flags for the cells, faces, and edges of a specific element. Orientation flags indicate how local entities are oriented with respect to the global reference frame.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE GetOrientation(obj, cellOrient, faceOrient, &
+ edgeOrient, tCellOrient, tFaceOrient, tEdgeOrient, globalElement, &
+ islocal)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(INOUT) :: cellOrient(:)
+ !! cell connectivity of element
+ INTEGER(I4B), INTENT(INOUT) :: faceOrient(:, :)
+ !! face connectivity of element
+ INTEGER(I4B), INTENT(INOUT) :: edgeOrient(:)
+ !! edge connectivity of element
+ INTEGER(I4B), INTENT(OUT) :: tCellOrient
+ !! size of data written in cellCon
+ INTEGER(I4B), INTENT(OUT) :: tFaceOrient(2)
+ !! size of data written in faceCon
+ !! tFaceOrient(1) is the number of rows in faceOrient
+ !! tFaceOrient(2) is the number of columns in faceOrient
+ INTEGER(I4B), INTENT(OUT) :: tEdgeOrient
+ !! size of data written in edgecon
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global or local element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
+ END SUBROUTINE GetOrientation
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetOrientation(cellOrient, faceOrient, edgeOrient, tCellOrient, tFaceOrient, tEdgeOrient, globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `cellOrient` | `INTEGER(I4B)(:)` | `INOUT` | Array to store cell orientation flags |
+| `faceOrient` | `INTEGER(I4B)(:,:)` | `INOUT` | Array to store face orientation flags |
+| `edgeOrient` | `INTEGER(I4B)(:)` | `INOUT` | Array to store edge orientation flags |
+| `tCellOrient` | `INTEGER(I4B)` | `OUT` | Size of data written to cellOrient |
+| `tFaceOrient` | `INTEGER(I4B)(2)` | `OUT` | Dimensions of data written to faceOrient |
+| `tEdgeOrient` | `INTEGER(I4B)` | `OUT` | Size of data written to edgeOrient |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Description
+
+`GetOrientation` retrieves orientation flags for the cells, faces, and edges of a specified element. Orientation information is crucial for maintaining consistent element definitions, particularly for higher-order elements and when performing operations that depend on the normal direction of faces.
+
+The method populates the provided arrays with orientation flags and returns the actual sizes of data written to these arrays.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+INTEGER(I4B) :: cellOrient(1), faceOrient(4, 6), edgeOrient(12)
+INTEGER(I4B) :: tCellOrient, tFaceOrient(2), tEdgeOrient
+
+! Initialize mesh, elemNum...
+
+! Get orientation information
+CALL mesh%GetOrientation(cellOrient, faceOrient, edgeOrient, &
+ tCellOrient, tFaceOrient, tEdgeOrient, elemNum)
+
+! Use orientation information for accurate element integration
+```
diff --git a/docs/docs-api/AbstractMesh/GetParam.md b/docs/docs-api/AbstractMesh/GetParam.md
new file mode 100644
index 00000000..40810e1d
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetParam.md
@@ -0,0 +1,111 @@
+# GetParam
+
+The `GetParam` method retrieves various parameters and properties of the mesh. It provides a comprehensive way to access mesh attributes in a single call.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_GetParam(obj, &
+ isInitiated, isNodeToElementsInitiated, isNodeToNodesInitiated, &
+ isExtraNodeToNodesInitiated, isElementToElementsInitiated, &
+ isBoundaryDataInitiated, isFacetDataInitiated, uid, &
+ xidim, elemType, nsd, maxNptrs, minNptrs, &
+ maxElemNum, minElemNum, tNodes, tElements, &
+ minX, minY, minZ, maxX, maxY, maxZ, &
+ x, y, z, tElements_topology_wise, tElemTopologies, elemTopologies)
+
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT), OPTIONAL, INTENT(OUT) :: isInitiated, &
+ isNodeToElementsInitiated, isNodeToNodesInitiated, &
+ isExtraNodeToNodesInitiated, isElementToElementsInitiated, &
+ isBoundaryDataInitiated, isFacetDataInitiated
+
+ INTEGER(I4B), OPTIONAL, INTENT(OUT) :: uid, xidim, elemType, nsd, &
+ maxNptrs, minNptrs, maxElemNum, minElemNum, tNodes, &
+ tElements, tElements_topology_wise(8), tElemTopologies, elemTopologies(8)
+
+ REAL(DFP), OPTIONAL, INTENT(OUT) :: minX, minY, minZ, maxX, maxY, maxZ, &
+ x, y, z
+ END SUBROUTINE obj_GetParam
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%GetParam([isInitiated], [isNodeToElementsInitiated], [...])
+```
+
+## Parameters
+
+All parameters are optional:
+
+| Parameter | Type | Intent | Description |
+| ------------------------------ | ---------------------- | ------ | ------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `isInitiated` | `LOGICAL(LGT)` | `OUT` | Flag indicating if mesh is initiated |
+| `isNodeToElementsInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for node-to-elements mapping status |
+| `isNodeToNodesInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for node-to-nodes mapping status |
+| `isExtraNodeToNodesInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for extra node-to-nodes mapping status |
+| `isElementToElementsInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for element-to-elements mapping status |
+| `isBoundaryDataInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for boundary data status |
+| `isFacetDataInitiated` | `LOGICAL(LGT)` | `OUT` | Flag for facet data status |
+| `uid` | `INTEGER(I4B)` | `OUT` | Unique ID of the mesh |
+| `xidim` | `INTEGER(I4B)` | `OUT` | Intrinsic dimension of elements |
+| `elemType` | `INTEGER(I4B)` | `OUT` | Element type |
+| `nsd` | `INTEGER(I4B)` | `OUT` | Number of spatial dimensions |
+| `maxNptrs` | `INTEGER(I4B)` | `OUT` | Maximum node number |
+| `minNptrs` | `INTEGER(I4B)` | `OUT` | Minimum node number |
+| `maxElemNum` | `INTEGER(I4B)` | `OUT` | Maximum element number |
+| `minElemNum` | `INTEGER(I4B)` | `OUT` | Minimum element number |
+| `tNodes` | `INTEGER(I4B)` | `OUT` | Total number of nodes |
+| `tElements` | `INTEGER(I4B)` | `OUT` | Total number of elements |
+| `tElements_topology_wise` | `INTEGER(I4B)(8)` | `OUT` | Elements count by topology |
+| `tElemTopologies` | `INTEGER(I4B)` | `OUT` | Total element topologies |
+| `elemTopologies` | `INTEGER(I4B)(8)` | `OUT` | Element topology types |
+| `minX, minY, minZ` | `REAL(DFP)` | `OUT` | Minimum coordinates of mesh |
+| `maxX, maxY, maxZ` | `REAL(DFP)` | `OUT` | Maximum coordinates of mesh |
+| `x, y, z` | `REAL(DFP)` | `OUT` | Centroid coordinates of mesh |
+
+## Description
+
+`GetParam` provides a flexible way to retrieve various mesh parameters in a single method call. It allows retrieving any combination of mesh properties such as initialization status flags, mesh dimensions, node and element counts, boundary information, and spatial extents.
+
+## Implementation Details
+
+The implementation simply assigns the requested mesh attributes to the corresponding output parameters if they are present in the call. All parameters are optional, so only the needed parameters are processed.
+
+```fortran
+MODULE PROCEDURE obj_GetParam
+IF (PRESENT(isInitiated)) isInitiated = obj%isInitiated
+IF (PRESENT(isNodeToElementsInitiated)) isNodeToElementsInitiated = obj%isNodeToElementsInitiated
+...
+END PROCEDURE obj_GetParam
+```
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: totalNodes, totalElements, dimensions
+REAL(DFP) :: xMin, xMax, yMin, yMax, zMin, zMax
+
+! Initialize mesh...
+
+! Get multiple mesh parameters in a single call
+CALL mesh%GetParam(tNodes=totalNodes, tElements=totalElements, nsd=dimensions, &
+ minX=xMin, maxX=xMax, minY=yMin, maxY=yMax, minZ=zMin, maxZ=zMax)
+
+! Display mesh information
+PRINT *, "Mesh has", totalNodes, "nodes and", totalElements, "elements"
+PRINT *, "Dimensions:", dimensions
+PRINT *, "X range:", xMin, "to", xMax
+PRINT *, "Y range:", yMin, "to", yMax
+PRINT *, "Z range:", zMin, "to", zMax
+```
+
+## See Also
+
+- `SetParam`: Sets mesh parameters
+- Individual getter methods for specific parameters (GetTotalNodes, GetTotalElements, etc.)
diff --git a/docs/docs-api/AbstractMesh/GetRefElemPointer.md b/docs/docs-api/AbstractMesh/GetRefElemPointer.md
index 42c05dd9..d4429cca 100644
--- a/docs/docs-api/AbstractMesh/GetRefElemPointer.md
+++ b/docs/docs-api/AbstractMesh/GetRefElemPointer.md
@@ -3,8 +3,8 @@
## Interface
```fortran
- MODULE FUNCTION getRefElemPointer(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- CLASS(ReferenceElement_), POINTER :: ans
- END FUNCTION getRefElemPointer
+MODULE FUNCTION getRefElemPointer(obj) RESULT(ans)
+ CLASS(Mesh_), INTENT(IN) :: obj
+ CLASS(ReferenceElement_), POINTER :: ans
+END FUNCTION getRefElemPointer
```
diff --git a/docs/docs-api/AbstractMesh/GetSlaveCellNumber.md b/docs/docs-api/AbstractMesh/GetSlaveCellNumber.md
index 8796abc6..09888fff 100644
--- a/docs/docs-api/AbstractMesh/GetSlaveCellNumber.md
+++ b/docs/docs-api/AbstractMesh/GetSlaveCellNumber.md
@@ -1,14 +1,41 @@
# GetSlaveCellNumber
+Returns the slave cell number of a facet element.
+
## Interface
```fortran
- MODULE PURE FUNCTION getSlaveCellNumber( obj, facetElement, &
- & elementType, facetBoundary ) RESULT( ans )
- CLASS( Mesh_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: facetElement
- INTEGER( I4B ), INTENT( IN ) :: elementType
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: facetBoundary
- INTEGER( I4B ) :: ans
- END FUNCTION getSlaveCellNumber
+MODULE FUNCTION GetSlaveCellNumber(obj, facetElement, elementType) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), INTENT(IN) :: elementType
+ INTEGER(I4B) :: ans
+END FUNCTION GetSlaveCellNumber
+```
+
+## Description
+
+This function returns the global element number of the slave cell associated with a facet element. The slave cell is the second cell that contains the facet (if any). For boundary facets, the slave cell number is typically 0.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+- `facetElement`: The local facet element number.
+- `elementType`: The element type of the facet.
+
+## Returns
+
+- `ans`: The global element number of the slave cell, or 0 if the facet is on a boundary.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: facetNum = 8, facetType = 3, slaveCell
+
+slaveCell = mesh%GetSlaveCellNumber(facetNum, facetType)
+IF (slaveCell > 0) THEN
+ PRINT*, "Slave cell number:", slaveCell
+ELSE
+ PRINT*, "Facet is on a boundary (no slave cell)"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/GetTotalBoundaryElements.md b/docs/docs-api/AbstractMesh/GetTotalBoundaryElements.md
index c695323f..253a190e 100644
--- a/docs/docs-api/AbstractMesh/GetTotalBoundaryElements.md
+++ b/docs/docs-api/AbstractMesh/GetTotalBoundaryElements.md
@@ -1,10 +1,32 @@
# GetTotalBoundaryElements
+Returns the total number of boundary elements.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalBoundaryElements(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B) :: ans
- END FUNCTION getTotalBoundaryElements
+MODULE FUNCTION GetTotalBoundaryElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalBoundaryElements
+```
+
+## Description
+
+This function returns the total number of boundary elements in the mesh. A boundary element is an element that contains at least one boundary node.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of boundary elements.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numBoundaryElems
+numBoundaryElems = mesh%GetTotalBoundaryElements()
+PRINT*, "Number of boundary elements:", numBoundaryElems
```
diff --git a/docs/docs-api/AbstractMesh/GetTotalBoundaryFacetElements.md b/docs/docs-api/AbstractMesh/GetTotalBoundaryFacetElements.md
index 1b2d9d9e..8f22da26 100644
--- a/docs/docs-api/AbstractMesh/GetTotalBoundaryFacetElements.md
+++ b/docs/docs-api/AbstractMesh/GetTotalBoundaryFacetElements.md
@@ -1,10 +1,32 @@
# GetTotalBoundaryFacetElements
+Returns the total number of boundary facet elements.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalBoundaryFacetElements( obj ) RESULT(ans)
- CLASS(Mesh_), INTENT( IN ) :: obj
- INTEGER( I4B ) :: ans
- END FUNCTION getTotalBoundaryFacetElements
+MODULE FUNCTION GetTotalBoundaryFacetElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalBoundaryFacetElements
+```
+
+## Description
+
+This function returns the total number of boundary facet elements in the mesh. Boundary facet elements are facets that lie on the boundary of the mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of boundary facet elements.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numBoundaryFacets
+numBoundaryFacets = mesh%GetTotalBoundaryFacetElements()
+PRINT*, "Number of boundary facet elements:", numBoundaryFacets
```
diff --git a/docs/docs-api/AbstractMesh/GetTotalBoundaryNodes.md b/docs/docs-api/AbstractMesh/GetTotalBoundaryNodes.md
index ff1eab32..d2fc0998 100644
--- a/docs/docs-api/AbstractMesh/GetTotalBoundaryNodes.md
+++ b/docs/docs-api/AbstractMesh/GetTotalBoundaryNodes.md
@@ -1,10 +1,65 @@
# GetTotalBoundaryNodes
+The `GetTotalBoundaryNodes` method returns the total number of boundary nodes in the mesh. Boundary nodes are nodes that lie on the boundary of the domain.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalBoundaryNodes(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetTotalBoundaryNodes(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B) :: ans
- END FUNCTION getTotalBoundaryNodes
+ END FUNCTION GetTotalBoundaryNodes
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numBoundaryNodes = mesh%GetTotalBoundaryNodes()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------ |
+| `INTEGER(I4B)` | Total number of boundary nodes in the mesh |
+
+## Description
+
+`GetTotalBoundaryNodes` returns the count of all boundary nodes in the mesh. Boundary nodes are those that lie on the boundary of the domain. This information is important for applying boundary conditions and for mesh quality assessment.
+
+The method calculates the number of boundary nodes by subtracting the number of internal nodes from the total number of nodes in the mesh.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: boundaryNodes, totalNodes
+REAL(DFP) :: boundaryRatio
+
+! Initialize mesh...
+
+! Get node counts
+boundaryNodes = mesh%GetTotalBoundaryNodes()
+totalNodes = mesh%GetTotalNodes()
+
+! Calculate boundary-to-total ratio
+boundaryRatio = REAL(boundaryNodes, DFP) / REAL(totalNodes, DFP)
+
+PRINT*, "Mesh has", boundaryNodes, "boundary nodes out of", totalNodes, "total nodes"
+PRINT *, "Boundary-to-total ratio:", boundaryRatio
+
+! High ratios might indicate a very fine mesh or unusual geometry
+IF (boundaryRatio > 0.5_DFP) THEN
+ PRINT *, "Note: High proportion of boundary nodes"
+END IF
```
+
+---
diff --git a/docs/docs-api/AbstractMesh/GetTotalCells.md b/docs/docs-api/AbstractMesh/GetTotalCells.md
new file mode 100644
index 00000000..7a85657c
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalCells.md
@@ -0,0 +1,50 @@
+# GetTotalCells
+
+The `GetTotalCells` method returns the total number of cells (elements) in the mesh. It is an alias for the `Size` method.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION SIZE(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION size
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numCells = mesh%GetTotalCells()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------------- |
+| `INTEGER(I4B)` | Total number of cells (elements) in the mesh |
+
+## Description
+
+`GetTotalCells` returns the total number of cells (elements) in the mesh. This method is an alias for the `Size` method and provides a more descriptive name for the operation when thinking in terms of cells rather than elements.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: numCells
+
+! Initialize mesh...
+
+! Get the total number of cells
+numCells = mesh%GetTotalCells()
+
+PRINT *, "The mesh contains", numCells, "cells"
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalEdges.md b/docs/docs-api/AbstractMesh/GetTotalEdges.md
new file mode 100644
index 00000000..34ab2747
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalEdges.md
@@ -0,0 +1,32 @@
+# GetTotalEdges
+
+Returns the total number of edges in the mesh (obj%tEdges).
+
+## Interface
+
+```fortran
+MODULE PURE FUNCTION GetTotalEdges(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalEdges
+```
+
+## Description
+
+This function returns the total number of unique edges in the mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of edges in the mesh.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numEdges
+numEdges = mesh%GetTotalEdges()
+PRINT*, "Total number of edges:", numEdges
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalElements.md b/docs/docs-api/AbstractMesh/GetTotalElements.md
new file mode 100644
index 00000000..70977ad5
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalElements.md
@@ -0,0 +1,92 @@
+# GetTotalElements
+
+The `GetTotalElements` method returns the total number of elements in the mesh, with options to filter by mesh ID.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION SIZE(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ !! mesh object
+ INTEGER(I4B) :: ans
+ END FUNCTION Size
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetTotalElements2(obj, meshid) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ !! mesh object
+ INTEGER(I4B), INTENT(IN) :: meshid
+ !! mesh id
+ INTEGER(I4B) :: ans
+ END FUNCTION GetTotalElements2
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetTotalElements3(obj, meshid) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: meshid(:)
+ INTEGER(I4B) :: ans
+ END FUNCTION GetTotalElements3
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get total elements in the mesh
+numElements = mesh%GetTotalElements()
+
+! Get total elements for a specific mesh ID
+numElements = mesh%GetTotalElements(meshid)
+
+! Get total elements for multiple mesh IDs
+numElements = mesh%GetTotalElements(meshidArray)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ----------------------------------- | ------ | -------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `meshid` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Mesh ID(s) to filter elements by |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ---------------------------------------------- |
+| `INTEGER(I4B)` | Total number of elements matching the criteria |
+
+## Description
+
+`GetTotalElements` returns the total number of elements in the mesh, with options to filter by mesh ID. The method has three versions:
+
+1. Return total number of all elements in the mesh
+2. Return total number of elements that belong to a specific mesh ID
+3. Return total number of elements that belong to any of the specified mesh IDs
+
+This is useful for determining sizes for array allocation and for mesh statistics.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: totalElements, subdomain1Elements, multiDomainElements
+INTEGER(I4B) :: domains(2) = [1, 3]
+
+! Initialize mesh...
+
+! Get total elements in the mesh
+totalElements = mesh%GetTotalElements()
+
+! Get total elements in subdomain 1
+subdomain1Elements = mesh%GetTotalElements(meshid=1)
+
+! Get total elements in domains 1 and 3
+multiDomainElements = mesh%GetTotalElements(meshid=domains)
+
+PRINT *, "Total elements:", totalElements
+PRINT *, "Subdomain 1 elements:", subdomain1Elements
+PRINT *, "Elements in domains 1 and 3:", multiDomainElements
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalElementsTopologyWise.md b/docs/docs-api/AbstractMesh/GetTotalElementsTopologyWise.md
new file mode 100644
index 00000000..fd334b40
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalElementsTopologyWise.md
@@ -0,0 +1,73 @@
+# GetTotalElementsTopologyWise
+
+The `GetTotalElementsTopologyWise` method returns the count of elements for each topology type in the mesh. This provides a breakdown of how many elements of each shape (point, line, triangle, etc.) are present.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE PURE FUNCTION GetTotalElementsTopologyWise(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans(8)
+ !! Total number of points, lines, triangles, quadrangles, tetrahedrons,
+ !! hexahedrons, prisms, pyramids
+ END FUNCTION GetTotalElementsTopologyWise
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+elementCounts = mesh%GetTotalElementsTopologyWise()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| ----------------- | ------------------------------------------------------------- |
+| `INTEGER(I4B)(8)` | Array containing the count of elements for each topology type |
+
+## Description
+
+`GetTotalElementsTopologyWise` returns an array with 8 elements, where each element represents the count of a specific element topology in the mesh. The indices correspond to the following topologies:
+
+1. Points
+2. Lines
+3. Triangles
+4. Quadrangles (quadrilaterals)
+5. Tetrahedrons
+6. Hexahedrons (hexahedra)
+7. Prisms
+8. Pyramids
+
+This method is useful for mesh statistics and for allocating resources based on the number of elements of each type.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: topoCounts(8)
+CHARACTER(LEN=15) :: topoNames(8) = ["Point ", "Line ", &
+ "Triangle ", "Quadrilateral ", &
+ "Tetrahedron ", "Hexahedron ", &
+ "Prism ", "Pyramid "]
+
+! Initialize mesh...
+
+! Get element counts by topology
+topoCounts = mesh%GetTotalElementsTopologyWise()
+
+! Display mesh composition
+PRINT *, "Mesh element composition:"
+DO i = 1, 8
+ IF (topoCounts(i) > 0) THEN
+ PRINT *, topoNames(i), ":", topoCounts(i)
+ END IF
+END DO
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalEntities.md b/docs/docs-api/AbstractMesh/GetTotalEntities.md
new file mode 100644
index 00000000..33c41280
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalEntities.md
@@ -0,0 +1,88 @@
+# GetTotalEntities
+
+The `GetTotalEntities` method retrieves the total count of different entity types (vertices, edges, faces, cells) either for a specific element or for the entire mesh. This information is crucial for many mesh operations and finite element calculations.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION GetTotalEntities1(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans(4)
+ END FUNCTION GetTotalEntities1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetTotalEntities2(obj) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans(4)
+ END FUNCTION GetTotalEntities2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get entity counts for a specific element
+entityCounts = mesh%GetTotalEntities(globalElement, [islocal])
+
+! Get entity counts for the entire mesh
+meshEntityCounts = mesh%GetTotalEntities()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Version | Type | Description |
+| ---------------- | ----------------- | -------------------------------------------------------------- |
+| Element-specific | `INTEGER(I4B)(4)` | [# of vertices, # of edges, # of faces, # of cells (always 1)] |
+| Mesh-wide | `INTEGER(I4B)(4)` | [total nodes, total edges, total faces, total elements] |
+
+## Description
+
+`GetTotalEntities` provides information about the number of entities in the mesh or in a specific element. It has two versions:
+
+1. Element-specific version returns an array where:
+ - ans(1) = Total number of nodes (vertices) in the element
+ - ans(2) = Total number of edges in the element
+ - ans(3) = Total number of faces in the element
+ - ans(4) = 1 (representing the element itself as a cell)
+
+2. Mesh-wide version returns an array where:
+ - ans(1) = Total number of nodes in the mesh
+ - ans(2) = Total number of edges in the mesh
+ - ans(3) = Total number of faces in the mesh
+ - ans(4) = Total number of elements (cells) in the mesh
+
+This information is essential for many mesh operations, including entity numbering, connectivity establishment, and finite element calculations.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+INTEGER(I4B) :: elemEntities(4), meshEntities(4)
+
+! Initialize mesh, elemNum...
+
+! Get entity counts for a specific element
+elemEntities = mesh%GetTotalEntities(elemNum)
+PRINT*, "Element has", elemEntities(1), "vertices,", elemEntities(2), "edges, and", &
+ elemEntities(3), "faces"
+
+! Get entity counts for the entire mesh
+meshEntities = mesh%GetTotalEntities()
+PRINT *, "Mesh has", meshEntities(1), "nodes,", meshEntities(2), "edges,", &
+ meshEntities(3), "faces, and", meshEntities(4), "elements"
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalFaces.md b/docs/docs-api/AbstractMesh/GetTotalFaces.md
new file mode 100644
index 00000000..56ff1973
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalFaces.md
@@ -0,0 +1,32 @@
+# GetTotalFaces
+
+Returns the total number of faces in the mesh (obj%tFaces).
+
+## Interface
+
+```fortran
+MODULE PURE FUNCTION GetTotalFaces(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalFaces
+```
+
+## Description
+
+This function returns the total number of unique faces in the mesh.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of faces in the mesh.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numFaces
+numFaces = mesh%GetTotalFaces()
+PRINT*, "Total number of faces:", numFaces
+```
diff --git a/docs/docs-api/AbstractMesh/GetTotalFacetElements.md b/docs/docs-api/AbstractMesh/GetTotalFacetElements.md
index e1375d5e..66eb0790 100644
--- a/docs/docs-api/AbstractMesh/GetTotalFacetElements.md
+++ b/docs/docs-api/AbstractMesh/GetTotalFacetElements.md
@@ -1,10 +1,32 @@
# GetTotalFacetElements
+Returns the total number of facet elements in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalFacetElements( obj ) RESULT( ans )
- CLASS(Mesh_), INTENT( IN ) :: obj
- INTEGER( I4B ) :: ans
- END FUNCTION getTotalFacetElements
+MODULE FUNCTION GetTotalFacetElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalFacetElements
+```
+
+## Description
+
+This function returns the total number of facet elements in the mesh. Facet elements include both internal and boundary facets.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of facet elements.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numFacets
+numFacets = mesh%GetTotalFacetElements()
+PRINT *, "Total number of facet elements:", numFacets
```
diff --git a/docs/docs-api/AbstractMesh/GetTotalInternalFacetElements.md b/docs/docs-api/AbstractMesh/GetTotalInternalFacetElements.md
index c05e987a..77230b9d 100644
--- a/docs/docs-api/AbstractMesh/GetTotalInternalFacetElements.md
+++ b/docs/docs-api/AbstractMesh/GetTotalInternalFacetElements.md
@@ -1,10 +1,32 @@
# GetTotalInternalFacetElements
+Returns the total number of internal facet elements.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalInternalFacetElements( obj ) RESULT(ans)
- CLASS(Mesh_), INTENT( IN ) :: obj
- INTEGER( I4B ) :: ans
- END FUNCTION getTotalInternalFacetElements
+MODULE FUNCTION GetTotalInternalFacetElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetTotalInternalFacetElements
+```
+
+## Description
+
+This function returns the total number of internal facet elements in the mesh. Internal facet elements are facets that are shared by two elements and are not on the boundary.
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The total number of internal facet elements.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: numInternalFacets
+numInternalFacets = mesh%GetTotalInternalFacetElements()
+PRINT*, "Number of internal facet elements:", numInternalFacets
```
diff --git a/docs/docs-api/AbstractMesh/GetTotalInternalNodes.md b/docs/docs-api/AbstractMesh/GetTotalInternalNodes.md
index e49a09bf..34b753b0 100644
--- a/docs/docs-api/AbstractMesh/GetTotalInternalNodes.md
+++ b/docs/docs-api/AbstractMesh/GetTotalInternalNodes.md
@@ -1,10 +1,63 @@
# GetTotalInternalNodes
+The `GetTotalInternalNodes` method returns the total number of internal nodes in the mesh. Internal nodes are nodes that are not on the boundary of the domain.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalInternalNodes(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetTotalInternalNodes(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B) :: ans
- END FUNCTION getTotalInternalNodes
+ END FUNCTION GetTotalInternalNodes
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numInternalNodes = mesh%GetTotalInternalNodes()
```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------ |
+| `INTEGER(I4B)` | Total number of internal nodes in the mesh |
+
+## Description
+
+`GetTotalInternalNodes` returns the count of all internal nodes in the mesh. Internal nodes are those that are not on the boundary of the domain. This information is useful for many numerical methods, as internal nodes often have different treatment than boundary nodes.
+
+The method counts nodes by checking the node type for each node in the mesh and incrementing the counter for each internal node found.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: internalNodes, boundaryNodes, totalNodes
+
+! Initialize mesh...
+
+! Get node counts
+internalNodes = mesh%GetTotalInternalNodes()
+boundaryNodes = mesh%GetTotalBoundaryNodes()
+totalNodes = mesh%GetTotalNodes()
+
+PRINT *, "Mesh has", totalNodes, "total nodes"
+PRINT *, " -", internalNodes, "internal nodes"
+PRINT *, " -", boundaryNodes, "boundary nodes"
+
+! Verify that the sum matches
+IF (internalNodes + boundaryNodes /= totalNodes) THEN
+ PRINT *, "Warning: Node count mismatch!"
+END IF
+```
+
+---
diff --git a/docs/docs-api/AbstractMesh/GetTotalMaterial.md b/docs/docs-api/AbstractMesh/GetTotalMaterial.md
new file mode 100644
index 00000000..15490518
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalMaterial.md
@@ -0,0 +1,80 @@
+# GetTotalMaterial
+
+The `GetTotalMaterial` method returns the total number of materials defined for a specific element in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION obj_GetTotalMaterial1(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ INTEGER(I4B) :: ans
+ END FUNCTION obj_GetTotalMaterial1
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+totalMaterials = mesh%GetTotalMaterial(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------- |
+| `INTEGER(I4B)` | Total number of materials defined for the element |
+
+## Description
+
+`GetTotalMaterial` returns the total number of materials (media types) that have been defined for a specific element. If no materials have been defined for the element, it returns 0.
+
+## Implementation Details
+
+The method converts the global element number to a local element number, then returns the size of the material array for that element. If the material array is not allocated, it returns 0.
+
+```fortran
+MODULE PROCEDURE obj_GetTotalMaterial1
+INTEGER(I4B) :: iel
+iel = obj%GetLocalElemNumber(globalElement, islocal=islocal)
+ans = 0 ! default value
+IF (ALLOCATED(obj%elementData(iel)%ptr%material)) THEN
+ ans = SIZE(obj%elementData(iel)%ptr%material)
+END IF
+END PROCEDURE obj_GetTotalMaterial1
+```
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: totalMaterials, elementNum
+
+! Initialize mesh, elementNum...
+
+! Get the total number of materials for an element
+totalMaterials = mesh%GetTotalMaterial(globalElement=elementNum)
+
+! Check if materials are defined
+IF (totalMaterials > 0) THEN
+ PRINT *, "Element has", totalMaterials, "materials defined"
+ELSE
+ PRINT *, "No materials defined for this element"
+END IF
+```
+
+## See Also
+
+- `SetTotalMaterial`: Sets the total number of materials for an element
+- `GetMaterial`: Gets the material ID for a specific medium in an element
diff --git a/docs/docs-api/AbstractMesh/GetTotalNodes.md b/docs/docs-api/AbstractMesh/GetTotalNodes.md
index 214d6776..f3c9a6bc 100644
--- a/docs/docs-api/AbstractMesh/GetTotalNodes.md
+++ b/docs/docs-api/AbstractMesh/GetTotalNodes.md
@@ -1,10 +1,99 @@
# GetTotalNodes
+The `GetTotalNodes` method returns the total number of nodes in the mesh, with options to count nodes for specific mesh IDs or element selections.
+
## Interface
```fortran
- MODULE PURE FUNCTION getTotalNodes(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION GetTotalNodes1(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetTotalNodes1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetTotalNodes2(obj, meshid) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: meshid
+ INTEGER(I4B) :: ans
+ END FUNCTION GetTotalNodes2
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION GetTotalNodes3(obj, globalElement, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ !! abstrract mesh
+ INTEGER(I4B), INTENT(IN) :: globalElement(:)
+ !! global or local element number
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ !! if true then global element is local element
INTEGER(I4B) :: ans
- END FUNCTION getTotalNodes
+ END FUNCTION GetTotalNodes3
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Get total nodes in the mesh
+totalNodes = mesh%GetTotalNodes()
+
+! Get total nodes for a specific mesh ID
+subdomainNodes = mesh%GetTotalNodes(meshid)
+
+! Get total unique nodes in specified elements
+elementNodes = mesh%GetTotalNodes(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `meshid` | `INTEGER(I4B)` | `IN` | Mesh ID to filter nodes by |
+| `globalElement` | `INTEGER(I4B)(:)` | `IN` | Global or local element numbers to count nodes from |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement contains local element numbers |
+
+## Return Value
+
+| Type | Description |
+|------|-------------|
+| `INTEGER(I4B)` | Total number of nodes matching the criteria |
+
+## Description
+
+`GetTotalNodes` returns the total number of nodes in the mesh, with options to count nodes for specific contexts:
+
+1. Return the total number of all nodes in the mesh
+2. Return the total number of nodes in elements with a specific mesh ID
+3. Return the total number of unique nodes in a list of specified elements
+
+This information is essential for array sizing, iteration limits, and mesh statistics.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: totalNodes, subdomain1Nodes, elemNodes
+INTEGER(I4B) :: selectedElems(3)
+
+! Initialize mesh...
+selectedElems = [10, 15, 20] ! Example element numbers
+
+! Get total nodes in the mesh
+totalNodes = mesh%GetTotalNodes()
+
+! Get total nodes in subdomain 1
+subdomain1Nodes = mesh%GetTotalNodes(meshid=1)
+
+! Get total unique nodes in selected elements
+elemNodes = mesh%GetTotalNodes(selectedElems)
+
+PRINT*, "Total nodes in mesh:", totalNodes
+PRINT*, "Nodes in subdomain 1:", subdomain1Nodes
+PRINT*, "Unique nodes in selected elements:", elemNodes
```
+
+---
+
diff --git a/docs/docs-api/AbstractMesh/GetTotalTopology.md b/docs/docs-api/AbstractMesh/GetTotalTopology.md
new file mode 100644
index 00000000..ea07731a
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetTotalTopology.md
@@ -0,0 +1,56 @@
+# GetTotalTopology
+
+The `GetTotalTopology` method returns the total number of different element topology types present in the mesh. This indicates how many different element shapes are used in the mesh construction.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE PURE FUNCTION GetTotalTopology(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+ END FUNCTION GetTotalTopology
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numTopologies = mesh%GetTotalTopology()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------------------ |
+| `INTEGER(I4B)` | Total number of different element topology types in the mesh |
+
+## Description
+
+`GetTotalTopology` returns the total number of different element topology types present in the mesh. A mixed mesh may contain several types of elements (e.g., tetrahedra and hexahedra), while a uniform mesh may contain only one element type.
+
+This information is useful for mesh statistics and for algorithms that need to handle different element types.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: numTopologies
+
+! Initialize mesh...
+
+! Get the number of different element types
+numTopologies = mesh%GetTotalTopology()
+
+IF (numTopologies == 1) THEN
+ PRINT *, "Mesh has uniform element topology"
+ELSE
+ PRINT *, "Mesh contains", numTopologies, "different element types"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/GetXiDimension.md b/docs/docs-api/AbstractMesh/GetXiDimension.md
new file mode 100644
index 00000000..a127b565
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/GetXiDimension.md
@@ -0,0 +1,47 @@
+# GetXiDimension
+
+Return the xidimension of the mesh.
+
+## Interface
+
+```fortran
+MODULE FUNCTION GetXidimension(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetXidimension
+```
+
+## Description
+
+This function returns the xi-dimension (topological dimension) of the mesh elements:
+
+- 0 for point elements
+- 1 for line/curve elements
+- 2 for surface elements
+- 3 for volume elements
+
+## Arguments
+
+- `obj`: The abstract mesh object.
+
+## Returns
+
+- `ans`: The xi-dimension of the mesh.
+
+## Example
+
+```fortran
+INTEGER(I4B) :: xidim
+xidim = mesh%GetXidimension()
+
+SELECT CASE(xidim)
+CASE(0)
+ PRINT*, "Point mesh"
+CASE(1)
+ PRINT*, "Line/curve mesh"
+CASE(2)
+ PRINT*, "Surface mesh"
+CASE(3)
+ PRINT*, "Volume mesh"
+END SELECT
+```
diff --git a/docs/docs-api/AbstractMesh/Import.md b/docs/docs-api/AbstractMesh/Import.md
new file mode 100644
index 00000000..6859f1cb
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/Import.md
@@ -0,0 +1,99 @@
+# Import
+
+This method reads mesh data from an HDF5 file and initializes the AbstractMesh_
+object. It serves as a wrapper around the `Initiate` method, providing the
+same functionality with a more intuitive name for importing mesh data.
+
+## Interface
+
+```fortran
+INTERFACE AbstractMeshImport
+ MODULE SUBROUTINE IMPORT(obj, hdf5, group, dim, entities)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ TYPE(HDF5File_), INTENT(INOUT) :: hdf5
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: group
+ !! Group name
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: dim
+ !! dimension
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: entities(:)
+ !! entityNum
+ END SUBROUTINE IMPORT
+END INTERFACE AbstractMeshImport
+```
+
+### Arguments
+
+- `obj`: The AbstractMesh_ object to be initialized
+- `hdf5`: HDF5File_ object containing mesh data
+- `group` (optional): Location in the HDF5 file where mesh data is stored
+- `dim` (optional): Dimension of the mesh to read
+- `entities` (optional): Entity numbers to be included in the mesh
+
+### Notes
+
+- If `group` is provided, mesh data from that group is read
+- If `dim` is provided, all entities of that dimension are read
+- If both `dim` and `entities` are provided, the method constructs groups based on the dimension and entities to create the mesh
+- After reading the data, the mesh is marked as initiated (`isInitiated = .TRUE.`)
+- This method is equivalent to calling the `Initiate` method
+
+The method can import mesh data in three different ways:
+
+1. From a specific group in the HDF5 file
+2. From entities of a specific dimension
+3. From all entities of a specific dimension
+
+- The method supports timing measurements if `obj%showTime` is enabled
+- Data is read from the HDF5 file including:
+ - Element connectivity
+ - Node coordinates
+ - Boundary information
+ - Element types and topologies
+ - Mesh dimensions and bounding box
+- After import, local-to-global and global-to-local mappings are created for nodes and elements
+- The imported mesh is marked as initialized (`isInitiated = .TRUE.`)
+- For dimension-based imports, entities are read from specific paths like:
+ - "/pointEntities_N" for points (dim=0)
+ - "/curveEntities_N" for curves (dim=1)
+ - "/surfaceEntities_N" for surfaces (dim=2)
+ - "/volumeEntities_N" for volumes (dim=3)
+
+### Algorithm
+
+The method follows these steps:
+
+1. Determines which import case to use based on the provided arguments
+2. Calls the appropriate internal import routine:
+
+- `MeshImportFromGroup` - when only a group is specified
+- `MeshImportFromDim` - when dimension and entities are specified
+- When only dimension is specified, it first gets all entities of that dimension
+ and then calls `MeshImportFromDim`
+
+3. After importing the mesh data, it initializes element-to-element connectivity
+
+The internal import routines perform the following operations:
+
+- Read scalar properties (dimensions, bounding box, etc.)
+- Read vector data (element numbers, connectivity matrices)
+- Build element data structures
+- Build node data structures
+- Import node coordinates
+
+### Example Usage
+
+```fortran
+ ! Example 1: Import mesh from a specific group
+ type(HDF5File_) :: h5file
+ type(Mesh_) :: mesh
+
+ call h5file%open("mesh.h5", "r")
+ call mesh%Import(h5file, group="/mesh")
+ call h5file%close()
+
+ ! Example 2: Import mesh from specific dimension and entities
+ call mesh%Import(h5file, group="/", dim=2, entities=[1,3,5])
+
+ ! Example 3: Import all entities of dimension 3 (volumes)
+ call mesh%Import(h5file, group="/", dim=3)
+```
diff --git a/docs/docs-api/AbstractMesh/InitiateBoundaryData.md b/docs/docs-api/AbstractMesh/InitiateBoundaryData.md
index 6eda0b31..4c2f6c07 100644
--- a/docs/docs-api/AbstractMesh/InitiateBoundaryData.md
+++ b/docs/docs-api/AbstractMesh/InitiateBoundaryData.md
@@ -1,6 +1,11 @@
# InitiateBoundaryData
+The `InitiateBoundaryData` method identifies and marks boundary elements and nodes within an `AbstractMesh` object.
+It establishes the necessary data structures to efficiently identify mesh boundaries and the elements adjacent to these boundaries.
+
+:::note
This method construct the boundary-element data.
+:::
- It marks elements of mesh as `DOMAIN_BOUNDARY_ELEMENT` and `INTERNAL_ELEMENT`.
- In this case boundary elements are those which contains the boundary node.
@@ -8,11 +13,11 @@ This method construct the boundary-element data.
- It also forms `obj%elementData(ii)%boundaryData`.
:::note
-This subroutine treats all boundary element as `DOMAIN_BOUNDARY_ELEMENT` because it does not have information of surrouding mesh. However, this is not correct. This is because, not all mesh boundary elements are domain boundary elements. For example, some mesh-boundary element may be interface element between two mesh regions. This information can be corrected by calling [SetFacetElementType](../Domain/SetFacetElementType.md) method from [Domain_](../Domain/Domain_.md).
+This subroutine treats all boundary element as `DOMAIN_BOUNDARY_ELEMENT` because it does not have information of surrouding mesh. However, this is not correct. This is because, not all mesh boundary elements are domain boundary elements. For example, some mesh-boundary element may be interface element between two mesh regions. This information can be corrected by calling [SetFacetElementType](../FEDomain/SetFacetElementType.md) method from [FEDomain_](../FEDomain/FEDomain_.md).
:::
:::info
-If we call [InitiateBoundaryData](../Domain/InitiateBoundaryData.md), then we do not have to call [SetFacetElementType](../Domain/SetFacetElementType.md) because the former routine makes an internal call to the latter.
+If we call [InitiateBoundaryData](../FEDomain/InitiateBoundaryData.md), then we do not have to call [SetFacetElementType](../FEDomain/SetFacetElementType.md) because the former routine makes an internal call to the latter.
:::
This method needs following information:
@@ -20,11 +25,109 @@ This method needs following information:
- `ElementToElements`
- `refelem` to construct the FacetElements
+## Purpose
+
+This method analyzes the mesh to identify its boundaries and creates data structures that support:
+
+- Application of boundary conditions
+- Identification of domain interfaces
+- Implementation of flux calculations at boundaries
+- Visualization of boundary elements
+- Mesh refinement at boundaries
+- Domain decomposition algorithms
+- Implementation of interface coupling techniques
+
```fortran
INTERFACE
- MODULE SUBROUTINE InitiateBoundaryData(obj)
- CLASS(Mesh_), INTENT(INOUT) :: obj
- !! mesh data
- END SUBROUTINE InitiateBoundaryData
+ MODULE SUBROUTINE obj_InitiateBoundaryData(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ END SUBROUTINE obj_InitiateBoundaryData
END INTERFACE
```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to initialize boundary data
+
+## Algorithm
+
+1. If boundary data is already initialized (`obj%isBoundaryDataInitiated` is true), the method returns immediately
+2. Ensures element-to-element connectivity has been established by calling `obj%InitiateElementToElements()` if necessary
+3. Sets the initialization flag to true
+4. For each element in the mesh:
+ - Determines if the element is on the boundary by checking its connectivity
+ - For boundary elements, identifies which faces lie on the boundary
+ - Marks these faces as boundary faces
+ - Updates the element's boundary data with the local face IDs
+ - Updates node type information for nodes on boundary faces
+5. Updates element type information to distinguish between:
+ - Interior elements (fully inside the domain)
+ - Boundary elements (containing at least one boundary face)
+ - Domain boundary elements (on the external boundary)
+
+## Implementation Details
+
+- Uses element-to-element connectivity to identify boundary faces (faces with no neighboring element)
+- Stores boundary face information in the element data structure
+- Updates node type information to identify boundary nodes
+- Distinguishes between internal boundaries (between subdomains) and external boundaries
+- Provides timing information when `obj%showTime` is enabled
+- Includes debugging information when compiled with debug flags
+
+## Data Structures Modified
+
+- `obj%elementData(ii)%ptr%boundaryData` - For boundary elements, stores the local face IDs that lie on boundaries
+- `obj%elementData(ii)%ptr%elementType` - Updates element type to reflect boundary status
+- `obj%nodeData(ii)%ptr%nodeType` - Updates node type to identify boundary nodes
+- `obj%isBoundaryDataInitiated` - Flag indicating boundary data has been initialized
+
+## Element and Node Type Categorization
+
+Elements can be categorized as:
+
+- `INTERNAL_ELEMENT` - All faces connect to other elements
+- `BOUNDARY_ELEMENT` - At least one face lies on a boundary
+- `DOMAIN_BOUNDARY_ELEMENT` - Element on the external domain boundary
+
+Nodes can be categorized as:
+
+- `INTERNAL_NODE` - Not on any boundary
+- `BOUNDARY_NODE` - On a boundary
+- `DOMAIN_BOUNDARY_NODE` - On the external domain boundary
+
+## Performance Considerations
+
+- Time complexity is O(n × f) where n is the number of elements and f is the average number of faces per element
+- Memory usage scales with the number of boundary elements and faces
+- Requires element-to-element connectivity information
+- For large meshes, this operation can be computationally intensive
+
+## Usage Example
+
+```fortran
+TYPE(FEMesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build boundary data
+CALL mesh%InitiateBoundaryData()
+
+! Check if an element is on the boundary
+IF (mesh%isBoundaryElement(elemNum)) THEN
+ ! Get boundary faces for this element
+ boundaryFaces = mesh%GetBoundaryElementData(elemNum)
+END IF
+```
+
+## Dependencies
+
+This method depends on:
+
+- Element-to-element connectivity (`obj%InitiateElementToElements()`)
+- Reference element information for identifying faces
+- `ElemData_ExpandBoundaryData` for storing boundary face information
+- `NodeData_SetNodeType` for marking boundary nodes
+
+## Notes
+
+- This method is a prerequisite for many boundary-related operations
+- The boundary identification depends on the correct establishment of element-to-element connectivity
+- For multi-domain simulations, boundary elements may be further classified as domain boundaries or internal boundaries
+- This method is automatically called by other methods that require boundary information
diff --git a/docs/docs-api/AbstractMesh/InitiateDynamicDataStructure.md b/docs/docs-api/AbstractMesh/InitiateDynamicDataStructure.md
new file mode 100644
index 00000000..adf9ad74
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/InitiateDynamicDataStructure.md
@@ -0,0 +1,18 @@
+# InitiateDynamicDataStructure
+
+This method is used to initiate the dynamic data structure of the mesh object. It is typically called during the initialization phase of the mesh object to set up any necessary data structures that will be used for dynamic operations on the mesh.
+
+This method initiated following data structures:
+
+- ElementDataList
+- ElementDataBinaryTree
+- NodeDataList
+- NodeDataBinaryTree
+
+## Interface
+
+```fortran
+SUBROUTINE InitiateDynamicDataStructure(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+END SUBROUTINE InitiateDynamicDataStructure
+```
diff --git a/docs/docs-api/AbstractMesh/InitiateEdgeConnectivity.md b/docs/docs-api/AbstractMesh/InitiateEdgeConnectivity.md
new file mode 100644
index 00000000..c0c2c6ff
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/InitiateEdgeConnectivity.md
@@ -0,0 +1,106 @@
+# InitiateEdgeConnectivity
+
+The `InitiateEdgeConnectivity` method initializes edge connectivity information in an `AbstractMesh` object. This method identifies all unique edges in the mesh, assigns them global edge numbers, and establishes the mapping between local element edges and these global edges.
+
+## Purpose
+
+This method creates a critical data structure that identifies and numbers all edges in the mesh uniquely. Edge connectivity is essential for:
+
+- Supporting higher-order finite element methods
+- Implementing edge-based numerical schemes
+- Constructing hierarchical mesh refinement
+- Computing edge-based quantities (jumps, averages)
+- Supporting p-refinement techniques
+- Facilitating Nédélec (edge) finite elements
+- Handling mesh adaptation algorithms
+
+## Method Signature
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_InitiateEdgeConnectivity(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ END SUBROUTINE obj_InitiateEdgeConnectivity
+END INTERFACE
+```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to create the edge connectivity data
+
+## Algorithm
+
+1. If edge connectivity is already initialized (`obj%isEdgeConnectivityInitiated` is true), the method returns immediately
+2. Verifies the element data is properly allocated
+3. Creates a binary tree to efficiently identify unique edges
+4. For each active element in the mesh:
+ - Retrieves the reference element's edge connectivity pattern
+ - Allocates global edge and edge orientation arrays in the element data structure
+ - For each edge in the element:
+ - Identifies the two nodes defining the edge
+ - Creates a sorted version of the edge (for consistent identification)
+ - Attempts to insert the edge into the binary tree
+ - If the edge is new, assigns it a new global edge ID
+ - If the edge already exists, retrieves its existing global ID
+ - Records edge orientation based on node ordering
+5. Updates the total number of edges in the mesh (`obj%tEdges`)
+6. Deallocates the temporary binary tree
+
+## Implementation Details
+
+- Uses a binary tree data structure (`EdgeDataBinaryTree_`) to efficiently identify unique edges
+- Edge orientation is stored as +1 or -1 to indicate whether the local edge direction matches the global edge direction
+- A sorted version of each edge (nodes in ascending order) is used for consistent edge identification
+- Global edge IDs are sequential starting from 1
+- The method skips inactive elements
+
+## Data Structures Modified
+
+- `obj%elementData(iel)%ptr%globalEdges` - For each element, stores the global edge numbers
+- `obj%elementData(iel)%ptr%edgeOrient` - For each element, stores the orientation of each edge
+- `obj%tEdges` - Updates the total number of unique edges in the mesh
+- `obj%isEdgeConnectivityInitiated` - Flag indicating edge connectivity has been initialized
+
+## Edge Orientation
+
+Edge orientation is stored as:
+
+- `+1` if the local edge direction (from first to second node) matches the global edge direction
+- `-1` if the local edge direction is opposite to the global edge direction
+
+This orientation is crucial for ensuring consistent integration and assembly along edges.
+
+## Performance Considerations
+
+- Time complexity is O(n × e × log(E)) where n is the number of elements, e is the average number of edges per element, and E is the total number of unique edges
+- Memory usage scales with the total number of edges
+- The binary tree structure optimizes the identification of unique edges
+- For large meshes with many edges, this operation can be computationally intensive
+
+## Usage Example
+
+```fortran
+TYPE(Mesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build edge connectivity
+CALL mesh%InitiateEdgeConnectivity()
+
+! Now we can access global edge numbers and orientations
+! For example, to get global edge numbers for an element:
+globalEdges = mesh%elementData(elemNum)%ptr%globalEdges
+```
+
+## Dependencies
+
+This method depends on:
+
+- `ReferenceElement_Method` for retrieving geometric parameters
+- `EdgeData_Class` for edge data structure
+- `EdgeDataBinaryTree_Class` for efficiently identifying unique edges
+- `SortUtility` for consistent edge ordering
+
+## Notes
+
+- Edge connectivity is a prerequisite for many advanced finite element methods
+- Edge orientation information is essential for maintaining consistency in numerical integration
+- This method creates a unique global numbering for all edges in the mesh
+- The binary tree approach ensures efficient handling of large meshes
diff --git a/docs/docs-api/AbstractMesh/InitiateElemSD.md b/docs/docs-api/AbstractMesh/InitiateElemSD.md
index 49118b54..990de3a5 100644
--- a/docs/docs-api/AbstractMesh/InitiateElemSD.md
+++ b/docs/docs-api/AbstractMesh/InitiateElemSD.md
@@ -1,111 +1,111 @@
# InitiateElemSD
```fortran
- MODULE SUBROUTINE InitiateElemSD(obj, &
- & orderSpace, &
- & linSpaceElem, &
- & spaceElem, &
- & quadTypeForSpace, &
- & continuityTypeForSpace, &
- & interpolTypeForSpace )
- CLASS(Mesh_), INTENT(INOUT) :: obj
- INTEGER(I4B), INTENT(IN) :: orderSpace
- !! integrand order in space
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
- !! linear (simplex) space element
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
- !! space element
- CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
- !! quadrature for space
- CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
- !! continuity for base in space
- CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
- !! interpolation type for base in space
- END SUBROUTINE InitiateElemSD
+MODULE SUBROUTINE InitiateElemSD(obj, &
+ & orderSpace, &
+ & linSpaceElem, &
+ & spaceElem, &
+ & quadTypeForSpace, &
+ & continuityTypeForSpace, &
+ & interpolTypeForSpace )
+ CLASS(Mesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: orderSpace
+ !! integrand order in space
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
+ !! linear (simplex) space element
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
+ !! space element
+ CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
+ !! quadrature for space
+ CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
+ !! continuity for base in space
+ CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
+ !! interpolation type for base in space
+END SUBROUTINE InitiateElemSD
```
```fortran
- MODULE SUBROUTINE mesh_initiateElemSD2(obj, &
- & orderSpace, &
- & linSpaceElem, &
- & spaceElem, &
- & quadTypeForSpace, &
- & continuityTypeForSpace, &
- & interpolTypeForSpace, &
- & orderTime, &
- & linTimeElem, &
- & timeElem, &
- & quadTypeForTime, &
- & continuityTypeForTime, &
- & interpolTypeForTime, &
- & tvec)
- CLASS(Mesh_), INTENT(INOUT) :: obj
- INTEGER(I4B), INTENT(IN) :: orderSpace
- !! integrand order in space
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
- !! linear space element
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
- !! space element
- CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
- !! quadrature type for space
- CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
- !! continuity type of base in space
- CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
- !! interpol type of base in space
- INTEGER(I4B), INTENT(IN) :: orderTime
- !! integrand order in time
- TYPE(ReferenceLine_), INTENT(IN) :: linTimeElem
- !! linear time element
- TYPE(ReferenceLine_), INTENT(IN) :: timeElem
- !! time element
- CHARACTER(LEN=*), INTENT(IN) :: quadTypeForTime
- !! quadrature type of base in time
- CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForTime
- !! continuity type of base in time
- CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForTime
- !! interpol type of base in time
- REAL(DFP), INTENT(IN) :: tvec(:)
- END SUBROUTINE mesh_initiateElemSD2
+MODULE SUBROUTINE mesh_initiateElemSD2(obj, &
+ & orderSpace, &
+ & linSpaceElem, &
+ & spaceElem, &
+ & quadTypeForSpace, &
+ & continuityTypeForSpace, &
+ & interpolTypeForSpace, &
+ & orderTime, &
+ & linTimeElem, &
+ & timeElem, &
+ & quadTypeForTime, &
+ & continuityTypeForTime, &
+ & interpolTypeForTime, &
+ & tvec)
+ CLASS(Mesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: orderSpace
+ !! integrand order in space
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
+ !! linear space element
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
+ !! space element
+ CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
+ !! quadrature type for space
+ CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
+ !! continuity type of base in space
+ CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
+ !! interpol type of base in space
+ INTEGER(I4B), INTENT(IN) :: orderTime
+ !! integrand order in time
+ TYPE(ReferenceLine_), INTENT(IN) :: linTimeElem
+ !! linear time element
+ TYPE(ReferenceLine_), INTENT(IN) :: timeElem
+ !! time element
+ CHARACTER(LEN=*), INTENT(IN) :: quadTypeForTime
+ !! quadrature type of base in time
+ CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForTime
+ !! continuity type of base in time
+ CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForTime
+ !! interpol type of base in time
+ REAL(DFP), INTENT(IN) :: tvec(:)
+END SUBROUTINE mesh_initiateElemSD2
```
```fortran
- MODULE SUBROUTINE mesh_initiateElemSD3(obj, &
- & orderSpace, &
- & linSpaceElem, &
- & spaceElem, &
- & quadTypeForSpace, &
- & continuityTypeForSpace, &
- & interpolTypeForSpace, &
- & orderTime, &
- & linTimeElem, &
- & timeElem, &
- & quadTypeForTime, &
- & continuityTypeForTime, &
- & interpolTypeForTime )
- CLASS(Mesh_), INTENT(INOUT) :: obj
- INTEGER(I4B), INTENT(IN) :: orderSpace
- !! integrand order in space
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
- !! linear space element
- CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
- !! space element
- CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
- !! quadrature type of base in space
- CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
- !! continuity type of base in space
- CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
- !! interpolation type of base in space
- INTEGER(I4B), INTENT(IN) :: orderTime
- !! integrand order in time
- TYPE(ReferenceLine_), INTENT(IN) :: linTimeElem
- !! linear time element
- TYPE(ReferenceLine_), INTENT(IN) :: timeElem
- !! time element
- CHARACTER(LEN=*), INTENT(IN) :: quadTypeForTime
- !! quadrature type of base in time
- CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForTime
- !! continuity type of base in time
- CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForTime
- !! interpolation type of base in time
- END SUBROUTINE mesh_initiateElemSD3
+MODULE SUBROUTINE mesh_initiateElemSD3(obj, &
+ & orderSpace, &
+ & linSpaceElem, &
+ & spaceElem, &
+ & quadTypeForSpace, &
+ & continuityTypeForSpace, &
+ & interpolTypeForSpace, &
+ & orderTime, &
+ & linTimeElem, &
+ & timeElem, &
+ & quadTypeForTime, &
+ & continuityTypeForTime, &
+ & interpolTypeForTime )
+ CLASS(Mesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: orderSpace
+ !! integrand order in space
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: linSpaceElem
+ !! linear space element
+ CLASS(ReferenceElement_), TARGET, INTENT(IN) :: spaceElem
+ !! space element
+ CHARACTER(LEN=*), INTENT(IN) :: quadTypeForSpace
+ !! quadrature type of base in space
+ CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForSpace
+ !! continuity type of base in space
+ CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForSpace
+ !! interpolation type of base in space
+ INTEGER(I4B), INTENT(IN) :: orderTime
+ !! integrand order in time
+ TYPE(ReferenceLine_), INTENT(IN) :: linTimeElem
+ !! linear time element
+ TYPE(ReferenceLine_), INTENT(IN) :: timeElem
+ !! time element
+ CHARACTER(LEN=*), INTENT(IN) :: quadTypeForTime
+ !! quadrature type of base in time
+ CHARACTER(LEN=*), INTENT(IN) :: continuityTypeForTime
+ !! continuity type of base in time
+ CHARACTER(LEN=*), INTENT(IN) :: interpolTypeForTime
+ !! interpolation type of base in time
+END SUBROUTINE mesh_initiateElemSD3
```
diff --git a/docs/docs-api/AbstractMesh/InitiateElementToElements.md b/docs/docs-api/AbstractMesh/InitiateElementToElements.md
index 03640493..8be2ce06 100644
--- a/docs/docs-api/AbstractMesh/InitiateElementToElements.md
+++ b/docs/docs-api/AbstractMesh/InitiateElementToElements.md
@@ -1,5 +1,7 @@
# InitiateElementToElements
+The `InitiateElementToElements` method establishes the element-to-element connectivity mapping in an `AbstractMesh` object. This connectivity represents how elements in the mesh are topologically connected to each other through shared faces, edges, or nodes, depending on the mesh dimension.
+
This routine creates the element surrounding a given element data
- Before calling this routine, make sure the `refelem` in mesh is allocated.
@@ -10,7 +12,21 @@ This routine creates the element surrounding a given element data
- `obj%elementData(ielem)%globalElements`
- It also identifies those elements which are boundary element of mesh, and set `obj%elementData(ielem)%elementType=BOUNDARY_ELEMENT` for those elements.
- Note that at this point these boundary-elements can be interface element
- between two meshs, or domain-boundary element.
+ between two meshs, or domain-boundary element.
+
+## Purpose
+
+This method builds a crucial data structure that identifies all adjacent elements for each element in the mesh. The element-to-element connectivity map is essential for:
+
+- Implementing discontinuous Galerkin methods
+- Calculating numerical fluxes across element interfaces
+- Identifying interior and boundary faces
+- Supporting domain decomposition techniques
+- Facilitating mesh refinement and coarsening operations
+- Implementing finite volume methods
+- Enforcing continuity conditions across element boundaries
+
+## Interface
```fortran
INTERFACE
@@ -20,3 +36,81 @@ INTERFACE
END SUBROUTINE InitiateElementToElements
END INTERFACE
```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to create the element-to-element connectivity map
+
+## Algorithm
+
+1. If the mapping is already initialized (`obj%isElementToElementsInitiated` is true), the method returns immediately
+2. Sets the initialization flag to true
+3. Based on the dimension of the mesh (`obj%xidim`), it calls the appropriate specialized initialization routine:
+ - For 1D meshes: `InitiateElementToElements1D`
+ - For 2D and 3D meshes: `InitiateElementToElements3D`
+4. For 2D and 3D meshes, it first ensures face connectivity is initialized by calling `obj%InitiateFaceConnectivity()` if necessary
+5. After the element-to-element connectivity is built, it calls `MarkInternalNodes` to identify and mark boundary nodes in the mesh
+
+## Implementation Details
+
+- Uses dimension-specific algorithms to handle the different connectivity patterns in 1D, 2D, and 3D meshes
+- For 2D and 3D meshes, relies on face connectivity information to establish element connections
+- Updates the `obj%isElementToElementsInitiated` flag to prevent redundant initialization
+- Provides debugging information when compiled with debug flags
+- Can track and report timing information if `obj%showTime` is enabled
+
+## Data Structures Modified
+
+- `obj%elementData(ii)%ptr%globalElements` - For each element, stores information about connected elements
+- `obj%elementData(ii)%ptr%localFaces` - For 2D/3D elements, stores local face numbers that connect to other elements
+- `obj%elementData(ii)%ptr%neighborFaces` - For 2D/3D elements, stores corresponding face numbers in the neighboring elements
+- `obj%isElementToElementsInitiated` - Flag indicating the element-to-element mapping has been built
+- Node type information is updated to mark boundary nodes
+
+## MarkInternalNodes Helper Function
+
+This internal subroutine identifies and marks boundary nodes in the mesh:
+
+1. Iterates through all elements in the mesh
+2. For each boundary element, examines its boundary faces
+3. For each boundary face, retrieves the nodes on that face
+4. Marks those nodes as domain boundary nodes by setting their node type
+
+## Performance Considerations
+
+- Time complexity depends on the mesh dimension and size
+- For 2D and 3D meshes, this operation can be computationally intensive due to face matching
+- Memory usage scales with the number of element-element connections
+- The method employs specialized algorithms to efficiently handle different mesh dimensions
+
+## Usage Example
+
+```fortran
+TYPE(Mesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build element-to-element connectivity
+CALL mesh%InitiateElementToElements()
+
+! Now we can easily find adjacent elements
+elemInfo = mesh%GetElementToElements(globalElement=elemNum)
+```
+
+## Dependencies
+
+This method depends on:
+
+- Face connectivity for 2D and 3D meshes
+- Dimension-specific helper routines from `AbstractMeshUtility` module:
+ - `InitiateElementToElements1D`
+ - `InitiateElementToElements2D`
+ - `InitiateElementToElements3D`
+- `NodeData_SetNodeType` for marking boundary nodes
+
+## Notes
+
+- The connectivity established depends on the mesh dimension:
+ - 1D: Elements connect at shared nodes
+ - 2D: Elements connect at shared edges
+ - 3D: Elements connect at shared faces
+- This method is a prerequisite for many advanced mesh operations and numerical schemes
+- It's automatically called by other methods that require element-to-element connectivity information
+
diff --git a/docs/docs-api/AbstractMesh/InitiateExtraNodeToNodes.md b/docs/docs-api/AbstractMesh/InitiateExtraNodeToNodes.md
index 189df003..91b1b7ec 100644
--- a/docs/docs-api/AbstractMesh/InitiateExtraNodeToNodes.md
+++ b/docs/docs-api/AbstractMesh/InitiateExtraNodeToNodes.md
@@ -1,5 +1,7 @@
# InitiateExtraNodetoNodes
+The `InitiateExtraNodetoNodes` method builds an extended node-to-node connectivity mapping in an `AbstractMesh` object. Unlike the standard node-to-node connectivity, this extended mapping includes "second-degree" connections that are not directly connected through a shared element but are neighbors of neighbors.
+
This routine generate the node to nodes mapping
- This mapping is stored inside `obj%nodeData%extraGlobalNodeNum`
@@ -10,11 +12,97 @@ This routine generate the node to nodes mapping
- If `nodeToElements` is not initiated, then this method initiates it.
- If `elementToElements` is not initiated, then this method initiates it.
+## Purpose
+
+This method creates an enhanced connectivity graph that captures wider nodal neighborhoods, which is especially valuable for:
+
+- Implementing jump-based stabilization techniques in finite element methods
+- Supporting extended stencil operations in numerical schemes
+- Enhancing solution smoothing algorithms
+- Implementing advanced discontinuous Galerkin methods
+- Improving shock-capturing schemes
+- Creating patch-based reconstruction techniques
+- Supporting multi-scale methods that require information beyond immediate neighbors
+
+## Interface
+
```fortran
INTERFACE
- MODULE SUBROUTINE InitiateExtraNodetoNodes(obj)
- CLASS(Mesh_), INTENT(INOUT) :: obj
- !! mesh data
- END SUBROUTINE InitiateExtraNodetoNodes
+ MODULE SUBROUTINE obj_InitiateExtraNodetoNodes(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ END SUBROUTINE obj_InitiateExtraNodetoNodes
END INTERFACE
```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to create the extended node-to-node connectivity map
+
+## Algorithm
+
+1. Verify the method hasn't already been executed and that prerequisites are initialized
+2. For each node in the mesh:
+ - Get its immediate connected nodes (standard node-to-node connections)
+ - Get all elements that contain this node
+ - For each of these elements:
+ - Get all elements that share a face with this element (element-to-element connectivity)
+ - Filter out elements that are already connected to the current node
+ - For each of these "second-degree" elements:
+ - Get all nodes of this element
+ - Filter out nodes that are already directly connected to the current node
+ - Add these filtered nodes to the extra connectivity list
+ - Remove any duplicate nodes from the extended connectivity list
+ - Store the extended node list in the node data structure
+
+## Implementation Details
+
+- Requires three prerequisite connectivity maps:
+ - Node-to-node connectivity
+ - Node-to-element connectivity
+ - Element-to-element connectivity
+- Uses boolean masks to efficiently filter nodes and elements
+- Employs the `APPEND` utility for combining node lists
+- Uses `RemoveDuplicates` to ensure each extra node appears only once
+
+## Data Structures Modified
+
+- `obj%nodeData(iLocalNode)%ptr%extraGlobalNodes` - For each node, stores the list of "second-degree" connected global node numbers
+- `obj%isExtraNodeToNodesInitiated` - Flag indicating the extended node-to-node mapping has been built
+
+## Performance Considerations
+
+- Time complexity is higher than standard connectivity maps due to the multi-level traversal required
+- Memory usage can be significantly higher than standard node-to-node connectivity as it captures a wider neighborhood
+- For complex meshes with many elements per node, this operation can be computationally intensive
+- The method employs efficient filtering through boolean masks to minimize unnecessary operations
+
+## Usage Example
+
+```fortran
+TYPE(Mesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build prerequisite connectivity (will be automatically called if not already initialized)
+CALL mesh%InitiateNodeToNodes()
+CALL mesh%InitiateNodeToElements()
+CALL mesh%InitiateElementToElements()
+
+! Build extended node-to-node connectivity
+CALL mesh%InitiateExtraNodeToNodes()
+
+! Now extended node connectivity is available for advanced numerical schemes
+```
+
+## Dependencies
+
+This method depends on:
+
+- Standard node-to-node connectivity (`obj%InitiateNodeToNodes()`)
+- Node-to-element connectivity (`obj%InitiateNodeToElements()`)
+- Element-to-element connectivity (`obj%InitiateElementToElements()`)
+- `NodeData_SetExtraGlobalNodes` for storing the extended connectivity
+
+## Notes
+
+- The method specifically seeks nodes that are not immediate neighbors but are connected through element-to-element relationships
+- This extended connectivity is particularly valuable for numerical methods that require wider stencils or jump terms
+- Unlike standard connectivity which is symmetric (if A connects to B, then B connects to A), the extra connectivity may not always be symmetric
+
diff --git a/docs/docs-api/AbstractMesh/InitiateFaceConnectivity.md b/docs/docs-api/AbstractMesh/InitiateFaceConnectivity.md
new file mode 100644
index 00000000..1cba3808
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/InitiateFaceConnectivity.md
@@ -0,0 +1,75 @@
+# InitiateFaceConnectivity
+
+The `InitiateFaceConnectivity` method initializes the face connectivity data for elements in an `AbstractMesh_` object.
+Face connectivity is a critical part of mesh representation that defines how faces are shared between elements.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_InitiateFaceConnectivity(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ !! mesh data
+ END SUBROUTINE obj_InitiateFaceConnectivity
+END INTERFACE
+```
+
+## Description
+
+This method initializes the face connectivity information for all elements in the mesh. It assigns global face numbers to each face of every element and determines the orientation of each face. The implementation is dimension-dependent:
+
+- For 2D meshes: Establishes connectivity between line segments (edges as faces)
+- For 3D meshes: Establishes connectivity between triangular or quadrilateral faces
+
+The method:
+
+1. Checks if face connectivity is already initialized
+2. Creates a binary tree data structure for efficient face lookup
+3. For each active element in the mesh:
+ - Gets the face topology information from the reference element
+ - Allocates memory for global face numbers and face orientation data
+ - For each face of the element:
+ - Extracts the global node numbers of the face
+ - Sorts the nodes to create a unique identifier for the face
+ - Assigns a global face number
+ - Determines the orientation of the face
+4. Sets the `isFaceConnectivityInitiated` flag to `TRUE`
+
+## Implementation Details
+
+### 2D Case
+
+In 2D, faces are represented by edges (2 nodes). The implementation:
+
+- Extracts the 2 nodes of each edge
+- Sorts the nodes to create a canonical representation
+- Determines if the edge is reversed compared to the canonical order
+- Assigns a global face number
+
+### 3D Case
+
+In 3D, faces can be triangles or quadrilaterals. The implementation:
+
+- Determines the face type (triangle or quadrilateral)
+- Uses specialized methods to obtain the canonical (sorted) representation
+- Computes a 3-component orientation vector
+- Assigns a global face number
+
+## Usage
+
+This method is typically called internally when face connectivity information is needed for mesh operations. It can be used like:
+
+```fortran
+TYPE(YourMeshType_) :: mesh
+! Initialize mesh
+CALL mesh%InitiateFaceConnectivity()
+```
+
+## Notes
+
+- This method sets the `isFaceConnectivityInitiated` flag to prevent duplicate initialization
+- For 3D meshes, face orientation is represented by a 3-component vector
+- For 2D meshes, face orientation is a single value (1 or -1)
+- The total number of faces in the mesh (`obj%tFaces`) is updated during processing
+
+Would you like more information about any specific aspect of this method?
diff --git a/docs/docs-api/AbstractMesh/InitiateFacetElements.md b/docs/docs-api/AbstractMesh/InitiateFacetElements.md
index ae5ae0a5..691fd2c2 100644
--- a/docs/docs-api/AbstractMesh/InitiateFacetElements.md
+++ b/docs/docs-api/AbstractMesh/InitiateFacetElements.md
@@ -1,20 +1,7 @@
----
-title: InitiateFacetElements
----
+# InitiateFacetElements
-This routine needs following information:
-
-- `ElementToElements`
-- `BoundaryData`
-
- It makes following data
-
-- `InternalFacetData`
-- `BoundaryFacetData`
-- `FacetElementType`
-
- Note that at this point all `boundaryFacet` element are of type `DOMAIN_BOUNDARY_ELEMENT`. This information can be corrected only when
- we call `SetFacetElementType` from Domain_ class. This is because, at this point we only know that a boundary facet is a domain boundary element, as we have no information about the neighbouring mesh.
+The `InitiateFacetElements` method initializes facet element data for an `AbstractMesh_` object.
+Facet elements are essential for handling boundary conditions, inter-element flux computations, and discontinuous Galerkin methods.
## Interface
@@ -25,3 +12,65 @@ INTERFACE
END SUBROUTINE InitiateFacetElements
END INTERFACE
```
+
+## Description
+
+This method creates and populates the `facetData` array in the mesh object. Facet elements represent the interfaces between mesh elements (cells) and can be either internal facets (shared between two elements) or boundary facets (associated with a single element at the domain boundary).
+
+The implementation:
+
+1. Performs several validation checks:
+ - Ensures the mesh has a valid dimension (not 0)
+ - Checks if facet data is already initialized
+ - Verifies element-to-element connectivity is available
+ - Confirms boundary data is initialized
+
+2. Allocates and initializes the `facetData` array with size equal to the total number of faces in the mesh (`obj%tfaces`)
+
+3. Processes each active element in the mesh to extract facet data information
+
+4. Uses the utility function `GetFacetDataFromElemData` to extract and populate facet data from element data
+
+## Implementation Details
+
+The method requires:
+
+- Element-to-element connectivity (`InitiateElementToElements`)
+- Boundary data information (`InitiateBoundaryData`)
+
+Both of these dependencies are automatically initialized if not already present.
+
+The facet data extraction process:
+
+- Iterates through all elements in the mesh
+- Skips inactive elements
+- Builds a comprehensive facet data structure that contains information about:
+ - The element(s) sharing each facet
+ - The local facet number within each element
+ - Facet type (internal, boundary, domain boundary)
+ - Facet connectivity
+
+## Usage
+
+This method is typically called internally when facet information is needed:
+
+```fortran
+TYPE(YourMeshType_) :: mesh
+! Initialize mesh
+CALL mesh%InitiateFacetElements()
+```
+
+## Error Handling
+
+The method includes error handling for these cases:
+
+- Zero-dimensional meshes (returns without action)
+- No faces found in the mesh (raises an error)
+
+## Notes
+
+- Sets the `isFacetDataInitiated` flag to `TRUE` to prevent duplicate initialization
+- Uses a `masks` array to track which facets have been processed
+- Debug information is included when compiled with `DEBUG_VER` defined
+
+This method is crucial for finite element methods that require integration over element boundaries or flux calculations across interfaces.
diff --git a/docs/docs-api/AbstractMesh/InitiateKdTree.md b/docs/docs-api/AbstractMesh/InitiateKdTree.md
new file mode 100644
index 00000000..e2801d73
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/InitiateKdTree.md
@@ -0,0 +1,61 @@
+# InitiateKdTree
+
+The `InitiateKdtree` method initializes a k-d tree data structure within an `AbstractMesh` object. This tree enables efficient spatial queries for tasks such as nearest neighbor searches, which are essential for many mesh-based operations.
+
+## Purpose
+
+The k-d tree is a space-partitioning data structure that organizes points in a k-dimensional space. It significantly accelerates spatial queries like finding the nearest nodes to a given point in space, which is useful for:
+
+- Interpolation between meshes
+- Finding elements containing a point
+- Local refinement operations
+- Contact detection
+- General spatial proximity searches
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE InitiateKdTree(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+END SUBROUTINE InitiateKdTree
+```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object in which to create the k-d tree
+
+### Algorithm
+
+1. First, it deallocates any existing k-d tree to prevent memory leaks
+2. Gets the spatial dimension (NSD) of the mesh
+3. Allocates memory for node coordinates
+4. Retrieves all node coordinates from the mesh
+5. Creates the k-d tree using the `Kdtree2_Create` function from the `Kdtree2_Module`
+6. Allocates memory for storing search results in `obj%kdresult`
+
+### Notes
+
+- The method sets up the k-d tree with sorting disabled but rearrangement enabled, which is optimal for most spatial search operations
+- The time taken for this operation can be monitored if `obj%showTime` is enabled
+- The routine is protected with DEBUG directives that provide additional information during compilation with debug flags
+- The tree uses only the first `nsd` components of node coordinates (ignoring higher dimensions if the coordinate array has them)
+
+### Performance Considerations
+
+This operation requires:
+- Memory allocation for all node coordinates
+- Building a balanced k-d tree (O(n log n) operation)
+
+For large meshes, this can be an expensive operation, but it only needs to be performed once. Subsequent spatial queries will be much faster than brute-force approaches.
+
+### Usage Example
+
+```fortran
+TYPE(FEMesh_) :: mesh
+! ... Initialize mesh ...
+
+! Create k-d tree for efficient spatial searches
+CALL mesh%InitiateKdtree()
+
+! Now we can perform efficient nearest node searches
+CALL mesh%GetNearestNode(qv=[1.0, 2.0, 3.0], x=nodeCoord, globalNode=nodeNum)
+```
+
diff --git a/docs/docs-api/AbstractMesh/InitiateNodeToElements.md b/docs/docs-api/AbstractMesh/InitiateNodeToElements.md
index 1b7474a1..c0b9baca 100644
--- a/docs/docs-api/AbstractMesh/InitiateNodeToElements.md
+++ b/docs/docs-api/AbstractMesh/InitiateNodeToElements.md
@@ -1,5 +1,80 @@
# InitiateNodeToElements
+The `InitiateNodeToElements` method establishes the node-to-element connectivity mapping in an `AbstractMesh` object. This mapping is essential for numerous mesh operations as it allows quick identification of all elements connected to any given node.
+
+## Purpose
+
+This method builds a data structure that maps each node to all elements that contain it. This mapping is fundamental for:
+
+- Element assembly processes
+- Nodal averaging operations
+- Implementing boundary conditions
+- Calculating nodal normals and areas
+- Supporting mesh manipulation algorithms
+- Enabling efficient neighborhood searches
+
+## Interface
+
+```fortran
+MODULE SUBROUTINE obj_InitiateNodeToElements(obj)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+END SUBROUTINE obj_InitiateNodeToElements
+```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to create the node-to-element mapping
+
+## Algorithm
+
+1. If the mapping is already initialized (`obj%isNodeToElementsInitiated` is true), the method returns immediately
+2. Sets the initialization flag to true
+3. Initializes a counter array `nodewise_size` to track how many elements are connected to each node
+4. For each element in the mesh:
+ - Gets the global element number
+ - For each node in the element:
+ - Gets the global node number
+ - Converts to local node number
+ - Expands the node's element list to include the current element
+5. Finalizes each node's element list by trimming unused space
+
+## Implementation Details
+
+- Uses a chunk-based allocation strategy to efficiently build the lists
+- The `chunk_size` parameter (set to 32) controls how much the lists grow during allocation
+- Performance timing is available when `obj%showTime` is enabled
+- Debug information is provided when compiled with debug flags
+
+## Data Structures Modified
+
+- `obj%nodeData(localNodeNum)%ptr%globalElements` - For each node, stores the list of global element numbers that include this node
+- `obj%isNodeToElementsInitiated` - Flag indicating the node-to-element mapping has been built
+
+## Performance Considerations
+
+- Time complexity is O(n × m) where n is the number of elements and m is the average number of nodes per element
+- Memory requirement scales with the total number of node-element connections
+- For large meshes, this operation can be memory-intensive
+- The chunk-based allocation strategy helps reduce memory reallocation overhead
+
+## Usage Example
+
+```fortran
+TYPE(Mesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build node-to-element connectivity
+CALL mesh%InitiateNodeToElements()
+
+! Now we can easily find all elements connected to a node
+elements = mesh%GetNodeToElements(globalNode=nodeNum)
+```
+
+## Dependencies
+
+This method depends on:
+- `NodeData_ExpandGlobalElements` for growing the element lists
+- `NodeData_GetTotalGlobalElements` for querying list sizes
+- `NodeData_GetPointerToGlobalElements` for accessing the element lists
+
- This subroutine generates elements surrounding a node mapping, in other words it generates node to element.
- Element numbers returned by this routine are global element number.
- This mapping is stored inside `obj%nodeData` array
@@ -15,10 +90,3 @@ Always use the mapping between global node number and local node number to
avoid segmentation fault
:::
-```fortran
-INTERFACE
- MODULE SUBROUTINE InitiateNodeToElements(obj)
- CLASS(Mesh_), INTENT(INOUT) :: obj
- END SUBROUTINE InitiateNodeToElements
-END INTERFACE
-```
diff --git a/docs/docs-api/AbstractMesh/InitiateNodeToNodes.md b/docs/docs-api/AbstractMesh/InitiateNodeToNodes.md
index e01a32db..29b1f596 100644
--- a/docs/docs-api/AbstractMesh/InitiateNodeToNodes.md
+++ b/docs/docs-api/AbstractMesh/InitiateNodeToNodes.md
@@ -1,6 +1,6 @@
# InitiateNodeToNodes
-This routine generate the node to nodes mapping
+The `obj_InitiateNodetoNodes` method builds the node-to-node connectivity mapping in an `AbstractMesh` object. This mapping represents the topological relationship between nodes in the mesh, creating a graph structure where each node knows which other nodes it's connected to through mesh elements.
- In other words, it generates info of node-numbers in mesh surrounding a node number
- This mapping is stored inside `obj%nodeData%globalNodeNum`
@@ -8,11 +8,87 @@ This routine generate the node to nodes mapping
- This list does not include self node.
- The method needs node-to-elements data, therefore if this data is not initiated, then this method calls `InitiateNodeToElements()`.
+## Purpose
+
+This method establishes a critical data structure that identifies all adjacent nodes for each node in the mesh. The node-to-node connectivity map is essential for:
+
+- Implementing finite element and finite volume methods
+- Supporting mesh smoothing algorithms
+- Applying boundary conditions along interfaces
+- Facilitating graph-based operations on the mesh
+- Implementing node-based solvers
+- Supporting domain decomposition
+- Implementing jump-based stabilization techniques
+
+## Interface
+
```fortran
INTERFACE
MODULE SUBROUTINE InitiateNodetoNodes(obj)
- CLASS(Mesh_), INTENT(INOUT) :: obj
- !! mesh data
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
END SUBROUTINE InitiateNodetoNodes
END INTERFACE
```
+
+- `obj` (INTENT(INOUT)) - The `AbstractMesh_` object for which to create the node-to-node connectivity map
+
+## Algorithm
+
+1. If the mapping is already initialized (`obj%isNodeToNodesInitiated` is true), the method returns immediately
+2. If node-to-element mapping isn't initialized, it calls `obj%InitiateNodeToElements()` first
+3. Sets the initialization flag to true
+4. For each node in the mesh:
+ - Initializes a boolean array to track which nodes have been found
+ - Gets all elements that contain this node
+ - For each connected element:
+ - Retrieves all nodes in this element
+ - Adds each node to the current node's list of connections (except self)
+ - Marks nodes as found to avoid duplicates
+ - Finalizes the node's connection list
+
+## Implementation Details
+
+- Uses a chunk-based allocation strategy for efficient list building
+- The `chunk_size` parameter (set to 64) controls memory allocation growth
+- Uses a boolean array `found` to prevent duplicate entries
+- Performance timing is available when `obj%showTime` is enabled
+- Debug information is provided when compiled with debug flags
+
+## Data Structures Modified
+
+- `obj%nodeData(inode)%ptr%globalNodes` - For each node, stores the list of global node numbers connected to this node
+- `obj%isNodeToNodesInitiated` - Flag indicating the node-to-node mapping has been built
+
+## Performance Considerations
+
+- Time complexity is O(n × e × m) where n is the number of nodes, e is the average number of elements per node, and m is the average number of nodes per element
+- Memory usage scales with the total number of node-node connections in the mesh
+- For densely connected meshes, this operation can be memory-intensive
+- The chunk-based allocation strategy helps reduce memory reallocation overhead
+
+## Usage Example
+
+```fortran
+TYPE(Mesh_) :: mesh
+! ... Initialize mesh ...
+
+! Build node-to-node connectivity
+CALL mesh%InitiateNodeToNodes()
+
+! Now we can easily find all nodes connected to a specific node
+connectedNodes = mesh%GetNodeToNodes(globalNode=nodeNum, includeSelf=.FALSE.)
+```
+
+## Dependencies
+
+This method depends on:
+
+- Node-to-element connectivity (must be initialized first)
+- `NodeData_ExpandGlobalNodes` for growing the node lists
+- `NodeData_GetTotalGlobalElements` for querying element list sizes
+- `NodeData_GetPointerToGlobalElements` for accessing element lists
+
+## Notes
+
+- The node-to-node mapping does not include self-connections (a node is not considered connected to itself)
+- The connectivity map represents the topological connectivity through mesh elements, not geometric proximity
diff --git a/docs/docs-api/AbstractMesh/IsAllNodePresent.md b/docs/docs-api/AbstractMesh/IsAllNodePresent.md
index a8311b33..0d5af79e 100644
--- a/docs/docs-api/AbstractMesh/IsAllNodePresent.md
+++ b/docs/docs-api/AbstractMesh/IsAllNodePresent.md
@@ -1,11 +1,64 @@
# IsAllNodePresent
+The `IsAllNodePresent` method checks if all of the specified nodes exist in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isAllNodePresent(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: globalNode( : )
+INTERFACE
+ MODULE FUNCTION isAllNodePresent(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
END FUNCTION isAllNodePresent
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsAllNodePresent(globalNode, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------ | ---------------------- | --------------- | ----------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)(:)` | `IN` | Array of global or local node numbers to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalNode contains local node numbers |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ---------------------------------------------------------- |
+| `LOGICAL(LGT)` | True if all of the specified nodes are present in the mesh |
+
+## Description
+
+`IsAllNodePresent` determines whether all of the specified nodes exist in the mesh. It returns a single logical value that is true only if every specified node is present.
+
+## Implementation Details
+
+The method uses `IsNodePresent` to check each node individually, then applies the `ALL` intrinsic function to determine if all are present.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: nodeArray(3)
+LOGICAL(LGT) :: allPresent
+
+! Initialize mesh
+nodeArray = [101, 202, 303] ! Node numbers to check
+
+! Check if all of these nodes exist
+allPresent = mesh%IsAllNodePresent(nodeArray)
+
+IF (allPresent) THEN
+ PRINT *, "All specified nodes exist in the mesh"
+ELSE
+ PRINT *, "Not all specified nodes exist in the mesh"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/IsAnyNodePresent.md b/docs/docs-api/AbstractMesh/IsAnyNodePresent.md
index 13e4f999..a2d028cc 100644
--- a/docs/docs-api/AbstractMesh/IsAnyNodePresent.md
+++ b/docs/docs-api/AbstractMesh/IsAnyNodePresent.md
@@ -1,11 +1,65 @@
# IsAnyNodePresent
+The `IsAnyNodePresent` method checks if any of the specified nodes exist in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isAnyNodePresent(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: globalNode( : )
+INTERFACE
+ MODULE FUNCTION isAnyNodePresent(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
END FUNCTION isAnyNodePresent
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+result = mesh%IsAnyNodePresent(globalNode, [islocal])
```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)(:)` | `IN` | Array of global or local node numbers to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalNode contains local node numbers |
+
+## Return Value
+
+| Type | Description |
+|------|-------------|
+| `LOGICAL(LGT)` | True if any of the specified nodes are present in the mesh |
+
+## Description
+
+`IsAnyNodePresent` determines whether any of the specified nodes exist in the mesh. It returns a single logical value that is true if at least one of the specified nodes is present.
+
+## Implementation Details
+
+The method uses `IsNodePresent` to check each node individually, then applies the `ANY` intrinsic function to determine if at least one is present.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: nodeArray(3)
+LOGICAL(LGT) :: anyPresent
+
+! Initialize mesh
+nodeArray = [101, 202, 303] ! Node numbers to check
+
+! Check if any of these nodes exist
+anyPresent = mesh%IsAnyNodePresent(nodeArray)
+
+IF (anyPresent) THEN
+ PRINT*, "At least one of the specified nodes exists in the mesh"
+ELSE
+ PRINT*, "None of the specified nodes exist in the mesh"
+END IF
+```
+
diff --git a/docs/docs-api/AbstractMesh/IsBoundaryData.md b/docs/docs-api/AbstractMesh/IsBoundaryData.md
new file mode 100644
index 00000000..df4b0c52
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsBoundaryData.md
@@ -0,0 +1,56 @@
+# IsBoundaryData
+
+The `IsBoundaryData` method checks if the boundary data has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isBoundaryData(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isBoundaryData
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsBoundaryData()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ---------------------------------------------- |
+| `LOGICAL(LGT)` | True if the boundary data has been initialized |
+
+## Description
+
+`IsBoundaryData` returns whether the boundary data has been initialized in the mesh. Boundary data is essential for imposing boundary conditions and handling domain boundaries.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isBoundaryDataInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if boundary data is available
+IF (mesh%IsBoundaryData()) THEN
+ ! Use boundary data directly
+ELSE
+ ! Need to initialize boundary data first
+ CALL mesh%InitiateBoundaryData()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsBoundaryElement.md b/docs/docs-api/AbstractMesh/IsBoundaryElement.md
index eaa1ca27..d80550bc 100644
--- a/docs/docs-api/AbstractMesh/IsBoundaryElement.md
+++ b/docs/docs-api/AbstractMesh/IsBoundaryElement.md
@@ -1,12 +1,67 @@
# IsBoundaryElement
+The `IsBoundaryElement` method checks if a specific element is a boundary element in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isBoundaryElement(obj, globalElement) &
+INTERFACE
+ MODULE FUNCTION isBoundaryElement(obj, globalElement, islocal) &
& RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
END FUNCTION isBoundaryElement
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsBoundaryElement(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------------------------- |
+| `LOGICAL(LGT)` | True if the element is a boundary element |
+
+## Description
+
+`IsBoundaryElement` determines whether a specified element is a boundary element in the mesh. A boundary element is an element that has at least one face (in 3D) or edge (in 2D) on the boundary of the domain, or equivalently, an element that contains at least one boundary node.
+
+## Implementation Details
+
+The method:
+
+1. Converts the global element number to a local element number if necessary
+2. Checks the boundary status from the element data
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+LOGICAL(LGT) :: isBoundary
+
+! Initialize mesh, elemNum...
+
+! Check if an element is on the boundary
+isBoundary = mesh%IsBoundaryElement(elemNum)
+
+IF (isBoundary) THEN
+ PRINT *, "Element", elemNum, "is on the boundary"
+ELSE
+ PRINT *, "Element", elemNum, "is an internal element"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/IsBoundaryNode.md b/docs/docs-api/AbstractMesh/IsBoundaryNode.md
index 3649415a..00067739 100644
--- a/docs/docs-api/AbstractMesh/IsBoundaryNode.md
+++ b/docs/docs-api/AbstractMesh/IsBoundaryNode.md
@@ -1,11 +1,67 @@
# IsBoundaryNode
+The `IsBoundaryNode` method checks if a specific node is a boundary node in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isBoundaryNode(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION isBoundaryNode(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalNode
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
END FUNCTION isBoundaryNode
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsBoundaryNode(globalNode, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------ | ---------------------- | --------------- | ----------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)` | `IN` | Global or local node number to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalNode is treated as a local node number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------------------- |
+| `LOGICAL(LGT)` | True if the node is a boundary node |
+
+## Description
+
+`IsBoundaryNode` determines whether a specified node is a boundary node in the mesh. Boundary nodes are nodes that lie on the boundary of the domain.
+
+## Implementation Details
+
+The method:
+
+1. Converts the global node number to a local node number if necessary
+2. Gets the node type from the node data
+3. Returns true if the node type is not an internal node
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: nodeNum
+LOGICAL(LGT) :: isBoundary
+
+! Initialize mesh, nodeNum...
+
+! Check if a node is on the boundary
+isBoundary = mesh%IsBoundaryNode(nodeNum)
+
+IF (isBoundary) THEN
+ PRINT *, "Node", nodeNum, "is on the boundary"
+ELSE
+ PRINT *, "Node", nodeNum, "is an internal node"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/IsDomainBoundaryElement.md b/docs/docs-api/AbstractMesh/IsDomainBoundaryElement.md
index b283dfc0..fc58632f 100644
--- a/docs/docs-api/AbstractMesh/IsDomainBoundaryElement.md
+++ b/docs/docs-api/AbstractMesh/IsDomainBoundaryElement.md
@@ -1,12 +1,67 @@
# IsDomainBoundaryElement
+The `IsDomainBoundaryElement` method checks if a specific element is a domain boundary element in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isDomainBoundaryElement(obj, globalElement) &
+INTERFACE
+ MODULE FUNCTION obj_isDomainBoundaryElement(obj, globalElement, islocal) &
& RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
- END FUNCTION isDomainBoundaryElement
+ END FUNCTION obj_isDomainBoundaryElement
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsDomainBoundaryElement(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------ |
+| `LOGICAL(LGT)` | True if the element is a domain boundary element |
+
+## Description
+
+`IsDomainBoundaryElement` determines whether a specified element is a domain boundary element in the mesh. A domain boundary element is a boundary element that lies on the boundary of the computational domain, as opposed to an internal boundary between subdomains.
+
+## Implementation Details
+
+The method:
+
+1. Converts the global element number to a local element number if necessary
+2. Checks if the element type is DOMAIN_BOUNDARY_ELEMENT
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+LOGICAL(LGT) :: isDomainBoundary
+
+! Initialize mesh, elemNum...
+
+! Check if an element is on the domain boundary
+isDomainBoundary = mesh%IsDomainBoundaryElement(elemNum)
+
+IF (isDomainBoundary) THEN
+ PRINT *, "Element", elemNum, "is on the domain boundary"
+ELSE
+ PRINT *, "Element", elemNum, "is not on the domain boundary"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/IsDomainFacetElement.md b/docs/docs-api/AbstractMesh/IsDomainFacetElement.md
new file mode 100644
index 00000000..ae82a096
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsDomainFacetElement.md
@@ -0,0 +1,62 @@
+# IsDomainFacetElement
+
+The `IsDomainFacetElement` method checks if a specific facet element is a domain boundary facet element in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isDomainFacetElement(obj, facetElement) &
+ & RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ LOGICAL(LGT) :: ans
+ END FUNCTION isDomainFacetElement
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsDomainFacetElement(facetElement)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| -------------- | ---------------------- | ------ | ----------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `facetElement` | `INTEGER(I4B)` | `IN` | Facet element number to check |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------------------ |
+| `LOGICAL(LGT)` | True if the facet element is a domain boundary facet element |
+
+## Description
+
+`IsDomainFacetElement` determines whether a specified facet element is a domain boundary facet element in the mesh. Domain boundary facet elements are facets (edges in 2D, faces in 3D) that lie on the boundary of the computational domain.
+
+## Implementation Details
+
+The method checks if the facet data for the specified facet element has an element type of DOMAIN_BOUNDARY_ELEMENT.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: facetNum
+LOGICAL(LGT) :: isDomainFacet
+
+! Initialize mesh, facetNum...
+
+! Check if a facet is on the domain boundary
+isDomainFacet = mesh%IsDomainFacetElement(facetNum)
+
+IF (isDomainFacet) THEN
+ PRINT *, "Facet", facetNum, "is on the domain boundary"
+ELSE
+ PRINT *, "Facet", facetNum, "is not on the domain boundary"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsEdgeConnectivity.md b/docs/docs-api/AbstractMesh/IsEdgeConnectivity.md
new file mode 100644
index 00000000..8b9b2730
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsEdgeConnectivity.md
@@ -0,0 +1,56 @@
+# IsEdgeConnectivity
+
+The `IsEdgeConnectivity` method checks if the edge connectivity information has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isEdgeConnectivity(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isEdgeConnectivity
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsEdgeConnectivity()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------------------- |
+| `LOGICAL(LGT)` | True if the edge connectivity has been initialized |
+
+## Description
+
+`IsEdgeConnectivity` returns whether the edge connectivity information has been initialized in the mesh. Edge connectivity is essential for higher-order elements and certain numerical methods.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isEdgeConnectivityInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if edge connectivity is available
+IF (mesh%IsEdgeConnectivity()) THEN
+ ! Use edge connectivity directly
+ELSE
+ ! Need to initialize edge connectivity first
+ CALL mesh%InitiateEdgeConnectivity()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsElementActive.md b/docs/docs-api/AbstractMesh/IsElementActive.md
new file mode 100644
index 00000000..b4264873
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsElementActive.md
@@ -0,0 +1,67 @@
+# IsElementActive
+
+The `IsElementActive` method checks if a specific element is active in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isElementActive(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ LOGICAL(LGT) :: ans
+ END FUNCTION isElementActive
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsElementActive(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ----------------------------------------- |
+| `LOGICAL(LGT)` | True if the element is active in the mesh |
+
+## Description
+
+`IsElementActive` determines whether a specified element is active in the mesh. Elements can be deactivated during adaptive mesh refinement or in multi-mesh simulations.
+
+## Implementation Details
+
+The method:
+
+1. Converts the global element number to a local element number if necessary
+2. Checks the active status from the element data
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+LOGICAL(LGT) :: isActive
+
+! Initialize mesh, elemNum...
+
+! Check if an element is active
+isActive = mesh%IsElementActive(elemNum)
+
+IF (isActive) THEN
+ PRINT *, "Element", elemNum, "is active"
+ELSE
+ PRINT *, "Element", elemNum, "is inactive"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsElementPresent.md b/docs/docs-api/AbstractMesh/IsElementPresent.md
index d742df22..90b4a1ad 100644
--- a/docs/docs-api/AbstractMesh/IsElementPresent.md
+++ b/docs/docs-api/AbstractMesh/IsElementPresent.md
@@ -1,11 +1,67 @@
# IsElementPresent
+The `IsElementPresent` method checks if a specific element number exists in the mesh.
+
## Interface
```fortran
- MODULE PURE FUNCTION isElementPresent(obj, GlobalElement) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- INTEGER(I4B), INTENT(IN) :: GlobalElement
+INTERFACE
+ MODULE FUNCTION isElementPresent(obj, globalElement, islocal) &
+ RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
END FUNCTION isElementPresent
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsElementPresent(globalElement, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------ |
+| `LOGICAL(LGT)` | True if the element is present in the mesh |
+
+## Description
+
+`IsElementPresent` determines whether a specified element number exists in the mesh. It returns a logical value indicating whether the element is present.
+
+## Implementation Details
+
+The method checks:
+
+- If the element is being treated as local, it verifies it's within the valid range of local elements
+- If the element is global, it checks if it's within the valid range of global elements and has a valid local mapping
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum
+LOGICAL(LGT) :: isPresent
+
+! Initialize mesh, elemNum...
+
+! Check if an element exists
+isPresent = mesh%IsElementPresent(elemNum)
+
+IF (isPresent) THEN
+ PRINT *, "Element", elemNum, "exists in the mesh"
+ELSE
+ PRINT *, "Element", elemNum, "does not exist in the mesh"
+END IF
```
diff --git a/docs/docs-api/AbstractMesh/IsElementToElements.md b/docs/docs-api/AbstractMesh/IsElementToElements.md
new file mode 100644
index 00000000..61bdbd86
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsElementToElements.md
@@ -0,0 +1,56 @@
+# IsElementToElements
+
+The `IsElementToElements` method checks if the element-to-elements mapping has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isElementToElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isElementToElements
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsElementToElements()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------------------ |
+| `LOGICAL(LGT)` | True if the element-to-elements mapping has been initialized |
+
+## Description
+
+`IsElementToElements` returns whether the element-to-elements mapping has been initialized in the mesh. This mapping allows for finding all elements adjacent to a given element.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isElementToElementsInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if element-to-elements mapping is available
+IF (mesh%IsElementToElements()) THEN
+ ! Use mapping directly
+ELSE
+ ! Need to initialize mapping first
+ CALL mesh%InitiateElementToElements()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsEmpty.md b/docs/docs-api/AbstractMesh/IsEmpty.md
new file mode 100644
index 00000000..27fccf5d
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsEmpty.md
@@ -0,0 +1,12 @@
+# IsEmpty
+
+This method checks it the mesh is empty or not.
+
+## Interface
+
+```fortran
+FUNCTION IsEmpty(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT) :: ans
+END FUNCTION IsEmpty
+```
diff --git a/docs/docs-api/AbstractMesh/IsExtraNodeToNodes.md b/docs/docs-api/AbstractMesh/IsExtraNodeToNodes.md
new file mode 100644
index 00000000..c2e2cb07
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsExtraNodeToNodes.md
@@ -0,0 +1,56 @@
+# IsExtraNodeToNodes
+
+The `IsExtraNodeToNodes` method checks if the extra node-to-nodes mapping has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isExtraNodeToNodes(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isExtraNodeToNodes
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsExtraNodeToNodes()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------------------------ |
+| `LOGICAL(LGT)` | True if the extra node-to-nodes mapping has been initialized |
+
+## Description
+
+`IsExtraNodeToNodes` returns whether the extra node-to-nodes mapping has been initialized in the mesh. This extended mapping is useful for certain numerical methods like jump-based finite element methods.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isExtraNodeToNodesInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if extra node-to-nodes mapping is available
+IF (mesh%IsExtraNodeToNodes()) THEN
+ ! Use mapping directly
+ELSE
+ ! Need to initialize mapping first
+ CALL mesh%InitiateExtraNodeToNodes()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsFaceConnectivity.md b/docs/docs-api/AbstractMesh/IsFaceConnectivity.md
new file mode 100644
index 00000000..4c2903fc
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsFaceConnectivity.md
@@ -0,0 +1,56 @@
+# IsFaceConnectivity
+
+The `IsFaceConnectivity` method checks if the face connectivity information has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isFaceConnectivity(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isFaceConnectivity
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsFaceConnectivity()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | -------------------------------------------------- |
+| `LOGICAL(LGT)` | True if the face connectivity has been initialized |
+
+## Description
+
+`IsFaceConnectivity` returns whether the face connectivity information has been initialized in the mesh. Face connectivity is essential for 3D meshes and certain numerical methods.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isFaceConnectivityInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if face connectivity is available
+IF (mesh%IsFaceConnectivity()) THEN
+ ! Use face connectivity directly
+ELSE
+ ! Need to initialize face connectivity first
+ CALL mesh%InitiateFaceConnectivity()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsFacetData.md b/docs/docs-api/AbstractMesh/IsFacetData.md
new file mode 100644
index 00000000..4d8320b7
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsFacetData.md
@@ -0,0 +1,56 @@
+# IsFacetData
+
+The `IsFacetData` method checks if the facet data has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isFacetData(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(in) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isFacetData
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsFacetData()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------------- |
+| `LOGICAL(LGT)` | True if the facet data has been initialized |
+
+## Description
+
+`IsFacetData` returns whether the facet data has been initialized in the mesh. Facet data is important for handling interfaces between elements and domain boundaries.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isFacetDataInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if facet data is available
+IF (mesh%IsFacetData()) THEN
+ ! Use facet data directly
+ELSE
+ ! Need to initialize facet data first
+ CALL mesh%InitiateFacetElements()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsInit.md b/docs/docs-api/AbstractMesh/IsInit.md
new file mode 100644
index 00000000..eb1de31a
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsInit.md
@@ -0,0 +1,55 @@
+# IsInit
+
+The `IsInit` method checks if the mesh object has been properly initialized.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isInit(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isInit
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsInit()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------- |
+| `LOGICAL(LGT)` | True if the mesh has been initialized |
+
+## Description
+
+`IsInit` returns the initialization status of the mesh object. It provides a way to check if the mesh has been properly set up before performing operations on it.
+
+## Implementation Details
+
+The method simply returns the value of the internal flag `isInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Try to initialize mesh...
+
+! Check if initialization was successful
+IF (mesh%IsInit()) THEN
+ PRINT *, "Mesh is ready for use"
+ELSE
+ PRINT *, "Mesh initialization failed"
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsNodePresent.md b/docs/docs-api/AbstractMesh/IsNodePresent.md
index 82b515ce..0d3bbdea 100644
--- a/docs/docs-api/AbstractMesh/IsNodePresent.md
+++ b/docs/docs-api/AbstractMesh/IsNodePresent.md
@@ -1,11 +1,87 @@
# IsNodePresent
+The `IsNodePresent` method checks if specific node numbers exist in the mesh. It has two versions: one for checking a single node, and another for checking multiple nodes simultaneously.
+
## Interface
```fortran
- MODULE PURE FUNCTION isNodePresent(obj, globalNode) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION isNodePresent1(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
INTEGER(I4B), INTENT(IN) :: globalNode
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
LOGICAL(LGT) :: ans
- END FUNCTION isNodePresent
+ END FUNCTION isNodePresent1
+END INTERFACE
+
+INTERFACE
+ MODULE FUNCTION isNodePresent2(obj, globalNode, islocal) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalNode(:)
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ LOGICAL(LGT) :: ans(SIZE(globalNode))
+ END FUNCTION isNodePresent2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! For a single node
+isPresent = mesh%IsNodePresent(globalNode, [islocal])
+
+! For multiple nodes
+arePresent = mesh%IsNodePresent(globalNodeArray, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+| `globalNode` | `INTEGER(I4B)` or `INTEGER(I4B)(:)` | `IN` | Global or local node number(s) to check |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalNode is treated as a local node number |
+
+## Return Value
+
+| Version | Type | Description |
+|---------|------|-------------|
+| Single node | `LOGICAL(LGT)` | True if the node is present in the mesh |
+| Multiple nodes | `LOGICAL(LGT)(:)` | Array of logical values indicating presence of each node |
+
+## Description
+
+`IsNodePresent` determines whether specified node numbers exist in the mesh. The method can handle either a single node number or an array of node numbers. For a single node, it returns a scalar logical value; for multiple nodes, it returns an array of logical values.
+
+## Implementation Details
+
+For a single node, the method checks:
+- If the node is being treated as local, it verifies it's within the valid range of local nodes
+- If the node is global, it checks if it's within the valid range of global nodes and has a valid local mapping
+
+For multiple nodes, it simply calls the single-node version for each element of the array.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: nodeNum
+INTEGER(I4B), ALLOCATABLE :: nodeArray(:)
+LOGICAL(LGT) :: isPresent
+LOGICAL(LGT), ALLOCATABLE :: arePresent(:)
+
+! Initialize mesh, nodeNum, nodeArray...
+
+! Check if a single node exists
+isPresent = mesh%IsNodePresent(nodeNum)
+IF (isPresent) THEN
+ PRINT*, "Node", nodeNum, "exists in the mesh"
+ELSE
+ PRINT*, "Node", nodeNum, "does not exist in the mesh"
+END IF
+
+! Check if multiple nodes exist
+arePresent = mesh%IsNodePresent(nodeArray)
+! Process results...
```
+
diff --git a/docs/docs-api/AbstractMesh/IsNodeToElements.md b/docs/docs-api/AbstractMesh/IsNodeToElements.md
new file mode 100644
index 00000000..280f8d6b
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsNodeToElements.md
@@ -0,0 +1,56 @@
+# IsNodeToElements
+
+The `IsNodeToElements` method checks if the node-to-elements mapping has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION isNodeToElements(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION isNodeToElements
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+RESULT = mesh%IsNodeToElements()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | --------------------------------------------------------- |
+| `LOGICAL(LGT)` | True if the node-to-elements mapping has been initialized |
+
+## Description
+
+`IsNodeToElements` returns whether the node-to-elements mapping has been initialized in the mesh. This mapping allows for finding all elements connected to a given node.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isNodeToElementsInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if node-to-elements mapping is available
+IF (mesh%IsNodeToElements()) THEN
+ ! Use mapping directly
+ELSE
+ ! Need to initialize mapping first
+ CALL mesh%InitiateNodeToElements()
+END IF
+```
diff --git a/docs/docs-api/AbstractMesh/IsNodeToNodes.md b/docs/docs-api/AbstractMesh/IsNodeToNodes.md
new file mode 100644
index 00000000..de288ebc
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/IsNodeToNodes.md
@@ -0,0 +1,57 @@
+# IsNodeToNodes
+
+The `IsNodeToNodes` method checks if the node-to-nodes mapping has been initialized in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE FUNCTION obj_isNodeToNodes(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
+ LOGICAL(LGT) :: ans
+ END FUNCTION obj_isNodeToNodes
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+result = mesh%IsNodeToNodes()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+|------|-------------|
+| `LOGICAL(LGT)` | True if the node-to-nodes mapping has been initialized |
+
+## Description
+
+`IsNodeToNodes` returns whether the node-to-nodes mapping has been initialized in the mesh. This mapping allows for finding all nodes connected to a given node.
+
+## Implementation Details
+
+The method returns the value of the internal flag `isNodeToNodesInitiated`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+
+! Initialize mesh...
+
+! Check if node-to-nodes mapping is available
+IF (mesh%IsNodeToNodes()) THEN
+ ! Use mapping directly
+ELSE
+ ! Need to initialize mapping first
+ CALL mesh%InitiateNodeToNodes()
+END IF
+```
+
diff --git a/docs/docs-api/AbstractMesh/SetBoundingBox.md b/docs/docs-api/AbstractMesh/SetBoundingBox.md
new file mode 100644
index 00000000..ca8befa5
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetBoundingBox.md
@@ -0,0 +1,68 @@
+# SetBoundingBox
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE SetBoundingBox1(obj, box)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ TYPE(BoundingBox_), INTENT(IN) :: box
+ END SUBROUTINE SetBoundingBox1
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE SetBoundingBox2(obj, nodes, local_nptrs)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ REAL(DFP), INTENT(IN) :: nodes(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: local_nptrs(:)
+ END SUBROUTINE SetBoundingBox2
+END INTERFACE
+```
+
+## Overview
+
+The `SetBoundingBox` method sets the bounding box information in a mesh object, defining the spatial extent of the mesh. It has two versions: one accepting a `BoundingBox_` object, and another calculating the bounding box from node coordinates.
+
+## Syntax
+
+```fortran
+! Version 1: From BoundingBox_ object
+CALL obj%SetBoundingBox(box)
+
+! Version 2: From node coordinates
+CALL obj%SetBoundingBox(nodes, local_nptrs)
+```
+
+## Parameters
+
+### Version 1
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `box` | `TYPE(BoundingBox_)` | `IN` | The bounding box to set for the mesh |
+
+### Version 2
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `nodes` | `REAL(DFP)(:,:)` | `IN` | Node coordinates in XiJ format |
+| `local_nptrs` | `INTEGER(I4B)(:)` | `IN` (optional) | Local to global node number mapping |
+
+## Description
+
+`SetBoundingBox` updates the bounding box information in the mesh object. This information is used for various mesh operations, including domain decomposition, visualization, and spatial queries.
+
+Version 1 directly sets the bounding box from a `BoundingBox_` object, while Version 2 calculates the bounding box from node coordinates, optionally using a node mapping.
+
+## Implementation Notes
+
+:::note Version 1
+Version 1 extracts the min/max coordinates from the provided bounding box using operators like `.Xmin.`, `.Ymin.`, etc.
+:::
+
+:::note Version 2
+Version 2 calls `GetBoundingBox` to calculate the bounding box from node coordinates, then calls Version 1 to set it.
+:::
+
diff --git a/docs/docs-api/AbstractMesh/SetFacetElementType.md b/docs/docs-api/AbstractMesh/SetFacetElementType.md
new file mode 100644
index 00000000..364bffad
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetFacetElementType.md
@@ -0,0 +1,76 @@
+# SetFacetElementType
+
+The `SetFacetElementType` method sets the element type for a specific facet of a cell in the mesh. This is important for defining boundary conditions and inter-element connectivity.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE SetFacetElementType(obj, globalElement, &
+ iface, facetElementType, islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ INTEGER(I4B), INTENT(IN) :: iface
+ INTEGER(I4B), INTENT(IN) :: facetElementType
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE SetFacetElementType
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL mesh%SetFacetElementType(globalElement, iface, facetElementType, [islocal])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| ------------------ | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `iface` | `INTEGER(I4B)` | `IN` | Local facet number within the element |
+| `facetElementType` | `INTEGER(I4B)` | `IN` | Type of facet element to set |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+## Description
+
+`SetFacetElementType` assigns a specific element type to a facet of a mesh element. Facets are the boundaries of elements (faces in 3D, edges in 2D), and their types determine how they interact with other elements or boundaries.
+
+The facet element type is used to specify if a facet is:
+
+- An internal facet (shared between two elements)
+- A boundary facet (on the domain boundary)
+- A domain boundary facet (on the boundary between different domains)
+- Another special type
+
+## Implementation Details
+
+The method:
+
+1. Converts the global element number to a local element number if necessary
+2. Sets the facet element type in the mesh's facetElementType array
+3. Updates the element type in the element data structure
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: elemNum, faceNum, boundaryType
+! Initialize mesh, elemNum, faceNum, boundaryType
+
+! Set a boundary facet
+CALL mesh%SetFacetElementType(elemNum, faceNum, boundaryType)
+```
+
+## Notes
+
+- The facet element type is important for finite element analysis, especially for imposing boundary conditions and handling element interfaces
+- Common facet element types include INTERNAL_ELEMENT, BOUNDARY_ELEMENT, and DOMAIN_BOUNDARY_ELEMENT
+- This method is typically called after mesh generation and before analysis to properly set up boundary conditions
+
+## See Also
+
+- `GetFacetElementType`: Retrieves the element type of a facet
+- `InitiateFacetElements`: Initializes the facet element data in the mesh
+- `IsBoundaryElement`: Checks if an element is on the boundary
diff --git a/docs/docs-api/AbstractMesh/SetFacetParam.md b/docs/docs-api/AbstractMesh/SetFacetParam.md
new file mode 100644
index 00000000..6b58a095
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetFacetParam.md
@@ -0,0 +1,37 @@
+# SetFacetParam
+
+The `SetFacetParam` method sets parameters for a facet element in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE SetFacetParam(obj, facetElement, elementType)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: facetElement
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: elementType
+ END SUBROUTINE SetFacetParam
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL obj%SetFacetParam(facetElement, [elementType])
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| -------------- | ---------------------- | --------------- | -------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `facetElement` | `INTEGER(I4B)` | `IN` | Facet element number |
+| `elementType` | `INTEGER(I4B)` | `IN` (optional) | Element type for the facet |
+
+## Description
+
+`SetFacetParam` sets parameters for a specific facet element in the mesh. Currently, it allows setting the element type of the facet.
+
+## Implementation Notes
+
+This method calls `FacetData_SetParam` to update the facet element's parameters.
diff --git a/docs/docs-api/AbstractMesh/SetMaterial.md b/docs/docs-api/AbstractMesh/SetMaterial.md
new file mode 100644
index 00000000..4eedad9e
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetMaterial.md
@@ -0,0 +1,95 @@
+# SetMaterial
+
+The `SetMaterial` method assigns material properties to elements in the mesh. It has three versions for different use cases.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_SetMaterial1(obj, entityNum, medium, material)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: entityNum
+ !! entity number
+ INTEGER(I4B), INTENT(IN) :: medium
+ !! medium number (like soil, water)
+ INTEGER(I4B), INTENT(IN) :: material
+ !! type of medium like clay, sand, water1, water2
+ END SUBROUTINE obj_SetMaterial1
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE obj_SetMaterial2(obj, medium, material)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: medium
+ INTEGER(I4B), INTENT(IN) :: material
+ END SUBROUTINE obj_SetMaterial2
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE obj_SetMaterial3(obj, medium, material, globalElement, &
+ islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: medium
+ !! medium number (like soil, water)
+ INTEGER(I4B), INTENT(IN) :: material
+ !! type of medium like clay, sand, water1, water2
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ !! global element
+ LOGICAL(LGT), INTENT(IN) :: islocal
+ !! is global element local
+ !! we cannot keep it optional for unique interface
+ END SUBROUTINE obj_SetMaterial3
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Version 1: Set material for elements in a specific entity
+CALL obj%SetMaterial(entityNum, medium, material)
+
+! Version 2: Set material for all active elements
+CALL obj%SetMaterial(medium, material)
+
+! Version 3: Set material for a specific element
+CALL obj%SetMaterial(medium, material, globalElement, islocal)
+```
+
+## Parameters
+
+### Version 1
+
+| Parameter | Type | Intent | Description |
+| ----------- | ---------------------- | ------- | ------------------------------------------ |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `entityNum` | `INTEGER(I4B)` | `IN` | Entity number to match with element meshID |
+| `medium` | `INTEGER(I4B)` | `IN` | Medium number (e.g., soil, water) |
+| `material` | `INTEGER(I4B)` | `IN` | Material type (e.g., clay, sand) |
+
+### Version 2
+
+| Parameter | Type | Intent | Description |
+| ---------- | ---------------------- | ------- | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `medium` | `INTEGER(I4B)` | `IN` | Medium number |
+| `material` | `INTEGER(I4B)` | `IN` | Material type |
+
+### Version 3
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | ------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `medium` | `INTEGER(I4B)` | `IN` | Medium number |
+| `material` | `INTEGER(I4B)` | `IN` | Material type |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` | If true, globalElement is treated as a local element number |
+
+## Description
+
+`SetMaterial` assigns material properties to elements in the mesh:
+
+- Version 1 sets material for all elements belonging to a specific entity
+- Version 2 sets material for all active elements in the mesh
+- Version 3 sets material for a specific element
+
+The material property is stored in the element data structure and can be later retrieved for physical calculations.
diff --git a/docs/docs-api/AbstractMesh/SetParam.md b/docs/docs-api/AbstractMesh/SetParam.md
new file mode 100644
index 00000000..71fec084
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetParam.md
@@ -0,0 +1,75 @@
+# SetParam
+
+The `SetParam` method sets various parameters and flags in the mesh object.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_SetParam(obj, isInitiated, isNodeToElementsInitiated, &
+ isNodeToNodesInitiated, &
+ isExtraNodeToNodesInitiated, isElementToElementsInitiated, &
+ isBoundaryDataInitiated, isFacetDataInitiated, uid, &
+ xidim, elemType, nsd, maxNptrs, minNptrs, &
+ maxElemNum, minElemNum, tNodes, tElements, &
+ minX, minY, minZ, maxX, maxY, maxZ, &
+ x, y, z, tElements_topology_wise, tElemTopologies, elemTopologies)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: isInitiated, &
+ & isNodeToElementsInitiated, isNodeToNodesInitiated, &
+ & isExtraNodeToNodesInitiated, isElementToElementsInitiated, &
+ & isBoundaryDataInitiated, isFacetDataInitiated
+
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: uid, &
+ & xidim, elemType, nsd, maxNptrs, minNptrs, &
+ & maxElemNum, minElemNum, tNodes, &
+ & tElements, tElements_topology_wise(8), tElemTopologies, &
+ & elemTopologies(8)
+
+ REAL(DFP), OPTIONAL, INTENT(IN) :: minX, &
+ & minY, minZ, maxX, maxY, maxZ, &
+ & x, y, z
+ END SUBROUTINE obj_SetParam
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL obj%SetParam([isInitiated], [isNodeToElementsInitiated], [...])
+```
+
+## Parameters
+
+All parameters are optional:
+
+| Parameter | Type | Intent | Description |
+| ------------------------------ | ---------------------- | ------- | ------------------------------------ |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `isInitiated` | `LOGICAL(LGT)` | `IN` | Flag indicating if mesh is initiated |
+| `isNodeToElementsInitiated` | `LOGICAL(LGT)` | `IN` | Flag for node-to-elements mapping |
+| `isNodeToNodesInitiated` | `LOGICAL(LGT)` | `IN` | Flag for node-to-nodes mapping |
+| `isExtraNodeToNodesInitiated` | `LOGICAL(LGT)` | `IN` | Flag for extra node-to-nodes mapping |
+| `isElementToElementsInitiated` | `LOGICAL(LGT)` | `IN` | Flag for element-to-elements mapping |
+| `isBoundaryDataInitiated` | `LOGICAL(LGT)` | `IN` | Flag for boundary data |
+| `isFacetDataInitiated` | `LOGICAL(LGT)` | `IN` | Flag for facet data |
+| `uid` | `INTEGER(I4B)` | `IN` | Unique ID of the mesh |
+| `xidim` | `INTEGER(I4B)` | `IN` | Intrinsic dimension of elements |
+| `elemType` | `INTEGER(I4B)` | `IN` | Element type |
+| `nsd` | `INTEGER(I4B)` | `IN` | Number of spatial dimensions |
+| `maxNptrs` | `INTEGER(I4B)` | `IN` | Maximum node number |
+| `minNptrs` | `INTEGER(I4B)` | `IN` | Minimum node number |
+| `maxElemNum` | `INTEGER(I4B)` | `IN` | Maximum element number |
+| `minElemNum` | `INTEGER(I4B)` | `IN` | Minimum element number |
+| `tNodes` | `INTEGER(I4B)` | `IN` | Total number of nodes |
+| `tElements` | `INTEGER(I4B)` | `IN` | Total number of elements |
+| `tElements_topology_wise` | `INTEGER(I4B)(8)` | `IN` | Elements count by topology |
+| `tElemTopologies` | `INTEGER(I4B)` | `IN` | Total element topologies |
+| `elemTopologies` | `INTEGER(I4B)(8)` | `IN` | Element topology types |
+| `minX, minY, minZ` | `REAL(DFP)` | `IN` | Minimum coordinates |
+| `maxX, maxY, maxZ` | `REAL(DFP)` | `IN` | Maximum coordinates |
+| `x, y, z` | `REAL(DFP)` | `IN` | Centroid coordinates |
+
+## Description
+
+`SetParam` allows setting various mesh parameters and flags. All parameters are optional, so only the needed parameters need to be specified. This method is useful for directly modifying mesh properties.
diff --git a/docs/docs-api/AbstractMesh/SetQuality.md b/docs/docs-api/AbstractMesh/SetQuality.md
new file mode 100644
index 00000000..f30e371e
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetQuality.md
@@ -0,0 +1,44 @@
+# SetQuality
+
+The `SetQuality` method calculates and sets quality measures for mesh elements. Currently, this method is under development.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE obj_SetQuality(obj, measures, max_measures, &
+ min_measures, nodeCoord, local_nptrs)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: measures(:)
+ REAL(DFP), INTENT(OUT) :: max_measures(:)
+ REAL(DFP), INTENT(OUT) :: min_measures(:)
+ REAL(DFP), INTENT(IN) :: nodeCoord(:, :)
+ INTEGER(I4B), INTENT(IN) :: local_nptrs(:)
+ END SUBROUTINE obj_SetQuality
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+CALL obj%SetQuality(measures, max_measures, min_measures, nodeCoord, local_nptrs)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| -------------- | ---------------------- | ------- | --------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `measures` | `INTEGER(I4B)(:)` | `IN` | Array of quality measure identifiers |
+| `max_measures` | `REAL(DFP)(:)` | `OUT` | Maximum values for each quality measure |
+| `min_measures` | `REAL(DFP)(:)` | `OUT` | Minimum values for each quality measure |
+| `nodeCoord` | `REAL(DFP)(:,:)` | `IN` | Node coordinates |
+| `local_nptrs` | `INTEGER(I4B)(:)` | `IN` | Local to global node number mapping |
+
+## Description
+
+`SetQuality` is intended to calculate various quality measures for mesh elements, such as aspect ratio, skewness, etc. Currently, the method raises an error indicating it is under development.
+
+## Implementation Notes
+
+The current implementation only raises an error message indicating the method is under development.
diff --git a/docs/docs-api/AbstractMesh/SetShowTime.md b/docs/docs-api/AbstractMesh/SetShowTime.md
new file mode 100644
index 00000000..5c7996a6
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetShowTime.md
@@ -0,0 +1,56 @@
+# SetShowTime
+
+By using this method you can measure the time required in each subroutine of AbstractMesh.
+
+The `obj_SetShowTime` procedure is a method of the `AbstractMesh_` class that allows users to set the `showTime` option for a mesh object. When enabled, this option causes the mesh to display timing information for various mesh operations, which can be useful for performance analysis.
+
+## Syntax
+
+```fortran
+CALL obj%SetShowTime(VALUE)
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+|-----------|------|--------|-------------|
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object whose `showTime` option is being set |
+| `VALUE` | `LOGICAL(LGT)` | `IN` | Boolean value to set for the `showTime` option |
+
+## Description
+
+The `SetShowTime` method simply sets the internal `showTime` logical flag in the mesh object to the value provided in the `VALUE` parameter. When this flag is set to `.TRUE.`, the mesh will display timing information for various operations to help with performance analysis and debugging.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+! Initialize mesh here...
+
+! Turn on timing display for mesh operations
+CALL mesh%SetShowTime(.TRUE.)
+
+! Some mesh operations...
+CALL mesh%InitiateNodeToElements()
+CALL mesh%InitiateNodeToNodes()
+
+! Turn off timing display when no longer needed
+CALL mesh%SetShowTime(.FALSE.)
+```
+
+## Implementation Details
+
+The implementation is very straightforward - it simply assigns the input value to the internal `showTime` attribute of the mesh object:
+
+```fortran
+MODULE PROCEDURE obj_SetShowTime
+obj%showTime = VALUE
+END PROCEDURE obj_SetShowTime
+```
+
+## Notes
+
+- When the `showTime` option is enabled, various mesh operations will display the time taken for their execution.
+- This can be helpful for identifying performance bottlenecks in mesh processing operations.
+- The timing information is typically displayed on the standard output.
+- For production code, it's recommended to set this option to `.FALSE.` to avoid unnecessary output.
diff --git a/docs/docs-api/AbstractMesh/SetSparsity.md b/docs/docs-api/AbstractMesh/SetSparsity.md
index 5ee98896..70b626e1 100644
--- a/docs/docs-api/AbstractMesh/SetSparsity.md
+++ b/docs/docs-api/AbstractMesh/SetSparsity.md
@@ -1,15 +1,13 @@
# SetSparsity
-This method sets the sparsity in the `CSRMatrix`.
-
-
+The `SetSparsity` method sets the sparsity pattern of a CSR matrix based on mesh connectivity. It has four versions for different use cases.
## Interface 1
```fortran
INTERFACE
MODULE SUBROUTINE obj_SetSparsity1(obj, mat, localNodeNumber, lbound, &
- & ubound)
+ ubound)
CLASS(AbstractMesh_), INTENT(INOUT) :: obj
!! [[Mesh_]] class
TYPE(CSRMatrix_), INTENT(INOUT) :: mat
@@ -51,7 +49,7 @@ END INTERFACE
```fortran
INTERFACE
MODULE SUBROUTINE obj_SetSparsity3(obj, colMesh, nodeToNode, mat, &
- & ivar, jvar)
+ ivar, jvar)
CLASS(AbstractMesh_), INTENT(INOUT) :: obj
!! Abstract mesh class
CLASS(AbstractMesh_), INTENT(INOUT) :: colMesh
@@ -71,8 +69,8 @@ END INTERFACE
```fortran
INTERFACE
MODULE SUBROUTINE obj_SetSparsity4(obj, colMesh, nodeToNode, mat, &
- rowGlobalToLocalNodeNum, rowLBOUND, rowUBOUND, &
- colGlobalToLocalNodeNum, colLBOUND, colUBOUND, ivar, jvar)
+ rowGlobalToLocalNodeNum, rowLBOUND, rowUBOUND, &
+ colGlobalToLocalNodeNum, colLBOUND, colUBOUND, ivar, jvar)
CLASS(AbstractMesh_), INTENT(INOUT) :: obj
!! [[Mesh_]] class
CLASS(AbstractMesh_), INTENT(INOUT) :: colMesh
@@ -95,3 +93,44 @@ INTERFACE
END SUBROUTINE obj_SetSparsity4
END INTERFACE
```
+
+## Syntax
+
+```fortran
+! Version 1: Using global-to-local node number mapping
+CALL obj%SetSparsity(mat, localNodeNumber, lbound, ubound)
+
+! Version 2: Using mesh connectivity directly
+CALL obj%SetSparsity(mat)
+
+! Version 3: For coupled meshes with physical variables
+CALL obj%SetSparsity(colMesh, nodeToNode, mat, ivar, jvar)
+
+! Version 4: With custom node mappings for coupled meshes
+CALL obj%SetSparsity(colMesh, nodeToNode, mat, rowGlobalToLocalNodeNum, rowLBOUND, rowUBOUND, colGlobalToLocalNodeNum, colLBOUND, colUBOUND, ivar, jvar)
+```
+
+## Parameters
+
+Parameters vary by version but generally include:
+
+- `obj`: The mesh object
+- `mat`: The CSR matrix to set sparsity for
+- `localNodeNumber`: Mapping from global to local node numbers
+- Various bounds and indices for node mappings
+- For coupled meshes: `colMesh`, `nodeToNode`, physical variable indices
+
+## Description
+
+`SetSparsity` establishes the sparsity pattern of a CSR matrix based on mesh connectivity. This is crucial for finite element computations, as it determines which matrix entries can be non-zero.
+
+The different versions accommodate various use cases:
+
+- Version 1: Uses a provided global-to-local node number mapping
+- Version 2: Uses mesh connectivity directly
+- Version 3: For coupled meshes with physical variables
+- Version 4: For complex scenarios with custom node mappings
+
+## Implementation Notes
+
+All versions ensure that node-to-node connectivity is available, calling `InitiateNodeToNodes` if needed. They then iterate through nodes, determine connected nodes, and set the sparsity pattern accordingly.
diff --git a/docs/docs-api/AbstractMesh/SetTotalMaterial.md b/docs/docs-api/AbstractMesh/SetTotalMaterial.md
new file mode 100644
index 00000000..cb724ec3
--- /dev/null
+++ b/docs/docs-api/AbstractMesh/SetTotalMaterial.md
@@ -0,0 +1,55 @@
+# SetTotalMaterial
+
+The `SetTotalMaterial` method sets the total number of materials for elements in the mesh. It has two versions: one for a specific element, and another for all elements in the mesh.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE SetTotalMaterial1(obj, n, globalElement, islocal)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: n
+ INTEGER(I4B), INTENT(IN) :: globalElement
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: islocal
+ END SUBROUTINE SetTotalMaterial1
+END INTERFACE
+
+INTERFACE
+ MODULE SUBROUTINE SetTotalMaterial2(obj, n)
+ CLASS(AbstractMesh_), INTENT(INOUT) :: obj
+ INTEGER(I4B), INTENT(IN) :: n
+ END SUBROUTINE SetTotalMaterial2
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+! Version 1: For a specific element
+CALL obj%SetTotalMaterial(n, globalElement, islocal)
+
+! Version 2: For all elements in the mesh
+CALL obj%SetTotalMaterial(n)
+```
+
+## Parameters
+
+### Version 1
+
+| Parameter | Type | Intent | Description |
+| --------------- | ---------------------- | --------------- | ----------------------------------------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `n` | `INTEGER(I4B)` | `IN` | The total number of materials |
+| `globalElement` | `INTEGER(I4B)` | `IN` | Global or local element number |
+| `islocal` | `LOGICAL(LGT)` | `IN` (optional) | If true, globalElement is treated as a local element number |
+
+### Version 2
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------- | ----------------------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `INOUT` | The mesh object |
+| `n` | `INTEGER(I4B)` | `IN` | The total number of materials |
+
+## Description
+
+`SetTotalMaterial` allocates memory for material properties in mesh elements. Version 1 sets the total number of materials for a specific element, while Version 2 sets the same value for all active elements in the mesh.
diff --git a/docs/docs-api/AbstractMesh/Size.md b/docs/docs-api/AbstractMesh/Size.md
index 23e512e6..fc4336ec 100644
--- a/docs/docs-api/AbstractMesh/Size.md
+++ b/docs/docs-api/AbstractMesh/Size.md
@@ -1,11 +1,51 @@
# Size
+The `Size` method returns the total number of elements in the mesh. This is equivalent to `GetTotalElements()` and is provided as an alternative naming for the same functionality.
+
## Interface
```fortran
- MODULE PURE FUNCTION size(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
+INTERFACE
+ MODULE FUNCTION SIZE(obj) RESULT(ans)
+ CLASS(AbstractMesh_), INTENT(IN) :: obj
!! mesh object
INTEGER(I4B) :: ans
- END FUNCTION size
+ END FUNCTION Size
+END INTERFACE
+```
+
+## Syntax
+
+```fortran
+numElements = mesh%SIZE()
+```
+
+## Parameters
+
+| Parameter | Type | Intent | Description |
+| --------- | ---------------------- | ------ | --------------- |
+| `obj` | `CLASS(AbstractMesh_)` | `IN` | The mesh object |
+
+## Return Value
+
+| Type | Description |
+| -------------- | ------------------------------------ |
+| `INTEGER(I4B)` | Total number of elements in the mesh |
+
+## Description
+
+`Size` returns the total number of elements in the mesh. This method provides a convenient way to determine the mesh size for array allocation and iteration purposes. It is functionally equivalent to `GetTotalElements()`.
+
+## Example Usage
+
+```fortran
+TYPE(Mesh_) :: mesh
+INTEGER(I4B) :: numElements
+
+! Initialize mesh...
+
+! Get the total number of elements
+numElements = mesh%SIZE()
+
+PRINT *, "The mesh contains", numElements, "elements"
```
diff --git a/docs/docs-api/AbstractMesh/index.md b/docs/docs-api/AbstractMesh/index.md
index 95fc6c9c..7b0a3135 100644
--- a/docs/docs-api/AbstractMesh/index.md
+++ b/docs/docs-api/AbstractMesh/index.md
@@ -14,11 +14,190 @@ status: stable
# AbstractMesh
-`AbstractMesh_` datatype handles the finite element mesh.
+`AbstractMesh_` datatype handles the finite element mesh. [The structure of this data type is given here](./AbstractMesh_.md).
-import EXAMPLE26 from "./AbstractMesh_.md";
+## Summary of methods
-
+### Constructor Methods
+
+| Method Name | Purpose |
+| ----------------------------------------------------------------- | ------------------------------------------------ |
+| [Initiate](./Initiate.md) | Read the mesh by reading a hdf5 file. |
+| [DEALLOCATE](./Deallocate.md) | Deallocate memory occupied by the mesh instance. |
+| [isEmpty](./IsEmpty.md) | Returns true if the mesh is empty. |
+| [DeallocateKdTree](./DeallocateKdTree.md) | Deallocate the kdtree. |
+| [InitiateDynamicDataStructure](./InitiateDynamicDataStructure.md) | Initiate Kdtree related data |
+
+### IOMethods
+
+| Method Name | Purpose |
+| --------------------------------------------------------- | --------------------------------- |
+| [Import](./Import.md) | Read mesh from hdf5 file. |
+| [Export](./Export.md) | Export mesh to an hdf5 file. |
+| [ExportToVTK](./ExportToVTK.md) | Export mesh to a VTKfile. |
+| [Display](./Display.md) | Display the mesh. |
+| [DisplayNodeData](./DisplayNodeData.md) | Display node data. |
+| [DisplayElementData](./DisplayElementData.md) | Display element data. |
+| [DisplayFacetData](./DisplayFacetData.md) | Display facet data. |
+| [DisplayInternalFacetData](./DisplayInternalFacetData.md) | Display internal facet data. |
+| [DisplayBoundaryFacetData](./DisplayBoundaryFacetData.md) | Display boundary facet data. |
+| [DisplayFacetElements](./DisplayFacetElements.md) | Display facet element shape data. |
+| [DisplayMeshInfo](./DisplayMeshInfo.md) | Display mesh information. |
+
+### Constructor methods for connectivity
+
+| Method Name | Purpose |
+| ----------------------------------------------------------- | -------------------------------------------------------- |
+| [InitiateKdTree](./InitiateKdTree.md) | Initiate Kdtree. |
+| [InitiateNodeToElements](./InitiateNodeToElements.md) | Initiate node to element data (mapping). |
+| [InitiateNodeToNodes](./InitiateNodeToNodes.md) | Initiate Node to nodes data. |
+| [InitiateExtraNodeToNodes](./InitiateExtraNodeToNodes.md) | Initiate Node to nodes mapping (used in jump based FEM). |
+| [InitiateElementToElements](./InitiateElementToElements.md) | Initiate element to elements mapping. |
+| [InitiateBoundaryData](./InitiateBoundaryData.md) | Initiate the boundary data. |
+| [InitiateEdgeConnectivity](./InitiateEdgeConnectivity.md) | Initiate Edge connectivity data. |
+| [InitiateFaceConnectivity](./InitiateFaceConnectivity.md) | Initiate Face connectivity data. |
+| [InitiateFacetElements](./InitiateFacetElements.md) | Initiate boundary data. |
+
+### Element information methods
+
+| Method Name | Purpose |
+| ----------------------------------------------- | -------------------------------------------------------------------- |
+| [GetElemType](./GetElemType.md) | Get the element name |
+| [GetElemData](./GetElemData.md) | Get the element data |
+| [GetElemDataPointer](./GetElemDataPointer.md) | Get pointer to an element data |
+| [GetNNE](./GetNNE.md) | Get number of nodes in an element |
+| [GetMaxNNE](./GetMaxNNE.md) | Get maximum number of nodes in an element |
+| [Size](./Size.md) | Returns the size of the mesh (total number of elements) |
+| [GetElemNum](./GetElemNum.md) | Generic method to get list of local or global element number in mesh |
+| [GetOrientation](./GetOrientation.md) | Get the orientation of the element |
+| [GetTotalCells](./GetTotalCells.md) | Returns the total number of cells in the mesh (obj%tElements) |
+| [GetTotalElements](./GetTotalElements.md) | Generic method for getting the total number of elements |
+| [GetGlobalElemNumber](./GetGlobalElemNumber.md) | Returns the global element number for a local element number |
+| [GetLocalElemNumber](./GetLocalElemNumber.md) | Returns the local element number of a global element number |
+| [GetOrder](./GetOrder.md) | Returns the order of the element of mesh |
+| [GetMinElemNumber](./GetMinElemNumber.md) | Get minimum element number |
+| [GetMaxElemNumber](./GetMaxElemNumber.md) | Get maximum element number |
+
+### Topology Methods
+
+| Method Name | Purpose |
+| ----------------------------------------------------------------- | ---------------------------------------------------------------- |
+| [GetElemTopology](./GetElemTopology.md) | Generic method to get the element topology name |
+| [GetElemTopologyIndx](./GetElemTopologyIndx.md) | Get the index of element topology |
+| [GetTotalElementsTopologyWise](./GetTotalElementsTopologyWise.md) | Get total elements topology wise |
+| [GetTotalTopology](./GetTotalTopology.md) | Get total topology |
+| [GetTotalEntities](./GetTotalEntities.md) | Generic method for getting total entities in mesh and an element |
+| [GetBoundingEntity](./GetBoundingEntity.md) | Returns the nodal coordinates |
+
+### Node Information Methods
+
+| Method Name | Purpose |
+| --------------------------------------------------- | ----------------------------------------------------------------------------- |
+| [GetNptrs](./GetNptrs.md) | Get node number of mesh |
+| [GetNptrs_](./GetNptrs_.md) | Get node number of mesh |
+| [GetNptrsInBox](./GetNptrsInBox.md) | Get node number in a box |
+| [GetNptrsInBox_](./GetNptrsInBox_.md) | Get node number in a box without allocation |
+| [GetInternalNptrs](./GetInternalNptrs.md) | Returns a vector of internal node numbers |
+| [GetInternalNptrs_](./GetInternalNptrs_.md) | Returns a vector of internal node numbers (subroutine version, no allocation) |
+| [GetBoundaryNptrs](./GetBoundaryNptrs.md) | Returns a vector of boundary node numbers |
+| [GetTotalNodes](./GetTotalNodes.md) | Get total nodes |
+| [GetTotalInternalNodes](./GetTotalInternalNodes.md) | Returns the total number of internal nodes |
+| [GetTotalBoundaryNodes](./GetTotalBoundaryNodes.md) | Returns the total number of boundary nodes |
+| [GetLocalNodeNumber](./GetLocalNodeNumber.md) | Returns the local node number of a global node number |
+| [GetLocalNodeNumber_](./GetLocalNodeNumber_.md) | Get local node number without allocation |
+| [GetGlobalNodeNumber](./GetGlobalNodeNumber.md) | Returns the global node number of a local node number |
+| [GetNodeCoord](./GetNodeCoord.md) | Get node coordinates |
+| [GetNearestNode](./GetNearestNode.md) | Get nearest node |
+| [GetMinNodeNumber](./GetMinNodeNumber.md) | Get minimum element number |
+| [GetMaxNodeNumber](./GetMaxNodeNumber.md) | Get maximum node number |
+| [GetNodeMask](./GetNodeMask.md) | Returns the mask for the presence of node |
+
+### Connectivity Methods
+
+| Method Name | Purpose |
+| ------------------------------------------------------- | ---------------------------------------------------------------- |
+| [GetConnectivity](./GetConnectivity.md) | Returns node numbers in an element (this is vertex connectivity) |
+| [GetConnectivity_](./GetConnectivity_.md) | Generic method for getting the connectivity of an element |
+| [GetNodeConnectivity](./GetNodeConnectivity.md) | Returns all the node connectivity of the mesh elements |
+| [GetNodeToElements](./GetNodeToElements.md) | Generic method to get elements around node or nodes |
+| [GetNodeToNodes](./GetNodeToNodes.md) | Returns nodes connected to a given node number |
+| [GetNodeToNodes_](./GetNodeToNodes_.md) | Returns nodes connected to a given node number |
+| [GetElementToElements](./GetElementToElements.md) | Returns elements connected to a given element number |
+| [GetElementToElements_](./GetElementToElements_.md) | Get element to elements mapping |
+| [GetMaxNodeToElements](./GetMaxNodeToElements.md) | Get maximum number of node to elements |
+| [GetMaxElementToElements](./GetMaxElementToElements.md) | Get maximum number of element to elements |
+| [GetMaxNodeToNodes](./GetMaxNodeToNodes.md) | Get maximum number of node to nodes |
+
+### Geometry methods
+
+| Method Name | Purpose |
+| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
+| [FindEdge](./FindEdge.md) | Find a edge in a cell (only for 3D) |
+| [FindFace](./FindFace.md) | Find a face in a cell |
+| [GetBoundaryElementData](./GetBoundaryElementData.md) | Returns boundary element data |
+| [GetBoundingBox](./GetBoundingBox.md) | Return the bounding box |
+| [GetCellNumber](./GetCellNumber.md) | Returns the master and slave cell number of a facet element |
+| [GetFacetConnectivity](./GetFacetConnectivity.md) | Generic method to Get the connectivity of a facet element |
+| [GetFacetElementType](./GetFacetElementType.md) | Returns the facet element type of a given cell element number |
+| [GetFacetParam](./GetFacetParam.md) | Get the parameters of facet elements |
+| [GetGlobalEdgeNumber](./GetGlobalEdgeNumber.md) | Get global Edge number from global element and localEdgenumber |
+| [GetGlobalFaceNumber](./GetGlobalFaceNumber.md) | Get global face number from global element and localFacenumber |
+| [GetLocalFacetID](./GetLocalFacetID.md) | Return the local facet id, so that we can Get reference element of the facet element |
+| [GetMasterCellNumber](./GetMasterCellNumber.md) | Returns the master cell number of a facet element |
+| [GetNSD](./GetNSD.md) | Return the NSD |
+| [GetSlaveCellNumber](./GetSlaveCellNumber.md) | Returns the slave cell number of a facet element |
+| [GetTotalBoundaryElements](./GetTotalBoundaryElements.md) | Returns the total number of boundary elements |
+| [GetTotalBoundaryFacetElements](./GetTotalBoundaryFacetElements.md) | Returns the total number of boundary facet elements |
+| [GetTotalEdges](./GetTotalEdges.md) | Returns the total number of edges in the mesh (obj%tEdges) |
+| [GetTotalFaces](./GetTotalFaces.md) | Returns the total number of faces in the mesh (obj%tFaces) |
+| [GetTotalFacetElements](./GetTotalFacetElements.md) | Returns the total number of facet elements in the mesh |
+| [GetTotalInternalFacetElements](./GetTotalInternalFacetElements.md) | Returns the total number of internal facet elements |
+| [GetXidimension](./GetXiDimension.md) | Return the NSD |
+
+### Status Check Methods
+
+| Method Name | Purpose |
+| ------------------------------------------------------- | ------------------------------------------------------------------- |
+| [isInit](./IsInit.md) | Returns obj%isInitiated |
+| [isNodeToElements](./IsNodeToElements.md) | Check if node to elements mapping is available |
+| [isNodeToNodes](./IsNodeToNodes.md) | Check if node to nodes mapping is available |
+| [isExtraNodeToNodes](./IsExtraNodeToNodes.md) | Check if extra node to nodes mapping is available |
+| [isElementToElements](./IsElementToElements.md) | Check if element to elements mapping is available |
+| [isEdgeConnectivity](./IsEdgeConnectivity.md) | Check if edge connectivity is available |
+| [isFaceConnectivity](./IsFaceConnectivity.md) | Check if face connectivity is available |
+| [isBoundaryData](./IsBoundaryData.md) | Check if boundary data is available |
+| [isFacetData](./IsFacetData.md) | Check if facet data is available |
+| [isBoundaryElement](./IsBoundaryElement.md) | Returns true if a given global element number is a boundary element |
+| [isDomainBoundaryElement](./IsDomainBoundaryElement.md) | Returns true if a given global element number is a boundary element |
+| [isDomainFacetElement](./IsDomainFacetElement.md) | Returns true if a given global element number is a boundary element |
+| [isAnyNodePresent](./IsAnyNodePresent.md) | Returns true if any of the node number is present |
+| [isAllNodePresent](./IsAllNodePresent.md) | Returns true if all of the node numbers are present |
+| [isBoundaryNode](./IsBoundaryNode.md) | Returns true if a given global node number is a boundary node |
+| [isNodePresent](./IsNodePresent.md) | Returns true if a node number is present |
+| [isElementPresent](./IsElementPresent.md) | Returns true if a given element number is present |
+| [isElementActive](./IsElementActive.md) | Check if element is active |
+
+### Set methods
+
+| Method Name | Purpose |
+| ----------------------------------------------- | ------------------------------------------------- |
+| [SetShowTime](./SetShowTime.md) | Set showTime option |
+| [SetBoundingBox](./SetBoundingBox.md) | Set the bounding box |
+| [SetSparsity](./SetSparsity.md) | Generic method for Setting the sparsity |
+| [SetTotalMaterial](./SetTotalMaterial.md) | Generic method |
+| [SetMaterial](./SetMaterial.md) | Set material to an element |
+| [SetFacetElementType](./SetFacetElementType.md) | Set the facet element type of a given cell number |
+| [SetQuality](./SetQuality.md) | Set mesh quality |
+| [SetParam](./SetParam.md) | Set parameters of mesh |
+| [SetFacetParam](./SetFacetParam.md) | Set the parameters of facet element |
+
+### Get Methods
+
+| Method Name | Purpose |
+| ----------------------------------------- | ----------------------------------------- |
+| [GetMaterial](./GetMaterial.md) | Returns the material id of a given medium |
+| [GetTotalMaterial](./GetTotalMaterial.md) | Returns the total materials in an element |
+| [GetParam](./GetParam.md) | Get parameter of mesh |
## All methods
diff --git a/docs/docs-api/AbstractNodeField/Norm2.md b/docs/docs-api/AbstractNodeField/Norm2.md
index 30c701f5..70c779d7 100644
--- a/docs/docs-api/AbstractNodeField/Norm2.md
+++ b/docs/docs-api/AbstractNodeField/Norm2.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/AbstractRefElement/GetName.md b/docs/docs-api/AbstractRefElement/GetName.md
index d304b86d..0d84ad36 100644
--- a/docs/docs-api/AbstractRefElement/GetName.md
+++ b/docs/docs-api/AbstractRefElement/GetName.md
@@ -5,8 +5,8 @@ This method returns the integer code of the reference element.
## Interace
```fortran
- PURE FUNCTION GetName(obj) RESULT(ans)
- CLASS(AbstractRefElement_), INTENT(IN) :: obj
- INTEGER(I4B) :: ans
- END FUNCTION GetName
+PURE FUNCTION GetName(obj) RESULT(ans)
+ CLASS(AbstractRefElement_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION GetName
```
diff --git a/docs/docs-api/AbstractRefElement/RefCoord.md b/docs/docs-api/AbstractRefElement/RefCoord.md
index 1aaa4aa9..0abc7a2c 100644
--- a/docs/docs-api/AbstractRefElement/RefCoord.md
+++ b/docs/docs-api/AbstractRefElement/RefCoord.md
@@ -19,4 +19,3 @@ ABSTRACT INTERFACE
END FUNCTION refelem_RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/AbstractSteadyStokes/AbstractSteadyStokes_.md b/docs/docs-api/AbstractSteadyStokes/AbstractSteadyStokes_.md
index 0e47450f..8ae7f025 100644
--- a/docs/docs-api/AbstractSteadyStokes/AbstractSteadyStokes_.md
+++ b/docs/docs-api/AbstractSteadyStokes/AbstractSteadyStokes_.md
@@ -585,7 +585,7 @@ END INTERFACE AbstractSteadyStokesSet
- This routine returns the pointer to Dirichlet boundary condition of pressure field in [AbstractSteadyStokes_](AbstractSteadyStokes_.md) kernel, that is `obj%DBCForPressure(dbcNo)%ptr`.
- After obtaining the Dirichlet boundary condition pointer, user can set the
-boundary condition
+ boundary condition
- `dbcNo` should be lesser than total dirichlet boundary condition.
```fortran
@@ -663,7 +663,6 @@ INTERFACE
LOGICAL(LGT) :: ans
END FUNCTION isSteadyState
END INTERFACE
-
```
### IsConverged
diff --git a/docs/docs-api/AppendUtility/examples/_Append_test_2.md b/docs/docs-api/AppendUtility/examples/_Append_test_2.md
index d5fba1a4..f807a247 100644
--- a/docs/docs-api/AppendUtility/examples/_Append_test_2.md
+++ b/docs/docs-api/AppendUtility/examples/_Append_test_2.md
@@ -9,29 +9,29 @@ PROGRAM main
Now lets us append a single ENTRY to a vector of integers.
```fortran
- intvec1 = [1] .append. 2
- CALL OK( ALL(intvec1 .EQ. [1, 2]), "Append single ENTRY" )
+intvec1 = [1] .append. 2
+CALL OK( ALL(intvec1 .EQ. [1, 2]), "Append single ENTRY" )
```
Appending a vector to a vector.
```fortran
- intvec1 = intvec1 .append. [3]
- CALL OK( ALL(intvec1 .EQ. [1,2,3]), "Append a vector" )
+intvec1 = intvec1 .append. [3]
+CALL OK( ALL(intvec1 .EQ. [1,2,3]), "Append a vector" )
```
Now lets us append a single real value to realvec.
```fortran
- realvec1 = [1.0_DFP] .append. 2.0_DFP
- CALL OK( ALL(realvec1 .EQ. [1.0_DFP, 2.0_DFP]), "Append single ENTRY" )
+realvec1 = [1.0_DFP] .append. 2.0_DFP
+CALL OK( ALL(realvec1 .EQ. [1.0_DFP, 2.0_DFP]), "Append single ENTRY" )
```
Appending vector to a vector.
```fortran
- realvec1 = realvec1 .append. [3.0_DFP]
- CALL OK( ALL(realvec1 .EQ. [1.0_DFP,2.0_DFP,3.0_DFP]), "Append a vector" )
+realvec1 = realvec1 .append. [3.0_DFP]
+CALL OK( ALL(realvec1 .EQ. [1.0_DFP,2.0_DFP,3.0_DFP]), "Append a vector" )
```
Cleanup
diff --git a/docs/docs-api/AppendUtility/examples/_Append_test_3.md b/docs/docs-api/AppendUtility/examples/_Append_test_3.md
index 40ada3b8..7d3386b5 100644
--- a/docs/docs-api/AppendUtility/examples/_Append_test_3.md
+++ b/docs/docs-api/AppendUtility/examples/_Append_test_3.md
@@ -6,16 +6,16 @@ PROGRAM main
```
```fortran title="A and B are vectors"
- A = [1]
- B = [2]
- CALL Append(C, A, B)
- CALL OK( ALL(C .EQ. [1, 2]), "tests(1):" )
+A = [1]
+B = [2]
+CALL Append(C, A, B)
+CALL OK( ALL(C .EQ. [1, 2]), "tests(1):" )
```
```fortran title="A is vector B is scalar"
- A = [1]
- CALL Append(C, A, 2)
- CALL OK( ALL(C .EQ. [1, 2]), "tests(2):" )
+A = [1]
+CALL Append(C, A, 2)
+CALL OK( ALL(C .EQ. [1, 2]), "tests(2):" )
```
```fortran
diff --git a/docs/docs-api/AppendUtility/examples/_Append_test_4.md b/docs/docs-api/AppendUtility/examples/_Append_test_4.md
index d8a3cd30..f80e0369 100644
--- a/docs/docs-api/AppendUtility/examples/_Append_test_4.md
+++ b/docs/docs-api/AppendUtility/examples/_Append_test_4.md
@@ -8,17 +8,17 @@ PROGRAM main
Now lets us append a single ENTRY to a vector.
```fortran
- CALL Append(intvec1, 1, mask=.true.)
- CALL Append(intvec1, 1, mask=.false.)
- CALL OK( ALL(intvec1 .EQ. [1]), "Append single ENTRY" )
+CALL Append(intvec1, 1, mask=.true.)
+CALL Append(intvec1, 1, mask=.false.)
+CALL OK( ALL(intvec1 .EQ. [1]), "Append single ENTRY" )
```
Appending a vector to a vector.
```fortran
- CALL Append(intvec1, [2,3], mask=[.true., .true.])
- CALL Append(intvec1, [4,5], mask=[.true., .false.])
- CALL OK( ALL(intvec1 .EQ. [1,2,3,4]), "Append a vector" )
+CALL Append(intvec1, [2,3], mask=[.true., .true.])
+CALL Append(intvec1, [4,5], mask=[.true., .false.])
+CALL OK( ALL(intvec1 .EQ. [1,2,3,4]), "Append a vector" )
```
```fortran
diff --git a/docs/docs-api/AppendUtility/examples/_ColConcat_test_1.md b/docs/docs-api/AppendUtility/examples/_ColConcat_test_1.md
index db438af5..5069ac08 100644
--- a/docs/docs-api/AppendUtility/examples/_ColConcat_test_1.md
+++ b/docs/docs-api/AppendUtility/examples/_ColConcat_test_1.md
@@ -7,19 +7,19 @@ PROGRAM main
Concat two integer vectors
```fortran
- call display( MdEnCode(ColConcat(a=[1,2], b=[3,4])), "colconcat="//CHAR_LF//CHAR_LF )
- call ok( all( ColConcat(a=[1,2], b=[3,4]) &
- & .eq. reshape([1,2,3,4], [2,2])), "colconcat" )
+call display( MdEnCode(ColConcat(a=[1,2], b=[3,4])), "colconcat="//CHAR_LF//CHAR_LF )
+call ok( all( ColConcat(a=[1,2], b=[3,4]) &
+ & .eq. reshape([1,2,3,4], [2,2])), "colconcat" )
```
See results
- | | |
- | --- | --- |
- | 1 | 3 |
- | 2 | 4 |
+| | |
+| - | - |
+| 1 | 3 |
+| 2 | 4 |
@@ -27,20 +27,20 @@ Concat two integer vectors
Concat two integer vectors of different length
```fortran
- call display( MdEnCode(ColConcat(a=[1,2], b=[3,4,5])), "colconcat="//CHAR_LF//CHAR_LF )
- call ok( all( ColConcat(a=[1,2], b=[3,4,5]) &
- & .eq. reshape([1,2,0,3,4,5], [3,2])), "colconcat" )
+call display( MdEnCode(ColConcat(a=[1,2], b=[3,4,5])), "colconcat="//CHAR_LF//CHAR_LF )
+call ok( all( ColConcat(a=[1,2], b=[3,4,5]) &
+ & .eq. reshape([1,2,0,3,4,5], [3,2])), "colconcat" )
```
See results
- | | |
- | --- | --- |
- | 1 | 3 |
- | 2 | 4 |
- | 0 | 5 |
+| | |
+| - | - |
+| 1 | 3 |
+| 2 | 4 |
+| 0 | 5 |
@@ -48,7 +48,7 @@ Concat two integer vectors of different length
Concat two integer vectors of different length.
```fortran
- call display( MdEnCode(ColConcat(a=[3,4,5], b=[1,2])), "colconcat="//CHAR_LF//CHAR_LF )
+call display( MdEnCode(ColConcat(a=[3,4,5], b=[1,2])), "colconcat="//CHAR_LF//CHAR_LF )
```
@@ -57,11 +57,11 @@ Concat two integer vectors of different length.
colconcat=
- | | |
- | --- | --- |
- | 3 | 1 |
- | 4 | 2 |
- | 5 | 0 |
+| | |
+| - | - |
+| 3 | 1 |
+| 4 | 2 |
+| 5 | 0 |
diff --git a/docs/docs-api/AppendUtility/examples/_ColConcat_test_2.md b/docs/docs-api/AppendUtility/examples/_ColConcat_test_2.md
index 88de6330..ee32056c 100644
--- a/docs/docs-api/AppendUtility/examples/_ColConcat_test_2.md
+++ b/docs/docs-api/AppendUtility/examples/_ColConcat_test_2.md
@@ -7,8 +7,8 @@ PROGRAM main
Concat columns of a rank2 array and rank 1 array.
```fortran
- call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
- & b=[5,6]), "colconcat=" )
+call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
+ & b=[5,6]), "colconcat=" )
```
@@ -19,7 +19,7 @@ Concat columns of a rank2 array and rank 1 array.
colconcat=
----------
1 3 5
- 2 4 6
+ 2 4 6
```
@@ -28,8 +28,8 @@ colconcat=
ColConcat works fine even when number of rows in rank-2 array is not the same as the size of rank-1 array.
```fortran
- call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
- & b=[5,6, 7]), "colconcat=" )
+call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
+ & b=[5,6, 7]), "colconcat=" )
```
@@ -41,7 +41,7 @@ colconcat=
----------
1 3 5
2 4 6
- 0 0 7
+ 0 0 7
```
@@ -50,8 +50,8 @@ colconcat=
Concat columns of a rank2 array and rank 1 array.
```fortran
- call display( ColConcat(b=reshape([1,2,3,4], [2,2]), &
- & a=[5,6]), "colconcat=" )
+call display( ColConcat(b=reshape([1,2,3,4], [2,2]), &
+ & a=[5,6]), "colconcat=" )
```
@@ -62,7 +62,7 @@ Concat columns of a rank2 array and rank 1 array.
colconcat=
----------
5 1 3
- 6 2 4
+ 6 2 4
```
@@ -71,8 +71,8 @@ colconcat=
ColConcat works fine even when number of rows in rank-2 array is not the same as the size of rank-1 array.
```fortran
- call display( ColConcat(b=reshape([1,2,3,4], [2,2]), &
- & a=[5,6, 7]), "colconcat=" )
+call display( ColConcat(b=reshape([1,2,3,4], [2,2]), &
+ & a=[5,6, 7]), "colconcat=" )
```
@@ -84,7 +84,7 @@ colconcat=
----------
5 1 3
6 2 4
- 7 0 0
+ 7 0 0
```
diff --git a/docs/docs-api/AppendUtility/examples/_ColConcat_test_3.md b/docs/docs-api/AppendUtility/examples/_ColConcat_test_3.md
index 932ebd49..532abeaa 100644
--- a/docs/docs-api/AppendUtility/examples/_ColConcat_test_3.md
+++ b/docs/docs-api/AppendUtility/examples/_ColConcat_test_3.md
@@ -5,8 +5,8 @@ PROGRAM main
```
```fortran
- call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
- & b=reshape([5,6,7,8], [2,2]) ), "colconcat=" )
+call display( ColConcat(a=reshape([1,2,3,4], [2,2]), &
+ & b=reshape([5,6,7,8], [2,2]) ), "colconcat=" )
```
@@ -24,8 +24,8 @@ colconcat=
```fortran
- call display( ColConcat(a=reshape(arange(1,9), [3,3]), &
- & b=reshape(arange(10,13), [2,2]) ), "colconcat=" )
+call display( ColConcat(a=reshape(arange(1,9), [3,3]), &
+ & b=reshape(arange(10,13), [2,2]) ), "colconcat=" )
```
@@ -44,8 +44,8 @@ colconcat=
```fortran
- call display( ColConcat(a=reshape(arange(1,4), [2,2]), &
- & b=reshape(arange(5,13), [3,3]) ), "colconcat=" )
+call display( ColConcat(a=reshape(arange(1,4), [2,2]), &
+ & b=reshape(arange(5,13), [3,3]) ), "colconcat=" )
```
diff --git a/docs/docs-api/AppendUtility/examples/_RowConcat_test_1.md b/docs/docs-api/AppendUtility/examples/_RowConcat_test_1.md
index 91a23327..d38a13c1 100644
--- a/docs/docs-api/AppendUtility/examples/_RowConcat_test_1.md
+++ b/docs/docs-api/AppendUtility/examples/_RowConcat_test_1.md
@@ -7,9 +7,9 @@ PROGRAM main
Concat two integer vectors
```fortran
- call display( RowConcat(a=[1,2], b=[3,4]), "RowConcat=" )
- call ok( all( RowConcat(a=[1,2], b=[3,4]) &
- & .eq. reshape([1,3,2,4], [2,2])), "RowConcat" )
+call display( RowConcat(a=[1,2], b=[3,4]), "RowConcat=" )
+call ok( all( RowConcat(a=[1,2], b=[3,4]) &
+ & .eq. reshape([1,3,2,4], [2,2])), "RowConcat" )
```
@@ -20,7 +20,7 @@ Concat two integer vectors
RowConcat=
----------
1 2
- 3 4
+ 3 4
```
@@ -29,9 +29,9 @@ RowConcat=
Concat two integer vectors of different length
```fortran
- call display( RowConcat(a=[1,2], b=[3,4,5]), "RowConcat=" )
- call ok( all( RowConcat(a=[1,2], b=[3,4,5]) &
- & .eq. reshape([1,3,2,4,0,5], [2,3])), "RowConcat" )
+call display( RowConcat(a=[1,2], b=[3,4,5]), "RowConcat=" )
+call ok( all( RowConcat(a=[1,2], b=[3,4,5]) &
+ & .eq. reshape([1,3,2,4,0,5], [2,3])), "RowConcat" )
```
@@ -42,13 +42,12 @@ Concat two integer vectors of different length
RowConcat=
----------
1 2 0
- 3 4 5
+ 3 4 5
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/AppendUtility/examples/_RowConcat_test_2.md b/docs/docs-api/AppendUtility/examples/_RowConcat_test_2.md
index 83fbadfb..e678324d 100644
--- a/docs/docs-api/AppendUtility/examples/_RowConcat_test_2.md
+++ b/docs/docs-api/AppendUtility/examples/_RowConcat_test_2.md
@@ -7,8 +7,8 @@ PROGRAM main
Concat columns of a rank2 array and rank 1 array.
```fortran
- call display( RowConcat(a=reshape([1,2,4,5], [2,2]), &
- & b=[3,6]), "RowConcat=" )
+call display( RowConcat(a=reshape([1,2,4,5], [2,2]), &
+ & b=[3,6]), "RowConcat=" )
```
@@ -20,7 +20,7 @@ RowConcat=
----------
1 4
2 5
- 3 6
+ 3 6
```
@@ -29,8 +29,8 @@ RowConcat=
RowConcat works fine even when number of columns in rank-2 array is not the same as the size of rank-1 array.
```fortran
- call display( RowConcat(a=reshape([1,2,4,5], [2,2]), &
- & b=[3,6, 7]), "RowConcat=" )
+call display( RowConcat(a=reshape([1,2,4,5], [2,2]), &
+ & b=[3,6, 7]), "RowConcat=" )
```
@@ -42,7 +42,7 @@ RowConcat=
----------
1 4 0
2 5 0
- 3 6 7
+ 3 6 7
```
@@ -51,10 +51,10 @@ RowConcat=
We can also concat the columns of a vector and a matrix.
```fortran
- call display( RowConcat(b=reshape([1,2,4,5], [2,2]), &
- & a=[3,6]), "RowConcat=" )
- call display( RowConcat(b=reshape([1,2,4,5], [2,2]), &
- & a=[3,6,7]), "RowConcat=" )
+call display( RowConcat(b=reshape([1,2,4,5], [2,2]), &
+ & a=[3,6]), "RowConcat=" )
+call display( RowConcat(b=reshape([1,2,4,5], [2,2]), &
+ & a=[3,6,7]), "RowConcat=" )
```
@@ -72,7 +72,7 @@ RowConcat=
----------
3 6 7
1 4 0
- 2 5 0
+ 2 5 0
```
diff --git a/docs/docs-api/AppendUtility/examples/_RowConcat_test_3.md b/docs/docs-api/AppendUtility/examples/_RowConcat_test_3.md
index 1cac8722..1f5b821c 100644
--- a/docs/docs-api/AppendUtility/examples/_RowConcat_test_3.md
+++ b/docs/docs-api/AppendUtility/examples/_RowConcat_test_3.md
@@ -7,8 +7,8 @@ PROGRAM main
We can also concat the columns of two matrices.
```fortran
- call display( RowConcat(a=reshape([1,2,3,4], [2,2]), &
- & b=reshape([5,6,7,8], [2,2]) ), "RowConcat=" )
+call display( RowConcat(a=reshape([1,2,3,4], [2,2]), &
+ & b=reshape([5,6,7,8], [2,2]) ), "RowConcat=" )
```
@@ -21,15 +21,15 @@ RowConcat=
1 3
2 4
5 7
- 6 8
+ 6 8
```
```fortran
- call display( RowConcat(a=reshape(arange(1,9), [3,3]), &
- & b=reshape(arange(10,13), [2,2]) ), "RowConcat=" )
+call display( RowConcat(a=reshape(arange(1,9), [3,3]), &
+ & b=reshape(arange(10,13), [2,2]) ), "RowConcat=" )
```
@@ -50,8 +50,8 @@ RowConcat=
```fortran
- call display( RowConcat(a=reshape(arange(1,4), [2,2]), &
- & b=reshape(arange(5,13), [3,3]) ), "RowConcat=" )
+call display( RowConcat(a=reshape(arange(1,4), [2,2]), &
+ & b=reshape(arange(5,13), [3,3]) ), "RowConcat=" )
```
diff --git a/docs/docs-api/ApproxUtility/ApproxGE.md b/docs/docs-api/ApproxUtility/ApproxGE.md
index 808e63d3..dc3e25ed 100644
--- a/docs/docs-api/ApproxUtility/ApproxGE.md
+++ b/docs/docs-api/ApproxUtility/ApproxGE.md
@@ -9,4 +9,3 @@ abool = a .ApproxGE. b
$$
a \ge b + 1.0 \times 10^{-15}
$$
-
diff --git a/docs/docs-api/ApproxUtility/ApproxLE.md b/docs/docs-api/ApproxUtility/ApproxLE.md
index 32c5623d..c3528d9e 100644
--- a/docs/docs-api/ApproxUtility/ApproxLE.md
+++ b/docs/docs-api/ApproxUtility/ApproxLE.md
@@ -9,4 +9,3 @@ abool = a .ApproxLE. b
$$
a \le b + 1.0 \times 10^{-15}
$$
-
diff --git a/docs/docs-api/ApproxUtility/Misc.md b/docs/docs-api/ApproxUtility/Misc.md
index 3e8baa89..91d31ed6 100644
--- a/docs/docs-api/ApproxUtility/Misc.md
+++ b/docs/docs-api/ApproxUtility/Misc.md
@@ -27,9 +27,8 @@ import EXAMPLE25 from "./_Misc_test_1.md";
-
To check if a string is number:
-```fortran
+```fortran
abool = isNumeric("1.2")
```
diff --git a/docs/docs-api/ApproxUtility/SoftGE.md b/docs/docs-api/ApproxUtility/SoftGE.md
index bbe4752d..f962bde7 100644
--- a/docs/docs-api/ApproxUtility/SoftGE.md
+++ b/docs/docs-api/ApproxUtility/SoftGE.md
@@ -9,6 +9,5 @@ abool = SOFTGE(a, b, tol)
```
$$
-a \ge b + tol
+a \ge b + tol\
$$
-
diff --git a/docs/docs-api/ApproxUtility/SoftGT.md b/docs/docs-api/ApproxUtility/SoftGT.md
index 81da2e01..aabfae21 100644
--- a/docs/docs-api/ApproxUtility/SoftGT.md
+++ b/docs/docs-api/ApproxUtility/SoftGT.md
@@ -9,6 +9,5 @@ abool = SOFTGT(a, b, tol)
```
$$
-a > b + tol
+a > b + tol\
$$
-
diff --git a/docs/docs-api/ApproxUtility/SoftLE.md b/docs/docs-api/ApproxUtility/SoftLE.md
index e91e4583..3cfcfd81 100644
--- a/docs/docs-api/ApproxUtility/SoftLE.md
+++ b/docs/docs-api/ApproxUtility/SoftLE.md
@@ -9,6 +9,5 @@ abool = SOFTLE(a, b, tol)
```
$$
-a \le b + tol
+a \le b + tol\
$$
-
diff --git a/docs/docs-api/ApproxUtility/SoftLT.md b/docs/docs-api/ApproxUtility/SoftLT.md
index 0e2bc034..07cd0084 100644
--- a/docs/docs-api/ApproxUtility/SoftLT.md
+++ b/docs/docs-api/ApproxUtility/SoftLT.md
@@ -9,5 +9,5 @@ abool = SOFTLT(a, b, tol)
```
$$
-a < b + tol
+a < b + tol\
$$
diff --git a/docs/docs-api/ArangeUtility/Arange.md b/docs/docs-api/ArangeUtility/Arange.md
index 78195596..cd5a3474 100644
--- a/docs/docs-api/ArangeUtility/Arange.md
+++ b/docs/docs-api/ArangeUtility/Arange.md
@@ -1,6 +1,6 @@
# Arange
-Returns a vector of integers (or reals) by specifying `istart`, `iend`, and `increment` values.
+Returns a vector of integers (or reals) by specifying `istart`, `iend`, and `increment` values.
Calling example:
diff --git a/docs/docs-api/AssertUtility/Assert.md b/docs/docs-api/AssertUtility/Assert.md
index 31a85792..9f3f384e 100644
--- a/docs/docs-api/AssertUtility/Assert.md
+++ b/docs/docs-api/AssertUtility/Assert.md
@@ -118,11 +118,11 @@ END SUBROUTINE Assert
```fortran
- MODULE SUBROUTINE Assert(n1, n2, n3, msg, file, line, routine)
- INTEGER(I4B), INTENT(IN) :: n1, n2, n3
- INTEGER(I4B), INTENT(IN) :: line
- CHARACTER(*), INTENT(IN) :: msg, file, routine
- END SUBROUTINE Assert
+MODULE SUBROUTINE Assert(n1, n2, n3, msg, file, line, routine)
+ INTEGER(I4B), INTENT(IN) :: n1, n2, n3
+ INTEGER(I4B), INTENT(IN) :: line
+ CHARACTER(*), INTENT(IN) :: msg, file, routine
+END SUBROUTINE Assert
```
@@ -130,11 +130,11 @@ END SUBROUTINE Assert
```fortran
- MODULE SUBROUTINE Assert(n1, n2, n3, n4, msg, file, line, routine)
- INTEGER(I4B), INTENT(IN) :: n1, n2, n3, n4
- INTEGER(I4B), INTENT(IN) :: line
- CHARACTER(*), INTENT(IN) :: msg, file, routine
- END SUBROUTINE Assert
+MODULE SUBROUTINE Assert(n1, n2, n3, n4, msg, file, line, routine)
+ INTEGER(I4B), INTENT(IN) :: n1, n2, n3, n4
+ INTEGER(I4B), INTENT(IN) :: line
+ CHARACTER(*), INTENT(IN) :: msg, file, routine
+END SUBROUTINE Assert
```
@@ -142,14 +142,14 @@ END SUBROUTINE Assert
```fortran
- MODULE SUBROUTINE Assert(nn, msg, file, line, routine)
- INTEGER(I4B), DIMENSION(:), INTENT(IN) :: nn
- INTEGER(I4B), INTENT(IN) :: line
- CHARACTER(*), INTENT(IN) :: msg, file, routine
- END SUBROUTINE Assert
+MODULE SUBROUTINE Assert(nn, msg, file, line, routine)
+ INTEGER(I4B), DIMENSION(:), INTENT(IN) :: nn
+ INTEGER(I4B), INTENT(IN) :: line
+ CHARACTER(*), INTENT(IN) :: msg, file, routine
+END SUBROUTINE Assert
```
-
+
diff --git a/docs/docs-api/BinomUtility/_Binom_test_1.md b/docs/docs-api/BinomUtility/_Binom_test_1.md
index 1a9fc686..22aeafac 100644
--- a/docs/docs-api/BinomUtility/_Binom_test_1.md
+++ b/docs/docs-api/BinomUtility/_Binom_test_1.md
@@ -1,6 +1,6 @@
This example shows the usage of [Binom](Binom.md) method.
-```fortran
+```fortran
program main
use easifembase
implicit none
@@ -8,15 +8,15 @@ program main
Here we are calculating ${}^{4}C_{m}$, for $m=0,1,2,3,4$
-```fortran
- call display( Binom(4, 0, kind=1.0_DFP), "(4, 0) = " )
- call display( Binom(4, 1, kind=1.0_DFP), "(4, 1) = " )
- call display( Binom(4, 2, kind=1.0_DFP), "(4, 2) = " )
- call display( Binom(4, 3, kind=1.0_DFP), "(4, 3) = " )
- call display( Binom(4, 4, kind=1.0_DFP), "(4, 4) = " )
+```fortran
+call display( Binom(4, 0, kind=1.0_DFP), "(4, 0) = " )
+call display( Binom(4, 1, kind=1.0_DFP), "(4, 1) = " )
+call display( Binom(4, 2, kind=1.0_DFP), "(4, 2) = " )
+call display( Binom(4, 3, kind=1.0_DFP), "(4, 3) = " )
+call display( Binom(4, 4, kind=1.0_DFP), "(4, 4) = " )
```
-```txt title="Results"
+```txt title="Results"
(4, 0) = 1.00000
(4, 1) = 4.00000
(4, 2) = 6.00000
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_1.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_1.md
index ee54ee9a..bac81953 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_1.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_1.md
@@ -16,25 +16,25 @@ PROGRAM main
```
```fortran
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
+USE easifemBase
+USE easifemClasses
+IMPLICIT NONE
```
```fortran
- TYPE( BlockMatrixField_ ) :: obj
- TYPE( ParameterList_ ) :: param
+TYPE( BlockMatrixField_ ) :: obj
+TYPE( ParameterList_ ) :: param
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL SetBlockMatrixFieldParam(param=param, name="K", &
- & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
- & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
- & matrixProp="UNSYM" )
- CALL obj%CheckEssentialParam( param )
- CALL param%Print()
- CALL param%Deallocate(); CALL FPL_FINALIZE()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL SetBlockMatrixFieldParam(param=param, name="K", &
+ & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
+ & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
+ & matrixProp="UNSYM" )
+CALL obj%CheckEssentialParam( param )
+CALL param%Print()
+CALL param%Deallocate(); CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_11.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_11.md
index f0cfbb06..f6f5db21 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_11.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_11.md
@@ -27,7 +27,7 @@ Following modules are used
Import modules and define variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -46,55 +46,55 @@ PROGRAM main
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL SetBlockMatrixFieldParam(param=param, name="K", &
- & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
- & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
- & matrixProp="UNSYM" )
+CALL SetBlockMatrixFieldParam(param=param, name="K", &
+ & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
+ & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
+ & matrixProp="UNSYM" )
```
```fortran
- CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
- CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
- CALL pressureMeshfile%Open()
- CALL velocityMeshfile%Open()
+CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
+CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
+CALL pressureMeshfile%Open()
+CALL velocityMeshfile%Open()
```
```fortran
- CALL pressureDomain%Initiate( pressureMeshfile, "")
+CALL pressureDomain%Initiate( pressureMeshfile, "")
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshfile, "")
+CALL velocityDomain%Initiate( velocityMeshfile, "")
```
```fortran
- CALL pressureMeshfile%Deallocate()
- CALL velocityMeshfile%Deallocate()
+CALL pressureMeshfile%Deallocate()
+CALL velocityMeshfile%Deallocate()
```
```fortran
- domains(1)%ptr => velocityDomain
- domains(2)%ptr => pressureDomain
+domains(1)%ptr => velocityDomain
+domains(2)%ptr => pressureDomain
```
```fortran
- CALL obj%Initiate(param=param, dom=domains)
+CALL obj%Initiate(param=param, dom=domains)
```
```fortran
- CALL obj%Set(value=1.0_DFP)
+CALL obj%Set(value=1.0_DFP)
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
- CALL obj%Deallocate()
+CALL obj%Deallocate()
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_3.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_3.md
index 748ff539..42df2c57 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_3.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_3.md
@@ -22,47 +22,47 @@ PROGRAM main
```
```fortran
- TYPE( BlockMatrixField_) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( Domain_), TARGET :: pressureDomain
- TYPE( Domain_ ), TARGET :: velocityDomain
- TYPE( DomainPointer_) :: domains( 2 )
- TYPE( HDF5File_ ) :: pressureMeshFile
- TYPE( HDF5File_ ) :: velocityMeshFile
- CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
+TYPE( BlockMatrixField_) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( Domain_), TARGET :: pressureDomain
+TYPE( Domain_ ), TARGET :: velocityDomain
+TYPE( DomainPointer_) :: domains( 2 )
+TYPE( HDF5File_ ) :: pressureMeshFile
+TYPE( HDF5File_ ) :: velocityMeshFile
+CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL SetBlockMatrixFieldParam(param=param, name="K", &
- & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
- & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
- & matrixProp="UNSYM" )
+CALL FPL_INIT(); CALL param%Initiate()
+CALL SetBlockMatrixFieldParam(param=param, name="K", &
+ & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
+ & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
+ & matrixProp="UNSYM" )
```
```fortran
- CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
- CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
- CALL pressureMeshfile%Open()
- CALL velocityMeshfile%Open()
- CALL pressureDomain%Initiate( pressureMeshfile, "")
- CALL velocityDomain%Initiate( velocityMeshfile, "")
+CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
+CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
+CALL pressureMeshfile%Open()
+CALL velocityMeshfile%Open()
+CALL pressureDomain%Initiate( pressureMeshfile, "")
+CALL velocityDomain%Initiate( velocityMeshfile, "")
```
```fortran
- CALL pressureMeshfile%Deallocate()
- CALL velocityMeshfile%Deallocate()
+CALL pressureMeshfile%Deallocate()
+CALL velocityMeshfile%Deallocate()
```
```fortran
- domains(1)%ptr => velocityDomain
- domains(2)%ptr => pressureDomain
- CALL obj%Initiate(param=param, dom=domains)
+domains(1)%ptr => velocityDomain
+domains(2)%ptr => pressureDomain
+CALL obj%Initiate(param=param, dom=domains)
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
### Cleanup
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_4.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_4.md
index cc796762..e6bb4c66 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_4.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_4.md
@@ -23,41 +23,41 @@ PROGRAM main
```
```fortran
- TYPE( BlockMatrixField_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( Domain_ ), TARGET :: pressureDomain
- TYPE( Domain_ ), TARGET :: velocityDomain
- TYPE( DomainPointer_ ) :: domains( 2 )
- TYPE( HDF5File_ ) :: pressureMeshFile
- TYPE( HDF5File_ ) :: velocityMeshFile
- CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
+TYPE( BlockMatrixField_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( Domain_ ), TARGET :: pressureDomain
+TYPE( Domain_ ), TARGET :: velocityDomain
+TYPE( DomainPointer_ ) :: domains( 2 )
+TYPE( HDF5File_ ) :: pressureMeshFile
+TYPE( HDF5File_ ) :: velocityMeshFile
+CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL SetBlockMatrixFieldParam(param=param, name="K", &
- & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
- & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
- & matrixProp="UNSYM" )
+CALL FPL_INIT(); CALL param%Initiate()
+CALL SetBlockMatrixFieldParam(param=param, name="K", &
+ & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
+ & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
+ & matrixProp="UNSYM" )
```
```fortran
- CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
- CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
- CALL pressureMeshfile%Open()
- CALL velocityMeshfile%Open()
- CALL pressureDomain%Initiate( pressureMeshfile, "")
- CALL velocityDomain%Initiate( velocityMeshfile, "")
- CALL pressureMeshfile%Deallocate()
- CALL velocityMeshfile%Deallocate()
+CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
+CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
+CALL pressureMeshfile%Open()
+CALL velocityMeshfile%Open()
+CALL pressureDomain%Initiate( pressureMeshfile, "")
+CALL velocityDomain%Initiate( velocityMeshfile, "")
+ CALL pressureMeshfile%Deallocate()
+CALL velocityMeshfile%Deallocate()
```
```fortran
- domains(1)%ptr => velocityDomain
- domains(2)%ptr => pressureDomain
- CALL obj%Initiate(param=param, dom=domains)
- CALL obj%SPY("test_4", "png")
+domains(1)%ptr => velocityDomain
+domains(2)%ptr => pressureDomain
+CALL obj%Initiate(param=param, dom=domains)
+CALL obj%SPY("test_4", "png")
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_5.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_5.md
index 46319894..8bf65dd0 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_5.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_5.md
@@ -24,46 +24,46 @@ PROGRAM main
```
```fortran
- TYPE( BlockMatrixField_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( Domain_ ), TARGET :: pressureDomain
- TYPE( Domain_ ), TARGET :: velocityDomain
- TYPE( DomainPointer_ ) :: domains( 2 )
- TYPE( HDF5File_ ) :: pressureMeshFile
- TYPE( HDF5File_ ) :: velocityMeshFile
- TYPE( HDF5File_ ) :: blockMatrixOutfile
- CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
- CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
- & "./blockMatrixOutfile.h5"
+TYPE( BlockMatrixField_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( Domain_ ), TARGET :: pressureDomain
+TYPE( Domain_ ), TARGET :: velocityDomain
+TYPE( DomainPointer_ ) :: domains( 2 )
+TYPE( HDF5File_ ) :: pressureMeshFile
+TYPE( HDF5File_ ) :: velocityMeshFile
+TYPE( HDF5File_ ) :: blockMatrixOutfile
+CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
+CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
+ & "./blockMatrixOutfile.h5"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL SetBlockMatrixFieldParam(param=param, name="K", &
- & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
- & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
- & matrixProp="UNSYM" )
+CALL FPL_INIT(); CALL param%Initiate()
+CALL SetBlockMatrixFieldParam(param=param, name="K", &
+ & physicalVarNames=["V", "P"], spaceCompo=[2, 1], &
+ & timeCompo=[1,1], fieldType=FIELD_TYPE_NORMAL, &
+ & matrixProp="UNSYM" )
```
```fortran
- CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
- CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
- CALL pressureMeshfile%Open()
- CALL velocityMeshfile%Open()
- CALL pressureDomain%Initiate( pressureMeshfile, "")
- CALL velocityDomain%Initiate( velocityMeshfile, "")
- CALL pressureMeshfile%Deallocate()
- CALL velocityMeshfile%Deallocate()
+CALL pressureMeshfile%Initiate( FileName=pressureMeshFilename, MODE="READ" )
+CALL velocityMeshfile%Initiate( FileName=velocityMeshFilename, MODE="READ" )
+CALL pressureMeshfile%Open()
+CALL velocityMeshfile%Open()
+CALL pressureDomain%Initiate( pressureMeshfile, "")
+CALL velocityDomain%Initiate( velocityMeshfile, "")
+CALL pressureMeshfile%Deallocate()
+CALL velocityMeshfile%Deallocate()
```
```fortran
- domains(1)%ptr => velocityDomain
- domains(2)%ptr => pressureDomain
- CALL obj%Initiate(param=param, dom=domains)
- CALL blockMatrixOutfile%Initiate( blockMatrixOutfileName, "NEW" )
- CALL blockMatrixOutfile%open()
- CALL obj%Export(blockMatrixOutfile, "/BlockMatrixField")
+domains(1)%ptr => velocityDomain
+domains(2)%ptr => pressureDomain
+CALL obj%Initiate(param=param, dom=domains)
+CALL blockMatrixOutfile%Initiate( blockMatrixOutfileName, "NEW" )
+CALL blockMatrixOutfile%open()
+CALL obj%Export(blockMatrixOutfile, "/BlockMatrixField")
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_6.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_6.md
index 72612627..8b90bdc7 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_6.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_6.md
@@ -24,18 +24,18 @@ PROGRAM main
```
```fortran
- TYPE( BlockMatrixField_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( Domain_ ), TARGET :: pressureDomain
- TYPE( Domain_ ), TARGET :: velocityDomain
- TYPE( DomainPointer_ ) :: domains( 2 )
- TYPE( HDF5File_ ) :: pressureMeshFile
- TYPE( HDF5File_ ) :: velocityMeshFile
- TYPE( HDF5File_ ) :: blockMatrixOutfile
- CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
- CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
- & "./blockMatrixOutfile.h5"
+TYPE( BlockMatrixField_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( Domain_ ), TARGET :: pressureDomain
+TYPE( Domain_ ), TARGET :: velocityDomain
+TYPE( DomainPointer_ ) :: domains( 2 )
+TYPE( HDF5File_ ) :: pressureMeshFile
+TYPE( HDF5File_ ) :: velocityMeshFile
+TYPE( HDF5File_ ) :: blockMatrixOutfile
+CHARACTER( LEN = * ), PARAMETER :: pressureMeshFilename="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: velocityMeshFilename="./mesh_tri6.h5"
+CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
+ & "./blockMatrixOutfile.h5"
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_9.md b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_9.md
index 9b7371f6..ad664971 100644
--- a/docs/docs-api/BlockMatrixField/BlockMatrixField_test_9.md
+++ b/docs/docs-api/BlockMatrixField/BlockMatrixField_test_9.md
@@ -30,27 +30,27 @@ PROGRAM main
- [[BlockMatrixField_]]
```fortran
- TYPE( BlockMatrixField_ ) :: obj
- TYPE( Domain_ ) :: dom
- TYPE( HDF5File_ ) :: meshfile
- TYPE( HDF5File_ ) :: blockMatrixOutfile
- CHARACTER( LEN = * ), PARAMETER :: meshFilename="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
- & "./bmf_outfile_common_domain.h5"
+TYPE( BlockMatrixField_ ) :: obj
+TYPE( Domain_ ) :: dom
+TYPE( HDF5File_ ) :: meshfile
+TYPE( HDF5File_ ) :: blockMatrixOutfile
+CHARACTER( LEN = * ), PARAMETER :: meshFilename="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: blockMatrixOutfileName= &
+ & "./bmf_outfile_common_domain.h5"
```
```fortran
- CALL meshfile%Initiate( FileName=meshFilename, MODE="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "")
- CALL blockMatrixOutfile%Initiate( blockMatrixOutfileName, "READWRITE" )
- CALL blockMatrixOutfile%open()
- CALL obj%Import(blockMatrixOutfile, "/BlockMatrixField", dom=dom)
- CALL blockMatrixOutfile%Deallocate()
- CALL Display( obj%Shape(), "Shape : [426,426]")
- CALL Display( obj%SIZE(1), "SIZE : [426]")
- CALL Display( obj%SIZE(2), "SIZE : [426]")
- CALL Display( obj%SIZE(), "SIZE : [1,81,476]")
+CALL meshfile%Initiate( FileName=meshFilename, MODE="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "")
+CALL blockMatrixOutfile%Initiate( blockMatrixOutfileName, "READWRITE" )
+CALL blockMatrixOutfile%open()
+CALL obj%Import(blockMatrixOutfile, "/BlockMatrixField", dom=dom)
+CALL blockMatrixOutfile%Deallocate()
+CALL Display( obj%Shape(), "Shape : [426,426]")
+CALL Display( obj%SIZE(1), "SIZE : [426]")
+CALL Display( obj%SIZE(2), "SIZE : [426]")
+CALL Display( obj%SIZE(), "SIZE : [1,81,476]")
```
```fortran
diff --git a/docs/docs-api/BlockMatrixField/GetRow.md b/docs/docs-api/BlockMatrixField/GetRow.md
index 790add04..b2fccef1 100644
--- a/docs/docs-api/BlockMatrixField/GetRow.md
+++ b/docs/docs-api/BlockMatrixField/GetRow.md
@@ -43,7 +43,7 @@ calculated using the `globalNode`, `idof`, and `ivar`.
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -82,7 +82,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -121,7 +121,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -160,7 +160,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -199,7 +199,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -238,7 +238,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
diff --git a/docs/docs-api/BlockMatrixField/Initiate.md b/docs/docs-api/BlockMatrixField/Initiate.md
index a3f1b52d..c03b4981 100644
--- a/docs/docs-api/BlockMatrixField/Initiate.md
+++ b/docs/docs-api/BlockMatrixField/Initiate.md
@@ -51,9 +51,9 @@ contained inside param, which is an instance of [ParameterList_](../ParameterLis
In addition, [Domain_](../Domain/Domain_.md) `dom` is target to the pointer `obj%domain`.
- Param contains both essential and optional parameters which are used in
-constructing the matrix field
+ constructing the matrix field
- dom is a pointer to a domain, where we are interested in constructing the
-matrix
+ matrix
ESSENTIAL PARAMETERS are
@@ -107,8 +107,7 @@ Initiate by copying from other fields. This routine initiates the `obj` [MatrixF
If `copyFull, copyStructure, usePointer` are absent then this subroutine,
copies the value of the matrix from obj2 to obj.
-At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE.,
-usePointer=.TRUE.`, which equivalent to the default behavior.
+At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE., usePointer=.TRUE.`, which equivalent to the default behavior.
- [ ] TODO Add functionality for other options too.
diff --git a/docs/docs-api/BlockMatrixField/SetColumn.md b/docs/docs-api/BlockMatrixField/SetColumn.md
index 021b85eb..698ac351 100644
--- a/docs/docs-api/BlockMatrixField/SetColumn.md
+++ b/docs/docs-api/BlockMatrixField/SetColumn.md
@@ -40,9 +40,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -80,9 +80,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -120,9 +120,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -160,9 +160,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -240,9 +240,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/BlockMatrixField/SetRow.md b/docs/docs-api/BlockMatrixField/SetRow.md
index cf7fe684..b439a0b5 100644
--- a/docs/docs-api/BlockMatrixField/SetRow.md
+++ b/docs/docs-api/BlockMatrixField/SetRow.md
@@ -40,9 +40,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -80,9 +80,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -120,9 +120,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -160,9 +160,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -240,9 +240,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/BlockNodeField/Norm2.md b/docs/docs-api/BlockNodeField/Norm2.md
index 30c701f5..70c779d7 100644
--- a/docs/docs-api/BlockNodeField/Norm2.md
+++ b/docs/docs-api/BlockNodeField/Norm2.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/BlockNodeField/SetBlockNodeFieldParam.md b/docs/docs-api/BlockNodeField/SetBlockNodeFieldParam.md
index a411c1ff..03811361 100644
--- a/docs/docs-api/BlockNodeField/SetBlockNodeFieldParam.md
+++ b/docs/docs-api/BlockNodeField/SetBlockNodeFieldParam.md
@@ -49,14 +49,14 @@ END INTERFACE
Parameters required for constructing an instance of `BlockNodeField_` class are given below
-| name | data type | value | comment |
-|:------------- |:---------:|:--------------------:| -----------------------------:|
-| engine | String | `NATIVE_SERIAL` | |
+| name | data type | value | comment |
+| :-------------- | :-------: | :------------------: | ----------------------------: |
+| engine | String | `NATIVE_SERIAL` | |
| `name(:)` | String | | Name of the field |
| `fieldType(:)` | String | `NORMAL`, `CONSTANT` | |
| `spaceCompo(:)` | Integer | | Number of spatial component |
| `timeCompo(:)` | Integer | | Number of temporal components |
-| | | | |
+| | | | |
This routine sets the essential parameters required for constructing the `BlockNodeField_`.
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_10.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_10.md
index 42175f3f..e5c63563 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_10.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_10.md
@@ -70,6 +70,5 @@ END PROGRAM main
-------, -------,
50.0000, 60.0000,
50.0000, 60.0000,
-50.0000, 60.0000,
-
+50.0000, 60.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_12.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_12.md
index daeef7a1..526e30d7 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_12.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_12.md
@@ -66,6 +66,5 @@ END PROGRAM main
-------, -------,
10.0000, 10.0000,
10.0000, 10.0000,
-10.0000, 10.0000,
-
+10.0000, 10.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_14.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_14.md
index ed54a78f..87e86ca7 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_14.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_14.md
@@ -55,5 +55,5 @@ END PROGRAM main
-------, -------, -------, -------,
10.0000, 10.0000, 0.00000, 0.00000,
10.0000, 10.0000, 0.00000, 0.00000,
-10.0000, 10.0000, 0.00000, 0.00000,
+10.0000, 10.0000, 0.00000, 0.00000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_15.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_15.md
index 5ba6f62b..7159883f 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_15.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_15.md
@@ -62,6 +62,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 0.00000,
-
+20.0000, 0.00000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_16.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_16.md
index 9216eea8..baad19c1 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_16.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_16.md
@@ -63,6 +63,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 20.0000,
-
+20.0000, 20.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_17.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_17.md
index 68149225..bb8c7513 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_17.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_17.md
@@ -63,6 +63,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 0.0000,
-
+20.0000, 0.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_18.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_18.md
index c72767bc..958e1b5e 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_18.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_18.md
@@ -92,6 +92,5 @@ END PROGRAM main
--------, --------,
0.802354, 0.823593,
0.089697, 0.564551,
-0.028433, 0.357913,
-
+0.028433, 0.357913,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_2.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_2.md
index c0781153..6a4a712d 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_2.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_2.md
@@ -115,5 +115,5 @@ END PROGRAM main
0.0000, 0.0000,
0.0000, 0.0000,
0.0000, 0.0000,
-14.0000, 15.0000,
+14.0000, 15.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_24.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_24.md
index 93f71fb6..f46d22ef 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_24.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_24.md
@@ -96,5 +96,4 @@ value =
0.598803
0.752262
0.883365
-
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_3.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_3.md
index 2bed6d06..7213dc87 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_3.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_3.md
@@ -61,5 +61,5 @@ END PROGRAM main
10.0000, 10.0000,
.
.
-.
+.
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_4.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_4.md
index 6ba707b9..f40adb7f 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_4.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_4.md
@@ -63,6 +63,5 @@ END PROGRAM main
--------, --------,
0.938428, 0.427799,
0.240599, 0.588696,
-0.273588, 0.836468,
-
+0.273588, 0.836468,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_5.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_5.md
index f5b4fecf..922ad9e3 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_5.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_5.md
@@ -59,5 +59,5 @@ END PROGRAM main
-------, -------,
10.0000, 10.0000,
10.0000, 10.0000,
-10.0000, 10.0000,
+10.0000, 10.0000,
```
diff --git a/docs/docs-api/BlockNodeField/_BlockNodeField_test_7.md b/docs/docs-api/BlockNodeField/_BlockNodeField_test_7.md
index 96f028e7..31e9a2da 100644
--- a/docs/docs-api/BlockNodeField/_BlockNodeField_test_7.md
+++ b/docs/docs-api/BlockNodeField/_BlockNodeField_test_7.md
@@ -70,6 +70,5 @@ END PROGRAM main
-------, -------,
50.0000, 60.0000,
50.0000, 60.0000,
-50.0000, 60.0000,
-
+50.0000, 60.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/Norm2.md b/docs/docs-api/BlockNodeFieldLis/Norm2.md
index d0eeea3c..9b7eb47b 100644
--- a/docs/docs-api/BlockNodeFieldLis/Norm2.md
+++ b/docs/docs-api/BlockNodeFieldLis/Norm2.md
@@ -15,4 +15,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/BlockNodeFieldLis/SetBlockNodeFieldParam.md b/docs/docs-api/BlockNodeFieldLis/SetBlockNodeFieldParam.md
index a411c1ff..03811361 100644
--- a/docs/docs-api/BlockNodeFieldLis/SetBlockNodeFieldParam.md
+++ b/docs/docs-api/BlockNodeFieldLis/SetBlockNodeFieldParam.md
@@ -49,14 +49,14 @@ END INTERFACE
Parameters required for constructing an instance of `BlockNodeField_` class are given below
-| name | data type | value | comment |
-|:------------- |:---------:|:--------------------:| -----------------------------:|
-| engine | String | `NATIVE_SERIAL` | |
+| name | data type | value | comment |
+| :-------------- | :-------: | :------------------: | ----------------------------: |
+| engine | String | `NATIVE_SERIAL` | |
| `name(:)` | String | | Name of the field |
| `fieldType(:)` | String | `NORMAL`, `CONSTANT` | |
| `spaceCompo(:)` | Integer | | Number of spatial component |
| `timeCompo(:)` | Integer | | Number of temporal components |
-| | | | |
+| | | | |
This routine sets the essential parameters required for constructing the `BlockNodeField_`.
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_10.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_10.md
index 42175f3f..e5c63563 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_10.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_10.md
@@ -70,6 +70,5 @@ END PROGRAM main
-------, -------,
50.0000, 60.0000,
50.0000, 60.0000,
-50.0000, 60.0000,
-
+50.0000, 60.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_12.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_12.md
index daeef7a1..526e30d7 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_12.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_12.md
@@ -66,6 +66,5 @@ END PROGRAM main
-------, -------,
10.0000, 10.0000,
10.0000, 10.0000,
-10.0000, 10.0000,
-
+10.0000, 10.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_14.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_14.md
index ed54a78f..87e86ca7 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_14.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_14.md
@@ -55,5 +55,5 @@ END PROGRAM main
-------, -------, -------, -------,
10.0000, 10.0000, 0.00000, 0.00000,
10.0000, 10.0000, 0.00000, 0.00000,
-10.0000, 10.0000, 0.00000, 0.00000,
+10.0000, 10.0000, 0.00000, 0.00000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_15.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_15.md
index 5ba6f62b..7159883f 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_15.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_15.md
@@ -62,6 +62,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 0.00000,
-
+20.0000, 0.00000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_16.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_16.md
index 9216eea8..baad19c1 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_16.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_16.md
@@ -63,6 +63,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 20.0000,
-
+20.0000, 20.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_17.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_17.md
index 68149225..bb8c7513 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_17.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_17.md
@@ -63,6 +63,5 @@ END PROGRAM main
# VAR :P
DOF-5 , DOF-6 ,
-------, -------,
-20.0000, 0.0000,
-
+20.0000, 0.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_18.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_18.md
index c72767bc..958e1b5e 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_18.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_18.md
@@ -92,6 +92,5 @@ END PROGRAM main
--------, --------,
0.802354, 0.823593,
0.089697, 0.564551,
-0.028433, 0.357913,
-
+0.028433, 0.357913,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_2.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_2.md
index c0781153..6a4a712d 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_2.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_2.md
@@ -115,5 +115,5 @@ END PROGRAM main
0.0000, 0.0000,
0.0000, 0.0000,
0.0000, 0.0000,
-14.0000, 15.0000,
+14.0000, 15.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_24.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_24.md
index 93f71fb6..f46d22ef 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_24.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_24.md
@@ -96,5 +96,4 @@ value =
0.598803
0.752262
0.883365
-
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_3.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_3.md
index 2bed6d06..7213dc87 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_3.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_3.md
@@ -61,5 +61,5 @@ END PROGRAM main
10.0000, 10.0000,
.
.
-.
+.
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_4.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_4.md
index 6ba707b9..f40adb7f 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_4.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_4.md
@@ -63,6 +63,5 @@ END PROGRAM main
--------, --------,
0.938428, 0.427799,
0.240599, 0.588696,
-0.273588, 0.836468,
-
+0.273588, 0.836468,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_5.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_5.md
index f5b4fecf..922ad9e3 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_5.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_5.md
@@ -59,5 +59,5 @@ END PROGRAM main
-------, -------,
10.0000, 10.0000,
10.0000, 10.0000,
-10.0000, 10.0000,
+10.0000, 10.0000,
```
diff --git a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_7.md b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_7.md
index 96f028e7..31e9a2da 100644
--- a/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_7.md
+++ b/docs/docs-api/BlockNodeFieldLis/_BlockNodeField_test_7.md
@@ -70,6 +70,5 @@ END PROGRAM main
-------, -------,
50.0000, 60.0000,
50.0000, 60.0000,
-50.0000, 60.0000,
-
+50.0000, 60.0000,
```
diff --git a/docs/docs-api/CSRMatrix/Add.md b/docs/docs-api/CSRMatrix/Add.md
index c9fa139f..251d117c 100644
--- a/docs/docs-api/CSRMatrix/Add.md
+++ b/docs/docs-api/CSRMatrix/Add.md
@@ -8,7 +8,7 @@ $$
A = A + B
$$
-Calling example:
+Calling example:
```fortran
ADD(obj, nodenum(:), value(:,:), scale)
@@ -86,7 +86,7 @@ INTERFACE
REAL(DFP), INTENT(IN) :: scale
!! Scale is used to scale the Val before adding it to the obj
END SUBROUTINE add
-END INTERFACE
+END INTERFACE
```
@@ -158,7 +158,6 @@ END INTERFACE
-
## Interface 4
@@ -187,7 +186,6 @@ END INTERFACE
-
## Interface 5
@@ -219,7 +217,6 @@ END INTERFACE
-
## Interface 6
@@ -247,7 +244,6 @@ END INTERFACE
-
## Interface 7
@@ -288,7 +284,6 @@ END INTERFACE
-
## Interface 7
@@ -322,7 +317,6 @@ END INTERFACE
-
diff --git a/docs/docs-api/CSRMatrix/AtMatVec.md b/docs/docs-api/CSRMatrix/AtMatVec.md
index 7f884313..8b421b5f 100644
--- a/docs/docs-api/CSRMatrix/AtMatVec.md
+++ b/docs/docs-api/CSRMatrix/AtMatVec.md
@@ -1,4 +1,3 @@
-
# AtMatVec
This routine performs transpose matrix vector multiplication for csrmatrix ($A^T\ cdot x$).
diff --git a/docs/docs-api/CSRMatrix/GetILUD.md b/docs/docs-api/CSRMatrix/GetILUD.md
index 74e81949..2247adae 100644
--- a/docs/docs-api/CSRMatrix/GetILUD.md
+++ b/docs/docs-api/CSRMatrix/GetILUD.md
@@ -3,7 +3,7 @@
This routine computes the ILU factorization with standard threshold dropping: at ith step of elimination, an element `a(i,j)` in row i is dropped if it satisfies the following criterion:
$$
-\vert a(i,j) \vert < \text{ tol } \times \tilde{a}_{i},
+\vert a(i,j) \vert < \text{ tol } \times \tilde{a}_{i},
$$
where $\tilde{a}_{i}$ is average magnitude of elements in row i of `A`, which is given by:
diff --git a/docs/docs-api/CSRMatrix/Import.md b/docs/docs-api/CSRMatrix/Import.md
index 6a01b603..4ec5ac76 100644
--- a/docs/docs-api/CSRMatrix/Import.md
+++ b/docs/docs-api/CSRMatrix/Import.md
@@ -32,7 +32,7 @@ Consider the following `5x5` matrix:
0 10.5 0 0 0
0 0 .015 0 0
0 250.5 0 -280 33.32
-0 0 0 0 12
+0 0 0 0 12
```
In MM coordinate format this could be represented as follows.
diff --git a/docs/docs-api/CSRMatrix/Initiate.md b/docs/docs-api/CSRMatrix/Initiate.md
index 128288e0..2ecc8b51 100644
--- a/docs/docs-api/CSRMatrix/Initiate.md
+++ b/docs/docs-api/CSRMatrix/Initiate.md
@@ -51,7 +51,7 @@ END INTERFACE
If user has information about the number of rows `nrow`, number of columns `ncol` of sparse matrix, then the above interface can be used to initiate an instance of `CSRMatrix_`.
- `dof` and `matrixProp` are optional.
- - `dof` is DOF object, and it is used to initiate `obj%csr`, CSRSparsity field.
+ - `dof` is DOF object, and it is used to initiate `obj%csr`, CSRSparsity field.
diff --git a/docs/docs-api/CSRMatrix/LUTSolve.md b/docs/docs-api/CSRMatrix/LUTSolve.md
index da9c33f8..87bd5823 100644
--- a/docs/docs-api/CSRMatrix/LUTSolve.md
+++ b/docs/docs-api/CSRMatrix/LUTSolve.md
@@ -11,7 +11,6 @@ import TabItem from '@theme/TabItem';
```fortran
-
```
diff --git a/docs/docs-api/CSRMatrix/MatVec.md b/docs/docs-api/CSRMatrix/MatVec.md
index 04a1ab19..c831a38c 100644
--- a/docs/docs-api/CSRMatrix/MatVec.md
+++ b/docs/docs-api/CSRMatrix/MatVec.md
@@ -21,7 +21,6 @@ CALL MatVec(CSRMatrix_::obj, Real::x(:), Real::y(:))
:::
-
:::tip example 2
$$
@@ -34,8 +33,6 @@ CALL MatVec(CSRMatrix_::obj, Real::x(:), Real::y(:), Bool::addContribution, REAL
:::
-
-
## Interface 1
@@ -71,7 +68,6 @@ TODO
## Interface 2
-
diff --git a/docs/docs-api/CSRMatrix/MatrixMarketCoordinate.md b/docs/docs-api/CSRMatrix/MatrixMarketCoordinate.md
index b3498acb..4cad4046 100644
--- a/docs/docs-api/CSRMatrix/MatrixMarketCoordinate.md
+++ b/docs/docs-api/CSRMatrix/MatrixMarketCoordinate.md
@@ -17,7 +17,7 @@ Consider the following `5x5` matrix:
0 10.5 0 0 0
0 0 .015 0 0
0 250.5 0 -280 33.32
-0 0 0 0 12
+0 0 0 0 12
```
In MM coordinate format this could be represented as follows.
diff --git a/docs/docs-api/CSRMatrix/SetColumn.md b/docs/docs-api/CSRMatrix/SetColumn.md
index ad2f868e..8c16ff04 100644
--- a/docs/docs-api/CSRMatrix/SetColumn.md
+++ b/docs/docs-api/CSRMatrix/SetColumn.md
@@ -484,4 +484,3 @@ INTERFACE SetColumn
END SUBROUTINE csrMat_setColumn16
END INTERFACE SetColumn
```
-
diff --git a/docs/docs-api/CSRMatrix/SuperluLinSolve.md b/docs/docs-api/CSRMatrix/SuperluLinSolve.md
index 8027bcbf..f218bd0c 100644
--- a/docs/docs-api/CSRMatrix/SuperluLinSolve.md
+++ b/docs/docs-api/CSRMatrix/SuperluLinSolve.md
@@ -98,7 +98,6 @@ INTERFACE
!! if info equal to zero then success, else failure
END SUBROUTINE LinSolve2
END INTERFACE
-
```
```fortran
@@ -193,5 +192,4 @@ INTERFACE
!! if info equal to zero then success, else failure
END SUBROUTINE LinSolve4
END INTERFACE
-
```
diff --git a/docs/docs-api/CSRMatrix/SymSmallestEigenval.md b/docs/docs-api/CSRMatrix/SymSmallestEigenval.md
index 16ba55d4..abede50a 100644
--- a/docs/docs-api/CSRMatrix/SymSmallestEigenval.md
+++ b/docs/docs-api/CSRMatrix/SymSmallestEigenval.md
@@ -9,7 +9,7 @@ ans = SymSmallestEigenVal(CSRMatrix_::mat &
& [, char(2)::which, INTEGER::NCV, INTEGER::maxIter, REAL::tol])
ans = SymSmallestEigenVal(CSRMatrix_::mat, INTEGER::nev &
- [&, char(2)::which, INTEGER::NCV, INTEGER::maxIter, REAL::tol])
+ [&, char(2)::which, INTEGER::NCV, INTEGER::maxIter, REAL::tol])
```
## Interface
diff --git a/docs/docs-api/CSRMatrix/_SetSparsity_test_1.md b/docs/docs-api/CSRMatrix/_SetSparsity_test_1.md
index 174d6fcb..7c3d930f 100644
--- a/docs/docs-api/CSRMatrix/_SetSparsity_test_1.md
+++ b/docs/docs-api/CSRMatrix/_SetSparsity_test_1.md
@@ -1,4 +1,3 @@
-
```fortran
PROGRAM main
USE easifemBase
@@ -10,32 +9,32 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- obj = 2.0_DFP
+obj = 2.0_DFP
```
```fortran
- CALL Display( obj, "obj" )
- m2=obj
- CALL Display(m2, "test-4:")
+CALL Display( obj, "obj" )
+m2=obj
+CALL Display(m2, "test-4:")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/_SetSparsity_test_3.md b/docs/docs-api/CSRMatrix/_SetSparsity_test_3.md
index c7f1dde3..7e61fc58 100644
--- a/docs/docs-api/CSRMatrix/_SetSparsity_test_3.md
+++ b/docs/docs-api/CSRMatrix/_SetSparsity_test_3.md
@@ -17,49 +17,49 @@ PROGRAM main
```
```fortran
- CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
- CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
- CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
- CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
+CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
+CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
+CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
+CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
- CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
- CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
+CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
+CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/_Set_test_1.md b/docs/docs-api/CSRMatrix/_Set_test_1.md
index 2c196c10..aa2edbd8 100644
--- a/docs/docs-api/CSRMatrix/_Set_test_1.md
+++ b/docs/docs-api/CSRMatrix/_Set_test_1.md
@@ -19,77 +19,77 @@ PROGRAM main
"VV"
```fortran
- CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
- CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
- CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
- CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
+CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
+CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
+CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
+CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
```
"VP"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
- CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
- CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
+CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
+CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
```
"PV"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
```
"PP"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
```
```fortran
- CALL SetSparsity(obj)
+CALL SetSparsity(obj)
```
```fortran
- obj = 1.0_DFP
+obj = 1.0_DFP
```
```fortran
- CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
- m2 = 2.0_DFP
- CALL Set( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, value=m2)
- !!CALL Set( obj, 1, 1, 1, 1, 100.0_DFP )
- !!CALL Set( obj, 1, 1, 2, 2, 200.0_DFP )
- !!CALL Set( obj, 1, 1, 3, 3, 300.0_DFP )
+CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
+m2 = 2.0_DFP
+CALL Set( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, value=m2)
+!!CALL Set( obj, 1, 1, 1, 1, 100.0_DFP )
+!!CALL Set( obj, 1, 1, 2, 2, 200.0_DFP )
+!!CALL Set( obj, 1, 1, 3, 3, 300.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, 'test9:')
+m2=obj
+CALL Display(m2, 'test9:')
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/_Set_test_2.md b/docs/docs-api/CSRMatrix/_Set_test_2.md
index 2b1a4b5a..a4526fe1 100644
--- a/docs/docs-api/CSRMatrix/_Set_test_2.md
+++ b/docs/docs-api/CSRMatrix/_Set_test_2.md
@@ -9,57 +9,57 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'BOTH' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'BOTH' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/_Set_test_3.md b/docs/docs-api/CSRMatrix/_Set_test_3.md
index 44944181..f894a1fb 100644
--- a/docs/docs-api/CSRMatrix/_Set_test_3.md
+++ b/docs/docs-api/CSRMatrix/_Set_test_3.md
@@ -9,57 +9,57 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'RIGHT' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'RIGHT' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/_Set_test_4.md b/docs/docs-api/CSRMatrix/_Set_test_4.md
index 8f6ef2e2..a3a5167e 100644
--- a/docs/docs-api/CSRMatrix/_Set_test_4.md
+++ b/docs/docs-api/CSRMatrix/_Set_test_4.md
@@ -17,47 +17,47 @@ PROGRAM main
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'LEFT' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'LEFT' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/formats.md b/docs/docs-api/CSRMatrix/__Sparsekit/formats.md
index 52191423..2271c1e0 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/formats.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/formats.md
@@ -15,6 +15,6 @@ REAL :: A( : )
- `A(1:n)` contains the diagonal of the matrix.
- `A(n+2:nnz)` contains the nondiagonal elements of the matrix, stored ROWWISE.
-- `JA(n+2:nnz)` contains their column indices
+- `JA(n+2:nnz)` contains their column indices
- `JA(1:n+1)` Contains the pointer array for the nondiagonal, elements in A(n+1:nnz) and JA(n+2:nnz), i.e., for `i .LE. n+1` `JA(i)` points to beginning of row i in arrays A, JA.
- Here, nnz = number of nonzero elements+1
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/ilut.md b/docs/docs-api/CSRMatrix/__Sparsekit/ilut.md
index d53c5c05..c2d2e049 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/ilut.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/ilut.md
@@ -23,11 +23,11 @@ SAMPLE ACCELERATOR AND LU SOLVERS:
## ILUT
```fortran
- subroutine ilut(n,a,ja,ia,lfil,droptol,alu,jlu,ju,iwk,w,jw,ierr)
- implicit none
- integer n
- real*8 a(*),alu(*),w(n+1),droptol
- integer ja(*),ia(n+1),jlu(*),ju(n),jw(2*n),lfil,iwk,ierr
+subroutine ilut(n,a,ja,ia,lfil,droptol,alu,jlu,ju,iwk,w,jw,ierr)
+implicit none
+integer n
+real*8 a(*),alu(*),w(n+1),droptol
+integer ja(*),ia(n+1),jlu(*),ju(n),jw(2*n),lfil,iwk,ierr
```
Incomplete LU factorization with dual truncation mechanism.
@@ -72,11 +72,11 @@ The diagonal elements of the input matrix must be nonzero (at least 'structurall
## ILUTP
```fortran
- subroutine ilutp(n,a,ja,ia,lfil,droptol,permtol,mbloc,alu,
- jlu,ju,iwk,w,jw,iperm,ierr)
- integer n,ja(*),ia(n+1),lfil,jlu(*),ju(n),jw(2*n),iwk,
- iperm(2*n),ierr
- real*8 a(*), alu(*), w(n+1), droptol
+subroutine ilutp(n,a,ja,ia,lfil,droptol,permtol,mbloc,alu,
+ jlu,ju,iwk,w,jw,iperm,ierr)
+ integer n,ja(*),ia(n+1),lfil,jlu(*),ju(n),jw(2*n),iwk,
+ iperm(2*n),ierr
+ real*8 a(*), alu(*), w(n+1), droptol
```
LUTP preconditioner: ILUT with pivoting, incomplete LU factorization with dual truncation mechanism
@@ -119,9 +119,9 @@ To avoid permuting the solution vectors arrays for each lu-solve, the matrix a i
To permute the matrix back to its original state use the loop:
```fortran
- do k=ia(1), ia(n+1)-1
- ja(k) = iperm(ja(k))
- enddo
+do k=ia(1), ia(n+1)-1
+ ja(k) = iperm(ja(k))
+enddo
```
## ILUD
@@ -129,11 +129,11 @@ To permute the matrix back to its original state use the loop:
ILUD preconditioner: incomplete LU factorization with standard droppoing strategy
```fortran
- subroutine ilud(n,a,ja,ia,alph,tol,alu,jlu,ju,iwk,w,jw,ierr)
- implicit none
- integer n
- real*8 a(*),alu(*),w(2*n),tol, alph
- integer ja(*),ia(n+1),jlu(*),ju(n),jw(2*n),iwk,ierr
+subroutine ilud(n,a,ja,ia,alph,tol,alu,jlu,ju,iwk,w,jw,ierr)
+implicit none
+integer n
+real*8 a(*),alu(*),w(2*n),tol, alph
+integer ja(*),ia(n+1),jlu(*),ju(n),jw(2*n),iwk,ierr
```
> This routine computes the ILU factorization with standard threshold dropping: at ith step of elimination, an element a(i,j) in row i is dropped if it satisfies the criterion:
@@ -179,12 +179,12 @@ WORK ARRAYS
ILUDP preconditioner, incomplete LU factorization with standard droppoing strategy.
```fortran
- subroutine iludp(n,a,ja,ia,alph,droptol,permtol,mbloc,alu,
- jlu,ju,iwk,w,jw,iperm,ierr)
- implicit none
- integer n,ja(*),ia(n+1),mbloc,jlu(*),ju(n),jw(2*n),iwk,
- iperm(2*n),ierr
- real*8 a(*), alu(*), w(2*n), alph, droptol, permtol
+subroutine iludp(n,a,ja,ia,alph,droptol,permtol,mbloc,alu,
+jlu,ju,iwk,w,jw,iperm,ierr)
+implicit none
+integer n,ja(*),ia(n+1),mbloc,jlu(*),ju(n),jw(2*n),iwk,
+iperm(2*n),ierr
+real*8 a(*), alu(*), w(2*n), alph, droptol, permtol
```
ON ENTRY
@@ -235,11 +235,11 @@ enddo
ILU WITH LEVEL OF FILL-IN OF K (ILU(k))
```fortran
- subroutine iluk(n,a,ja,ia,lfil,alu,jlu,ju,levs,iwk,w,jw,ierr)
- implicit none
- integer n
- real*8 a(*),alu(*),w(n)
- integer ja(*),ia(n+1),jlu(*),ju(n),levs(*),jw(3*n),lfil,iwk,ierr
+subroutine iluk(n,a,ja,ia,lfil,alu,jlu,ju,levs,iwk,w,jw,ierr)
+implicit none
+integer n
+real*8 a(*),alu(*),w(n)
+integer ja(*),ia(n+1),jlu(*),ju(n),levs(*),jw(3*n),lfil,iwk,ierr
```
ON ENTRY
@@ -284,9 +284,9 @@ This is not implemented efficiently storage-wise. For example: Only the part of
## LUSOL
```fortran
- subroutine lusol(n, y, x, alu, jlu, ju)
- real*8 x(n), y(n), alu(*)
- integer n, jlu(*), ju(*)
+subroutine lusol(n, y, x, alu, jlu, ju)
+ real*8 x(n), y(n), alu(*)
+integer n, jlu(*), ju(*)
```
This routine solves the system `LU x = y`, given an LU decomposition of a matrix stored in (`ALU, JLU, JU`) modified sparse row format (MSR)
@@ -308,9 +308,9 @@ Routine is in place: `CALL LUSOL (n, x, x, alu, jlu, ju)` will solve the system
## LUTSOL
```fortran
- subroutine lutsol(n, y, x, alu, jlu, ju)
- real*8 x(n), y(n), alu(*)
- integer n, jlu(*), ju(*)
+subroutine lutsol(n, y, x, alu, jlu, ju)
+ real*8 x(n), y(n), alu(*)
+integer n, jlu(*), ju(*)
```
This routine solves the system Transp(LU) x = y, given an LU decomposition of a matrix stored in (alu, jlu, ju) modified sparse row format. Transp(M) is the transpose of M.
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/inout.md b/docs/docs-api/CSRMatrix/__Sparsekit/inout.md
index 0b5dbc23..f98a38cc 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/inout.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/inout.md
@@ -2,19 +2,19 @@
This page provides the documentation of `inout.f`. The contents of this module are described below.
-| Routine | Description |
-|---|---|
-| `READMT` | reads matrices in the Boeing/Harwell format. |
-| `PRTMT` | prints matrices in the Boeing/Harwell format. |
-| `DUMP` | outputs matrix rows in a simple format (debugging purposes)|
-| `PSPLTM` | generates a post-script plot of the non-zero pattern of A |
-| `PLTMT` | produces a 'pic' file for plotting a sparse matrix |
-| `SMMS` | write the matrx in a format used in SMMS package |
-| `READSM` | reads matrics in coordinate format (as in SMMS package) |
-| `READSK` | reads matrices in CSR format (simplified H/B formate). |
-| `SKIT` | writes matrics to a file, format same as above. |
-| `PRTUNF` | writes matrics (in CSR format) unformatted |
-| `READUNF`| reads unformatted data of matrics (in CSR format) |
+| Routine | Description |
+| --------- | ----------------------------------------------------------- |
+| `READMT` | reads matrices in the Boeing/Harwell format. |
+| `PRTMT` | prints matrices in the Boeing/Harwell format. |
+| `DUMP` | outputs matrix rows in a simple format (debugging purposes) |
+| `PSPLTM` | generates a post-script plot of the non-zero pattern of A |
+| `PLTMT` | produces a 'pic' file for plotting a sparse matrix |
+| `SMMS` | write the matrx in a format used in SMMS package |
+| `READSM` | reads matrics in coordinate format (as in SMMS package) |
+| `READSK` | reads matrices in CSR format (simplified H/B formate). |
+| `SKIT` | writes matrics to a file, format same as above. |
+| `PRTUNF` | writes matrics (in CSR format) unformatted |
+| `READUNF` | reads unformatted data of matrics (in CSR format) |
## DUMP
@@ -32,34 +32,34 @@ on entry:
- i1 = first row (column) to print out
- i2 = last row (column) to print out
- values = logical. indicates whether or not to print real values.
-- iout = logical unit number for output. the output file iout will have written in it the rows or columns
-of the matrix in one of two possible formats (depending on the max number of elements per row. The values are output with only two digits of accuracy)
+- iout = logical unit number for output. the output file iout will have written in it the rows or columns
+ of the matrix in one of two possible formats (depending on the max number of elements per row. The values are output with only two digits of accuracy)
## PSPLTM
```fortran
- subroutine pspltm(nrow,ncol,mode,ja,ia,title,ptitle,size,munt,
- nlines,lines,iunt)
- integer nrow,ncol,ptitle,mode,iunt, ja(*), ia(*), lines(nlines)
- real size
- character title*(*), munt*2
+subroutine pspltm(nrow,ncol,mode,ja,ia,title,ptitle,size,munt,
+ nlines,lines,iunt)
+ integer nrow,ncol,ptitle,mode,iunt, ja(*), ia(*), lines(nlines)
+ real size
+ character title*(*), munt*2
```
PSPLTM - PostScript PLoTer of a (sparse) Matrix. This version by loris renggli (renggli@masg1.epfl.ch), Dec 1991 and Youcef Saad.
input arguments description
-- `NROW` = number of rows in matrix
-- `NCOL` = number of columns in matrix
-- `MODE` = integer indicating whether the matrix is stored in CSR mode (mode=0) or CSC mode (mode=1) or MSR mode (mode=2)
-- `JA` = column indices of nonzero elements when matrix is stored rowise. Row indices if stores column-wise.
-- `IA` = integer array of containing the pointers to the beginning of the columns in arrays a, ja.
-- `TITLE` = character*(*). a title of arbitrary length to be printed as a caption to the figure. Can be a blank character if no caption is desired.
+- `NROW` = number of rows in matrix
+- `NCOL` = number of columns in matrix
+- `MODE` = integer indicating whether the matrix is stored in CSR mode (mode=0) or CSC mode (mode=1) or MSR mode (mode=2)
+- `JA` = column indices of nonzero elements when matrix is stored rowise. Row indices if stores column-wise.
+- `IA` = integer array of containing the pointers to the beginning of the columns in arrays a, ja.
+- `TITLE` = character*(*). a title of arbitrary length to be printed as a caption to the figure. Can be a blank character if no caption is desired.
- `PTITLE` = position of title; 0 under the drawing, else above
-- `SIZE` = size of the drawing
-- `MUNT` = units used for size : 'cm' or 'in'
+- `SIZE` = size of the drawing
+- `MUNT` = units used for size : 'cm' or 'in'
- `NLINES` = number of separation lines to draw for showing a partionning of the matrix. enter zero if no partition lines are wanted.
-- `LINES` = integer array of length `nlines` containing the coordinates of the desired partition lines . The partitioning is symmetric: a horizontal line across the matrix will be drawn in between rows lines(i) and lines(i)+1 for i=1, 2, ..., nlines an a vertical line will be similarly drawn between columns lines(i) and lines(i)+1 for i=1,2,...,nlines
-- `IUNT` = logical unit number where to write the matrix into.
+- `LINES` = integer array of length `nlines` containing the coordinates of the desired partition lines . The partitioning is symmetric: a horizontal line across the matrix will be drawn in between rows lines(i) and lines(i)+1 for i=1, 2, ..., nlines an a vertical line will be similarly drawn between columns lines(i) and lines(i)+1 for i=1,2,...,nlines
+- `IUNT` = logical unit number where to write the matrix into.
-> Use of 'cm' assumes european format for paper size (21cm wide) and use of 'in' assumes american format (8.5in wide). The correct centering of the figure depends on the proper choice. Y.S.
\ No newline at end of file
+> Use of 'cm' assumes european format for paper size (21cm wide) and use of 'in' assumes american format (8.5in wide). The correct centering of the figure depends on the proper choice. Y.S.
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/iters.md b/docs/docs-api/CSRMatrix/__Sparsekit/iters.md
index ce91b069..d54d6e51 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/iters.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/iters.md
@@ -2,19 +2,19 @@
This page provides the documentation of `iters.f`. The contents of this module are described below.
-| Routine name | Description |
-|---|---|
-| CG | Conjugate Gradient Method |
-| CGNR | Conjugate Gradient Method (Normal Residual equation) |
-| BCG | Bi-Conjugate Gradient Method |
-| DBCG | BCG with partial pivoting |
-| BCGSTAB | BCG stabilized |
-| TFQMR | Transpose-Free Quasi-Minimum Residual method |
-| FOM | Full Orthogonalization Method |
-| GMRES | Generalized Minimum RESidual method |
-| FGMRES | Flexible version of Generalized Minimum |
-| | RESidual method |
-| DQGMRES | Direct versions of Quasi Generalize Minimum Residual method |
+| Routine name | Description |
+| ------------ | ----------------------------------------------------------- |
+| CG | Conjugate Gradient Method |
+| CGNR | Conjugate Gradient Method (Normal Residual equation) |
+| BCG | Bi-Conjugate Gradient Method |
+| DBCG | BCG with partial pivoting |
+| BCGSTAB | BCG stabilized |
+| TFQMR | Transpose-Free Quasi-Minimum Residual method |
+| FOM | Full Orthogonalization Method |
+| GMRES | Generalized Minimum RESidual method |
+| FGMRES | Flexible version of Generalized Minimum |
+| | RESidual method |
+| DQGMRES | Direct versions of Quasi Generalize Minimum Residual method |
- They are preconditioned iterative solvers with reverse communication. The preconditioners can be applied from either from left or right or both (specified by ipar(2), see below).
@@ -23,26 +23,26 @@ WORK SPACE REQUIREMENT
Work space required by each of the iterative solver routines is as follows:
```fortran
- CG == 5 * n
- CGNR == 5 * n
- BCG == 7 * n
- DBCG == 11 * n
- BCGSTAB == 8 * n
- TFQMR == 11 * n
- FOM == (n+3)*(m+2) + (m+1)*m/2 (m = ipar(5), default m=15)
- GMRES == (n+3)*(m+2) + (m+1)*m/2 (m = ipar(5), default m=15)
- FGMRES == 2*n*(m+1) + (m+1)*m/2 + 3*m + 2 (m = ipar(5),
- default m=15)
- DQGMRES == n + lb * (2*n+4) (lb=ipar(5)+1, default lb = 16)
+CG == 5 * n
+CGNR == 5 * n
+BCG == 7 * n
+DBCG == 11 * n
+BCGSTAB == 8 * n
+TFQMR == 11 * n
+FOM == (n+3)*(m+2) + (m+1)*m/2 (m = ipar(5), default m=15)
+GMRES == (n+3)*(m+2) + (m+1)*m/2 (m = ipar(5), default m=15)
+FGMRES == 2*n*(m+1) + (m+1)*m/2 + 3*m + 2 (m = ipar(5),
+ default m=15)
+DQGMRES == n + lb * (2*n+4) (lb=ipar(5)+1, default lb = 16)
```
- ALL iterative solvers require a user-supplied DOT-product routine named `DISTDOT`. The prototype of `DISTDOT` is exactly the same as that of `DDOT` from `BLAS-1`. It should have same functionality as DDOT on a single processor machine.
- On a parallel/distributed environment, each processor can perform DDOT on the data it has, then perform a summation on all the partial results.
```fortran
- real*8 function distdot(n,x,ix,y,iy)
- integer n, ix, iy
- real*8 x(1+(n-1)*ix), y(1+(n-1)*iy)
+real*8 function distdot(n,x,ix,y,iy)
+integer n, ix, iy
+real*8 x(1+(n-1)*ix), y(1+(n-1)*iy)
```
- To use this set of routines under SPMD/MIMD program paradigm, several things are to be noted:
@@ -55,8 +55,8 @@ REVERSE COMMUNICATION PROTOCOLS:
When a reverse-communication routine returns, it could be either that the routine has terminated or it simply requires the caller to perform one matrix-vector multiplication. The possible matrices that involve in the matrix-vector multiplications are:
-- A (the matrix of the linear system),
-- A^T (A transposed),
+- A (the matrix of the linear system),
+- A^T (A transposed),
- Ml^{-1} (inverse of the left preconditioner),
- Ml^{-T} (inverse of the left preconditioner transposed),
- Mr^{-1} (inverse of the right preconditioner),
@@ -75,36 +75,36 @@ A call to the solver with ipar(1) == 0 will initialize the iterative solver. On
- a positive value indicates the solver requires a matrix-vector multiplication. Here is the current definition:
-| IPAR(1) | MEANING |
-|---|---|
-| 0 | normal termination of the solver, satisfied the stopping criteria |
-| 1 | request a matvec with A |
-| 2 | request a matvec with A^T |
-| 3 | request a left preconditioner solve (Ml^{-1}) |
-| 4 | request a left preconditioner transposed solve (Ml^{-T}) |
-| 5 | request a right preconditioner solve (Mr^{-1}) |
-| 6 | request a right preconditioner transposed solve (Mr^{-T}) |
-| 10 | request the caller to perform stopping test |
+| IPAR(1) | MEANING |
+| ------- | ----------------------------------------------------------------- |
+| 0 | normal termination of the solver, satisfied the stopping criteria |
+| 1 | request a matvec with A |
+| 2 | request a matvec with A^T |
+| 3 | request a left preconditioner solve (Ml^{-1}) |
+| 4 | request a left preconditioner transposed solve (Ml^{-T}) |
+| 5 | request a right preconditioner solve (Mr^{-1}) |
+| 6 | request a right preconditioner transposed solve (Mr^{-T}) |
+| 10 | request the caller to perform stopping test |
- a non-positive (<=0) value indicates termination of the solver.
-| IPAR(1) | MEANING |
-|---|---|
-| -1 | termination because iteration number is greater than the preset limit |
-| -2 | return due to insufficient work space |
-| -3 | return due to anticipated break-down / divide by zero |
-| -4 | the values of `fpar(1)` and `fpar(2)` are both <= 0, the valid ranges are `0 <= fpar(1) < 1`, `0 <= fpar(2)`, and they can not be zero at the same time |
-| -9 | while trying to detect a break-down, an abnormal number is detected |
-| -10 | return due to some non-numerical reasons, e.g. invalid floating-point numbers etc |
+| IPAR(1) | MEANING |
+| ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| -1 | termination because iteration number is greater than the preset limit |
+| -2 | return due to insufficient work space |
+| -3 | return due to anticipated break-down / divide by zero |
+| -4 | the values of `fpar(1)` and `fpar(2)` are both <= 0, the valid ranges are `0 <= fpar(1) < 1`, `0 <= fpar(2)`, and they can not be zero at the same time |
+| -9 | while trying to detect a break-down, an abnormal number is detected |
+| -10 | return due to some non-numerical reasons, e.g. invalid floating-point numbers etc |
### IPAR(2) : status of the preconditioning
-| IPAR(2) | MEANING |
-|---|---|
-| 0 | no preconditioning |
-| 1 | left preconditioning only |
-| 2 | right preconditioning only |
-| 3 | both left and right preconditioning |
+| IPAR(2) | MEANING |
+| ------- | ----------------------------------- |
+| 0 | no preconditioning |
+| 1 | left preconditioning only |
+| 2 | right preconditioning only |
+| 3 | both left and right preconditioning |
### IPAR(3) : stopping criteria
@@ -117,13 +117,13 @@ The convergence test type is indicated by `IPAR(3)`. There are four type converg
Here is the complete definition:
-| IPAR(3) | Comments |
-|---|---|
-| -2 | NORM( dx ) <= rtol * NORM( rhs ) + atol |
-| -1 | NORM( dx ) <= rtol * NORM( dx0 ) + atol |
-| 0 | solver will choose test 1 (next) |
-| 1 | NORM(residual) <= rtol * NORM( residual0 ) + atol |
-| 2 | NORM( residual ) <= rtol * NORM( rhs ) + atol |
+| IPAR(3) | Comments |
+| ------- | ------------------------------------------------- |
+| -2 | NORM( dx ) <= rtol * NORM( rhs ) + atol |
+| -1 | NORM( dx ) <= rtol * NORM( dx0 ) + atol |
+| 0 | solver will choose test 1 (next) |
+| 1 | NORM(residual) <= rtol * NORM( residual0 ) + atol |
+| 2 | NORM( residual ) <= rtol * NORM( rhs ) + atol |
### IPAR(4) : Size of workspace
@@ -161,7 +161,7 @@ the result of the external convergence test. On final return from the iterative
### IPAR(12)
- error code of MGSRO, it is:
+error code of MGSRO, it is:
- 1 if the input vector to MGSRO is linear combination of others,
- 0 if MGSRO was successful,
@@ -249,13 +249,13 @@ The convergence test type is indicated by `ipar(3)`. There are four type converg
Here is the complete definition:
-| IPAR(3) | Comments |
-|---|---|
-| -2 | NORM( dx ) <= rtol * NORM( rhs ) + atol |
-| -1 | NORM( dx ) <= rtol * NORM( dx0 ) + atol |
-| 0 | solver will choose test 1 (next) |
-| 1 | NORM(residual) <= rtol * NORM( residual0 ) + atol |
-| 2 | NORM( residual ) <= rtol * NORM( rhs ) + atol |
+| IPAR(3) | Comments |
+| ------- | ------------------------------------------------- |
+| -2 | NORM( dx ) <= rtol * NORM( rhs ) + atol |
+| -1 | NORM( dx ) <= rtol * NORM( dx0 ) + atol |
+| 0 | solver will choose test 1 (next) |
+| 1 | NORM(residual) <= rtol * NORM( residual0 ) + atol |
+| 2 | NORM( residual ) <= rtol * NORM( rhs ) + atol |
Where, rtol = fpar(1) and atol = fpar(2).
@@ -266,9 +266,9 @@ If the caller is to perform the convergence test, the outcome should be stored i
Upon return with ipar(1) = 10,
-- `ipar(8)` points to the starting position of the change in solution Sx, where the actual solution of the step is `x_j = x_0 + M_r^{-1} Sx`.
+- `ipar(8)` points to the starting position of the change in solution Sx, where the actual solution of the step is `x_j = x_0 + M_r^{-1} Sx`.
- Exception: `ipar(8)` < 0, Sx = 0. It is mostly used by GMRES and variants to indicate (1) Sx was not necessary, (2) intermediate result of Sx is not computed.
-- ipar(9) points to the starting position of a work vector that can be used by the caller.
+- ipar(9) points to the starting position of a work vector that can be used by the caller.
> The caller should allow the iterative solver to perform clean up job after the external convergence test is satisfied, since some of the iterative solvers do not directly update the 'sol' array. A typical clean-up stage includes performing the final update of the approximate solution and computing the convergence information (e.g. values of fpar(3:7)).
> `fpar(4)` and `fpar(6)` are not set by the accelerators (the routines implemented here) if `ipar(3) = 999`.
@@ -326,15 +326,15 @@ This segment of pseudo-code assumes the matrix is in CSR format, `AMUX` and `ATM
## CG
```fortran
- subroutine cg(n, rhs, sol, ipar, fpar, w)
- implicit none
- integer n, ipar(16)
- real*8 rhs(n), sol(n), fpar(16), w(n,*)
+subroutine cg(n, rhs, sol, ipar, fpar, w)
+implicit none
+integer n, ipar(16)
+real*8 rhs(n), sol(n), fpar(16), w(n,*)
```
- This is a implementation of the Conjugate Gradient (CG) method for solving linear system.
-This is not the PCG algorithm. It is a regular CG algorithm. To be consistent with the other solvers, the preconditioners are applied by performing Ml^{-1} A Mr^{-1} P in place of A P in the CG algorithm. PCG uses the preconditioner differently.
+This is not the PCG algorithm. It is a regular CG algorithm. To be consistent with the other solvers, the preconditioners are applied by performing Ml^{-1} A Mr^{-1} P in place of A P in the CG algorithm. PCG uses the preconditioner differently.
- fpar(7) is used here internally to store .
- w(:,1) -- residual vector
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/matvec.md b/docs/docs-api/CSRMatrix/__Sparsekit/matvec.md
index 81736b36..e25c60ee 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/matvec.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/matvec.md
@@ -2,24 +2,24 @@
This page provides the documentation of `matvec.f`. The contents of this module are described below.
-| subroutine | description |
-|---|---|
-| `AMUX` | A times a vector. Compressed Sparse Row (CSR) format. |
-| `AMUXMS` | A times a vector. Modified Compress Sparse Row format. |
-| `ATMUX` | `Transp(A)` times a vector. CSR format. |
-| `ATMUXR` | `Transp(A)` times a vector. CSR format. A rectangular. |
-| `VBRMV` | Sparse matrix-full vector product, in VBR format |
-| `LDSOL` | Lower Triang. solve. Modified Sparse Row (MSR) format. |
-| `LDSOLL` | Lower Triang. solve with level scheduling. MSR format. |
-| `USOL` | Unit Upper Triang. solve. Compressed Sparse Row (CSR) format.|
-| `UDSOL` | Upper Triang. solve. Modified Sparse Row (MSR) format. |
+| subroutine | description |
+| ---------- | ------------------------------------------------------------- |
+| `AMUX` | A times a vector. Compressed Sparse Row (CSR) format. |
+| `AMUXMS` | A times a vector. Modified Compress Sparse Row format. |
+| `ATMUX` | `Transp(A)` times a vector. CSR format. |
+| `ATMUXR` | `Transp(A)` times a vector. CSR format. A rectangular. |
+| `VBRMV` | Sparse matrix-full vector product, in VBR format |
+| `LDSOL` | Lower Triang. solve. Modified Sparse Row (MSR) format. |
+| `LDSOLL` | Lower Triang. solve with level scheduling. MSR format. |
+| `USOL` | Unit Upper Triang. solve. Compressed Sparse Row (CSR) format. |
+| `UDSOL` | Upper Triang. solve. Modified Sparse Row (MSR) format. |
## AMUX
```fortran
- subroutine amux (n, x, y, a,ja,ia)
- real*8 x(*), y(*), a(*)
- integer n, ja(*), ia(*)
+subroutine amux (n, x, y, a,ja,ia)
+real*8 x(*), y(*), a(*)
+integer n, ja(*), ia(*)
```
Multiplies a matrix by a vector using the dot product form Matrix A is stored in compressed sparse row storage.
@@ -57,9 +57,9 @@ ON RETURN
## ATMUX
```fortran
- subroutine atmux (n, x, y, a,ja,ia)
- real*8 x(*), y(*), a(*)
- integer n, ja(*), ia(*)
+subroutine atmux (n, x, y, a,ja,ia)
+real*8 x(*), y(*), a(*)
+integer n, ja(*), ia(*)
```
This routine multiplies the transpose of a matrix by a vector when the original matrix is stored in compressed sparse row storage. Can also be viewed as the product of a matrix by a vector when the original matrix is stored in the compressed sparse column format.
@@ -77,9 +77,9 @@ ON RETURN
## ATMUXR
```fortran
- subroutine atmuxr (m, n, x, y, a, ja, ia)
- real*8 x(*), y(*), a(*)
- integer m, n, ia(*), ja(*)
+subroutine atmuxr (m, n, x, y, a, ja, ia)
+real*8 x(*), y(*), a(*)
+integer m, n, ia(*), ja(*)
```
This routien multiplies transp( A ) and a vector, where A can be rectangular.
diff --git a/docs/docs-api/CSRMatrix/__Sparsekit/unary.md b/docs/docs-api/CSRMatrix/__Sparsekit/unary.md
index 61d52629..e31f3999 100644
--- a/docs/docs-api/CSRMatrix/__Sparsekit/unary.md
+++ b/docs/docs-api/CSRMatrix/__Sparsekit/unary.md
@@ -2,53 +2,53 @@
This page provides the documentation of `unary.f`. The contents of this module are described below.
-| subroutine | description |
-|---|---|
-| `SUBMAT` | extracts a submatrix from a sparse matrix |
-| `FILTER` | filters elements from a matrix according to their magnitude |
-| `CSORT` | sorts the elements in increasing order of columns |
-| `CLNCSR` | clean up the CSR format matrix, remove duplicate entry, etc |
-| `TRANSP` | in-place transposition routine |
-| `COPMAT` | copy of a matrix into another matrix (both stored csr) |
-| `GETELM` | returns a(i,j) for any (i,j) from a CSR-stored matrix. |
-| `GETDIA` | extracts a specified diagonal from a matrix. |
-| `GETL` | extracts lower triangular part |
-| `GETU` | extracts upper triangular part |
-| `LEVELS` | gets the level scheduling structure for lower triangular matrices |
-| `AMASK` | extracts C = A mask M |
-| `RPERM` | permutes the rows of a matrix (B = P A) |
-| `CPERM` | permutes the columns of a matrix (B = A Q) |
-| `DPERM` | permutes both the rows and columns of a matrix (B = P A Q ) |
-| `DPERM1` | general extraction routine (extracts arbitrary rows) |
-| `DPERM2` | general submatrix permutation/extraction routine |
-| `DVPERM` | permutes a real vector (in-place) |
-| `IVPERM` | permutes an integer vector (in-place) |
-| `RETMX` | returns the max absolute value in each row of the matrix |
-| `DIAPOS` | returns the positions of the diagonal elements in A. |
-| `EXTBDG` | extracts the main diagonal blocks of a matrix. |
-| `GETBWD` | returns the bandwidth information on a matrix. |
-| `BLKFND` | finds the block-size of a matrix. |
-| `BLKCHK` | checks whether a given integer is the block size of A. |
-| `INFDIA` | obtains information on the diagonals of A. |
-| `AMUBDG` | gets number of nonzeros in each row of A*B (as well as NNZ) |
-| `APLBDG` | gets number of nonzeros in each row of A+B (as well as NNZ) |
-| `RNRMS` | computes the norms of the rows of A |
-| `CNRMS` | computes the norms of the columns of A |
-| `ROSCAL` | scales the rows of a matrix by their norms. |
-| `COSCAL` | scales the columns of a matrix by their norms. |
-| `ADDBLK` | Adds a matrix B into a block of A. |
-| `GET1UP` | Collects the first elements of each row of the upper triangular portion of the matrix |
-| `XTROWS` | extracts given rows from a matrix in CSR format. |
-| `CSRKVSTR`| Finds block row partitioning of matrix in CSR format |
-| `CSRKVSTC`| Finds block column partitioning of matrix in CSR format |
-| `KVSTMERGE`| Merges block partitionings, for conformal row/col pattern |
+| subroutine | description |
+| ----------- | ------------------------------------------------------------------------------------- |
+| `SUBMAT` | extracts a submatrix from a sparse matrix |
+| `FILTER` | filters elements from a matrix according to their magnitude |
+| `CSORT` | sorts the elements in increasing order of columns |
+| `CLNCSR` | clean up the CSR format matrix, remove duplicate entry, etc |
+| `TRANSP` | in-place transposition routine |
+| `COPMAT` | copy of a matrix into another matrix (both stored csr) |
+| `GETELM` | returns a(i,j) for any (i,j) from a CSR-stored matrix. |
+| `GETDIA` | extracts a specified diagonal from a matrix. |
+| `GETL` | extracts lower triangular part |
+| `GETU` | extracts upper triangular part |
+| `LEVELS` | gets the level scheduling structure for lower triangular matrices |
+| `AMASK` | extracts C = A mask M |
+| `RPERM` | permutes the rows of a matrix (B = P A) |
+| `CPERM` | permutes the columns of a matrix (B = A Q) |
+| `DPERM` | permutes both the rows and columns of a matrix (B = P A Q ) |
+| `DPERM1` | general extraction routine (extracts arbitrary rows) |
+| `DPERM2` | general submatrix permutation/extraction routine |
+| `DVPERM` | permutes a real vector (in-place) |
+| `IVPERM` | permutes an integer vector (in-place) |
+| `RETMX` | returns the max absolute value in each row of the matrix |
+| `DIAPOS` | returns the positions of the diagonal elements in A. |
+| `EXTBDG` | extracts the main diagonal blocks of a matrix. |
+| `GETBWD` | returns the bandwidth information on a matrix. |
+| `BLKFND` | finds the block-size of a matrix. |
+| `BLKCHK` | checks whether a given integer is the block size of A. |
+| `INFDIA` | obtains information on the diagonals of A. |
+| `AMUBDG` | gets number of nonzeros in each row of A*B (as well as NNZ) |
+| `APLBDG` | gets number of nonzeros in each row of A+B (as well as NNZ) |
+| `RNRMS` | computes the norms of the rows of A |
+| `CNRMS` | computes the norms of the columns of A |
+| `ROSCAL` | scales the rows of a matrix by their norms. |
+| `COSCAL` | scales the columns of a matrix by their norms. |
+| `ADDBLK` | Adds a matrix B into a block of A. |
+| `GET1UP` | Collects the first elements of each row of the upper triangular portion of the matrix |
+| `XTROWS` | extracts given rows from a matrix in CSR format. |
+| `CSRKVSTR` | Finds block row partitioning of matrix in CSR format |
+| `CSRKVSTC` | Finds block column partitioning of matrix in CSR format |
+| `KVSTMERGE` | Merges block partitionings, for conformal row/col pattern |
## SUBMAT
```fortran
- subroutine submat (job,i1,i2,j1,j2,a,ja,ia,nr,nc,ao,jao,iao)
- integer job,i1,i2,j1,j2,nr,nc,ia(*),ja(*),jao(*),iao(*)
- real*8 a(*),ao(*)
+subroutine submat (job,i1,i2,j1,j2,a,ja,ia,nr,nc,ao,jao,iao)
+integer job,i1,i2,j1,j2,nr,nc,ia(*),ja(*),jao(*),iao(*)
+real*8 a(*),ao(*)
```
> extracts the submatrix A(i1:i2,j1:j2) and puts the result in matrix ao,iao,jao, In place: ao,jao,iao may be the same as a,ja,ia.
@@ -72,9 +72,9 @@ on output
## FILTER
```fortran
- subroutine filter(n,job,drptol,a,ja,ia,b,jb,ib,len,ierr)
- real*8 a(*),b(*),drptol
- integer ja(*),jb(*),ia(*),ib(*),n,job,len,ierr
+subroutine filter(n,job,drptol,a,ja,ia,b,jb,ib,len,ierr)
+real*8 a(*),b(*),drptol
+integer ja(*),jb(*),ia(*),ib(*),n,job,len,ierr
```
> This module removes any elements whose absolute value is small from an input matrix A and puts the resulting matrix in B. The input parameter job selects a definition of small.
@@ -82,7 +82,7 @@ on output
on entry:
- n = integer row dimension of matrix
-- job = integer. used to determine strategy chosen by caller to drop elements from matrix A.
+- job = integer. used to determine strategy chosen by caller to drop elements from matrix A.
- job = 1, Elements whose absolute value is less than the drop tolerance are removed.
- job = 2, Elements whose absolute value is less than the product of the drop tolerance and the Euclidean norm of the row are removed.
- job = 3, Elements whose absolute value is less that the product of the drop tolerance and the largest element in the row are removed.
@@ -111,20 +111,20 @@ subroutine csort (n,a,ja,ia,values)
real*8 a(*)
```
-> This routine sorts the elements of a matrix (stored in Compressed Sparse Row Format) in increasing order of their column indices within each row. It uses insertion sort algorithm.
+> This routine sorts the elements of a matrix (stored in Compressed Sparse Row Format) in increasing order of their column indices within each row. It uses insertion sort algorithm.
on entry:
-- n = the row dimension of the matrix
-- a = the matrix A in compressed sparse row format
-- ja = the array of column indices of the elements in array a
-- ia = the array of pointers to the rows
+- n = the row dimension of the matrix
+- a = the matrix A in compressed sparse row format
+- ja = the array of column indices of the elements in array a
+- ia = the array of pointers to the rows
- values= logical indicating whether or not the real values a(*) must also be permuted. if (.not. values) then the array a is not touched by csort and can be a dummy array
on return:
- the matrix stored in the structure a, ja, ia is permuted in such a way that the column indices are in increasing order within each row
-- iwork(1:nnz) contains the permutation used to rearrange the elements
+- iwork(1:nnz) contains the permutation used to rearrange the elements
## CLNCSR
@@ -160,9 +160,9 @@ On return:
## TRANSP
```fortran
- subroutine transp (nrow,ncol,a,ja,ia,iwk,ierr)
- integer nrow, ncol, ia(*), ja(*), iwk(*), ierr
- real*8 a(*)
+subroutine transp (nrow,ncol,a,ja,ia,iwk,ierr)
+ integer nrow, ncol, ia(*), ja(*), iwk(*), ierr
+ real*8 a(*)
```
> In-place transposition routine. This subroutine transposes a matrix stored in compressed sparse row format. the transposition is done in place in that the arrays a,ja,ia c of the transpose are overwritten onto the original arrays.
@@ -178,25 +178,25 @@ on entry:
on return:
-- `ncol` = actual row dimension of the transpose of the input matrix. Note that this may be .le. the input value for `ncol`, in case some of the last columns of the input matrix are zero columns. In the case where the actual number of rows found in `transp(A) ` exceeds the input value of `ncol`, `transp` will return without completing the transposition. see `ierr`.
+- `ncol` = actual row dimension of the transpose of the input matrix. Note that this may be .le. the input value for `ncol`, in case some of the last columns of the input matrix are zero columns. In the case where the actual number of rows found in `transp(A)` exceeds the input value of `ncol`, `transp` will return without completing the transposition. see `ierr`.
- `a,ja,ia` = contains the transposed matrix in compressed sparse row format. The row dimension of `a, ja, ia` is now ncol.
-- `ierr` = integer. error message. If the number of rows for the transposed matrix exceeds the input value of ncol, then ierr is set to that number and transp quits. Otherwise ierr is set to 0 (normal return).
+- `ierr` = integer. error message. If the number of rows for the transposed matrix exceeds the input value of ncol, then ierr is set to that number and transp quits. Otherwise ierr is set to 0 (normal return).
Note:
-1) If you do not need the transposition to be done in place it is preferrable to use the conversion routine csrcsc (see conversion routines in formats).
-2) the entries of the output matrix are not sorted (the column indices in each are not in increasing order) use csrcsc if you want them sorted.
+1. If you do not need the transposition to be done in place it is preferrable to use the conversion routine csrcsc (see conversion routines in formats).
+2. the entries of the output matrix are not sorted (the column indices in each are not in increasing order) use csrcsc if you want them sorted.
## GETELM
```fortran
- double precision function getelm (i,j,a,ja,ia,iadd,sorted)
- integer i, ia(*), iadd, j, ja(*)
- double precision a(*)
- logical sorted
+double precision function getelm (i,j,a,ja,ia,iadd,sorted)
+ integer i, ia(*), iadd, j, ja(*)
+ double precision a(*)
+ logical sorted
```
-> this function returns the element a(i,j) of a matrix a, for any pair (i,j). the matrix is assumed to be stored in compressed sparse row (csr) format. getelm performs a binary search in the case where it is known that the elements are sorted so that the column indices are in increasing order. also returns (in iadd) the address of the element a(i,j) in arrays a and ja when the search is successsful (zero if not).
+> this function returns the element a(i,j) of a matrix a, for any pair (i,j). the matrix is assumed to be stored in compressed sparse row (csr) format. getelm performs a binary search in the case where it is known that the elements are sorted so that the column indices are in increasing order. also returns (in iadd) the address of the element a(i,j) in arrays a and ja when the search is successsful (zero if not).
on entry:
@@ -210,7 +210,7 @@ on entry:
on return:
- getelm = value of a(i,j).
-- iadd = address of element a(i,j) in arrays a, ja if found, zero if not found. (output)
+- iadd = address of element a(i,j) in arrays a, ja if found, zero if not found. (output)
- note: the inputs i and j are not checked for validity.
## GETU
@@ -225,7 +225,7 @@ subroutine getu (n,a,ja,ia,ao,jao,iao)
on input
-- n = dimension of the matrix a.
+- n = dimension of the matrix a.
- a, ja, ia = matrix stored in a, ja, ia, format
On return:
@@ -240,9 +240,9 @@ Note:
## GETDIA
```fortran
- subroutine getdia (nrow,ncol,job,a,ja,ia,len,diag,idiag,ioff)
- real*8 diag(*),a(*)
- integer nrow, ncol, job, len, ioff, ia(*), ja(*), idiag(*)
+subroutine getdia (nrow,ncol,job,a,ja,ia,len,diag,idiag,ioff)
+real*8 diag(*),a(*)
+integer nrow, ncol, job, len, ioff, ia(*), ja(*), idiag(*)
```
> this subroutine extracts a given diagonal from a matrix stored in csr format. the output matrix may be transformed with the diagonal removed from it if desired (as indicated by job.) Our definition of a diagonal of matrix is a vector of length nrow (always) which contains the elements in rows 1 to nrow of the matrix that are contained in the diagonal offset by ioff with respect to the main diagonal. if the diagonal element falls outside the matrix then it is defined as a zero entry. Thus, the proper definition of diag(*) with offset ioff is : `diag(i) = a(i,ioff+i) i=1,2,...,nrow` with elements falling outside the matrix being defined as zero.
@@ -253,23 +253,23 @@ on entry:
- `ncol` = integer. the column dimension of the matrix a.
- `job` = integer. job indicator.
- if `job = 0` then the matrix `a, ja, ia`, is not altered on return.
- - if `job.ne.0` then getdia will remove the entries collected in diag from the original matrix. this is done in place.
+ - if `job.ne.0` then getdia will remove the entries collected in diag from the original matrix. this is done in place.
- `a,ja, ia` = matrix stored in compressed sparse row a,ja,ia,format
- `ioff` = integer,containing the offset of the wanted diagonal the diagonal extracted is the one corresponding to the entries `a(i,j)` with `j-i = ioff`. thus `ioff = 0` means the main diagonal
on return:
- `len` = number of nonzero elements found in diag. (len .le. min(nrow,ncol-ioff)-max(1,1-ioff) + 1 )
-- `diag` = real*8 array of length nrow containing the wanted diagonal. diag contains the diagonal (a(i,j),j-i = ioff ) as defined above.
-- `idiag` = integer array of length `len`, containing the poisitions in the original arrays `a` and `ja` of the diagonal elements collected in `diag`. a zero entry in `idiag(i)` means that there was no entry found in row i belonging to the diagonal.
+- `diag` = real*8 array of length nrow containing the wanted diagonal. diag contains the diagonal (a(i,j),j-i = ioff ) as defined above.
+- `idiag` = integer array of length `len`, containing the poisitions in the original arrays `a` and `ja` of the diagonal elements collected in `diag`. a zero entry in `idiag(i)` means that there was no entry found in row i belonging to the diagonal.
- `a, ja, ia` = if `job .ne. 0` the matrix is unchanged. otherwise the nonzero diagonal entries collected in diag are removed from the matrix and therefore the arrays `a, ja, ia` will change. (the matrix `a, ja, ia` will contain len fewer elements)
## GETL
```fortran
- subroutine getl (n,a,ja,ia,ao,jao,iao)
- integer n, ia(*), ja(*), iao(*), jao(*)
- real*8 a(*), ao(*)
+subroutine getl (n,a,ja,ia,ao,jao,iao)
+integer n, ia(*), ja(*), iao(*), jao(*)
+real*8 a(*), ao(*)
```
> this subroutine extracts the lower triangular part of a matrix and writes the result ao, jao, iao. The routine is in place in that ao, jao, iao can be the same as a, ja, ia if desired.
@@ -285,15 +285,15 @@ On return:
note:
-- the diagonal element is the last element in each row. i.e., in `a(ia(i+1)-1 )`
+- the diagonal element is the last element in each row. i.e., in `a(ia(i+1)-1 )`
- `ao, jao, iao` may be the same as `a, ja, ia` on entry, in which case getl will overwrite the result on `a, ja, ia`.
## GETU
```fortran
- subroutine getu (n,a,ja,ia,ao,jao,iao)
- integer n, ia(*), ja(*), iao(*), jao(*)
- real*8 a(*), ao(*)
+subroutine getu (n,a,ja,ia,ao,jao,iao)
+ integer n, ia(*), ja(*), iao(*), jao(*)
+ real*8 a(*), ao(*)
```
> This subroutine extracts the upper triangular part of a matrix and writes the result ao, jao, iao. The routine is in place in that ao, jao, iao can be the same as a, ja, ia if desired. on input:
@@ -307,5 +307,5 @@ On return:
note:
-- the diagonal element is the last element in each row. i.e. in `a(ia(i+1)-1 )`
-- `ao, jao, iao` may be the same as `a, ja, ia` on entry, in which case getu will overwrite the result on `a, ja, ia`.
\ No newline at end of file
+- the diagonal element is the last element in each row. i.e. in `a(ia(i+1)-1 )`
+- `ao, jao, iao` may be the same as `a, ja, ia` on entry, in which case getu will overwrite the result on `a, ja, ia`.
diff --git a/docs/docs-api/CSRMatrix/__test_CSRMatrix.md b/docs/docs-api/CSRMatrix/__test_CSRMatrix.md
index 58bf549d..23345ad8 100644
--- a/docs/docs-api/CSRMatrix/__test_CSRMatrix.md
+++ b/docs/docs-api/CSRMatrix/__test_CSRMatrix.md
@@ -1,5 +1,5 @@
! This program is a part of EASIFEM library
-! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
+! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
@@ -8,11 +8,11 @@
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
+! along with this program. If not, see
!
MODULE test_m
@@ -24,27 +24,25 @@ CONTAINS
!
!----------------------------------------------------------------------------
-
-
!----------------------------------------------------------------------------
!
!----------------------------------------------------------------------------
subroutine testFIDAPM005
! subroutine test0
- type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
- type( sparseMatrixReOrdering_ ) :: reorder
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call import( obj, "./matrixMarket/fidap005.mtx", SPARSE_FMT_COO )
- call spy( obj, "FIDAP005_BEFORE" )
- call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
- call spy( pmat, "FIDAP005_ILUD_BEFORE" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call spy( obj2, "FIDAP005_AFTER" )
- call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
- call spy( pmat2, "FIDAP005_ILUD_AFTER" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
+type( sparseMatrixReOrdering_ ) :: reorder
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call import( obj, "./matrixMarket/fidap005.mtx", SPARSE_FMT_COO )
+call spy( obj, "FIDAP005_BEFORE" )
+call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
+call spy( pmat, "FIDAP005_ILUD_BEFORE" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call spy( obj2, "FIDAP005_AFTER" )
+call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
+call spy( pmat2, "FIDAP005_ILUD_AFTER" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -53,19 +51,19 @@ end subroutine
! subroutine testFIDAPM05
subroutine test0
- type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
- type( sparseMatrixReOrdering_ ) :: reorder
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call import( obj, "./matrixMarket/fidapm05.mtx", SPARSE_FMT_COO )
- call SPY( obj, "FIDAPM05_BEFORE" )
- call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
- call SPY( pmat, "FIDAPM05_ILUD_BEFORE" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call SPY( obj2, "FIDAPM05_AFTER" )
- call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
- call SPY( pmat2, "FIDAPM05_ILUD_AFTER" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
+type( sparseMatrixReOrdering_ ) :: reorder
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call import( obj, "./matrixMarket/fidapm05.mtx", SPARSE_FMT_COO )
+call SPY( obj, "FIDAPM05_BEFORE" )
+call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
+call SPY( pmat, "FIDAPM05_ILUD_BEFORE" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call SPY( obj2, "FIDAPM05_AFTER" )
+call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
+call SPY( pmat2, "FIDAPM05_ILUD_AFTER" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -73,33 +71,33 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test22
- type( csrmatrix_ ) :: obj, obj2
- type( dof_ ) :: dofobj
- type( realMatrix_ ) :: rmat
- type( sparseMatrixReOrdering_ ) :: reorder
-
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*1, nrow=12*1, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- call SPY( obj, "sparse-before-nd" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call SPY( obj2, "sparse-after-nd" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+type( dof_ ) :: dofobj
+type( realMatrix_ ) :: rmat
+type( sparseMatrixReOrdering_ ) :: reorder
+
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*1, nrow=12*1, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+call SPY( obj, "sparse-before-nd" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call SPY( obj2, "sparse-after-nd" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -107,65 +105,65 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test21
- type( csrmatrix_ ) :: obj, obj2
- type( csrSparsity_ ) :: csr
- type( dof_ ) :: dofobj
- integer( i4b ) :: ii, nbr, jj, kk
- integer( i4b ), allocatable :: xadj( : ), adjncy( : ), perm( : ), iperm( : )
- type( realMatrix_ ) :: rmat
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[3], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*3, nrow=12*3, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- call SPY( obj, "sparse-before-nd" )
-
- call reallocate( xadj, size( obj, 1 ) + 1 )
- call reallocate( adjncy, getNNZ( obj ) )
-
- xadj( 1 ) = 1
- kk=0
- DO ii = 1, size( xadj )-1
- nbr = 0
- DO jj = obj%csr%IA( ii ), obj%csr%IA( ii+1 ) - 1
- IF( obj%csr%JA( jj ) .NE. ii ) THEN
- nbr = nbr + 1
- kk = kk + 1
- adjncy( kk ) = obj%csr%JA( jj )
- END IF
- END DO
- xadj( ii+1 ) = xadj( ii ) + nbr
- END DO
-
- ADJNCY = ADJNCY( 1:XADJ( size( xadj ) ) - 1 )
- CALL reallocate( perm, size( obj, 1 ), iperm, size( obj, 1 ) )
- CALL MetisNodeND( XADJ=XADJ, ADJNCY=ADJNCY, PERM=PERM, IPERM=IPERM )
- CALL Disp( x=PERM, title="PERM=", advance="NO", unit=stdout, style='left' )
- CALL Disp( x=IPERM, title="IPERM=", advance="DOUBLE", unit=stdout, style='left' )
-
- csr = obj%csr
- CALL initiate(obj=obj2, csr=csr )
- ! CALL setSparsity( obj2 )
-
- CALL CPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
- CALL RPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
- call SPY( obj2, "sparse-after-nd" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+type( csrSparsity_ ) :: csr
+type( dof_ ) :: dofobj
+integer( i4b ) :: ii, nbr, jj, kk
+integer( i4b ), allocatable :: xadj( : ), adjncy( : ), perm( : ), iperm( : )
+type( realMatrix_ ) :: rmat
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[3], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*3, nrow=12*3, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+call SPY( obj, "sparse-before-nd" )
+
+call reallocate( xadj, size( obj, 1 ) + 1 )
+call reallocate( adjncy, getNNZ( obj ) )
+
+xadj( 1 ) = 1
+kk=0
+DO ii = 1, size( xadj )-1
+nbr = 0
+DO jj = obj%csr%IA( ii ), obj%csr%IA( ii+1 ) - 1
+IF( obj%csr%JA( jj ) .NE. ii ) THEN
+nbr = nbr + 1
+kk = kk + 1
+adjncy( kk ) = obj%csr%JA( jj )
+END IF
+END DO
+xadj( ii+1 ) = xadj( ii ) + nbr
+END DO
+
+ADJNCY = ADJNCY( 1:XADJ( size( xadj ) ) - 1 )
+CALL reallocate( perm, size( obj, 1 ), iperm, size( obj, 1 ) )
+CALL MetisNodeND( XADJ=XADJ, ADJNCY=ADJNCY, PERM=PERM, IPERM=IPERM )
+CALL Disp( x=PERM, title="PERM=", advance="NO", unit=stdout, style='left' )
+CALL Disp( x=IPERM, title="IPERM=", advance="DOUBLE", unit=stdout, style='left' )
+
+csr = obj%csr
+CALL initiate(obj=obj2, csr=csr )
+! CALL setSparsity( obj2 )
+
+CALL CPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
+CALL RPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
+call SPY( obj2, "sparse-after-nd" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -173,59 +171,58 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test20
- TYPE( CSRMatrix_ ) :: obj
- INTEGER( i4b ) :: i
- REAL( DFP ), ALLOCATABLE :: x( : ), y( : )
- REAL( DFP ), ALLOCATABLE :: Amat( :, : )
-
- CALL Display( 'testing ILUD')
- CALL Initiate( obj=obj, &
- & A=1.0_DFP*[10,-1,-2,11,-3,-4,12,-5,13,14,-9,-8], &
- & IA=[1,3,6,9,10,13], &
- & JA=[1,4,1,2,4,2,3,5,4,5,3,2] )
- Amat = obj
- x = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
- ALLOCATE( y( 5 ) )
- CALL MATVEC( obj=obj, x=[1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP], y=y )
- CALL Display( x, " Exact AX = " )
- CALL Display( y, " AX = " )
- CALL Deallocate( obj )
+TYPE( CSRMatrix_ ) :: obj
+INTEGER( i4b ) :: i
+REAL( DFP ), ALLOCATABLE :: x( : ), y( : )
+REAL( DFP ), ALLOCATABLE :: Amat( :, : )
+
+CALL Display( 'testing ILUD')
+CALL Initiate( obj=obj, &
+& A=1.0_DFP*[10,-1,-2,11,-3,-4,12,-5,13,14,-9,-8], &
+& IA=[1,3,6,9,10,13], &
+& JA=[1,4,1,2,4,2,3,5,4,5,3,2] )
+Amat = obj
+x = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
+ALLOCATE( y( 5 ) )
+CALL MATVEC( obj=obj, x=[1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP], y=y )
+CALL Display( x, " Exact AX = " )
+CALL Display( y, " AX = " )
+CALL Deallocate( obj )
end subroutine
-
!----------------------------------------------------------------------------
!
!----------------------------------------------------------------------------
subroutine test19
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i
- real( dfp ) :: val( 8, 8 )
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[2], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- obj = 2.0_DFP
- call display( obj, "obj" )
- call SPY( obj, "example" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i
+real( dfp ) :: val( 8, 8 )
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[2], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+obj = 2.0_DFP
+call display( obj, "obj" )
+call SPY( obj, "example" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -233,47 +230,47 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test18
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i
- real( dfp ) :: val( 8, 8 )
- real( dfp ), allocatable :: r1( : )
- type( RealMatrix_ ) :: realMat
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = NODES_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[2], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- ! call RANDOM_NUMBER( val )
- val = eye( 8 )
- call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
- call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
- obj = 2.0_DFP
- call reallocate( r1, size( obj, 2 ) )
- call getRow( obj=obj, irow=4, val=r1 )
- call display( r1, 'row4 = ')
- call reallocate( r1, size( obj, 1 ) )
- call getColumn( obj=obj, icolumn=4, val=r1 )
- call display( r1, 'col4 = ')
- call set( obj=obj, irow=12, icolumn=12, val=100.0_DFP )
- call display(obj, "obj=")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i
+real( dfp ) :: val( 8, 8 )
+real( dfp ), allocatable :: r1( : )
+type( RealMatrix_ ) :: realMat
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = NODES_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[2], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+! call RANDOM_NUMBER( val )
+val = eye( 8 )
+call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
+call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
+obj = 2.0_DFP
+call reallocate( r1, size( obj, 2 ) )
+call getRow( obj=obj, irow=4, val=r1 )
+call display( r1, 'row4 = ')
+call reallocate( r1, size( obj, 1 ) )
+call getColumn( obj=obj, icolumn=4, val=r1 )
+call display( r1, 'col4 = ')
+call set( obj=obj, irow=12, icolumn=12, val=100.0_DFP )
+call display(obj, "obj=")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -281,26 +278,26 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test17
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A, rhs, sol
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUD')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- Amat%val = obj
- rhs = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
- call display( rhs, "rhs = ")
- deallocate(A%val, JA%val)
- call getILUD( obj, A%val, JA%val, JU%val, 0.0_DFP, 1.0D-8 )
- call initiate( sol, 5 )
- call LUSOLVE( sol=sol%val, rhs=rhs%val, alu=a%val, jlu=ja%val, ju=ju%val)
- call display( sol, "solution = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A, rhs, sol
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUD')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+Amat%val = obj
+rhs = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
+call display( rhs, "rhs = ")
+deallocate(A%val, JA%val)
+call getILUD( obj, A%val, JA%val, JU%val, 0.0_DFP, 1.0D-8 )
+call initiate( sol, 5 )
+call LUSOLVE( sol=sol%val, rhs=rhs%val, alu=a%val, jlu=ja%val, ju=ju%val)
+call display( sol, "solution = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -308,21 +305,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test16
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUDP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUDP( obj, obj2, 0.0_DFP, 1.0D-8, 0.1_DFP, 5, IPERM%val )
- Amat%val=obj2
- call display( Amat, "ILUDP = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUDP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUDP( obj, obj2, 0.0_DFP, 1.0D-8, 0.1_DFP, 5, IPERM%val )
+Amat%val=obj2
+call display( Amat, "ILUDP = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -330,21 +327,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test15
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUD')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUD( obj, obj2, 0.0_DFP, 1.0D-8 )
- Amat%val=obj2
- call display( Amat, "ILUD = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUD')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUD( obj, obj2, 0.0_DFP, 1.0D-8 )
+Amat%val=obj2
+call display( Amat, "ILUD = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -352,24 +349,24 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test14
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUTP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUTP( obj, obj2, 5, 1.0D-8, 0.1_DFP, 5, IPERM%val )
- Amat%val=obj
- call display( Amat, "SparseMatrix after ILUTP call = " )
- call display( IPERM, "IPERM = " )
- Amat%val=obj2
- call display( Amat, "ILUTP = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUTP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUTP( obj, obj2, 5, 1.0D-8, 0.1_DFP, 5, IPERM%val )
+Amat%val=obj
+call display( Amat, "SparseMatrix after ILUTP call = " )
+call display( IPERM, "IPERM = " )
+Amat%val=obj2
+call display( Amat, "ILUTP = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -377,23 +374,23 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test13
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUTP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call display( obj, "Sparse matrix = " )
- call getILUTP( obj, A%val, JA%val, JU%val, 5, 1.0D-8, 0.0_DFP, 6, IPERM%val )
- call display( A, "A = ")
- call display( JA, "JA = ")
- call display( JU, "JU = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUTP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call display( obj, "Sparse matrix = " )
+call getILUTP( obj, A%val, JA%val, JU%val, 5, 1.0D-8, 0.0_DFP, 6, IPERM%val )
+call display( A, "A = ")
+call display( JA, "JA = ")
+call display( JU, "JU = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -401,22 +398,22 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test12
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUT')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUT( obj, obj2, 5, 1.0D-8 )
- ! call display( obj2, "Sparse matrix = " )
- Amat%val = obj2
- call display( Amat, "LU Sparse matrix = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUT')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUT( obj, obj2, 5, 1.0D-8 )
+! call display( obj2, "Sparse matrix = " )
+Amat%val = obj2
+call display( Amat, "LU Sparse matrix = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -424,21 +421,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test11
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- CALL display( 'testing ILUT')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call display( obj, "Sparse matrix = " )
- call getILUT( obj, A%val, JA%val, JU%val, 5, 1.0D-8 )
- call display( A, "A = ")
- call display( JA, "JA = ")
- call display( JU, "JU = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+CALL display( 'testing ILUT')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call display( obj, "Sparse matrix = " )
+call getILUT( obj, A%val, JA%val, JU%val, 5, 1.0D-8 )
+call display( A, "A = ")
+call display( JA, "JA = ")
+call display( JU, "JU = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -446,20 +443,20 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test10
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing getLowerTriangle')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getLowerTriangle( obj, obj2 )
- call display( obj2, "Lower triangle part = " )
- call getUpperTriangle( obj, obj2 )
- call display( obj2, "Upper triangle part = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing getLowerTriangle')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getLowerTriangle( obj, obj2 )
+call display( obj2, "Lower triangle part = " )
+call getUpperTriangle( obj, obj2 )
+call display( obj2, "Upper triangle part = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -467,25 +464,25 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test9
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing getDiagonal')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=0 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=-1 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=2 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing getDiagonal')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=0 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=-1 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=2 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -493,18 +490,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test8
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing TRANSPOSE')
- IA = [1,3,6,9]
- JA = [1,4,1,2,4,2,3,5]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getTranspose(obj)
- call display( obj, "obj=" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing TRANSPOSE')
+IA = [1,3,6,9]
+JA = [1,4,1,2,4,2,3,5]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getTranspose(obj)
+call display( obj, "obj=" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -512,18 +509,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test7
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing TRANSPOSE')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getTranspose(obj)
- call display( obj, "obj=" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing TRANSPOSE')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getTranspose(obj)
+call display( obj, "obj=" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -531,22 +528,22 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test6
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing DropEntry IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- ! call setSparsity(obj) !! Not required
- call DropEntry(objIn=obj, objOut=obj2, dropTol=4.0_DFP)
- call display( obj2, "obj2=" )
- call DropEntry(objIn=obj, objOut=obj, dropTol=4.0_DFP)
- call display( obj, "obj=" )
- call Deallocate( obj )
- call Deallocate( obj2 )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing DropEntry IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+! call setSparsity(obj) !! Not required
+call DropEntry(objIn=obj, objOut=obj2, dropTol=4.0_DFP)
+call display( obj2, "obj2=" )
+call DropEntry(objIn=obj, objOut=obj, dropTol=4.0_DFP)
+call display( obj, "obj=" )
+call Deallocate( obj )
+call Deallocate( obj2 )
end subroutine
!----------------------------------------------------------------------------
@@ -554,21 +551,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test5
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing unary using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- ! call setSparsity(obj) !! Not required
- call initiate(obj=obj2, obj2=obj, i1=1, i2=2, j1=1, j2=5)
- call setSparsity( obj2 )
- call display( obj2, "obj2=" )
- call Deallocate( obj )
- call Deallocate( obj2 )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing unary using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+! call setSparsity(obj) !! Not required
+call initiate(obj=obj2, obj2=obj, i1=1, i2=2, j1=1, j2=5)
+call setSparsity( obj2 )
+call display( obj2, "obj2=" )
+call Deallocate( obj )
+call Deallocate( obj2 )
end subroutine
!----------------------------------------------------------------------------
@@ -576,21 +573,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test4
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing unary using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- !call setSparsity(obj) !! Not required
- call display( get( obj, 1,1) .APPROXEQ. 10.0_DFP, "test 1 : ")
- call display( get( obj, 5,3) .APPROXEQ. -9.0_DFP, "test 2 : ")
-
- call initiate(obj=obj2, obj2=obj, i1=1, i2=5, j1=1, j2=5)
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing unary using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+!call setSparsity(obj) !! Not required
+call display( get( obj, 1,1) .APPROXEQ. 10.0_DFP, "test 1 : ")
+call display( get( obj, 5,3) .APPROXEQ. -9.0_DFP, "test 2 : ")
+
+call initiate(obj=obj2, obj2=obj, i1=1, i2=5, j1=1, j2=5)
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -598,18 +595,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test3
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing csr matrix constructor using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call setSparsity(obj)
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing csr matrix constructor using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call setSparsity(obj)
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -617,32 +614,32 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test2
- type( csrmatrix_ ) :: obj
- type( csrSparsity_ ) :: csr
- type( dof_ ) :: dofobj
- integer( i4b ) :: i, unitNo
- !
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( csr, ncol=12, nrow=12, dof=dofobj )
- call setsparsity( csr, 1, [1,2,6,5] )
- call setsparsity( csr, 2, [2,1,3,5,6,7] )
- call setsparsity( csr, 3, [3,2,4,6,7,8] )
- call setsparsity( csr, 4, [4,3,7,8] )
- call setsparsity( csr, 5, [5,1,9,2,6,10] )
- call setsparsity( csr, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( csr, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( csr, 8, [8,4,12,3,7,11] )
- call setsparsity( csr, 9, [9,5,6,10] )
- call setsparsity( csr, 10, [10,9,11,5,6,7] )
- call setsparsity( csr, 11, [11,10,12,6,7,8] )
- call setsparsity( csr, 12, [12,7,8,11] )
- call setSparsity( csr )
- call initiate( obj=obj, csr=csr )
- call setSparsity(obj)
- obj = 2.0_DFP
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( csrSparsity_ ) :: csr
+type( dof_ ) :: dofobj
+integer( i4b ) :: i, unitNo
+!
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( csr, ncol=12, nrow=12, dof=dofobj )
+call setsparsity( csr, 1, [1,2,6,5] )
+call setsparsity( csr, 2, [2,1,3,5,6,7] )
+call setsparsity( csr, 3, [3,2,4,6,7,8] )
+call setsparsity( csr, 4, [4,3,7,8] )
+call setsparsity( csr, 5, [5,1,9,2,6,10] )
+call setsparsity( csr, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( csr, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( csr, 8, [8,4,12,3,7,11] )
+call setsparsity( csr, 9, [9,5,6,10] )
+call setsparsity( csr, 10, [10,9,11,5,6,7] )
+call setsparsity( csr, 11, [11,10,12,6,7,8] )
+call setsparsity( csr, 12, [12,7,8,11] )
+call setSparsity( csr )
+call initiate( obj=obj, csr=csr )
+call setSparsity(obj)
+obj = 2.0_DFP
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -650,31 +647,31 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test1
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i, unitNo
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( obj, ncol=12, nrow=12, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- obj = 2.0_DFP
- OPEN( NEWUNIT=unitNo, FILE="example.ps", &
- & STATUS="REPLACE", ACTION="WRITE" )
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i, unitNo
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( obj, ncol=12, nrow=12, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+obj = 2.0_DFP
+OPEN( NEWUNIT=unitNo, FILE="example.ps", &
+& STATUS="REPLACE", ACTION="WRITE" )
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
END MODULE test_m
diff --git a/docs/docs-api/CSRMatrix/_dgssv_test_1.md b/docs/docs-api/CSRMatrix/_dgssv_test_1.md
index 7cd7ece1..f5e46c34 100644
--- a/docs/docs-api/CSRMatrix/_dgssv_test_1.md
+++ b/docs/docs-api/CSRMatrix/_dgssv_test_1.md
@@ -1,4 +1,3 @@
-
In this program CSRMatrix is transferred to SuperLU in NRFormat.
`dgssv` is used to solve and factored the matrix
diff --git a/docs/docs-api/CSRMatrix/examples/_Add_test_1.md b/docs/docs-api/CSRMatrix/examples/_Add_test_1.md
index 4428d9d6..81c6956d 100644
--- a/docs/docs-api/CSRMatrix/examples/_Add_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_Add_test_1.md
@@ -55,23 +55,23 @@ PROGRAM main
```
```fortran
- CALL SetSparsity(obj)
+CALL SetSparsity(obj)
```
```fortran
- obj = 1.0_DFP
+obj = 1.0_DFP
```
```fortran
- CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
- m2 = 2.0_DFP
- CALL Add( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, &
- & value=m2, scale=1.0_DFP)
+CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
+m2 = 2.0_DFP
+CALL Add( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, &
+ & value=m2, scale=1.0_DFP)
```
```fortran
- m2=obj
- CALL Display(m2, 'test9:')
+m2=obj
+CALL Display(m2, 'test9:')
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Initiate_test_1.md b/docs/docs-api/CSRMatrix/examples/_Initiate_test_1.md
index 0328a87b..0b170f1f 100644
--- a/docs/docs-api/CSRMatrix/examples/_Initiate_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_Initiate_test_1.md
@@ -14,14 +14,14 @@ PROGRAM main
- 12 number of spatial nodes are stored in `NODES_FMT`.
```fortran
- CALL Initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
+CALL Initiate( obj=dofobj, tNodes=[12], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
```
- Below we create a sparse matrix with 12 number of rows and 12 number of cols.
```fortran
- CALL Initiate( obj, ncol=12, nrow=12, idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=12, nrow=12, idof=dofobj, jdof=dofobj )
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Initiate_test_2.md b/docs/docs-api/CSRMatrix/examples/_Initiate_test_2.md
index 6896b06d..1ffebe5e 100644
--- a/docs/docs-api/CSRMatrix/examples/_Initiate_test_2.md
+++ b/docs/docs-api/CSRMatrix/examples/_Initiate_test_2.md
@@ -10,24 +10,24 @@ PROGRAM main
Initiate degrees of freedom object DOF
```fortran
- CALL Initiate( obj=dofobj, tNodes=[4, 2], names=['V', 'P'], &
- & spaceCompo=[2, 1], timeCompo=[1,1], storageFMT=FMT_DOF )
+CALL Initiate( obj=dofobj, tNodes=[4, 2], names=['V', 'P'], &
+ & spaceCompo=[2, 1], timeCompo=[1,1], storageFMT=FMT_DOF )
```
Initiate CSRMatrix
```fortran
- CALL Initiate( obj, &
- & ncol=.tnodes. dofobj, &
- & nrow=.tnodes. dofobj, &
- & idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, &
+ & ncol=.tnodes. dofobj, &
+ & nrow=.tnodes. dofobj, &
+ & idof=dofobj, jdof=dofobj )
```
Convert CSRMatrix to dense matrix.
```fortran
- m2 = obj
- CALL Display( m2, "test2" )
+m2 = obj
+CALL Display( m2, "test2" )
```
Cleanup
diff --git a/docs/docs-api/CSRMatrix/examples/_SPY_test_1.md b/docs/docs-api/CSRMatrix/examples/_SPY_test_1.md
index e103e33c..ad65aa12 100644
--- a/docs/docs-api/CSRMatrix/examples/_SPY_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_SPY_test_1.md
@@ -9,33 +9,33 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- obj = 2.0_DFP
+obj = 2.0_DFP
```
```fortran
- CALL Display( obj, "obj" )
- m2=obj
- CALL Display(m2, "test-5:")
- CALL SPY( obj, "test_5", ".svg" )
+CALL Display( obj, "obj" )
+m2=obj
+CALL Display(m2, "test-5:")
+CALL SPY( obj, "test_5", ".svg" )
```
!!! example "result"
diff --git a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_1.md b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_1.md
index 174d6fcb..7c3d930f 100644
--- a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_1.md
@@ -1,4 +1,3 @@
-
```fortran
PROGRAM main
USE easifemBase
@@ -10,32 +9,32 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- obj = 2.0_DFP
+obj = 2.0_DFP
```
```fortran
- CALL Display( obj, "obj" )
- m2=obj
- CALL Display(m2, "test-4:")
+CALL Display( obj, "obj" )
+m2=obj
+CALL Display(m2, "test-4:")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_2.md b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_2.md
index b5f80f94..0ef1417c 100644
--- a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_2.md
+++ b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_2.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -8,71 +8,71 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[12, 5], names=['V', 'P'], &
- & spaceCompo=[2, 1], timeCompo=[1,1], storageFMT=FMT_DOF )
+CALL Initiate( obj=dofobj, tNodes=[12, 5], names=['V', 'P'], &
+ & spaceCompo=[2, 1], timeCompo=[1,1], storageFMT=FMT_DOF )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 1, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
- CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
- CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
- CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 1, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
+CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
+CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
+CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
- CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
- CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
+CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
+CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
```
```fortran
- CALL SetSparsity(obj)
+CALL SetSparsity(obj)
```
```fortran
- obj = 2.0_DFP
+obj = 2.0_DFP
```
```fortran
- CALL SPY( obj, "test_7", ".svg" )
+CALL SPY( obj, "test_7", ".svg" )
```
!!! example "result"
diff --git a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_3.md b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_3.md
index c7f1dde3..7e61fc58 100644
--- a/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_3.md
+++ b/docs/docs-api/CSRMatrix/examples/_SetSparsity_test_3.md
@@ -17,49 +17,49 @@ PROGRAM main
```
```fortran
- CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
- CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
- CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
- CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
+CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
+CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
+CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
+CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
- CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
- CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
+CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
+CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
```
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Set_test_1.md b/docs/docs-api/CSRMatrix/examples/_Set_test_1.md
index 2c196c10..aa2edbd8 100644
--- a/docs/docs-api/CSRMatrix/examples/_Set_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_Set_test_1.md
@@ -19,77 +19,77 @@ PROGRAM main
"VV"
```fortran
- CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
- CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
- CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
- CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
- CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
- CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
+CALL SetSparsity( obj=obj, row=1, col=[1,2,3,5,6,7,10,11,12], ivar=1, jvar=1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 1, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 6, [6,1,2,3,7,11], 1, 1 )
+CALL SetSparsity( obj, 7, [7,1,2,3,6,7,11], 1, 1 )
+CALL SetSparsity( obj, 8, [8,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 9, [9,3,4,5,8,9,12], 1, 1 )
+CALL SetSparsity( obj, 10, [10,1,3,5,11,12], 1, 1 )
+CALL SetSparsity( obj, 11, [11,1,2,3,5,6,7,12,10], 1, 1 )
+CALL SetSparsity( obj, 12, [12,1,3,4,5,10,11,8,9], 1, 1 )
```
"VP"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
- CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
- CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
- CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
- CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
- CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 1, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 1, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 1, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 1, 2 )
+CALL SetSparsity( obj, 6, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 7, [1,2,3], 1, 2 )
+CALL SetSparsity( obj, 8, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 9, [3,4,5], 1, 2 )
+CALL SetSparsity( obj, 10, [1,3,5], 1, 2 )
+CALL SetSparsity( obj, 11, [1,2,3,5], 1, 2 )
+CALL SetSparsity( obj, 12, [1,3,4,5], 1, 2 )
```
"PV"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
- CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
- CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
- CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
+CALL SetSparsity( obj, 1, [1,2,3,5,6,7,10,11,12], 2, 1 )
+CALL SetSparsity( obj, 2, [2,1,3,6,7,11], 2, 1 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5,6,7,11,8,9,12,10], 2, 1 )
+CALL SetSparsity( obj, 4, [4,3,5,12,8,9], 2, 1 )
+CALL SetSparsity( obj, 5, [5,1,3,4,10,11,8,9,12], 2, 1 )
```
"PP"
```fortran
- CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
- CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
- CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
- CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
- CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
+CALL SetSparsity( obj, 1, [1,2,3,5], 2, 2 )
+CALL SetSparsity( obj, 2, [2,1,3], 2, 2 )
+CALL SetSparsity( obj, 3, [3,1,2,4,5], 2, 2 )
+CALL SetSparsity( obj, 4, [4,3,5], 2, 2 )
+CALL SetSparsity( obj, 5, [5,1,3,4], 2, 2 )
```
```fortran
- CALL SetSparsity(obj)
+CALL SetSparsity(obj)
```
```fortran
- obj = 1.0_DFP
+obj = 1.0_DFP
```
```fortran
- CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
- m2 = 2.0_DFP
- CALL Set( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, value=m2)
- !!CALL Set( obj, 1, 1, 1, 1, 100.0_DFP )
- !!CALL Set( obj, 1, 1, 2, 2, 200.0_DFP )
- !!CALL Set( obj, 1, 1, 3, 3, 300.0_DFP )
+CALL Reallocate( m2, 2*(dofobj .tdof. 1), 2*(dofobj .tdof. 1) )
+m2 = 2.0_DFP
+CALL Set( obj=obj, inodenum=[1,2], jnodenum=[1,2], ivar=1, jvar=1, value=m2)
+!!CALL Set( obj, 1, 1, 1, 1, 100.0_DFP )
+!!CALL Set( obj, 1, 1, 2, 2, 200.0_DFP )
+!!CALL Set( obj, 1, 1, 3, 3, 300.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, 'test9:')
+m2=obj
+CALL Display(m2, 'test9:')
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Set_test_2.md b/docs/docs-api/CSRMatrix/examples/_Set_test_2.md
index 2b1a4b5a..a4526fe1 100644
--- a/docs/docs-api/CSRMatrix/examples/_Set_test_2.md
+++ b/docs/docs-api/CSRMatrix/examples/_Set_test_2.md
@@ -9,57 +9,57 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'BOTH' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'BOTH' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Set_test_3.md b/docs/docs-api/CSRMatrix/examples/_Set_test_3.md
index 44944181..f894a1fb 100644
--- a/docs/docs-api/CSRMatrix/examples/_Set_test_3.md
+++ b/docs/docs-api/CSRMatrix/examples/_Set_test_3.md
@@ -9,57 +9,57 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
+CALL Initiate( obj=dofobj, tNodes=[5], names=['K'], &
+ & spaceCompo=[1], timeCompo=[1], storageFMT=FMT_NODES )
```
```fortran
- CALL Initiate( obj, ncol=(.tnodes. dofobj), &
- & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
+CALL Initiate( obj, ncol=(.tnodes. dofobj), &
+ & nrow=(.tnodes. dofobj), idof=dofobj, jdof=dofobj )
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'RIGHT' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'RIGHT' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/_Set_test_4.md b/docs/docs-api/CSRMatrix/examples/_Set_test_4.md
index 8f6ef2e2..a3a5167e 100644
--- a/docs/docs-api/CSRMatrix/examples/_Set_test_4.md
+++ b/docs/docs-api/CSRMatrix/examples/_Set_test_4.md
@@ -17,47 +17,47 @@ PROGRAM main
```
```fortran
- CALL Setsparsity( obj, 1, [1,2,3,5] )
- CALL Setsparsity( obj, 2, [2,1,3] )
- CALL Setsparsity( obj, 3, [3,1,2,4,5] )
- CALL Setsparsity( obj, 4, [4,3,5] )
- CALL Setsparsity( obj, 5, [5,1,3,4] )
- CALL SetSparsity(obj)
+CALL Setsparsity( obj, 1, [1,2,3,5] )
+CALL Setsparsity( obj, 2, [2,1,3] )
+CALL Setsparsity( obj, 3, [3,1,2,4,5] )
+CALL Setsparsity( obj, 4, [4,3,5] )
+CALL Setsparsity( obj, 5, [5,1,3,4] )
+CALL SetSparsity(obj)
```
```fortran
- CALL Set( obj, 1, 1, 2.0_DFP )
- CALL Set( obj, 1, 2, 3.0_DFP )
- CALL Set( obj, 1, 3, 4.0_DFP )
- CALL Set( obj, 1, 5, 5.0_DFP )
- CALL Set( obj, 2, 2, 4.0_DFP )
- CALL Set( obj, 2, 1, 3.0_DFP )
- CALL Set( obj, 2, 3, 5.0_DFP )
- CALL Set( obj, 3, 3, 6.0_DFP )
- CALL Set( obj, 3, 1, 4.0_DFP )
- CALL Set( obj, 3, 2, 5.0_DFP )
- CALL Set( obj, 3, 4, 7.0_DFP )
- CALL Set( obj, 3, 5, 8.0_DFP )
- CALL Set( obj, 4, 4, 8.0_DFP )
- CALL Set( obj, 4, 3, 7.0_DFP )
- CALL Set( obj, 4, 5, 9.0_DFP )
- CALL Set( obj, 5, 5, 10.0_DFP )
- CALL Set( obj, 5, 1, 6.0_DFP )
- CALL Set( obj, 5, 3, 8.0_DFP )
- CALL Set( obj, 5, 4, 9.0_DFP )
+CALL Set( obj, 1, 1, 2.0_DFP )
+CALL Set( obj, 1, 2, 3.0_DFP )
+CALL Set( obj, 1, 3, 4.0_DFP )
+CALL Set( obj, 1, 5, 5.0_DFP )
+CALL Set( obj, 2, 2, 4.0_DFP )
+CALL Set( obj, 2, 1, 3.0_DFP )
+CALL Set( obj, 2, 3, 5.0_DFP )
+CALL Set( obj, 3, 3, 6.0_DFP )
+CALL Set( obj, 3, 1, 4.0_DFP )
+CALL Set( obj, 3, 2, 5.0_DFP )
+CALL Set( obj, 3, 4, 7.0_DFP )
+CALL Set( obj, 3, 5, 8.0_DFP )
+CALL Set( obj, 4, 4, 8.0_DFP )
+CALL Set( obj, 4, 3, 7.0_DFP )
+CALL Set( obj, 4, 5, 9.0_DFP )
+CALL Set( obj, 5, 5, 10.0_DFP )
+CALL Set( obj, 5, 1, 6.0_DFP )
+CALL Set( obj, 5, 3, 8.0_DFP )
+CALL Set( obj, 5, 4, 9.0_DFP )
```
```fortran
- m2=obj
- CALL Display(m2, "m2: ")
+m2=obj
+CALL Display(m2, "m2: ")
```
now we perform diagnonal scaling
```fortran
- CALL DiagonalScaling( obj, 'LEFT' )
- m2=obj
- CALL Display(m2, "m2: ")
+CALL DiagonalScaling( obj, 'LEFT' )
+m2=obj
+CALL Display(m2, "m2: ")
```
```fortran
diff --git a/docs/docs-api/CSRMatrix/examples/__test_CSRMatrix.md b/docs/docs-api/CSRMatrix/examples/__test_CSRMatrix.md
index 58bf549d..23345ad8 100644
--- a/docs/docs-api/CSRMatrix/examples/__test_CSRMatrix.md
+++ b/docs/docs-api/CSRMatrix/examples/__test_CSRMatrix.md
@@ -1,5 +1,5 @@
! This program is a part of EASIFEM library
-! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
+! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
@@ -8,11 +8,11 @@
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
+! along with this program. If not, see
!
MODULE test_m
@@ -24,27 +24,25 @@ CONTAINS
!
!----------------------------------------------------------------------------
-
-
!----------------------------------------------------------------------------
!
!----------------------------------------------------------------------------
subroutine testFIDAPM005
! subroutine test0
- type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
- type( sparseMatrixReOrdering_ ) :: reorder
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call import( obj, "./matrixMarket/fidap005.mtx", SPARSE_FMT_COO )
- call spy( obj, "FIDAP005_BEFORE" )
- call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
- call spy( pmat, "FIDAP005_ILUD_BEFORE" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call spy( obj2, "FIDAP005_AFTER" )
- call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
- call spy( pmat2, "FIDAP005_ILUD_AFTER" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
+type( sparseMatrixReOrdering_ ) :: reorder
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call import( obj, "./matrixMarket/fidap005.mtx", SPARSE_FMT_COO )
+call spy( obj, "FIDAP005_BEFORE" )
+call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
+call spy( pmat, "FIDAP005_ILUD_BEFORE" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call spy( obj2, "FIDAP005_AFTER" )
+call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
+call spy( pmat2, "FIDAP005_ILUD_AFTER" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -53,19 +51,19 @@ end subroutine
! subroutine testFIDAPM05
subroutine test0
- type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
- type( sparseMatrixReOrdering_ ) :: reorder
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call import( obj, "./matrixMarket/fidapm05.mtx", SPARSE_FMT_COO )
- call SPY( obj, "FIDAPM05_BEFORE" )
- call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
- call SPY( pmat, "FIDAPM05_ILUD_BEFORE" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call SPY( obj2, "FIDAPM05_AFTER" )
- call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
- call SPY( pmat2, "FIDAPM05_ILUD_AFTER" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2, pmat, pmat2
+type( sparseMatrixReOrdering_ ) :: reorder
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call import( obj, "./matrixMarket/fidapm05.mtx", SPARSE_FMT_COO )
+call SPY( obj, "FIDAPM05_BEFORE" )
+call getILUD( obj=obj, Pmat=pmat, alpha=1.0_DFP, droptol=0.001_DFP )
+call SPY( pmat, "FIDAPM05_ILUD_BEFORE" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call SPY( obj2, "FIDAPM05_AFTER" )
+call getILUD( obj=obj2, Pmat=pmat2, alpha=1.0_DFP, droptol=0.001_DFP )
+call SPY( pmat2, "FIDAPM05_ILUD_AFTER" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -73,33 +71,33 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test22
- type( csrmatrix_ ) :: obj, obj2
- type( dof_ ) :: dofobj
- type( realMatrix_ ) :: rmat
- type( sparseMatrixReOrdering_ ) :: reorder
-
- call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*1, nrow=12*1, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- call SPY( obj, "sparse-before-nd" )
- call NestedDissect( reorder=reorder, csrMat=obj )
- obj2 = Permute( obj, reorder, reorder )
- call SPY( obj2, "sparse-after-nd" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+type( dof_ ) :: dofobj
+type( realMatrix_ ) :: rmat
+type( sparseMatrixReOrdering_ ) :: reorder
+
+call display( colorize( "TESTING NestedDissect", color_fg="red" ) )
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*1, nrow=12*1, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+call SPY( obj, "sparse-before-nd" )
+call NestedDissect( reorder=reorder, csrMat=obj )
+obj2 = Permute( obj, reorder, reorder )
+call SPY( obj2, "sparse-after-nd" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -107,65 +105,65 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test21
- type( csrmatrix_ ) :: obj, obj2
- type( csrSparsity_ ) :: csr
- type( dof_ ) :: dofobj
- integer( i4b ) :: ii, nbr, jj, kk
- integer( i4b ), allocatable :: xadj( : ), adjncy( : ), perm( : ), iperm( : )
- type( realMatrix_ ) :: rmat
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[3], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*3, nrow=12*3, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- call SPY( obj, "sparse-before-nd" )
-
- call reallocate( xadj, size( obj, 1 ) + 1 )
- call reallocate( adjncy, getNNZ( obj ) )
-
- xadj( 1 ) = 1
- kk=0
- DO ii = 1, size( xadj )-1
- nbr = 0
- DO jj = obj%csr%IA( ii ), obj%csr%IA( ii+1 ) - 1
- IF( obj%csr%JA( jj ) .NE. ii ) THEN
- nbr = nbr + 1
- kk = kk + 1
- adjncy( kk ) = obj%csr%JA( jj )
- END IF
- END DO
- xadj( ii+1 ) = xadj( ii ) + nbr
- END DO
-
- ADJNCY = ADJNCY( 1:XADJ( size( xadj ) ) - 1 )
- CALL reallocate( perm, size( obj, 1 ), iperm, size( obj, 1 ) )
- CALL MetisNodeND( XADJ=XADJ, ADJNCY=ADJNCY, PERM=PERM, IPERM=IPERM )
- CALL Disp( x=PERM, title="PERM=", advance="NO", unit=stdout, style='left' )
- CALL Disp( x=IPERM, title="IPERM=", advance="DOUBLE", unit=stdout, style='left' )
-
- csr = obj%csr
- CALL initiate(obj=obj2, csr=csr )
- ! CALL setSparsity( obj2 )
-
- CALL CPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
- CALL RPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
- call SPY( obj2, "sparse-after-nd" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+type( csrSparsity_ ) :: csr
+type( dof_ ) :: dofobj
+integer( i4b ) :: ii, nbr, jj, kk
+integer( i4b ), allocatable :: xadj( : ), adjncy( : ), perm( : ), iperm( : )
+type( realMatrix_ ) :: rmat
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[3], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*3, nrow=12*3, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+call SPY( obj, "sparse-before-nd" )
+
+call reallocate( xadj, size( obj, 1 ) + 1 )
+call reallocate( adjncy, getNNZ( obj ) )
+
+xadj( 1 ) = 1
+kk=0
+DO ii = 1, size( xadj )-1
+nbr = 0
+DO jj = obj%csr%IA( ii ), obj%csr%IA( ii+1 ) - 1
+IF( obj%csr%JA( jj ) .NE. ii ) THEN
+nbr = nbr + 1
+kk = kk + 1
+adjncy( kk ) = obj%csr%JA( jj )
+END IF
+END DO
+xadj( ii+1 ) = xadj( ii ) + nbr
+END DO
+
+ADJNCY = ADJNCY( 1:XADJ( size( xadj ) ) - 1 )
+CALL reallocate( perm, size( obj, 1 ), iperm, size( obj, 1 ) )
+CALL MetisNodeND( XADJ=XADJ, ADJNCY=ADJNCY, PERM=PERM, IPERM=IPERM )
+CALL Disp( x=PERM, title="PERM=", advance="NO", unit=stdout, style='left' )
+CALL Disp( x=IPERM, title="IPERM=", advance="DOUBLE", unit=stdout, style='left' )
+
+csr = obj%csr
+CALL initiate(obj=obj2, csr=csr )
+! CALL setSparsity( obj2 )
+
+CALL CPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
+CALL RPERM( size(obj,1),obj%a,obj%csr%ja,obj%csr%ia,obj2%a,obj2%csr%ja,obj2%csr%ia,iperm,1)
+call SPY( obj2, "sparse-after-nd" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -173,59 +171,58 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test20
- TYPE( CSRMatrix_ ) :: obj
- INTEGER( i4b ) :: i
- REAL( DFP ), ALLOCATABLE :: x( : ), y( : )
- REAL( DFP ), ALLOCATABLE :: Amat( :, : )
-
- CALL Display( 'testing ILUD')
- CALL Initiate( obj=obj, &
- & A=1.0_DFP*[10,-1,-2,11,-3,-4,12,-5,13,14,-9,-8], &
- & IA=[1,3,6,9,10,13], &
- & JA=[1,4,1,2,4,2,3,5,4,5,3,2] )
- Amat = obj
- x = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
- ALLOCATE( y( 5 ) )
- CALL MATVEC( obj=obj, x=[1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP], y=y )
- CALL Display( x, " Exact AX = " )
- CALL Display( y, " AX = " )
- CALL Deallocate( obj )
+TYPE( CSRMatrix_ ) :: obj
+INTEGER( i4b ) :: i
+REAL( DFP ), ALLOCATABLE :: x( : ), y( : )
+REAL( DFP ), ALLOCATABLE :: Amat( :, : )
+
+CALL Display( 'testing ILUD')
+CALL Initiate( obj=obj, &
+& A=1.0_DFP*[10,-1,-2,11,-3,-4,12,-5,13,14,-9,-8], &
+& IA=[1,3,6,9,10,13], &
+& JA=[1,4,1,2,4,2,3,5,4,5,3,2] )
+Amat = obj
+x = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
+ALLOCATE( y( 5 ) )
+CALL MATVEC( obj=obj, x=[1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP], y=y )
+CALL Display( x, " Exact AX = " )
+CALL Display( y, " AX = " )
+CALL Deallocate( obj )
end subroutine
-
!----------------------------------------------------------------------------
!
!----------------------------------------------------------------------------
subroutine test19
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i
- real( dfp ) :: val( 8, 8 )
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[2], timeCompo=[1], storageFMT=DOF_FMT )
- call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- obj = 2.0_DFP
- call display( obj, "obj" )
- call SPY( obj, "example" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i
+real( dfp ) :: val( 8, 8 )
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = DOF_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[2], timeCompo=[1], storageFMT=DOF_FMT )
+call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+obj = 2.0_DFP
+call display( obj, "obj" )
+call SPY( obj, "example" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -233,47 +230,47 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test18
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i
- real( dfp ) :: val( 8, 8 )
- real( dfp ), allocatable :: r1( : )
- type( RealMatrix_ ) :: realMat
-
- call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
- call display( colorize( " StorageFMT = NODES_FMT",color_fg="blue" ))
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[2], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- ! call RANDOM_NUMBER( val )
- val = eye( 8 )
- call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
- call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
- obj = 2.0_DFP
- call reallocate( r1, size( obj, 2 ) )
- call getRow( obj=obj, irow=4, val=r1 )
- call display( r1, 'row4 = ')
- call reallocate( r1, size( obj, 1 ) )
- call getColumn( obj=obj, icolumn=4, val=r1 )
- call display( r1, 'col4 = ')
- call set( obj=obj, irow=12, icolumn=12, val=100.0_DFP )
- call display(obj, "obj=")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i
+real( dfp ) :: val( 8, 8 )
+real( dfp ), allocatable :: r1( : )
+type( RealMatrix_ ) :: realMat
+
+call display( colorize( "TEST : SET and ADD Method ", color_fg="red" ) )
+call display( colorize( " StorageFMT = NODES_FMT",color_fg="blue" ))
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[2], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( obj, ncol=12*2, nrow=12*2, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+! call RANDOM_NUMBER( val )
+val = eye( 8 )
+call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
+call add( obj=obj, nptrs=[1,2,6,5], val=val, storageFMT=DOF_FMT, scale=1.0_DFP )
+obj = 2.0_DFP
+call reallocate( r1, size( obj, 2 ) )
+call getRow( obj=obj, irow=4, val=r1 )
+call display( r1, 'row4 = ')
+call reallocate( r1, size( obj, 1 ) )
+call getColumn( obj=obj, icolumn=4, val=r1 )
+call display( r1, 'col4 = ')
+call set( obj=obj, irow=12, icolumn=12, val=100.0_DFP )
+call display(obj, "obj=")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -281,26 +278,26 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test17
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A, rhs, sol
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUD')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- Amat%val = obj
- rhs = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
- call display( rhs, "rhs = ")
- deallocate(A%val, JA%val)
- call getILUD( obj, A%val, JA%val, JU%val, 0.0_DFP, 1.0D-8 )
- call initiate( sol, 5 )
- call LUSOLVE( sol=sol%val, rhs=rhs%val, alu=a%val, jlu=ja%val, ju=ju%val)
- call display( sol, "solution = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A, rhs, sol
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUD')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+Amat%val = obj
+rhs = MATMUL( Amat, [1.0_DFP, 2.0_DFP, 3.0_DFP, 0.0_DFP, 0.0_DFP] )
+call display( rhs, "rhs = ")
+deallocate(A%val, JA%val)
+call getILUD( obj, A%val, JA%val, JU%val, 0.0_DFP, 1.0D-8 )
+call initiate( sol, 5 )
+call LUSOLVE( sol=sol%val, rhs=rhs%val, alu=a%val, jlu=ja%val, ju=ju%val)
+call display( sol, "solution = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -308,21 +305,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test16
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUDP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUDP( obj, obj2, 0.0_DFP, 1.0D-8, 0.1_DFP, 5, IPERM%val )
- Amat%val=obj2
- call display( Amat, "ILUDP = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUDP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUDP( obj, obj2, 0.0_DFP, 1.0D-8, 0.1_DFP, 5, IPERM%val )
+Amat%val=obj2
+call display( Amat, "ILUDP = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -330,21 +327,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test15
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUD')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUD( obj, obj2, 0.0_DFP, 1.0D-8 )
- Amat%val=obj2
- call display( Amat, "ILUD = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUD')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUD( obj, obj2, 0.0_DFP, 1.0D-8 )
+Amat%val=obj2
+call display( Amat, "ILUD = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -352,24 +349,24 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test14
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUTP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUTP( obj, obj2, 5, 1.0D-8, 0.1_DFP, 5, IPERM%val )
- Amat%val=obj
- call display( Amat, "SparseMatrix after ILUTP call = " )
- call display( IPERM, "IPERM = " )
- Amat%val=obj2
- call display( Amat, "ILUTP = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUTP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,0.1,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUTP( obj, obj2, 5, 1.0D-8, 0.1_DFP, 5, IPERM%val )
+Amat%val=obj
+call display( Amat, "SparseMatrix after ILUTP call = " )
+call display( IPERM, "IPERM = " )
+Amat%val=obj2
+call display( Amat, "ILUTP = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -377,23 +374,23 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test13
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU, IPERM
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUTP')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call display( obj, "Sparse matrix = " )
- call getILUTP( obj, A%val, JA%val, JU%val, 5, 1.0D-8, 0.0_DFP, 6, IPERM%val )
- call display( A, "A = ")
- call display( JA, "JA = ")
- call display( JU, "JU = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU, IPERM
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUTP')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call display( obj, "Sparse matrix = " )
+call getILUTP( obj, A%val, JA%val, JU%val, 5, 1.0D-8, 0.0_DFP, 6, IPERM%val )
+call display( A, "A = ")
+call display( JA, "JA = ")
+call display( JU, "JU = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -401,22 +398,22 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test12
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- type( RealMatrix_ ) :: Amat
- !
- CALL display( 'testing ILUT')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getILUT( obj, obj2, 5, 1.0D-8 )
- ! call display( obj2, "Sparse matrix = " )
- Amat%val = obj2
- call display( Amat, "LU Sparse matrix = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+type( RealMatrix_ ) :: Amat
+!
+CALL display( 'testing ILUT')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getILUT( obj, obj2, 5, 1.0D-8 )
+! call display( obj2, "Sparse matrix = " )
+Amat%val = obj2
+call display( Amat, "LU Sparse matrix = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -424,21 +421,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test11
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA, JU
- type( RealVector_ ) :: A
- CALL display( 'testing ILUT')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call display( obj, "Sparse matrix = " )
- call getILUT( obj, A%val, JA%val, JU%val, 5, 1.0D-8 )
- call display( A, "A = ")
- call display( JA, "JA = ")
- call display( JU, "JU = ")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA, JU
+type( RealVector_ ) :: A
+CALL display( 'testing ILUT')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call display( obj, "Sparse matrix = " )
+call getILUT( obj, A%val, JA%val, JU%val, 5, 1.0D-8 )
+call display( A, "A = ")
+call display( JA, "JA = ")
+call display( JU, "JU = ")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -446,20 +443,20 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test10
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing getLowerTriangle')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getLowerTriangle( obj, obj2 )
- call display( obj2, "Lower triangle part = " )
- call getUpperTriangle( obj, obj2 )
- call display( obj2, "Upper triangle part = " )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing getLowerTriangle')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getLowerTriangle( obj, obj2 )
+call display( obj2, "Lower triangle part = " )
+call getUpperTriangle( obj, obj2 )
+call display( obj2, "Upper triangle part = " )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -467,25 +464,25 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test9
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing getDiagonal')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=0 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=-1 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=2 )
- call display( A, "diag=")
- call display( IA, "idiag=")
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing getDiagonal')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=0 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=-1 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call getDiagonal( obj=obj, diag=A%val, idiag=IA%val, offset=2 )
+call display( A, "diag=")
+call display( IA, "idiag=")
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -493,18 +490,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test8
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing TRANSPOSE')
- IA = [1,3,6,9]
- JA = [1,4,1,2,4,2,3,5]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getTranspose(obj)
- call display( obj, "obj=" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing TRANSPOSE')
+IA = [1,3,6,9]
+JA = [1,4,1,2,4,2,3,5]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getTranspose(obj)
+call display( obj, "obj=" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -512,18 +509,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test7
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing TRANSPOSE')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call getTranspose(obj)
- call display( obj, "obj=" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing TRANSPOSE')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call getTranspose(obj)
+call display( obj, "obj=" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -531,22 +528,22 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test6
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing DropEntry IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- ! call setSparsity(obj) !! Not required
- call DropEntry(objIn=obj, objOut=obj2, dropTol=4.0_DFP)
- call display( obj2, "obj2=" )
- call DropEntry(objIn=obj, objOut=obj, dropTol=4.0_DFP)
- call display( obj, "obj=" )
- call Deallocate( obj )
- call Deallocate( obj2 )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing DropEntry IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+! call setSparsity(obj) !! Not required
+call DropEntry(objIn=obj, objOut=obj2, dropTol=4.0_DFP)
+call display( obj2, "obj2=" )
+call DropEntry(objIn=obj, objOut=obj, dropTol=4.0_DFP)
+call display( obj, "obj=" )
+call Deallocate( obj )
+call Deallocate( obj2 )
end subroutine
!----------------------------------------------------------------------------
@@ -554,21 +551,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test5
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing unary using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- ! call setSparsity(obj) !! Not required
- call initiate(obj=obj2, obj2=obj, i1=1, i2=2, j1=1, j2=5)
- call setSparsity( obj2 )
- call display( obj2, "obj2=" )
- call Deallocate( obj )
- call Deallocate( obj2 )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing unary using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+! call setSparsity(obj) !! Not required
+call initiate(obj=obj2, obj2=obj, i1=1, i2=2, j1=1, j2=5)
+call setSparsity( obj2 )
+call display( obj2, "obj2=" )
+call Deallocate( obj )
+call Deallocate( obj2 )
end subroutine
!----------------------------------------------------------------------------
@@ -576,21 +573,21 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test4
- type( csrmatrix_ ) :: obj, obj2
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing unary using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- !call setSparsity(obj) !! Not required
- call display( get( obj, 1,1) .APPROXEQ. 10.0_DFP, "test 1 : ")
- call display( get( obj, 5,3) .APPROXEQ. -9.0_DFP, "test 2 : ")
-
- call initiate(obj=obj2, obj2=obj, i1=1, i2=5, j1=1, j2=5)
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj, obj2
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing unary using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+!call setSparsity(obj) !! Not required
+call display( get( obj, 1,1) .APPROXEQ. 10.0_DFP, "test 1 : ")
+call display( get( obj, 5,3) .APPROXEQ. -9.0_DFP, "test 2 : ")
+
+call initiate(obj=obj2, obj2=obj, i1=1, i2=5, j1=1, j2=5)
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -598,18 +595,18 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test3
- type( csrmatrix_ ) :: obj
- integer( i4b ) :: i
- type( IntVector_ ) :: IA, JA
- type( RealVector_ ) :: A
- CALL display( 'testing csr matrix constructor using IA, JA, A')
- IA = [1,3,6,9,10,13]
- JA = [1,4,1,2,4,2,3,5,4,5,3,2]
- A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
- call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
- call setSparsity(obj)
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+integer( i4b ) :: i
+type( IntVector_ ) :: IA, JA
+type( RealVector_ ) :: A
+CALL display( 'testing csr matrix constructor using IA, JA, A')
+IA = [1,3,6,9,10,13]
+JA = [1,4,1,2,4,2,3,5,4,5,3,2]
+A = 1.0_DFP*[10.0,-1.0,-2.0,11.0,-3.0,-4.0,12.0,-5.0,13.0,14.0,-9.0,-8.0]
+call initiate( obj=obj, A=A%val, IA=IA%val, JA=JA%val )
+call setSparsity(obj)
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -617,32 +614,32 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test2
- type( csrmatrix_ ) :: obj
- type( csrSparsity_ ) :: csr
- type( dof_ ) :: dofobj
- integer( i4b ) :: i, unitNo
- !
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( csr, ncol=12, nrow=12, dof=dofobj )
- call setsparsity( csr, 1, [1,2,6,5] )
- call setsparsity( csr, 2, [2,1,3,5,6,7] )
- call setsparsity( csr, 3, [3,2,4,6,7,8] )
- call setsparsity( csr, 4, [4,3,7,8] )
- call setsparsity( csr, 5, [5,1,9,2,6,10] )
- call setsparsity( csr, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( csr, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( csr, 8, [8,4,12,3,7,11] )
- call setsparsity( csr, 9, [9,5,6,10] )
- call setsparsity( csr, 10, [10,9,11,5,6,7] )
- call setsparsity( csr, 11, [11,10,12,6,7,8] )
- call setsparsity( csr, 12, [12,7,8,11] )
- call setSparsity( csr )
- call initiate( obj=obj, csr=csr )
- call setSparsity(obj)
- obj = 2.0_DFP
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( csrSparsity_ ) :: csr
+type( dof_ ) :: dofobj
+integer( i4b ) :: i, unitNo
+!
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( csr, ncol=12, nrow=12, dof=dofobj )
+call setsparsity( csr, 1, [1,2,6,5] )
+call setsparsity( csr, 2, [2,1,3,5,6,7] )
+call setsparsity( csr, 3, [3,2,4,6,7,8] )
+call setsparsity( csr, 4, [4,3,7,8] )
+call setsparsity( csr, 5, [5,1,9,2,6,10] )
+call setsparsity( csr, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( csr, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( csr, 8, [8,4,12,3,7,11] )
+call setsparsity( csr, 9, [9,5,6,10] )
+call setsparsity( csr, 10, [10,9,11,5,6,7] )
+call setsparsity( csr, 11, [11,10,12,6,7,8] )
+call setsparsity( csr, 12, [12,7,8,11] )
+call setSparsity( csr )
+call initiate( obj=obj, csr=csr )
+call setSparsity(obj)
+obj = 2.0_DFP
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
!----------------------------------------------------------------------------
@@ -650,31 +647,31 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test1
- type( csrmatrix_ ) :: obj
- type( dof_ ) :: dofobj
- integer( i4b ) :: i, unitNo
-
- call initiate( obj=dofobj, tNodes=[12], names=['K'], &
- & spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
- call initiate( obj, ncol=12, nrow=12, dof=dofobj )
- call setsparsity( obj, 1, [1,2,6,5] )
- call setsparsity( obj, 2, [2,1,3,5,6,7] )
- call setsparsity( obj, 3, [3,2,4,6,7,8] )
- call setsparsity( obj, 4, [4,3,7,8] )
- call setsparsity( obj, 5, [5,1,9,2,6,10] )
- call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
- call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
- call setsparsity( obj, 8, [8,4,12,3,7,11] )
- call setsparsity( obj, 9, [9,5,6,10] )
- call setsparsity( obj, 10, [10,9,11,5,6,7] )
- call setsparsity( obj, 11, [11,10,12,6,7,8] )
- call setsparsity( obj, 12, [12,7,8,11] )
- call setSparsity(obj)
- obj = 2.0_DFP
- OPEN( NEWUNIT=unitNo, FILE="example.ps", &
- & STATUS="REPLACE", ACTION="WRITE" )
- call display( obj, "obj" )
- call Deallocate( obj )
+type( csrmatrix_ ) :: obj
+type( dof_ ) :: dofobj
+integer( i4b ) :: i, unitNo
+
+call initiate( obj=dofobj, tNodes=[12], names=['K'], &
+& spaceCompo=[1], timeCompo=[1], storageFMT=NODES_FMT )
+call initiate( obj, ncol=12, nrow=12, dof=dofobj )
+call setsparsity( obj, 1, [1,2,6,5] )
+call setsparsity( obj, 2, [2,1,3,5,6,7] )
+call setsparsity( obj, 3, [3,2,4,6,7,8] )
+call setsparsity( obj, 4, [4,3,7,8] )
+call setsparsity( obj, 5, [5,1,9,2,6,10] )
+call setsparsity( obj, 6, [6,2,10,1,5,9,3,7,11] )
+call setsparsity( obj, 7, [7,6,8,2,3,4,10,11,12] )
+call setsparsity( obj, 8, [8,4,12,3,7,11] )
+call setsparsity( obj, 9, [9,5,6,10] )
+call setsparsity( obj, 10, [10,9,11,5,6,7] )
+call setsparsity( obj, 11, [11,10,12,6,7,8] )
+call setsparsity( obj, 12, [12,7,8,11] )
+call setSparsity(obj)
+obj = 2.0_DFP
+OPEN( NEWUNIT=unitNo, FILE="example.ps", &
+& STATUS="REPLACE", ACTION="WRITE" )
+call display( obj, "obj" )
+call Deallocate( obj )
end subroutine
END MODULE test_m
diff --git a/docs/docs-api/CSRMatrix/examples/_dgssv_test_1.md b/docs/docs-api/CSRMatrix/examples/_dgssv_test_1.md
index 7cd7ece1..f5e46c34 100644
--- a/docs/docs-api/CSRMatrix/examples/_dgssv_test_1.md
+++ b/docs/docs-api/CSRMatrix/examples/_dgssv_test_1.md
@@ -1,4 +1,3 @@
-
In this program CSRMatrix is transferred to SuperLU in NRFormat.
`dgssv` is used to solve and factored the matrix
diff --git a/docs/docs-api/CSVFile/examples/CSVFile_test_2.md b/docs/docs-api/CSVFile/examples/CSVFile_test_2.md
index 9d72e2c6..04f471e1 100644
--- a/docs/docs-api/CSVFile/examples/CSVFile_test_2.md
+++ b/docs/docs-api/CSVFile/examples/CSVFile_test_2.md
@@ -27,7 +27,7 @@ In this example we create an instance of [[CSVFile_]], then we open it and read
Importing modules and defining variables
-``` fortran
+```fortran
PROGRAM main
use easifemBase
use easifemClasses
@@ -45,54 +45,54 @@ PROGRAM main
Initiate an instance of [[CSVFile_]], and then Open the [[CSVFile_]] file
```fortran
- call obj%Initiate(filename=filename, status='OLD', action='READ')
- call obj%setHeaderIndx(1_I4B)
- call obj%Open()
- call obj%Read()
+call obj%Initiate(filename=filename, status='OLD', action='READ')
+call obj%setHeaderIndx(1_I4B)
+call obj%Open()
+call obj%Read()
```
Get a single value.
```fortran
- call obj%get( irow=1, icol=1, val=intval)
- call display( intval, "intval = " )
+call obj%get( irow=1, icol=1, val=intval)
+call display( intval, "intval = " )
```
Get the entire column in [[IntVector_]]
```fortran
- call obj%get( icol=1, val=intvec)
- call display( intvec, "intvec = " )
+call obj%get( icol=1, val=intvec)
+call display( intvec, "intvec = " )
```
Get the entire column in integer vector
```fortran
- call deallocate( intvec )
- call obj%get( icol=1, val=intvec%val)
- call display( intvec%val, "intvec%val = " )
+call deallocate( intvec )
+call obj%get( icol=1, val=intvec%val)
+call display( intvec%val, "intvec%val = " )
```
Get the entire column in [[RealVector_]]
```fortran
- call obj%get( icol=1, val=realvec)
- call display( realvec, "realvec = " )
+call obj%get( icol=1, val=realvec)
+call display( realvec, "realvec = " )
```
Get the entire column in real vector
```fortran
- call deallocate( realvec )
- call obj%get( icol=1, val=realvec%val)
- call display( realvec%val, "realvec%val = " )
+call deallocate( realvec )
+call obj%get( icol=1, val=realvec%val)
+call display( realvec%val, "realvec%val = " )
```
Get the entire column in string vector
```fortran
- call obj%get( icol=1, val=strvec)
- do ii = 1, size(strvec); call display( strvec(ii), "strvec(ii) = " ); end do
+call obj%get( icol=1, val=strvec)
+do ii = 1, size(strvec); call display( strvec(ii), "strvec(ii) = " ); end do
```
Cleaning up.
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussLobattoQuadrature.md b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussLobattoQuadrature.md
index c2c79e54..57d79d50 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussLobattoQuadrature.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussLobattoQuadrature.md
@@ -42,92 +42,92 @@ import EXAMPLE11 from "./_Chebyshev1GaussLobattoQuadrature_test_1.md";
### n+2 = 3
- | | |
- | --- | --- |
- | -1 | 0.7854 |
- | 1.03412E-13 | 1.5708 |
- | 1 | 0.7854 |
+| | |
+| ----------- | ------ |
+| -1 | 0.7854 |
+| 1.03412E-13 | 1.5708 |
+| 1 | 0.7854 |
### n+2 = 4
- | | |
- | --- | --- |
- | -1 | 0.5236 |
- | -0.5 | 1.0472 |
- | 0.5 | 1.0472 |
- | 1 | 0.5236 |
+| | |
+| ---- | ------ |
+| -1 | 0.5236 |
+| -0.5 | 1.0472 |
+| 0.5 | 1.0472 |
+| 1 | 0.5236 |
### n+2 = 5
- | | |
- | --- | --- |
- | -1 | 0.3927 |
- | -0.70711 | 0.7854 |
- | 1.03412E-13 | 0.7854 |
- | 0.70711 | 0.7854 |
- | 1 | 0.3927 |
+| | |
+| ----------- | ------ |
+| -1 | 0.3927 |
+| -0.70711 | 0.7854 |
+| 1.03412E-13 | 0.7854 |
+| 0.70711 | 0.7854 |
+| 1 | 0.3927 |
### n+2 = 6
- | | |
- | --- | --- |
- | -1 | 0.31416 |
- | -0.80902 | 0.62832 |
- | -0.30902 | 0.62832 |
- | 0.30902 | 0.62832 |
- | 0.80902 | 0.62832 |
- | 1 | 0.31416 |
+| | |
+| -------- | ------- |
+| -1 | 0.31416 |
+| -0.80902 | 0.62832 |
+| -0.30902 | 0.62832 |
+| 0.30902 | 0.62832 |
+| 0.80902 | 0.62832 |
+| 1 | 0.31416 |
### n+2 = 7
- | | |
- | --- | --- |
- | -1 | 0.2618 |
- | -0.86603 | 0.5236 |
- | -0.5 | 0.5236 |
- | 1.03412E-13 | 0.5236 |
- | 0.5 | 0.5236 |
- | 0.86603 | 0.5236 |
- | 1 | 0.2618 |
+| | |
+| ----------- | ------ |
+| -1 | 0.2618 |
+| -0.86603 | 0.5236 |
+| -0.5 | 0.5236 |
+| 1.03412E-13 | 0.5236 |
+| 0.5 | 0.5236 |
+| 0.86603 | 0.5236 |
+| 1 | 0.2618 |
### n+2 = 8
- | | |
- | --- | --- |
- | -1 | 0.2244 |
- | -0.90097 | 0.4488 |
- | -0.62349 | 0.4488 |
- | -0.22252 | 0.4488 |
- | 0.22252 | 0.4488 |
- | 0.62349 | 0.4488 |
- | 0.90097 | 0.4488 |
- | 1 | 0.2244 |
+| | |
+| -------- | ------ |
+| -1 | 0.2244 |
+| -0.90097 | 0.4488 |
+| -0.62349 | 0.4488 |
+| -0.22252 | 0.4488 |
+| 0.22252 | 0.4488 |
+| 0.62349 | 0.4488 |
+| 0.90097 | 0.4488 |
+| 1 | 0.2244 |
### n+2 = 9
- | | |
- | --- | --- |
- | -1 | 0.19635 |
- | -0.92388 | 0.3927 |
- | -0.70711 | 0.3927 |
- | -0.38268 | 0.3927 |
- | 1.03412E-13 | 0.3927 |
- | 0.38268 | 0.3927 |
- | 0.70711 | 0.3927 |
- | 0.92388 | 0.3927 |
- | 1 | 0.19635 |
+| | |
+| ----------- | ------- |
+| -1 | 0.19635 |
+| -0.92388 | 0.3927 |
+| -0.70711 | 0.3927 |
+| -0.38268 | 0.3927 |
+| 1.03412E-13 | 0.3927 |
+| 0.38268 | 0.3927 |
+| 0.70711 | 0.3927 |
+| 0.92388 | 0.3927 |
+| 1 | 0.19635 |
### n+2 = 10
- | | |
- | --- | --- |
- | -1 | 0.17453 |
- | -0.93969 | 0.34907 |
- | -0.76604 | 0.34907 |
- | -0.5 | 0.34907 |
- | -0.17365 | 0.34907 |
- | 0.17365 | 0.34907 |
- | 0.5 | 0.34907 |
- | 0.76604 | 0.34907 |
- | 0.93969 | 0.34907 |
- | 1 | 0.17453 |
+| | |
+| -------- | ------- |
+| -1 | 0.17453 |
+| -0.93969 | 0.34907 |
+| -0.76604 | 0.34907 |
+| -0.5 | 0.34907 |
+| -0.17365 | 0.34907 |
+| 0.17365 | 0.34907 |
+| 0.5 | 0.34907 |
+| 0.76604 | 0.34907 |
+| 0.93969 | 0.34907 |
+| 1 | 0.17453 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussQuadrature.md b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussQuadrature.md
index 5b5fa592..97915107 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussQuadrature.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1GaussQuadrature.md
@@ -44,105 +44,105 @@ import EXAMPLE13 from "./_Chebyshev1GaussQuadrature_test_1.md";
Chebyshev1 Gauss Quadrature n = 1
- | | |
- | --- | --- |
- | 1.03412E-13 | 3.1416 |
+| | |
+| ----------- | ------ |
+| 1.03412E-13 | 3.1416 |
Chebyshev1 Gauss Quadrature n = 2
- | | |
- | --- | --- |
- | -0.70711 | 1.5708 |
- | 0.70711 | 1.5708 |
+| | |
+| -------- | ------ |
+| -0.70711 | 1.5708 |
+| 0.70711 | 1.5708 |
Chebyshev1 Gauss Quadrature n = 3
- | | |
- | --- | --- |
- | -0.86603 | 1.0472 |
- | 1.03412E-13 | 1.0472 |
- | 0.86603 | 1.0472 |
+| | |
+| ----------- | ------ |
+| -0.86603 | 1.0472 |
+| 1.03412E-13 | 1.0472 |
+| 0.86603 | 1.0472 |
Chebyshev1 Gauss Quadrature n = 4
- | | |
- | --- | --- |
- | -0.92388 | 0.7854 |
- | -0.38268 | 0.7854 |
- | 0.38268 | 0.7854 |
- | 0.92388 | 0.7854 |
+| | |
+| -------- | ------ |
+| -0.92388 | 0.7854 |
+| -0.38268 | 0.7854 |
+| 0.38268 | 0.7854 |
+| 0.92388 | 0.7854 |
Chebyshev1 Gauss Quadrature n = 5
- | | |
- | --- | --- |
- | -0.95106 | 0.62832 |
- | -0.58779 | 0.62832 |
- | 1.03412E-13 | 0.62832 |
- | 0.58779 | 0.62832 |
- | 0.95106 | 0.62832 |
+| | |
+| ----------- | ------- |
+| -0.95106 | 0.62832 |
+| -0.58779 | 0.62832 |
+| 1.03412E-13 | 0.62832 |
+| 0.58779 | 0.62832 |
+| 0.95106 | 0.62832 |
Chebyshev1 Gauss Quadrature n = 6
- | | |
- | --- | --- |
- | -0.96593 | 0.5236 |
- | -0.70711 | 0.5236 |
- | -0.25882 | 0.5236 |
- | 0.25882 | 0.5236 |
- | 0.70711 | 0.5236 |
- | 0.96593 | 0.5236 |
+| | |
+| -------- | ------ |
+| -0.96593 | 0.5236 |
+| -0.70711 | 0.5236 |
+| -0.25882 | 0.5236 |
+| 0.25882 | 0.5236 |
+| 0.70711 | 0.5236 |
+| 0.96593 | 0.5236 |
Chebyshev1 Gauss Quadrature n = 7
- | | |
- | --- | --- |
- | -0.97493 | 0.4488 |
- | -0.78183 | 0.4488 |
- | -0.43388 | 0.4488 |
- | 1.03412E-13 | 0.4488 |
- | 0.43388 | 0.4488 |
- | 0.78183 | 0.4488 |
- | 0.97493 | 0.4488 |
+| | |
+| ----------- | ------ |
+| -0.97493 | 0.4488 |
+| -0.78183 | 0.4488 |
+| -0.43388 | 0.4488 |
+| 1.03412E-13 | 0.4488 |
+| 0.43388 | 0.4488 |
+| 0.78183 | 0.4488 |
+| 0.97493 | 0.4488 |
Chebyshev1 Gauss Quadrature n = 8
- | | |
- | --- | --- |
- | -0.98079 | 0.3927 |
- | -0.83147 | 0.3927 |
- | -0.55557 | 0.3927 |
- | -0.19509 | 0.3927 |
- | 0.19509 | 0.3927 |
- | 0.55557 | 0.3927 |
- | 0.83147 | 0.3927 |
- | 0.98079 | 0.3927 |
+| | |
+| -------- | ------ |
+| -0.98079 | 0.3927 |
+| -0.83147 | 0.3927 |
+| -0.55557 | 0.3927 |
+| -0.19509 | 0.3927 |
+| 0.19509 | 0.3927 |
+| 0.55557 | 0.3927 |
+| 0.83147 | 0.3927 |
+| 0.98079 | 0.3927 |
Chebyshev1 Gauss Quadrature n = 9
- | | |
- | --- | --- |
- | -0.98481 | 0.34907 |
- | -0.86603 | 0.34907 |
- | -0.64279 | 0.34907 |
- | -0.34202 | 0.34907 |
- | 1.03412E-13 | 0.34907 |
- | 0.34202 | 0.34907 |
- | 0.64279 | 0.34907 |
- | 0.86603 | 0.34907 |
- | 0.98481 | 0.34907 |
+| | |
+| ----------- | ------- |
+| -0.98481 | 0.34907 |
+| -0.86603 | 0.34907 |
+| -0.64279 | 0.34907 |
+| -0.34202 | 0.34907 |
+| 1.03412E-13 | 0.34907 |
+| 0.34202 | 0.34907 |
+| 0.64279 | 0.34907 |
+| 0.86603 | 0.34907 |
+| 0.98481 | 0.34907 |
Chebyshev1 Gauss Quadrature n = 10
- | | |
- | --- | --- |
- | -0.98769 | 0.31416 |
- | -0.89101 | 0.31416 |
- | -0.70711 | 0.31416 |
- | -0.45399 | 0.31416 |
- | -0.15643 | 0.31416 |
- | 0.15643 | 0.31416 |
- | 0.45399 | 0.31416 |
- | 0.70711 | 0.31416 |
- | 0.89101 | 0.31416 |
- | 0.98769 | 0.31416 |
+| | |
+| -------- | ------- |
+| -0.98769 | 0.31416 |
+| -0.89101 | 0.31416 |
+| -0.70711 | 0.31416 |
+| -0.45399 | 0.31416 |
+| -0.15643 | 0.31416 |
+| 0.15643 | 0.31416 |
+| 0.45399 | 0.31416 |
+| 0.70711 | 0.31416 |
+| 0.89101 | 0.31416 |
+| 0.98769 | 0.31416 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1JacobiLobattoMatrix.md b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1JacobiLobattoMatrix.md
index 6a7c341a..3125dfdc 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1JacobiLobattoMatrix.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/Chebyshev1JacobiLobattoMatrix.md
@@ -16,7 +16,6 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(OUT) :: betaCoeff(0:)
END SUBROUTINE Chebyshev1JacobiLobattoMatrix
END INTERFACE
-
```
## Examples
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatEvenOdd_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatEvenOdd_test_1.md
index c591d4a6..a5c25ac6 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatEvenOdd_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatEvenOdd_test_1.md
@@ -41,29 +41,29 @@ $$
!!! note "Structure of D"
```fortran
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL reallocate(e, int(n/2)+1, int(n/2)+1)
- CALL reallocate(o, int(n/2)+1, int(n/2)+1)
- CALL LegendreDMatEvenOdd(n=n,D=D, e=e, o=o)
- !!
- CALL display(MdEncode(D), "D=")
- CALL display(MdEncode(e), "e=")
- CALL display(MdEncode(o), "o=")
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL reallocate(e, int(n/2)+1, int(n/2)+1)
+CALL reallocate(o, int(n/2)+1, int(n/2)+1)
+CALL LegendreDMatEvenOdd(n=n,D=D, e=e, o=o)
+!!
+CALL display(MdEncode(D), "D=")
+CALL display(MdEncode(e), "e=")
+CALL display(MdEncode(o), "o=")
```
!!! example "result"
- D =
+D =
| | | | | | |
|---------|----------|---------|---------|----------|----------|
@@ -95,18 +95,18 @@ $$
!!! note "Define function"
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_1.md
index 232f9277..2ca8683e 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_1.md
@@ -25,25 +25,25 @@ Structure of D for odd N
:::
```fortran
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | |
-|----------|----------|---------|----------|----------|----------|
+| -------- | -------- | ------- | -------- | -------- | -------- |
| -8.5 | 10.472 | -2.8944 | 1.5279 | -1.1056 | 0.5 |
| -2.618 | 1.1708 | 2 | -0.89443 | 0.61803 | -0.27639 |
| 0.72361 | -2 | 0.17082 | 1.618 | -0.89443 | 0.38197 |
@@ -56,25 +56,25 @@ Structure of D for even D
:::
```fortran
- !!
- n = 6
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 6
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | | |
-|----------|----------|----------|-------------|----------|----------|----------|
+| -------- | -------- | -------- | ----------- | -------- | -------- | -------- |
| -12.167 | 14.928 | -4 | 2 | -1.3333 | 1.0718 | -0.5 |
| -3.7321 | 1.7321 | 2.7321 | -1.1547 | 0.73205 | -0.57735 | 0.26795 |
| 1 | -2.7321 | 0.33333 | 2 | -1 | 0.73205 | -0.33333 |
@@ -84,34 +84,34 @@ D =
| 0.5 | -1.0718 | 1.3333 | -2 | 4 | -14.928 | 12.167 |
```fortran
+!!
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ !!
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- error = zeros(30, 2, 1.0_DFP)
+ call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
!!
- DO n = 1, SIZE(error,1)
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
- f1val = dfunc1(pt)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
- !!
- END DO
+ D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+ !!
+ f1val = dfunc1(pt)
!!
- CALL display( MdEncode(error), "error=")
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
error=
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 1 | 17.772 |
| 2 | 21.766 |
| 3 | 25.133 |
@@ -128,18 +128,18 @@ Define function
:::
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_2.md
index 975e6f15..cc322541 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1DMatrix_test_2.md
@@ -21,26 +21,26 @@ program main
```
```fortran title "Structure of D for odd N"
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- fval = 1.0_DFP
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+fval = 1.0_DFP
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | |
-|----------|----------|---------|---------|----------|----------|
+| -------- | -------- | ------- | ------- | -------- | -------- |
| -7.2098 | 10.556 | -5.2779 | 3.0472 | -1.633 | 0.51764 |
| -1.4142 | -0.70711 | 3.0472 | -1.4142 | 0.70711 | -0.21878 |
| 0.37894 | -1.633 | -0.1387 | 1.9319 | -0.75787 | 0.21878 |
@@ -49,25 +49,25 @@ D =
| -0.51764 | 1.633 | -3.0472 | 5.2779 | -10.556 | 7.2098 |
```fortran title "Structure of D for even D"
- !!
- n = 6
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 6
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | | |
-|----------|----------|----------|--------------|---------|----------|----------|
+| -------- | -------- | -------- | ------------ | ------- | -------- | -------- |
| -9.8447 | 14.511 | -7.4835 | 4.6095 | -2.874 | 1.5949 | -0.51286 |
| -1.8483 | -1.0056 | 4.153 | -2.0514 | 1.1886 | -0.63952 | 0.20316 |
| 0.45649 | -1.9889 | -0.26725 | 2.5581 | -1.1524 | 0.56923 | -0.17531 |
@@ -77,56 +77,56 @@ D =
| 0.51286 | -1.5949 | 2.874 | -4.6095 | 7.4835 | -14.511 | 9.8447 |
```fortran title "Test"
+!!
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ !!
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- error = zeros(30, 2, 1.0_DFP)
+ call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
!!
- DO n = 1, SIZE(error,1)
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
- f1val = dfunc1(pt)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
- !!
- END DO
+ D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+ !!
+ f1val = dfunc1(pt)
!!
- CALL display( MdEncode(error), "error=")
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
-| | |
-|----|-------------|
-| 1 | 0.39506 |
-| 2 | 2.7829 |
-| 3 | 1.3654 |
-| 4 | 4.0853 |
-| 5 | 2.111 |
-| 10 | 4.026 |
-| 15 | 1.0607 |
-| 20 | 1.1941 |
-| 25 | 0.20162 |
-| 30 | 0.21641 |
+| | |
+| -- | ------- |
+| 1 | 0.39506 |
+| 2 | 2.7829 |
+| 3 | 1.3654 |
+| 4 | 4.0853 |
+| 5 | 2.111 |
+| 10 | 4.026 |
+| 15 | 1.0607 |
+| 20 | 1.1941 |
+| 25 | 0.20162 |
+| 30 | 0.21641 |
```fortran title "Define function"
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 1.0/(1.0 + 16.0*x**2)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = -32.0 * x * func1(x)**2
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 1.0/(1.0 + 16.0*x**2)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = -32.0 * x * func1(x)**2
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_1.md
index d70fd291..c8696a94 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_1.md
@@ -14,7 +14,7 @@ end program main
```
| P0 | P1 | P2 | P3 | P4 | P5 |
-|----|------|------|----|------|------|
+| -- | ---- | ---- | -- | ---- | ---- |
| 1 | -1 | 1 | -1 | 1 | -1 |
| 1 | -0.5 | -0.5 | 1 | -0.5 | -0.5 |
| 1 | 0 | -1 | -0 | 1 | 0 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_2.md
index 3e4c0fed..cdd2bf3a 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_2.md
@@ -14,5 +14,5 @@ end program main
```
| P0 | P1 | P2 | P3 | P4 | P5 |
-|----|----|----|----|----|----|
+| -- | -- | -- | -- | -- | -- |
| 1 | 0 | -1 | -0 | 1 | 0 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_3.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_3.md
index 17c14155..cb19a24b 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_3.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_3.md
@@ -35,130 +35,130 @@ program main
```
!!! note "Step-1"
- Create Gauss LobattoPoints
+Create Gauss LobattoPoints
```fortran
- call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
- & quadType=GaussLobatto )
+call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
+ & quadType=GaussLobatto )
```
!!! note "Step-2"
- Calculate p_in matrix
+Calculate p_in matrix
```fortran
- p_in = LegendreEvalAll( n=n, x=pt )
+p_in = LegendreEvalAll( n=n, x=pt )
```
!!! note "Step-2"
- Calculate p_in matrix
+Calculate p_in matrix
```fortran
- p_in = LegendreEvalAll( n=n, x=pt )
+p_in = LegendreEvalAll( n=n, x=pt )
```
!!! note "Step-3"
- Calculate First derivative of P in dp_in
+Calculate First derivative of P in dp_in
```fortran
- dp_in = LegendreGradientEvalAll( n=n, x=pt )
+dp_in = LegendreGradientEvalAll( n=n, x=pt )
```
!!! note "Step-4"
- Calculate `CMat` C matrix
+Calculate `CMat` C matrix
```fortran
- CMat = 0.0_DFP
- DO ii = 1, n+1
- CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
- END DO
- !!
+CMat = 0.0_DFP
+DO ii = 1, n+1
+ CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
+END DO
+!!
```
!!! note "Step-5"
- Add contribution of `PlPl` into `CMat`
+Add contribution of `PlPl` into `CMat`
```fortran
- CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
+CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
```
!!! note "Step-6"
- Initial condition
+Initial condition
```fortran
- u0 = initialCondition()
+u0 = initialCondition()
```
!!! note "Step-7"
- Add Initial condition to RHS
+Add Initial condition to RHS
```fortran
- rhs = p_in(1,:) * u0
+rhs = p_in(1,:) * u0
```
!!! warning "Step-8"
- Make nodal value of force vector from tn to tn+1
+Make nodal value of force vector from tn to tn+1
```fortran
- t1 = t0
- t2 = tf
- timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
- fval = forceFunction( timeGP )
- exact_uval = exactSolution( timeGP )
+t1 = t0
+t2 = tf
+timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
+fval = forceFunction( timeGP )
+exact_uval = exactSolution( timeGP )
```
!!! note "Step-8"
- Legendre transformation of force.
+Legendre transformation of force.
```fortran
- fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=GaussLobatto)
- gamma = LegendreNormSQR2( n=n )
- CALL display( fhat, "fhat = " )
+fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=GaussLobatto)
+gamma = LegendreNormSQR2( n=n )
+CALL display( fhat, "fhat = " )
```
!!! note "Step-9"
- Add contribution to RHS
+Add contribution to RHS
```fortran
- RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
+RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
```
!!! note "Step-10"
- Solve "Ax=b"
+Solve "Ax=b"
```fortran
- uhat = 0.0_DFP
- CALL Solve( X=uhat, A=CMat, B=RHS )
+uhat = 0.0_DFP
+CALL Solve( X=uhat, A=CMat, B=RHS )
```
!!! note "Step-11"
- Calculate uval from uhat using inverse transformation
+Calculate uval from uhat using inverse transformation
```fortran
- uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
- CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
+uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
+CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
```
!!! note "Plot settings"
```fortran
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-n="//tostring(n)// "-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([t0, tf], [ MINVAL(uval), 1.2*MAXVAL(uval)])
- CALL aplot%setTicks()
- CALL aplot%plot2D( x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
- & lineWidth=0.0_DFP )
- CALL aplot%plot2D( &
- & x=linspace(t0, tf, 200), &
- & y=exactSolution(linspace(t0, tf, 200)), &
- & lineColor="b", &
- & lineWidth=2.0_DFP )
- CALL aplot%setLabels("x","u","n="//tostring(n))
- CALL aplot%show()
- CALL aplot%deallocate()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-n="//tostring(n)// "-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([t0, tf], [ MINVAL(uval), 1.2*MAXVAL(uval)])
+CALL aplot%setTicks()
+CALL aplot%plot2D( x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
+ & lineWidth=0.0_DFP )
+CALL aplot%plot2D( &
+ & x=linspace(t0, tf, 200), &
+ & y=exactSolution(linspace(t0, tf, 200)), &
+ & lineColor="b", &
+ & lineWidth=2.0_DFP )
+CALL aplot%setLabels("x","u","n="//tostring(n))
+CALL aplot%show()
+CALL aplot%deallocate()
```
End of code here!
@@ -166,37 +166,37 @@ End of code here!
!!! settings "Force function"
```fortran
- contains
- !!
- elemental function forceFunction(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = sin(x)
- end function forceFunction
- !!
+contains
+!!
+elemental function forceFunction(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = sin(x)
+end function forceFunction
+!!
```
!!! settings "Initial Condition"
```fortran
- !!
- elemental function initialCondition() result(ans)
- real( dfp ) :: ans
- ans = -1.0_DFP
- end function initialCondition
- !!
+!!
+elemental function initialCondition() result(ans)
+ real( dfp ) :: ans
+ ans = -1.0_DFP
+end function initialCondition
+!!
```
!!! settings "Exact Solution"
```fortran
- !!
- elemental function exactSolution(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = -cos(x)
- end function exactSolution
- !!
+!!
+elemental function exactSolution(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = -cos(x)
+end function exactSolution
+!!
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_4.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_4.md
index a788309b..d2470ccc 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_4.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalAll_test_4.md
@@ -40,106 +40,106 @@ program main
!!! note "Create nodes and order"
```fortran
- orders = createOrder()
- tTimeElements = SIZE(orders)
- !!
- timeNodes = createTimeNodes()
- tTimeNodes = SIZE(timeNodes)
- !!
- IF( tTimeNodes .NE. tTimeElements + 1 ) THEN
- CALL display( "Error code 1")
- STOP
- END IF
+orders = createOrder()
+tTimeElements = SIZE(orders)
+!!
+timeNodes = createTimeNodes()
+tTimeNodes = SIZE(timeNodes)
+!!
+IF( tTimeNodes .NE. tTimeElements + 1 ) THEN
+ CALL display( "Error code 1")
+ STOP
+END IF
```
!!! note "Plot Settings"
```fortran
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-n="//tostring(n)// "-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim( &
- & [timeNodes(1), timeNodes(tTimeNodes)], &
- & [ minY, maxY])
- CALL aplot%setTicks()
- CALL aplot%plot2D( &
- & x=linspace(timeNodes(1), timeNodes(tTimeNodes), 200), &
- & y=exactSolution(linspace(timeNodes(1), timeNodes(tTimeNodes), 200)), &
- & lineColor="b", &
- & lineWidth=2.0_DFP )
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-n="//tostring(n)// "-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim( &
+ & [timeNodes(1), timeNodes(tTimeNodes)], &
+ & [ minY, maxY])
+CALL aplot%setTicks()
+CALL aplot%plot2D( &
+ & x=linspace(timeNodes(1), timeNodes(tTimeNodes), 200), &
+ & y=exactSolution(linspace(timeNodes(1), timeNodes(tTimeNodes), 200)), &
+ & lineColor="b", &
+ & lineWidth=2.0_DFP )
```
!!! note "InitialCondition"
```fortran
- u0 = initialCondition()
+u0 = initialCondition()
```
!!! note "Start time step loop"
```fortran
- DO iTime = 1, tTimeElements
- CALL BlankLines( nol=5 )
- CALL EqualLine()
- CALL Display( "iTime="//tostring(iTime) )
- CALL EqualLine()
- t1 = timeNodes(iTime)
- t2 = timeNodes(iTime+1)
- n = orders( iTime )
- !!
- call Reallocate( pt, n+1, wt, n+1 )
- call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
- & quadType=GaussLobatto )
- !!
- p_in = LegendreEvalAll( n=n, x=pt )
- dp_in = LegendreGradientEvalAll( n=n, x=pt )
- !!
- call Reallocate( Cmat, n+1, n+1 )
- CMat = 0.0_DFP
- do ii = 1, n+1
- CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
- end do
- !!
- CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
- !!
- RHS = p_in(1,:) * u0
- !!
- timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
- fval = forceFunction( timeGP )
- fhat = LegendreTransform(n=n, coeff=fval, x=pt, &
- & w=wt, quadType=GaussLobatto)
- gamma = LegendreNormSQR2( n=n )
- !!
- CALL display( fhat, "fhat = " ) !! warning
- exact_uval = exactSolution( timeGP ) !! warning
- !!
- RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
- !!
- CALL Reallocate( uhat, n+1 )
- uhat = 0.0_DFP
- CALL Solve( X=uhat, A=CMat, B=RHS )
- !!
- uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
- CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
- !! warning
- !!
- !! At this point calculation is finished for time element
- !! But we need to update initialCondition
- !!
- u0 = uval( n+1 )
- !!
- !! Plotting
- !!
- CALL aplot%plot2D( &
- & x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
- & lineWidth=0.0_DFP )
- END DO
- CALL aplot%setLabels("x","u","tTimeElements="//tostring(tTimeElements))
- CALL aplot%show()
- CALL aplot%deallocate()
+DO iTime = 1, tTimeElements
+ CALL BlankLines( nol=5 )
+ CALL EqualLine()
+ CALL Display( "iTime="//tostring(iTime) )
+ CALL EqualLine()
+ t1 = timeNodes(iTime)
+ t2 = timeNodes(iTime+1)
+ n = orders( iTime )
+ !!
+ call Reallocate( pt, n+1, wt, n+1 )
+ call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
+ & quadType=GaussLobatto )
+ !!
+ p_in = LegendreEvalAll( n=n, x=pt )
+ dp_in = LegendreGradientEvalAll( n=n, x=pt )
+ !!
+ call Reallocate( Cmat, n+1, n+1 )
+ CMat = 0.0_DFP
+ do ii = 1, n+1
+ CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
+ end do
+ !!
+ CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
+ !!
+ RHS = p_in(1,:) * u0
+ !!
+ timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
+ fval = forceFunction( timeGP )
+ fhat = LegendreTransform(n=n, coeff=fval, x=pt, &
+ & w=wt, quadType=GaussLobatto)
+ gamma = LegendreNormSQR2( n=n )
+ !!
+ CALL display( fhat, "fhat = " ) !! warning
+ exact_uval = exactSolution( timeGP ) !! warning
+ !!
+ RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
+ !!
+ CALL Reallocate( uhat, n+1 )
+ uhat = 0.0_DFP
+ CALL Solve( X=uhat, A=CMat, B=RHS )
+ !!
+ uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
+ CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
+ !! warning
+ !!
+ !! At this point calculation is finished for time element
+ !! But we need to update initialCondition
+ !!
+ u0 = uval( n+1 )
+ !!
+ !! Plotting
+ !!
+ CALL aplot%plot2D( &
+ & x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
+ & lineWidth=0.0_DFP )
+END DO
+CALL aplot%setLabels("x","u","tTimeElements="//tostring(tTimeElements))
+CALL aplot%show()
+CALL aplot%deallocate()
```
End of code here!
@@ -147,62 +147,62 @@ End of code here!
!!! settings "Force function"
```fortran
- contains
- !!
- elemental function forceFunction(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = sin(x)
- end function forceFunction
- !!
+contains
+!!
+elemental function forceFunction(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = sin(x)
+end function forceFunction
+!!
```
!!! settings "Initial Condition"
```fortran
- !!
- elemental function initialCondition() result(ans)
- real( dfp ) :: ans
- ans = -1.0_DFP
- end function initialCondition
- !!
+!!
+elemental function initialCondition() result(ans)
+ real( dfp ) :: ans
+ ans = -1.0_DFP
+end function initialCondition
+!!
```
!!! settings "Exact Solution"
```fortran
- !!
- elemental function exactSolution(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = -cos(x)
- end function exactSolution
- !!
+!!
+elemental function exactSolution(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = -cos(x)
+end function exactSolution
+!!
```
!!! settings "createTimeNodes"
```fortran
- !!
- pure function createTimeNodes() result(ans)
- real( dfp ) :: ans( 7 )
- ans = linspace(0.0, 6.0, 7)
- end function createTimeNodes
- !!
+!!
+pure function createTimeNodes() result(ans)
+ real( dfp ) :: ans( 7 )
+ ans = linspace(0.0, 6.0, 7)
+end function createTimeNodes
+!!
```
!!! settings "createOrder"
```fortran
- !!
- pure function createOrder() result(ans)
- real( dfp ) :: ans( 6 )
- ans(1) = 10
- ans(2) = 5
- ans(3) = 6
- ans(4:) = 10
- end function createOrder
- !!
+!!
+pure function createOrder() result(ans)
+ real( dfp ) :: ans( 6 )
+ ans(1) = 10
+ ans(2) = 5
+ ans(3) = 6
+ ans(4:) = 10
+end function createOrder
+!!
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalSum_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalSum_test_1.md
index d6e0b17c..3782faca 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalSum_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1EvalSum_test_1.md
@@ -28,4 +28,3 @@ program main
call ok( ALL(SOFTEQ(ans, exact, tol )))
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_1.md
index 387636ec..6e35bd5d 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_1.md
@@ -21,4 +21,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_2.md
index 6f3bc7a1..5fbf4710 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Eval_test_2.md
@@ -16,4 +16,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_1.md
index 2544987e..7081eaa6 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_1.md
@@ -22,7 +22,7 @@ end program main
Chebyshev1 Gauss Lobatto points, n+2 = 4
| pt | wt |
-|-------------|--------|
+| ----------- | ------ |
| -1 | 0.3927 |
| -0.70711 | 0.7854 |
| 1.03412E-13 | 0.7854 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_2.md
index f7dbf5bf..2fae62a9 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussLobattoQuadrature_test_2.md
@@ -25,7 +25,7 @@ end program main
Chebyshev1 Gauss Lobatto points, n+2 = 4
| pt | wt |
-|-------------|--------|
+| ----------- | ------ |
| -1 | 0.3927 |
| -0.70711 | 0.7854 |
| 1.03412E-13 | 0.7854 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_1.md
index b8d4516e..91ae1400 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_1.md
@@ -23,7 +23,7 @@ end program main
## Results
| pt | wt |
-|-------------|--------|
+| ----------- | ------ |
| -0.86603 | 1.0472 |
| 1.03412E-13 | 1.0472 |
| 0.86603 | 1.0472 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_2.md
index c97a4271..857f61b0 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_2.md
@@ -20,6 +20,6 @@ end program main
Chebyshev1 Gauss Quadrature n = 4
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| -------- | -------- | ------- | ------- |
| -0.92388 | -0.38268 | 0.38268 | 0.92388 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_3.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_3.md
index bdeb36b1..ad246d60 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_3.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussQuadrature_test_3.md
@@ -28,7 +28,7 @@ end program main
```
| pt | wt |
-|-------------|--------|
+| ----------- | ------ |
| -0.86603 | 1.0472 |
| 1.03412E-13 | 1.0472 |
| 0.86603 | 1.0472 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussRadauQuadrature_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussRadauQuadrature_test_1.md
index c8deb3dd..3033991e 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussRadauQuadrature_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GaussRadauQuadrature_test_1.md
@@ -27,18 +27,18 @@ end program main
Chebyshev1 Gauss Radau points, n+1 = 4
- | | |
- | --- | --- |
- | -1 | 0.2244 |
- | -0.62349 | 0.4488 |
- | 0.22252 | 0.4488 |
- | 0.90097 | 0.4488 |
+| | |
+| -------- | ------ |
+| -1 | 0.2244 |
+| -0.62349 | 0.4488 |
+| 0.22252 | 0.4488 |
+| 0.90097 | 0.4488 |
Chebyshev1 Gauss Radau points, n+1 = 4
- | | |
- | --- | --- |
- | -0.90097 | 0.2244 |
- | -0.22252 | 0.4488 |
- | 0.62349 | 0.4488 |
- | 1 | 0.4488 |
+| | |
+| -------- | ------ |
+| -0.90097 | 0.2244 |
+| -0.22252 | 0.4488 |
+| 0.62349 | 0.4488 |
+| 1 | 0.4488 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_1.md
index a53361d5..79d74b1a 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_1.md
@@ -53,7 +53,7 @@ program main
```
| $\tilde{f}^{(1)}_{n}$ | $\tilde{\partial f}_{n}$ |
-|-----------------------|--------------------------|
+| --------------------- | ------------------------ |
| 2.85417E-13 | -1.11369E-14 |
| -0.45011 | -0.45611 |
| 5.55259E-13 | -6.21202E-15 |
@@ -117,7 +117,7 @@ program main
```
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 1 | 0.11073 |
| 2 | 1.7716 |
| 3 | 0.40901 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_2.md
index 560ecedc..a778a159 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_2.md
@@ -23,45 +23,45 @@ program main
```
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
- CALL aplot%setTicks()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
+CALL aplot%setTicks()
```
```fortran title "Prepare quadratures"
- n = 20
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
- x = pt
+n = 20
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
+x = pt
```
```fortran title "Chebyshev1Transformation"
- fval = func1(pt)
- !!
- fhat = Chebyshev1Transform(n=n, coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = Chebyshev1GradientCoeff(n=n, coeff=fhat)
- !!
+fval = func1(pt)
+!!
+fhat = Chebyshev1Transform(n=n, coeff=fval, x=pt, w=wt, quadType=quadType)
+!!
+f1hat = Chebyshev1GradientCoeff(n=n, coeff=fhat)
+!!
```
```fortran title "Chebyshev1Transformation"
- !! nodal values of derivative of function
- f1val = dfunc1(pt)
- !!
- f1hat2 = Chebyshev1Transform(n=n, coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- call display( MdEncode(f1hat .colconcat. f1hat2), "")
- !!
+!! nodal values of derivative of function
+f1val = dfunc1(pt)
+!!
+f1hat2 = Chebyshev1Transform(n=n, coeff=f1val, x=pt, w=wt, quadType=quadType)
+!!
+call display( MdEncode(f1hat .colconcat. f1hat2), "")
+!!
```
| $\tilde{f}^{(1)}_{n}$ | $\tilde{\partial f}_{n}$ |
-|-----------------------|--------------------------|
+| --------------------- | ------------------------ |
| 8.57115E-13 | -9.82217E-15 |
| -0.34718 | -0.45626 |
| 1.69866E-12 | -9.05354E-15 |
@@ -85,49 +85,49 @@ program main
| 0 | -2.17817E-13 |
```fortran title "Plotting"
- CALL aplot%plot2D( x=x,y=Chebyshev1InvTransform(n=n, &
- & x=x, coeff=f1hat), lineColor="r", lineWidth=2.0_DFP)
- !!
- CALL aplot%plot2D( x=x,y=Chebyshev1InvTransform(n=n, &
- & x=x, coeff=f1hat2), lineColor="b", lineWidth=2.0_DFP)
- !!
- CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
- CALL aplot%setLabels("x","du(x)","n="//tostring(n))
+CALL aplot%plot2D( x=x,y=Chebyshev1InvTransform(n=n, &
+ & x=x, coeff=f1hat), lineColor="r", lineWidth=2.0_DFP)
+!!
+CALL aplot%plot2D( x=x,y=Chebyshev1InvTransform(n=n, &
+ & x=x, coeff=f1hat2), lineColor="b", lineWidth=2.0_DFP)
+!!
+CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
+CALL aplot%setLabels("x","du(x)","n="//tostring(n))
```
```fortran title "Prepare quadratures"
- error = zeros(30, 2, 1.0_DFP)
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- DO n = 1, SIZE(error,1)
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- fhat = Chebyshev1Transform(n=n, &
- & coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = Chebyshev1GradientCoeff(n=n, coeff=fhat)
- !!
- !! nodal values of derivative of function
- !!
- f1val = dfunc1(pt)
- !!
- f1hat2 = Chebyshev1Transform(n=n, &
- & coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1hat-f1hat2) )
- !!
- END DO
+ call Chebyshev1Quadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
!!
- CALL display( MdEncode(error), "error=")
+ fval = func1(pt)
+ !!
+ fhat = Chebyshev1Transform(n=n, &
+ & coeff=fval, x=pt, w=wt, quadType=quadType)
+ !!
+ f1hat = Chebyshev1GradientCoeff(n=n, coeff=fhat)
+ !!
+ !! nodal values of derivative of function
+ !!
+ f1val = dfunc1(pt)
+ !!
+ f1hat2 = Chebyshev1Transform(n=n, &
+ & coeff=f1val, x=pt, w=wt, quadType=quadType)
+ !!
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1hat-f1hat2) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
| | |
-|----|-------------|
+| -- | ----------- |
| 1 | 0.39506 |
| 2 | 2.2722 |
| 3 | 0.96551 |
@@ -140,18 +140,18 @@ program main
| 30 | 5.49672E-02 |
```fortran title "Define function"
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 1.0/(1.0 + 16.0*x**2)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = -32.0 * x * func1(x)**2
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 1.0/(1.0 + 16.0*x**2)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = -32.0 * x * func1(x)**2
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_3.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_3.md
index e10b94bd..5e030c12 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_3.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientCoeff_test_3.md
@@ -23,53 +23,53 @@ program main
```
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
- CALL aplot%setTicks()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
+CALL aplot%setTicks()
```
```fortran title "Prepare quadratures"
- n = 20
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call Chebyshev1Quadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
- x = pt
- !!
- fval = func1(pt)
- !!
- D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
- !!
+n = 20
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call Chebyshev1Quadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
+x = pt
+!!
+fval = func1(pt)
+!!
+D = Chebyshev1DMatrix(n=n, x=pt, quadType=quadType)
+!!
```
```fortran title "Plotting"
- CALL aplot%plot2D( x=x,y=MATMUL(D, fval), &
- & pointColor="r", lineWidth=0.0_DFP, pointType=PS_H_CIRCLE, &
- & pointSize=4.0_DFP)
- !!
- x = linspace(-1.0_DFP, 1.0_DFP, 101)
- CALL aplot%plot2D( x=x,y=dfunc1(x), lineWidth=2.0_DFP, &
- & lineColor="k" )
- CALL aplot%setLabels("x","du(x)","n="//tostring(n))
+CALL aplot%plot2D( x=x,y=MATMUL(D, fval), &
+ & pointColor="r", lineWidth=0.0_DFP, pointType=PS_H_CIRCLE, &
+ & pointSize=4.0_DFP)
+!!
+x = linspace(-1.0_DFP, 1.0_DFP, 101)
+CALL aplot%plot2D( x=x,y=dfunc1(x), lineWidth=2.0_DFP, &
+ & lineColor="k" )
+CALL aplot%setLabels("x","du(x)","n="//tostring(n))
```
```fortran title "Define function"
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 1.0/(1.0 + 16.0*x**2)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = -32.0 * x * func1(x)**2
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 1.0/(1.0 + 16.0*x**2)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = -32.0 * x * func1(x)**2
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_1.md
index 05f13f8a..a95a198f 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_1.md
@@ -8,26 +8,25 @@ program main
```
```fortran title "Chebyshev1-Gauss"
- x = [-1.0, 0.0, 1.0]
- n = 4; call callme
+x = [-1.0, 0.0, 1.0]
+n = 4; call callme
```
| dP0 | dP1 | dP2 | dP3 | dP4 |
-|-----|-----|-----|-----|-----|
+| --- | --- | --- | --- | --- |
| 0 | 1 | -4 | 9 | -16 |
| 0 | 1 | 0 | -3 | 0 |
| 0 | 1 | 4 | 9 | 16 |
```fortran
- contains
- subroutine callme
- ans= Chebyshev1GradientEvalAll( n=n, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= Chebyshev1GradientEvalAll( n=n, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_2.md
index 1fd7ebfb..7f402a8d 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalAll_test_2.md
@@ -13,6 +13,6 @@ program main
end program main
```
-| P0 | P1 | P2 | P3 | P4 |
-|----|----|----|----| ----|
-| 0 | 1 | 2 | 0 | -4 |
+| P0 | P1 | P2 | P3 | P4 |
+| -- | -- | -- | -- | -- |
+| 0 | 1 | 2 | 0 | -4 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_1.md
index 2eb74d30..e7924a62 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `Chebyshev1GradientEvalSum` method.
+This example shows the usage of `Chebyshev1GradientEvalSum` method.
This routine evaluates the gradient of sum of finite series of Chebyshev1 polynomials of order upto n, at a single point.
@@ -38,4 +38,3 @@ program main
call ok( SOFTEQ(ans, exact, tol ))
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_2.md
index 2eef2210..b3089ac9 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_2.md
@@ -1,4 +1,4 @@
-This example shows the usage of `Chebyshev1GradientEvalSum` method.
+This example shows the usage of `Chebyshev1GradientEvalSum` method.
This routine evaluates the gradient offinite sum of the Chebyshev1 polynomials of order upto n, at several point.
@@ -36,4 +36,3 @@ program main
call ok( ALL(SOFTEQ(ans, exact, tol )))
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_3.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_3.md
index 72e7899c..cccc1297 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_3.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEvalSum_test_3.md
@@ -1,4 +1,4 @@
-This example shows the usage of `Chebyshev1GradientEvalSum` method.
+This example shows the usage of `Chebyshev1GradientEvalSum` method.
This routine evaluates the kth gradient of sum of finite series of Chebyshev1 polynomials of order upto n, at a single point.
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_1.md
index c5017454..97427a4a 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_1.md
@@ -27,4 +27,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_2.md
index 57d13832..0c06b884 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1GradientEval_test_2.md
@@ -16,4 +16,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1InvTransform_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1InvTransform_test_1.md
index 8cd680ff..c680c382 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1InvTransform_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1InvTransform_test_1.md
@@ -28,7 +28,7 @@ end program main
```
| n | error |
-|----|-------------|
+| -- | ----------- |
| 1 | 0.80325 |
| 2 | 0.12852 |
| 3 | 0.61689 |
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiLobattoMatrix_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiLobattoMatrix_test_1.md
index 4af87937..940477ad 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiLobattoMatrix_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiLobattoMatrix_test_1.md
@@ -52,8 +52,7 @@ betaCoeff:
0.25000
0.25000
0.25000
- 0.00000
-
+ 0.00000
```
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiMatrix_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiMatrix_test_1.md
index 3f3a44ef..054176f8 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiMatrix_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiMatrix_test_1.md
@@ -45,8 +45,7 @@ betaCoeff:
0.50000
0.25000
0.25000
- 0.25000
-
+ 0.25000
```
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiRadauMatrix_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiRadauMatrix_test_1.md
index cd2e07ad..ade7236b 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiRadauMatrix_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1JacobiRadauMatrix_test_1.md
@@ -50,8 +50,7 @@ betaCoeff:
0.25000
0.25000
0.25000
- 0.00000
-
+ 0.00000
```
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1MonomialExpansionAll_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1MonomialExpansionAll_test_1.md
index 4f80bebd..cb47ef69 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1MonomialExpansionAll_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1MonomialExpansionAll_test_1.md
@@ -8,11 +8,11 @@ program main
```
```fortran title "Chebyshev1MonomialExpansionAll"
- n = 5; call callme
+n = 5; call callme
```
| P0 | P1 | P2 | P3 | P4 | P5 |
-|----|----|----|----|----|-----|
+| -- | -- | -- | -- | -- | --- |
| 1 | 0 | -1 | -0 | 1 | 0 |
| 0 | 1 | 0 | -3 | -0 | 5 |
| 0 | 0 | 2 | 0 | -8 | -0 |
@@ -21,25 +21,25 @@ program main
| 0 | 0 | 0 | 0 | 0 | 16 |
```fortran title "Chebyshev1MonomialExpansion"
- n = 5; call callme2
+n = 5; call callme2
```
| x0 | x1 | x2 | x3 | x4 | x5 |
-|----|----|----|-----|----|----|
+| -- | -- | -- | --- | -- | -- |
| 0 | 5 | -0 | -20 | 0 | 16 |
```fortran
- contains
- subroutine callme
- coeff=Chebyshev1MonomialExpansionAll( n=n )
- astr = MdEncode( coeff )
- call display( astr%chars(), "" )
- end subroutine callme
- !!
- subroutine callme2
- astr = MdEncode( Chebyshev1MonomialExpansion( n=n ) )
- call display( astr%chars(), "" )
- end subroutine callme2
+contains
+subroutine callme
+ coeff=Chebyshev1MonomialExpansionAll( n=n )
+ astr = MdEncode( coeff )
+ call display( astr%chars(), "" )
+end subroutine callme
+!!
+subroutine callme2
+ astr = MdEncode( Chebyshev1MonomialExpansion( n=n ) )
+ call display( astr%chars(), "" )
+end subroutine callme2
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1NormSQR2_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1NormSQR2_test_1.md
index 061212e0..2372357f 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1NormSQR2_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1NormSQR2_test_1.md
@@ -15,5 +15,4 @@ end program main
1.57080
1.57080
1.57080
-
```
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_1.md
index b1ee64a6..ebcb1d63 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_1.md
@@ -10,7 +10,7 @@ program main
```
```fortran title "Chebyshev1-Gauss"
- n = 2; quadType=Gauss; call callme
+n = 2; quadType=Gauss; call callme
```
@@ -18,7 +18,7 @@ program main
| pt | wt |
-|----------|--------|
+| -------- | ------ |
| -0.70711 | 1.5708 |
| 0.70711 | 1.5708 |
@@ -26,7 +26,7 @@ program main
```fortran title "Chebyshev1-Radau-Left"
- n = 3; quadType=GaussRadauLeft; call callme
+n = 3; quadType=GaussRadauLeft; call callme
```
@@ -34,7 +34,7 @@ program main
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.31416 |
| -0.30902 | 0.62832 |
| 0.80902 | 0.62832 |
@@ -43,7 +43,7 @@ program main
```fortran title "Chebyshev1-Radau-Right"
- n = 3; quadType=GaussRadauRight; call callme
+n = 3; quadType=GaussRadauRight; call callme
```
@@ -51,7 +51,7 @@ program main
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.80902 | 0.31416 |
| 0.30902 | 0.62832 |
| 1 | 0.62832 |
@@ -60,7 +60,7 @@ program main
```fortran title "Chebyshev1-Lobatto"
- n = 4; quadType=GaussLobatto; call callme
+n = 4; quadType=GaussLobatto; call callme
```
@@ -68,7 +68,7 @@ program main
| pt | wt |
-|------|--------|
+| ---- | ------ |
| -1 | 0.5236 |
| -0.5 | 1.0472 |
| 0.5 | 1.0472 |
@@ -78,16 +78,16 @@ program main
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call Chebyshev1Quadrature( n=n, pt=pt, wt=wt, &
- & quadType=quadType )
- msg = "| pt | wt |"
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call Chebyshev1Quadrature( n=n, pt=pt, wt=wt, &
+ & quadType=quadType )
+ msg = "| pt | wt |"
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_2.md
index c2d41ff1..5a6e6a04 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Quadrature_test_2.md
@@ -9,52 +9,52 @@ program main
```
```fortran title "Chebyshev1-Gauss"
- n = 2; quadType=Gauss; call callme
+n = 2; quadType=Gauss; call callme
```
| pt | wt |
-|----------|--------|
+| -------- | ------ |
| -0.70711 | 1.5708 |
| 0.70711 | 1.5708 |
```fortran title "Chebyshev1-Radau-Left"
- n = 2; quadType=GaussRadauLeft; call callme
+n = 2; quadType=GaussRadauLeft; call callme
```
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.30902 | 0.62832 |
| 0.80902 | 0.62832 |
```fortran title "Chebyshev1-Radau-Right"
- n = 2; quadType=GaussRadauRight; call callme
+n = 2; quadType=GaussRadauRight; call callme
```
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.80902 | 0.31416 |
| 0.30902 | 0.62832 |
```fortran title "Chebyshev1-Lobatto"
- n = 2; quadType=GaussLobatto; call callme
+n = 2; quadType=GaussLobatto; call callme
```
| pt | wt |
-|------|--------|
+| ---- | ------ |
| -0.5 | 1.0472 |
| 0.5 | 1.0472 |
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call Chebyshev1Quadrature( n=n, pt=pt, wt=wt, &
- & quadType=quadType, onlyInside=onlyInside )
- msg = "| pt | wt |"
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call Chebyshev1Quadrature( n=n, pt=pt, wt=wt, &
+ & quadType=quadType, onlyInside=onlyInside )
+ msg = "| pt | wt |"
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_1.md
index 4b20006e..8c0a3d25 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_1.md
@@ -32,4 +32,3 @@ program main
call ok( ALL(SOFTEQ(exact, uhat, tol)), "n=10 "//CHAR_LF)
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_2.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_2.md
index 447fc969..c4c88387 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_2.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Transform_test_2.md
@@ -32,4 +32,3 @@ program main
call ok( ALL(SOFTEQ(exact, uhat, tol)), "n=10 "//CHAR_LF)
end program main
```
-
diff --git a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Zeros_test_1.md b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Zeros_test_1.md
index 2b3ab058..9fded48d 100644
--- a/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Zeros_test_1.md
+++ b/docs/docs-api/Chebyshev1PolynomialUtility/_Chebyshev1Zeros_test_1.md
@@ -17,5 +17,5 @@ end program main
Zeros of T(x), n = 3
| | | |
-|----------|-------------|---------|
+| -------- | ----------- | ------- |
| -0.86603 | 1.03412E-13 | 0.86603 |
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_1.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_1.md
index 667abff7..0b0d0b1b 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_1.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_1.md
@@ -28,9 +28,9 @@ integer(i4b) :: ii
### n=1
```fortran
- obj = ChebyshevFirst1D(varname="x", n=1)
- call Display( "T(n=1) := " )
- call obj%Display( "=>" )
+obj = ChebyshevFirst1D(varname="x", n=1)
+call Display( "T(n=1) := " )
+call obj%Display( "=>" )
```
```txt
@@ -43,10 +43,10 @@ J(n=1, alpha=0.0, beta=0.0) :=
### n=2
```fortran
- call blanklines( nol=5 )
- obj = ChebyshevFirst1D(varname="x", n=2)
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
+call blanklines( nol=5 )
+obj = ChebyshevFirst1D(varname="x", n=2)
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
```
```txt
@@ -60,10 +60,10 @@ J(n=2, alpha=0.0, beta=0.0) :=
### n=3
```fortran
- call blanklines( nol=5 )
- obj = ChebyshevFirst1D(varname="x", n=3)
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
+call blanklines( nol=5 )
+obj = ChebyshevFirst1D(varname="x", n=3)
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
```
```txt
@@ -78,10 +78,10 @@ J(n=3, alpha=0.0, beta=0.0) :=
### n=4
```fortran
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=4, alpha=0.0_DFP, beta=0.0_DFP)
- call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=4, alpha=0.0_DFP, beta=0.0_DFP)
+call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
```
```txt
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_2.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_2.md
index f6711b28..a7b15121 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_2.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_2.md
@@ -28,11 +28,11 @@ integer(i4b) :: ii
Let us generate 100 Chebyshev1 polynomials
```fortran
- DO ii = 1, 1000000
- obj=ChebyshevFirst1D(varname="x", n=100)
- call obj%Deallocate()
- END DO
- Read( *, * ) ii
+DO ii = 1, 1000000
+ obj=ChebyshevFirst1D(varname="x", n=100)
+ call obj%Deallocate()
+END DO
+Read( *, * ) ii
```
```fortran
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_3.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_3.md
index 69e99a83..a9489691 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_3.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_3.md
@@ -31,38 +31,38 @@ real( dfp ), parameter :: tol=1.0E-10
### n=1
```fortran
- x = linspace(-1.0_DFP, 1.0_DFP, 11_I4B)
- yexact = x
- obj = ChebyshevFirst1D(varname="x", n=1)
- y = obj%Eval( x )
- call OK( ALL(SOFTEQ(y, yexact, tol)), "test-1:" )
+x = linspace(-1.0_DFP, 1.0_DFP, 11_I4B)
+yexact = x
+obj = ChebyshevFirst1D(varname="x", n=1)
+y = obj%Eval( x )
+call OK( ALL(SOFTEQ(y, yexact, tol)), "test-1:" )
```
### n=2
```fortran
- yexact = 2.0*x**2 - 1.0
- obj = ChebyshevFirst1D(varname="x", n=2)
- y = obj%Eval( x )
- call OK( ALL(SOFTEQ(y, yexact, tol)), "test-2:" )
+yexact = 2.0*x**2 - 1.0
+obj = ChebyshevFirst1D(varname="x", n=2)
+y = obj%Eval( x )
+call OK( ALL(SOFTEQ(y, yexact, tol)), "test-2:" )
```
### n=3
```fortran
- yexact = 4.0*x**3 - 3.0*x
- obj = ChebyshevFirst1D(varname="x", n=3)
- y = obj%Eval( x )
- call OK( ALL(SOFTEQ(y, yexact, tol)), "test-3:" )
+yexact = 4.0*x**3 - 3.0*x
+obj = ChebyshevFirst1D(varname="x", n=3)
+y = obj%Eval( x )
+call OK( ALL(SOFTEQ(y, yexact, tol)), "test-3:" )
```
### n=4
```fortran
- yexact = 8.0*x**4 - 8.0*x**2 + 1.0
- obj = ChebyshevFirst1D(varname="x", n=4)
- y = obj%Eval( x )
- call OK( ALL(SOFTEQ(y, yexact, tol)), "test-4:" )
+yexact = 8.0*x**4 - 8.0*x**2 + 1.0
+obj = ChebyshevFirst1D(varname="x", n=4)
+y = obj%Eval( x )
+call OK( ALL(SOFTEQ(y, yexact, tol)), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_4.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_4.md
index cd4f6df1..1838179e 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_4.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_4.md
@@ -33,45 +33,45 @@ real( dfp ), parameter :: tol=1.0E-10
### n=1
```fortran
- x = RAND()
- yexact = 1
- n=1
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-1:" )
+x = RAND()
+yexact = 1
+n=1
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-1:" )
```
### n=2
```fortran
- x = RAND()
- yexact = 4.0*x
- n=2
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-2:" )
+x = RAND()
+yexact = 4.0*x
+n=2
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-2:" )
```
### n=3
```fortran
- x = RAND()
- yexact = 12.0*x**2 - 3.0
- n=3
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-3:" )
+x = RAND()
+yexact = 12.0*x**2 - 3.0
+n=3
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-3:" )
```
### n=4
```fortran
- x = RAND()
- yexact = 32.0*x**3 - 16.0*x
- n=4
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-4:" )
+x = RAND()
+yexact = 32.0*x**3 - 16.0*x
+n=4
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_5.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_5.md
index 2e14a222..d84f183c 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_5.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_5.md
@@ -33,42 +33,42 @@ real( dfp ) :: tol=1.0E-10
### n=1
```fortran
- x = linspace(0.0_DFP, 1.0_DFP, 11_I4B)
- yexact = ones(11, 1)
- n=1
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK( ALL( y .APPROXEQ. yexact), "test-1:" )
+x = linspace(0.0_DFP, 1.0_DFP, 11_I4B)
+yexact = ones(11, 1)
+n=1
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK( ALL( y .APPROXEQ. yexact), "test-1:" )
```
### n=2
```fortran
- yexact = 4.0*x
- n=2
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK(ALL(y .APPROXEQ. yexact), "test-2:" )
+yexact = 4.0*x
+n=2
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK(ALL(y .APPROXEQ. yexact), "test-2:" )
```
### n=3
```fortran
- yexact = 12.0*x**2 - 3.0
- n=3
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-3:" )
+yexact = 12.0*x**2 - 3.0
+n=3
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-3:" )
```
### n=4
```fortran
- yexact = 32.0*x**3 - 16.0*x
- n=4
- obj = ChebyshevFirst1D(varname="x", n=n)
- y = obj%EvalGradient( x )
- call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-4:" )
+yexact = 32.0*x**3 - 16.0*x
+n=4
+obj = ChebyshevFirst1D(varname="x", n=n)
+y = obj%EvalGradient( x )
+call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_6.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_6.md
index a7368e20..498f28ed 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_6.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_6.md
@@ -31,37 +31,37 @@ integer( i4b ) :: n
### n=1
```fortran
- n = 1
- obj = ChebyshevFirst1D(varname="x", n=n)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 1
+obj = ChebyshevFirst1D(varname="x", n=n)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=2
```fortran
- n = 2
- obj = ChebyshevFirst1D(varname="x", n=n)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 2
+obj = ChebyshevFirst1D(varname="x", n=n)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=3
```fortran
- n = 3
- obj = ChebyshevFirst1D(varname="x", n=n)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 3
+obj = ChebyshevFirst1D(varname="x", n=n)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=4
```fortran
- n = 4
- obj = ChebyshevFirst1D(varname="x", n=n)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 4
+obj = ChebyshevFirst1D(varname="x", n=n)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
```fortran
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_7.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_7.md
index b06b98ce..2df457d7 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_7.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_7.md
@@ -31,39 +31,39 @@ integer( i4b ) :: n
### n=1
```fortran
- n = 1
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
END PROGRAM main
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_8.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_8.md
index 0a3b8b2e..6bf55c6b 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_8.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_8.md
@@ -32,41 +32,39 @@ real( dfp ), parameter :: a = -1.0_DFP
### n=1
```fortran
- n = 1
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
END PROGRAM main
```
-
-
diff --git a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_9.md b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_9.md
index eb1ed81b..9b934070 100644
--- a/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_9.md
+++ b/docs/docs-api/ChebyshevFirst1D/ChebyshevFirst1D_test_9.md
@@ -31,37 +31,37 @@ integer( i4b ) :: n
### n=1
```fortran
- n = 1
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=ChebyshevFirst1D(varname="x", n=n)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=ChebyshevFirst1D(varname="x", n=n)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
diff --git a/docs/docs-api/CommandLine/CommandLineGroupArg_.md b/docs/docs-api/CommandLine/CommandLineGroupArg_.md
index 60abeda7..3bffc671 100644
--- a/docs/docs-api/CommandLine/CommandLineGroupArg_.md
+++ b/docs/docs-api/CommandLine/CommandLineGroupArg_.md
@@ -13,7 +13,6 @@ tags:
- commandLine
---
-
# CommandLineGroupArg
- [ ] TODO add documentation of [[CommandLineGroupArg_]]
diff --git a/docs/docs-api/CommandLine/CommandLineInterface_.md b/docs/docs-api/CommandLine/CommandLineInterface_.md
index 2b679d54..fdafc3ac 100644
--- a/docs/docs-api/CommandLine/CommandLineInterface_.md
+++ b/docs/docs-api/CommandLine/CommandLineInterface_.md
@@ -12,6 +12,7 @@ tags:
- easifemClasses
- commandLine
---
+
# CommandLineInterface
- [ ] TODO add documentation of [[CommandLineInterface_]]
diff --git a/docs/docs-api/CommandLine/CommandLine_test_1.md b/docs/docs-api/CommandLine/CommandLine_test_1.md
index b25d9516..f3a4011f 100644
--- a/docs/docs-api/CommandLine/CommandLine_test_1.md
+++ b/docs/docs-api/CommandLine/CommandLine_test_1.md
@@ -14,7 +14,7 @@ title: CommandLineInterface example-1
## Usage
!!! note ""
- Import modules
+Import modules
```fortran
PROGRAM main
@@ -50,7 +50,6 @@ check error
IF (error /= 0) STOP
```
-
#CommandLineInterface/Get get the value of an option
```fortran
diff --git a/docs/docs-api/CommandLine/CommandLine_test_2.md b/docs/docs-api/CommandLine/CommandLine_test_2.md
index 1e7df63c..d45081ff 100644
--- a/docs/docs-api/CommandLine/CommandLine_test_2.md
+++ b/docs/docs-api/CommandLine/CommandLine_test_2.md
@@ -5,7 +5,7 @@ update: 2021-11-08
title: CommandLineInterface example-2
---
-# CommandLineInterface: example-2
+# CommandLineInterface: example-2
## Class and modules
diff --git a/docs/docs-api/CommandLine/CommandLine_test_3.md b/docs/docs-api/CommandLine/CommandLine_test_3.md
index 349d4f77..7fabbb42 100644
--- a/docs/docs-api/CommandLine/CommandLine_test_3.md
+++ b/docs/docs-api/CommandLine/CommandLine_test_3.md
@@ -15,7 +15,7 @@ title: CommandLineInterface example-3
## Usage
!!! note ""
- Importing necessary modules and declaring variables
+Importing necessary modules and declaring variables
```fortran
PROGRAM main
@@ -35,7 +35,7 @@ INTEGER(I4B) :: error
#CommandLineInterface/Initiate
!!! example ""
- Initiating an instance of [[CommandLineInterface_]]
+Initiating an instance of [[CommandLineInterface_]]
```fortran
CALL cli%initiate( &
@@ -56,9 +56,9 @@ CALL cli%initiate( &
#CommandLineInterface/Add
!!! note ""
- Adding command line arguments
+Adding command line arguments
-``` fortran
+```fortran
CALL cli%add(switch='--input',switch_ab='-i',help='name of input markdown file',&
& required=.TRUE., act='store', error=error)
IF (error .NE. 0) &
@@ -75,9 +75,9 @@ IF (error .NE. 0) &
#CommandLineInterface/Get
!!! message ""
- Getting commmand line agruments
+Getting commmand line agruments
-``` fortran
+```fortran
CALL cli%get(switch='-i', val=mdfilename, error=error)
IF (error .NE. 0) &
& CALL e%raiseError(modName//"::"//myName//" - "// &
@@ -102,9 +102,9 @@ CALL e%raiseInformation(modName//"::"//myName//" - "// &
#TxtFile/ConvertMarkdownToSource
!!! note ""
- Initiating an instance of [[TxtFile_]]
+Initiating an instance of [[TxtFile_]]
-``` fortran
+```fortran
CALL srcfile%Initiate(filename=srcfilename, status="REPLACE", &
& ACTION="WRITE")
CALL srcfile%OPEN()
diff --git a/docs/docs-api/ContractionUtility/Contraction.md b/docs/docs-api/ContractionUtility/Contraction.md
index 7638f899..055c260c 100644
--- a/docs/docs-api/ContractionUtility/Contraction.md
+++ b/docs/docs-api/ContractionUtility/Contraction.md
@@ -24,25 +24,25 @@ Let's employ the following notation:
Then, the following table explains this operator.
-| a1 | a2 | ans |
-|----|----|-----|
-| `r1` | `r1` | `r0` |
-| `r1` | `r2` | `r1` |
-| `r1` | `r3` | `r2` |
-| `r1` | `r4` | `r3` |
-| `r2` | `r1` | `r1` |
-| `r2` | `r2` | `r0` |
-| `r2` | `r3` | `r1` |
-| `r2` | `r4` | `r2` |
-| `r3` | `r1` | `r2` |
-| `r3` | `r2` | `r1` |
-| `r3` | `r3` | `r0` |
-| `r3` | `r4` | `r1` |
-| `r4` | `r1` | `r3` |
-| `r4` | `r2` | `r2` |
-| `r4` | `r3` | `r1` |
-| `r4` | `r4` | `r0` |
-| | | |
+| a1 | a2 | ans |
+| ---- | ---- | ---- |
+| `r1` | `r1` | `r0` |
+| `r1` | `r2` | `r1` |
+| `r1` | `r3` | `r2` |
+| `r1` | `r4` | `r3` |
+| `r2` | `r1` | `r1` |
+| `r2` | `r2` | `r0` |
+| `r2` | `r3` | `r1` |
+| `r2` | `r4` | `r2` |
+| `r3` | `r1` | `r2` |
+| `r3` | `r2` | `r1` |
+| `r3` | `r3` | `r0` |
+| `r3` | `r4` | `r1` |
+| `r4` | `r1` | `r3` |
+| `r4` | `r2` | `r2` |
+| `r4` | `r3` | `r1` |
+| `r4` | `r4` | `r0` |
+| | | |
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_.md
index 080d1a76..4ac6a1a6 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_.md
@@ -5,18 +5,18 @@
Interface:
```fortran
- MODULE PURE FUNCTION ConvectiveMatrix(test, trial, term1, &
- & term2, opt) RESULT(Ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- INTEGER(I4B), INTENT(IN) :: term1
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER(I4B), INTENT(IN) :: term2
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! Option for number of diagonal copies
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION ConvectiveMatrix
+MODULE PURE FUNCTION ConvectiveMatrix(test, trial, term1, &
+ & term2, opt) RESULT(Ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ INTEGER(I4B), INTENT(IN) :: term1
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER(I4B), INTENT(IN) :: term2
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! Option for number of diagonal copies
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION ConvectiveMatrix
```
Following matrices can be calculated based on the value of `term1` and `term2`.
@@ -86,22 +86,22 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION ConvectiveMatrix(test, trial, c, crank, term1, &
- & term2, opt) RESULT(Ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- TYPE(FEVariable_), INTENT(IN) :: c
- !! scalar variable
- TYPE(FEVariableScalar_), INTENT(IN) :: crank
- !! scalar variable
- INTEGER(I4B), INTENT(IN) :: term1
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER(I4B), INTENT(IN) :: term2
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! number of copies
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION ConvectiveMatrix
+MODULE PURE FUNCTION ConvectiveMatrix(test, trial, c, crank, term1, &
+ & term2, opt) RESULT(Ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ TYPE(FEVariable_), INTENT(IN) :: c
+ !! scalar variable
+ TYPE(FEVariableScalar_), INTENT(IN) :: crank
+ !! scalar variable
+ INTEGER(I4B), INTENT(IN) :: term1
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER(I4B), INTENT(IN) :: term2
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! number of copies
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION ConvectiveMatrix
```
!!! note ""
@@ -124,7 +124,7 @@ $$
- `term1=del_none, term2=del_z`
$$
-M(I,J) = \int_{\Omega} c N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} c N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
- `term1=del_none, term2=del_x_all` **opt=1**
@@ -148,13 +148,13 @@ $$
- `term1=del_y, term2=del_none`
$$
-M(I,J) = \int_{\Omega} c \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} c \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
- `term1=del_z, term2=del_none`
$$
-M(I,J) = \int_{\Omega} c \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} c \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
- `term1=del_x_all, term2=del_none` **opt=1**
@@ -189,22 +189,22 @@ You can learn more from examples given below:
Interface:
```fortran
- MODULE PURE FUNCTION ConvectiveMatrix(test, trial, c, crank, term1, &
- & term2, opt) RESULT(Ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- TYPE(FEVariable_), INTENT(IN) :: c
- !! It can be a scalar or vector variable
- TYPE(FEVariableVector_), INTENT(IN) :: crank
- !! It can be a scalar or vector variable
- INTEGER(I4B), INTENT(IN) :: term1
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER(I4B), INTENT(IN) :: term2
- !! del_x, del_y, del_z, del_x_all, del_none
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! number of copies
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION ConvectiveMatrix
+MODULE PURE FUNCTION ConvectiveMatrix(test, trial, c, crank, term1, &
+ & term2, opt) RESULT(Ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ TYPE(FEVariable_), INTENT(IN) :: c
+ !! It can be a scalar or vector variable
+ TYPE(FEVariableVector_), INTENT(IN) :: crank
+ !! It can be a scalar or vector variable
+ INTEGER(I4B), INTENT(IN) :: term1
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER(I4B), INTENT(IN) :: term2
+ !! del_x, del_y, del_z, del_x_all, del_none
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! number of copies
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION ConvectiveMatrix
```
!!! note "Convective velocity"
@@ -311,9 +311,9 @@ $$
## Examples
-| | | |
+| | | |
| :------------------------------------------- | :------------------------------------------- | :------------------------------------------ | --- |
-| [🩱 Example 1](ConvectiveMatrix_test_1.md) | [👬 Example 2](ConvectiveMatrix_test_2.md) | [🧵 Example 3](ConvectiveMatrix_test_3.md) | |
-| [🍀 Example 4](ConvectiveMatrix_test_4.md) | [🕵️♀️ Example 5](ConvectiveMatrix_test_5.md) | [🔯 Example 6](ConvectiveMatrix_test_6.md) | |
-| [🙈 Example 7](ConvectiveMatrix_test_21.md) | [🏋️ Example 8](ConvectiveMatrix_test_22.md) | [😇 Example 9](ConvectiveMatrix_test_23.md) | |
-| [⛺ Example 10](ConvectiveMatrix_test_24.md) | [🕴️ Example 11](ConvectiveMatrix_test_25.md) | |
+| [🩱 Example 1](ConvectiveMatrix_test_1.md) | [👬 Example 2](ConvectiveMatrix_test_2.md) | [🧵 Example 3](ConvectiveMatrix_test_3.md) | |
+| [🍀 Example 4](ConvectiveMatrix_test_4.md) | [🕵️♀️ Example 5](ConvectiveMatrix_test_5.md) | [🔯 Example 6](ConvectiveMatrix_test_6.md) | |
+| [🙈 Example 7](ConvectiveMatrix_test_21.md) | [🏋️ Example 8](ConvectiveMatrix_test_22.md) | [😇 Example 9](ConvectiveMatrix_test_23.md) | |
+| [⛺ Example 10](ConvectiveMatrix_test_24.md) | [🕴️ Example 11](ConvectiveMatrix_test_25.md) | |
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_1.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_1.md
index ccbf4b80..dc71ec51 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_1.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_1.md
@@ -19,7 +19,7 @@ tags:
# 📚 ConvectiveMatrix example 1
!!! note ""
- This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain.
+This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain.
Here, we want to do the following.
@@ -32,7 +32,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
+$c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
In this example, convective matrix is formed for
@@ -58,45 +58,45 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=c)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=c)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -109,11 +109,11 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=c)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=c)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_2.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_2.md
index f5aa6138..c10e3ac3 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_2.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_2.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 2
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
Here, we want to DO the following.
@@ -33,7 +33,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
In this example, convective matrix is formed for
@@ -65,52 +65,52 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -123,11 +123,11 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_21.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_21.md
index 775cebeb..0f5edd26 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_21.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_21.md
@@ -19,7 +19,7 @@ tags:
# ConvectiveMatrix example 21
!!! note ""
- This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain.
+This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain.
Here, we want to do the following.
@@ -36,15 +36,15 @@ M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial y} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
In this example, convective matrix is formed for
@@ -69,45 +69,45 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=dim)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=dim)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -120,11 +120,11 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=dim)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=dim)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_22.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_22.md
index c055ca09..3aeb3025 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_22.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_22.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 22
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
Here, we want to DO the following.
@@ -37,19 +37,19 @@ M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial y} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
In this example, convective matrix is formed for
@@ -80,53 +80,53 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, &
- & c=cvar, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, &
+ & c=cvar, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -139,12 +139,12 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, &
- & c=cvar, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, &
+ & c=cvar, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_23.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_23.md
index bd8f539d..a6598b6c 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_23.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_23.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 23
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
Here, we want to DO the following.
@@ -37,19 +37,19 @@ M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial y} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
In this example, convective matrix is formed for
@@ -81,53 +81,53 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = QuadratureVariable(c, typeFEVariableScalar, typeFEVariableSpace)
+cvar = QuadratureVariable(c, typeFEVariableScalar, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, &
- & c=cvar, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, &
+ & c=cvar, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -140,12 +140,12 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, &
- & c=cvar, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, &
+ & c=cvar, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_24.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_24.md
index 1ff93def..0c559cc5 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_24.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_24.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 24
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Triangle3 element.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Triangle3 element.
Here, we want to DO the following.
@@ -37,15 +37,15 @@ M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial y} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
In this example, convective matrix is formed for
@@ -75,49 +75,49 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([0,0, 1,0,0,1], [2, 3])
+XiJ = RESHAPE([0,0, 1,0,0,1], [2, 3])
```
!!! note ""
- Now we create an instance of [[ReferenceTriangle_]].
+Now we create an instance of [[ReferenceTriangle_]].
```fortran
- refelem = referenceTriangle(nsd=nsd)
+refelem = referenceTriangle(nsd=nsd)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=2*order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=2*order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{J} \frac{\partial N^{I}}{\partial x} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -131,15 +131,15 @@ $$
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{J} \frac{\partial N^{I}}{\partial y} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=2)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=2)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -153,15 +153,15 @@ $$
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{I} \frac{\partial N^{J}}{\partial x} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -175,15 +175,15 @@ $$
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{I} \frac{\partial N^{J}}{\partial y} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=2)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=2)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_25.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_25.md
index 9d87c290..498408a3 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_25.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_25.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 25
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Triangle6 element.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain for Triangle6 element.
Here, we want to DO the following.
@@ -37,15 +37,15 @@ M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial y} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial y} N^J d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
+M(I,J) = \int_{\Omega} N^I \frac{\partial N^J}{\partial z} d{\Omega}
$$
$$
-M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
+M(I,J) = \int_{\Omega} \frac{\partial N^I}{\partial z} N^J d{\Omega}
$$
In this example, convective matrix is formed for
@@ -75,57 +75,57 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([0,0, 1,0,0,1], [2, 3])
+XiJ = RESHAPE([0,0, 1,0,0,1], [2, 3])
```
!!! note ""
- Now we create an instance of [[ReferenceTriangle_]].
+Now we create an instance of [[ReferenceTriangle_]].
```fortran
- simplexRefElem = referenceTriangle(nsd=nsd)
- call simplexRefElem%LagrangeElement(order=order, &
- & highOrderObj=refelem)
+simplexRefElem = referenceTriangle(nsd=nsd)
+call simplexRefElem%LagrangeElement(order=order, &
+ & highOrderObj=refelem)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=simplexRefElem, order=2*order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=simplexRefElem, order=2*order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=elemsdForSimplex, &
- & quad=quad, &
- & refelem=simplexRefElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=elemsdForSimplex, &
+ & quad=quad, &
+ & refelem=simplexRefElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{J} \frac{\partial N^{I}}{\partial x} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, dim=1)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -142,15 +142,15 @@ $$
```
!! note ""
- Let us now create the following convective matrix.
+Let us now create the following convective matrix.
$$
M(I,J) = \int_{\Omega} N^{J} \frac{\partial N^{I}}{\partial x} d{\Omega}
$$
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=1)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, dim=1)
+CALL Display(mat, "mat:")
```
!!! example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_3.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_3.md
index 10afc7c3..6625cf2b 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_3.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_3.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 3
!!! note ""
- This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
+This example shows how to use the subroutine called `ConvectiveMatrix` to create a convective matrix in space domain for Line2 element.
Here, we want to do the following.
@@ -33,7 +33,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
+$c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
In this example, convective matrix is formed for
@@ -65,52 +65,52 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order+order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = QuadratureVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = QuadratureVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -123,11 +123,11 @@ PROGRAM main
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=0, term2=1, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_4.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_4.md
index 297a34f0..8e482d1d 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_4.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_4.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 4
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain of Line3 element, that is order 2 [[ReferenceLine_]].
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain of Line3 element, that is order 2 [[ReferenceLine_]].
Here, we want to do the following.
@@ -33,7 +33,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
+$c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
In this example, convective matrix is formed for
@@ -59,65 +59,65 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=simplexElem, order=2*order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=simplexElem, order=2*order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]].
+Initiate an instance of [[ElemeshapeData_]].
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_5.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_5.md
index 460bea3d..d6385002 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_5.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_5.md
@@ -20,7 +20,7 @@ tags:
# ConvectiveMatrix example 5
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain of Line3 element, that is order 2 [[ReferenceLine_]].
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain of Line3 element, that is order 2 [[ReferenceLine_]].
Here, we want to do the following.
@@ -33,7 +33,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
+$c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
In this example, convective matrix is formed for
@@ -59,65 +59,65 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=simplexElem, order=2*order-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=simplexElem, order=2*order-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]].
+Initiate an instance of [[ElemeshapeData_]].
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = QuadratureVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = QuadratureVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=1, term2=0, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_6.md b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_6.md
index 10e4dad3..87b85e47 100644
--- a/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_6.md
+++ b/docs/docs-api/ConvectiveMatrix/ConvectiveMatrix_test_6.md
@@ -19,7 +19,7 @@ tags:
# MassMatrix example 3
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain. We will use mixed finite element here. Line2 and Line3 elements are used.
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a convective matrix in space domain. We will use mixed finite element here. Line2 and Line3 elements are used.
Here, we want to do the following.
@@ -32,7 +32,7 @@ M(I,J) = \partial u_{iI} \int_{\Omega} c_k \frac{\partial N^I}{\partial x_k} N^J
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
+$c$ is convective velocity, which can be a constant, or a function of spatial coordinates, or some nonlinear function.
In this example, convective matrix is formed for
@@ -60,84 +60,84 @@ PROGRAM main
```
!!! note ""
- Let us now create the physical coordinate of the line element.
+Let us now create the physical coordinate of the line element.
```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
+XiJ = RESHAPE([-1, 1], [1, 2])
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
- CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial-1, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial-1, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for test function.
+Initiate an instance of [[ElemeshapeData_]] for test function.
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElemForTest, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for trial function.
+Initiate an instance of [[ElemeshapeData_]] for trial function.
```fortran
- CALL initiate(obj=trial, &
- & quad=quad, &
- & refelem=refElemForTrial, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
+Let us now create an instance of [[FEVariable_]] to wrape the nodal values of $c$. You can learn more about this at [[FEVariable_test]]
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
!!! note ""
- Let us now create the convective matrix.
+Let us now create the convective matrix.
```fortran
- mat=ConvectiveMatrix(test=test, trial=trial, c=cvar, term1=1, term2=0)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=trial, c=cvar, term1=1, term2=0)
+CALL Display(mat, "mat:")
```
!!! warning ""
- In this case the number of nodes in `cvar` should be equal to the
- number of nodes used in the `refelemForTest`.
+In this case the number of nodes in `cvar` should be equal to the
+number of nodes used in the `refelemForTest`.
??? example "Results"
diff --git a/docs/docs-api/ConvertUtility/_Convert_test_1.md b/docs/docs-api/ConvertUtility/_Convert_test_1.md
index 2995419a..380e222b 100644
--- a/docs/docs-api/ConvertUtility/_Convert_test_1.md
+++ b/docs/docs-api/ConvertUtility/_Convert_test_1.md
@@ -13,10 +13,10 @@ PROGRAM main
END PROGRAM main
```
-m4=(:, :, 1, 1) =
+m4=(:, :, 1, 1) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 2 | 2 |
| 2 | 2 |
| 2 | 2 |
diff --git a/docs/docs-api/DOF/SpaceComponents.md b/docs/docs-api/DOF/SpaceComponents.md
index f02aeea7..646b4df1 100644
--- a/docs/docs-api/DOF/SpaceComponents.md
+++ b/docs/docs-api/DOF/SpaceComponents.md
@@ -41,5 +41,4 @@ END INTERFACE
INTERFACE OPERATOR(.spacecomponents.)
MODULE PROCEDURE dof_spacecomponents2
END INTERFACE
-
```
diff --git a/docs/docs-api/DOF/__DOF_Guide.md b/docs/docs-api/DOF/__DOF_Guide.md
index 5ba41929..de03431b 100644
--- a/docs/docs-api/DOF/__DOF_Guide.md
+++ b/docs/docs-api/DOF/__DOF_Guide.md
@@ -15,13 +15,13 @@ tags:
# DOF
-`DOF_` data type contains the information of degrees of freedom in finite element method. It mainly includes the information regarding the storage pattern of degrees of freedom.
+`DOF_` data type contains the information of degrees of freedom in finite element method. It mainly includes the information regarding the storage pattern of degrees of freedom.
Degrees of freedom are space-time components of physical variable. There can be several physical variables such as pressure, velocity, temperature. Now pressure has single degrees of freedom, because it is a scalar whereas velocity can have three degrees of freedom.
-In order to understand the storage pattern,and the working principal of `DOF_` datatype, let us consider a vector $\textbf{v}$ in three dimension space. There are three degrees of freedom at each spatial nodes of the mesh (this corresponds to $v_x, v_y, v_z$. Now, there arises two ways to store the nodal values of the physical variable (here, $\textbf{v}$).
+In order to understand the storage pattern,and the working principal of `DOF_` datatype, let us consider a vector $\textbf{v}$ in three dimension space. There are three degrees of freedom at each spatial nodes of the mesh (this corresponds to $v_x, v_y, v_z$. Now, there arises two ways to store the nodal values of the physical variable (here, $\textbf{v}$).
-`FMT_DOF` : In this case each components (DOF) of $v$ will be treated as an independent nodal vector. So there are actually three nodal vectors corresponding to the spatial components $v_x, v_y, v_z$. We will use uppercase letter to denote the spatial nodal values. In this way, each of $V_x, V_y, V_z$ are nodal values of spatial component of a physical variable ($v$). One can appreciate the fact that `FMT_DOF` format is flexible, because, each nodal vector can have different length.
+`FMT_DOF` : In this case each components (DOF) of $v$ will be treated as an independent nodal vector. So there are actually three nodal vectors corresponding to the spatial components $v_x, v_y, v_z$. We will use uppercase letter to denote the spatial nodal values. In this way, each of $V_x, V_y, V_z$ are nodal values of spatial component of a physical variable ($v$). One can appreciate the fact that `FMT_DOF` format is flexible, because, each nodal vector can have different length.
`FMT_Nodes`: In this case all the components of $v$ are grouped together and values are defined at each node of the mesh. At each node, DOFs (spatial components) form a small vector. So the nodal values of $v$ are defined as a nodal vector of these small vectors.
@@ -40,7 +40,7 @@ obj = dof( tNodes = [20, 10], Names = ['V', 'P'], SpaceCompo = [3, 1], &
In this case velocity has 20 nodes and pressure has 10 nodes. There are 3 space components and 2 time components in the velocity.
-In the case of `FMT_DOF` , the degrees of freedom will be represented as shown in above figure. Each term in `{}` denotes a nodal vector of DOF (i.e., v11, v12, p1, p2, etc.). Note that, in this representation both V and P can have different order of interpolation. For example, velocity can be quadratic and pressure can be linear. Needless to state, this yields a block-structured tangent matrix.
+In the case of `FMT_DOF` , the degrees of freedom will be represented as shown in above figure. Each term in `{}` denotes a nodal vector of DOF (i.e., v11, v12, p1, p2, etc.). Note that, in this representation both V and P can have different order of interpolation. For example, velocity can be quadratic and pressure can be linear. Needless to state, this yields a block-structured tangent matrix.
Now consider the following case to understand `FMT_Nodes` :
@@ -111,7 +111,7 @@ where,
- `Names` is the name of each physical variables
- `SpaceCompo` is the number of spatial components in each physical variable, if a physical variable is scalar then one can use also use -1 instead of 1 for the total number of space components
- `TimeCompo` is the number of time components in each physical variables
-- `StorageFMT` is the storage format, it can be `FMT_DOF` or `FMT_Nodes`
+- `StorageFMT` is the storage format, it can be `FMT_DOF` or `FMT_Nodes`
:::info
The size of `tNodes`, `Names`, `SpaceCompo`, `TimeCompo` vectors should be equal to the total number of physical variables.
@@ -251,7 +251,7 @@ CALL Deallocate( obj )
END PROGRAM main
```
-??? note "click here to see the output of above program"
+??? note "click here to see the output of above program"
```fortran
# VAR :U
@@ -274,7 +274,7 @@ END PROGRAM main
### tNodes
!!! note "tNodes"
- Getting size of vector using `.tNodes.` operator
+Getting size of vector using `.tNodes.` operator
Use `.tNodes.` operator to get the total number of nodes for `DOF_`.
@@ -388,7 +388,7 @@ END PROGRAM main
- `getNodeLOC(obj, nodenum(:), ivar, spacecompo(:), timecompo)`
!!! note "getNodeLOC"
- Getting node locations
+Getting node locations
```fortran
ans=getNodeLOC(obj, inode, idof)
diff --git a/docs/docs-api/DeformationGradient/DeformationGradient_.md b/docs/docs-api/DeformationGradient/DeformationGradient_.md
index 62af49cb..70dcf104 100755
--- a/docs/docs-api/DeformationGradient/DeformationGradient_.md
+++ b/docs/docs-api/DeformationGradient/DeformationGradient_.md
@@ -3,13 +3,13 @@
This documentation is old. Update it.
```fortran
- TYPE, PUBLIC, EXTENDS( Rank2Tensor_ ) :: DeformationGradient_
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: R
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: U
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: V
- REAL( DFP ), ALLOCATABLE, DIMENSION( : ) :: EigenVal
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: EigenVec_U
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: EigenVec_V
+TYPE, PUBLIC, EXTENDS( Rank2Tensor_ ) :: DeformationGradient_
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: R
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: U
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: V
+ REAL( DFP ), ALLOCATABLE, DIMENSION( : ) :: EigenVal
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: EigenVec_U
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: EigenVec_V
```
## Description
diff --git a/docs/docs-api/DiagUtility/TriDiag.md b/docs/docs-api/DiagUtility/TriDiag.md
index b5788456..dbd5847f 100644
--- a/docs/docs-api/DiagUtility/TriDiag.md
+++ b/docs/docs-api/DiagUtility/TriDiag.md
@@ -11,18 +11,18 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION Tridiag(d, da, db, diagNo) RESULT(Ans)
- INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64), INTENT(IN) :: d(:)
- !! main diagonal
- INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64), INTENT(IN) :: da(:)
- !! super diagonal
- INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64) :: db(:)
- !! subdiagonal
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! sub and super diagonal number, default is 1
- !! diagNo should be positive
- REAL(DFP) :: ans(SIZE(d), SIZE(d))
- END FUNCTION Tridiag
+MODULE PURE FUNCTION Tridiag(d, da, db, diagNo) RESULT(Ans)
+ INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64), INTENT(IN) :: d(:)
+ !! main diagonal
+ INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64), INTENT(IN) :: da(:)
+ !! super diagonal
+ INTEGER(INT8| Int16 | Int32 | Int64 | Real32 | Real64) :: db(:)
+ !! subdiagonal
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! sub and super diagonal number, default is 1
+ !! diagNo should be positive
+ REAL(DFP) :: ans(SIZE(d), SIZE(d))
+ END FUNCTION Tridiag
```
diff --git a/docs/docs-api/DiagUtility/_DiagIndx_test_1.md b/docs/docs-api/DiagUtility/_DiagIndx_test_1.md
index 36653b71..15b5393f 100644
--- a/docs/docs-api/DiagUtility/_DiagIndx_test_1.md
+++ b/docs/docs-api/DiagUtility/_DiagIndx_test_1.md
@@ -7,9 +7,9 @@ program main
```
```fortran
- call Display( DiagIndx(4, 4, 0), "(4,4), main diagonal = " )
- call Display( DiagIndx(4, 4, 1), "(4,4), first superdiagonal = " )
- call Display( DiagIndx(4, 4, 2), "(4,4), second superdiagonal = " )
+call Display( DiagIndx(4, 4, 0), "(4,4), main diagonal = " )
+call Display( DiagIndx(4, 4, 1), "(4,4), first superdiagonal = " )
+call Display( DiagIndx(4, 4, 2), "(4,4), second superdiagonal = " )
```
Results:
@@ -35,8 +35,8 @@ Results:
```
```fortran
- call Display( DiagIndx(4, 4, -1), "(4,4), first subdiagonal = " )
- call Display( DiagIndx(4, 4, -2), "(4,4), second subdiagonal = " )
+call Display( DiagIndx(4, 4, -1), "(4,4), first subdiagonal = " )
+call Display( DiagIndx(4, 4, -2), "(4,4), second subdiagonal = " )
```
Results:
@@ -52,21 +52,20 @@ Results:
----------------------------
3 1
4 2
-
```
:::note
-Let us now test `DiagIndx` for
RECTANGLE matrix.
+Let us now test `DiagIndx` for
RECTANGLE matrix.
:::
```fortran
- call Display( DiagIndx(4, 7, 0), "(4, 7), main diagonal = " )
- call Display( DiagIndx(4, 7, 1), "(4, 7), first superdiagonal = " )
- call Display( DiagIndx(4, 7, 2), "(4, 7), second superdiagonal = " )
- call Display( DiagIndx(4, 7, 3), "(4,7), third superdiagonal = " )
- call Display( DiagIndx(4, 7, 4), "(4,7), fourth superdiagonal = " )
- call Display( DiagIndx(4, 7, 5), "(4,7), fifth superdiagonal = " )
- call Display( DiagIndx(4, 7, 6), "(4,7), sixth superdiagonal = " )
+call Display( DiagIndx(4, 7, 0), "(4, 7), main diagonal = " )
+call Display( DiagIndx(4, 7, 1), "(4, 7), first superdiagonal = " )
+call Display( DiagIndx(4, 7, 2), "(4, 7), second superdiagonal = " )
+call Display( DiagIndx(4, 7, 3), "(4,7), third superdiagonal = " )
+call Display( DiagIndx(4, 7, 4), "(4,7), fourth superdiagonal = " )
+call Display( DiagIndx(4, 7, 5), "(4,7), fifth superdiagonal = " )
+call Display( DiagIndx(4, 7, 6), "(4,7), sixth superdiagonal = " )
```
Results:
@@ -117,9 +116,9 @@ Results:
```
```fortran title="(4,7) 1:3 subdiagonal"
- call Display( DiagIndx(4, 7, -1), "(4,7), first subdiagonal = " )
- call Display( DiagIndx(4, 7, -2), "(4,7), second subdiagonal = " )
- call Display( DiagIndx(4, 7, -3), "(4,7), thrid subdiagonal = " )
+call Display( DiagIndx(4, 7, -1), "(4,7), first subdiagonal = " )
+call Display( DiagIndx(4, 7, -2), "(4,7), second subdiagonal = " )
+call Display( DiagIndx(4, 7, -3), "(4,7), thrid subdiagonal = " )
```
```txt title="results"
diff --git a/docs/docs-api/DiagUtility/_DiagSize_test_1.md b/docs/docs-api/DiagUtility/_DiagSize_test_1.md
index 179cf358..9cc00f06 100644
--- a/docs/docs-api/DiagUtility/_DiagSize_test_1.md
+++ b/docs/docs-api/DiagUtility/_DiagSize_test_1.md
@@ -9,19 +9,19 @@ program main
```
```fortran title="(4,4) main diagonal"
- call Display( DiagSize(4, 0), "(4,4), main diagonal = " )
+call Display( DiagSize(4, 0), "(4,4), main diagonal = " )
```
```fortran title="(4,4) first super diagonal"
- call Display( DiagSize(4, 1), "(4,4), first superdiagonal = " )
+call Display( DiagSize(4, 1), "(4,4), first superdiagonal = " )
```
```fortran title="(4,4) second super diagonal"
- call Display( DiagSize(4, 2), "(4,4), second superdiagonal = " )
+call Display( DiagSize(4, 2), "(4,4), second superdiagonal = " )
```
```fortran title="(4,4) out of bound super diagonal"
- call Display( DiagSize(4, 5), "(4,4), out of bound superdiagonal = " )
+call Display( DiagSize(4, 5), "(4,4), out of bound superdiagonal = " )
```
```txt title="results"
@@ -32,15 +32,15 @@ program main
```
```fortran title="(4,4) first subdiagonal"
- call Display( DiagSize(4, -1), "(4,4), first subdiagonal = " )
+call Display( DiagSize(4, -1), "(4,4), first subdiagonal = " )
```
```fortran title="(4,4) second subdiagonal"
- call Display( DiagSize(4, -2), "(4,4), second subdiagonal = " )
+call Display( DiagSize(4, -2), "(4,4), second subdiagonal = " )
```
```fortran title="(4,4) out of bound subdiagonal"
- call Display( DiagSize(4, -5), "(4,4), out of bound subdiagonal = " )
+call Display( DiagSize(4, -5), "(4,4), out of bound subdiagonal = " )
```
```txt title="results"
@@ -52,26 +52,26 @@ program main
Let us now test `DiagSize` for rectangle matrix.
```fortran title="(4,7) main diagonal"
- call Display( DiagSize(4, 7, 0), "(4, 7), main diagonal = " )
+call Display( DiagSize(4, 7, 0), "(4, 7), main diagonal = " )
```
```fortran title="(4,7) first super diagonal"
- call Display( DiagSize(4, 7, 1), "(4, 7), first superdiagonal = " )
+call Display( DiagSize(4, 7, 1), "(4, 7), first superdiagonal = " )
```
```fortran title="(4,7) second super diagonal"
- call Display( DiagSize(4, 7, 2), "(4, 7), second superdiagonal = " )
+call Display( DiagSize(4, 7, 2), "(4, 7), second superdiagonal = " )
```
```fortran title="(4,7) more superdiagonal"
- call Display( DiagSize(4, 7, 3), "(4,7), third superdiagonal = " )
- call Display( DiagSize(4, 7, 4), "(4,7), fourth superdiagonal = " )
- call Display( DiagSize(4, 7, 5), "(4,7), fifth superdiagonal = " )
- call Display( DiagSize(4, 7, 6), "(4,7), sixth superdiagonal = " )
+call Display( DiagSize(4, 7, 3), "(4,7), third superdiagonal = " )
+call Display( DiagSize(4, 7, 4), "(4,7), fourth superdiagonal = " )
+call Display( DiagSize(4, 7, 5), "(4,7), fifth superdiagonal = " )
+call Display( DiagSize(4, 7, 6), "(4,7), sixth superdiagonal = " )
```
```fortran title="(4,7) out of bound superdiagonal"
- call Display( DiagSize(4, 7, 7), "(4,7), out of bound superdiagonal = " )
+call Display( DiagSize(4, 7, 7), "(4,7), out of bound superdiagonal = " )
```
```txt title="results"
@@ -86,13 +86,13 @@ Let us now test `DiagSize` for rectangle matrix.
```
```fortran title="(4,7) 1:3 subdiagonal"
- call Display( DiagSize(4, 7, -1), "(4,7), first subdiagonal = " )
- call Display( DiagSize(4, 7, -2), "(4,7), second subdiagonal = " )
- call Display( DiagSize(4, 7, -3), "(4,7), thrid subdiagonal = " )
+call Display( DiagSize(4, 7, -1), "(4,7), first subdiagonal = " )
+call Display( DiagSize(4, 7, -2), "(4,7), second subdiagonal = " )
+call Display( DiagSize(4, 7, -3), "(4,7), thrid subdiagonal = " )
```
```fortran title="(4,7) out of bound subdiagonal"
- call Display( DiagSize(4, 7, -4), "(4,7), out of bound subdiagonal = " )
+call Display( DiagSize(4, 7, -4), "(4,7), out of bound subdiagonal = " )
```
```txt title="results"
diff --git a/docs/docs-api/DiagUtility/_Diag_test_1.md b/docs/docs-api/DiagUtility/_Diag_test_1.md
index 31e5d9ec..accc17c9 100644
--- a/docs/docs-api/DiagUtility/_Diag_test_1.md
+++ b/docs/docs-api/DiagUtility/_Diag_test_1.md
@@ -24,13 +24,13 @@ end program
d =
| | | | | |
-|--------|-------|---------|---------|--------|
+| ------ | ----- | ------- | ------- | ------ |
| 8.2717 | 3.502 | 0.39168 | 0.51942 | 2.6892 |
mat =
| | | | | |
-|--------|-------|---------|---------|--------|
+| ------ | ----- | ------- | ------- | ------ |
| 8.2717 | 0 | 0 | 0 | 0 |
| 0 | 3.502 | 0 | 0 | 0 |
| 0 | 0 | 0.39168 | 0 | 0 |
diff --git a/docs/docs-api/DiagUtility/_Diag_test_2.md b/docs/docs-api/DiagUtility/_Diag_test_2.md
index 693e643a..1f5d036d 100644
--- a/docs/docs-api/DiagUtility/_Diag_test_2.md
+++ b/docs/docs-api/DiagUtility/_Diag_test_2.md
@@ -16,68 +16,68 @@ program main
mat =
- | | | | | |
- |---------|-------------|-------------|------------|---------|
- | 0.68758 | 3.17016E-02 | 0.59785 | 4.6886E-02 | 0.61175 |
- | 0.48573 | 0.67486 | 0.73655 | 0.52901 | 0.60769 |
- | 0.17241 | 0.52752 | 0.79169 | 0.21098 | 0.94547 |
- | 0.21998 | 0.67235 | 0.52645 | 0.32917 | 0.3067 |
- | 0.50651 | 5.82701E-02 | 4.87607E-02 | 0.38279 | 0.11833 |
+| | | | | |
+| ------- | ----------- | ----------- | ---------- | ------- |
+| 0.68758 | 3.17016E-02 | 0.59785 | 4.6886E-02 | 0.61175 |
+| 0.48573 | 0.67486 | 0.73655 | 0.52901 | 0.60769 |
+| 0.17241 | 0.52752 | 0.79169 | 0.21098 | 0.94547 |
+| 0.21998 | 0.67235 | 0.52645 | 0.32917 | 0.3067 |
+| 0.50651 | 5.82701E-02 | 4.87607E-02 | 0.38279 | 0.11833 |
```fortran title="getting the main diagonal"
- d = Diag(mat, 0)
- call display( MdEncode(d), "main diagonal = " )
+d = Diag(mat, 0)
+call display( MdEncode(d), "main diagonal = " )
```
main diagonal =
- | | | | | |
- |---------|---------|---------|---------|---------|
- | 0.68758 | 0.67486 | 0.79169 | 0.32917 | 0.11833 |
+| | | | | |
+| ------- | ------- | ------- | ------- | ------- |
+| 0.68758 | 0.67486 | 0.79169 | 0.32917 | 0.11833 |
```fortran title="getting the first super diagonal"
- d = Diag(mat, 1)
- call display( MdEncode(d), "super diagonal 1= " )
+d = Diag(mat, 1)
+call display( MdEncode(d), "super diagonal 1= " )
```
super diagonal 1=
- | | | | |
- |-------------|---------|---------|--------|
- | 3.17016E-02 | 0.73655 | 0.21098 | 0.3067 |
+| | | | |
+| ----------- | ------- | ------- | ------ |
+| 3.17016E-02 | 0.73655 | 0.21098 | 0.3067 |
```fortran title="getting the second super diagonal"
- d = Diag(mat, 2)
- call display( MdEncode(d), "super diagonal 2= " )
+d = Diag(mat, 2)
+call display( MdEncode(d), "super diagonal 2= " )
```
super diagonal 2=
- | | | |
- |---------|---------|---------|
- | 0.59785 | 0.52901 | 0.94547 |
+| | | |
+| ------- | ------- | ------- |
+| 0.59785 | 0.52901 | 0.94547 |
```fortran title="getting the first sub diagonal"
- d = Diag(mat, -1)
- call display( MdEncode(d), "subdiagonal 1= " )
+d = Diag(mat, -1)
+call display( MdEncode(d), "subdiagonal 1= " )
```
subdiagonal 1=
- | | | | |
- |---------|---------|---------|---------|
- | 0.48573 | 0.52752 | 0.52645 | 0.38279 |
+| | | | |
+| ------- | ------- | ------- | ------- |
+| 0.48573 | 0.52752 | 0.52645 | 0.38279 |
```fortran title="getting the second subdiagonal"
- d = Diag(mat, -2)
- call display( MdEncode(d), "subdiagonal 2= " )
+d = Diag(mat, -2)
+call display( MdEncode(d), "subdiagonal 2= " )
```
subdiagonal 2=
- | | | |
- |---------|---------|-------------|
- | 0.17241 | 0.67235 | 4.87607E-02 |
+| | | |
+| ------- | ------- | ----------- |
+| 0.17241 | 0.67235 | 4.87607E-02 |
```fortran title="cleanup"
end program
diff --git a/docs/docs-api/DiagUtility/_Diag_test_3.md b/docs/docs-api/DiagUtility/_Diag_test_3.md
index 1109b966..489d3e7d 100644
--- a/docs/docs-api/DiagUtility/_Diag_test_3.md
+++ b/docs/docs-api/DiagUtility/_Diag_test_3.md
@@ -6,20 +6,20 @@ program main
```
```fortran title="variables"
- real( DFP ), allocatable :: mat(:, :)
- real( Real32 ), allocatable :: d(:)
+real( DFP ), allocatable :: mat(:, :)
+real( Real32 ), allocatable :: d(:)
```
```fortran title="form random diagonal"
- call reallocate(d, 5)
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = " )
+call reallocate(d, 5)
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = " )
```
```fortran title="diagonal matrix"
- mat = Diag(d)
- call display( MdEncode(mat), "mat = " )
+mat = Diag(d)
+call display( MdEncode(mat), "mat = " )
```
```fortran title="cleanup"
@@ -31,13 +31,13 @@ end program
d =
| | | | | |
-|-------|--------|--------|--------|--------|
+| ----- | ------ | ------ | ------ | ------ |
| 5.165 | 2.5622 | 1.1153 | 1.0442 | 5.2306 |
mat =
| | | | | |
-|-------|--------|--------|--------|--------|
+| ----- | ------ | ------ | ------ | ------ |
| 5.165 | 0 | 0 | 0 | 0 |
| 0 | 2.5622 | 0 | 0 | 0 |
| 0 | 0 | 1.1153 | 0 | 0 |
diff --git a/docs/docs-api/DiagUtility/_Diag_test_4.md b/docs/docs-api/DiagUtility/_Diag_test_4.md
index 610d67c3..766775f6 100644
--- a/docs/docs-api/DiagUtility/_Diag_test_4.md
+++ b/docs/docs-api/DiagUtility/_Diag_test_4.md
@@ -12,22 +12,22 @@ program main
## Declare variables
```fortran title="variables"
- real( DFP ), allocatable :: mat(:, :)
- integer(I4B), allocatable :: d(:)
+real( DFP ), allocatable :: mat(:, :)
+integer(I4B), allocatable :: d(:)
```
## Form diagonal
```fortran title="form random diagonal"
- call reallocate(d, 5)
- d = [1,2,3,4,5]
+call reallocate(d, 5)
+d = [1,2,3,4,5]
```
## For diag matrix
```fortran title="diagonal matrix"
- mat = Diag(d)
- call display( MdEncode(mat), "mat = " )
+mat = Diag(d)
+call display( MdEncode(mat), "mat = " )
```
## Results
@@ -35,7 +35,7 @@ program main
mat =
| | | | | |
-|---|---|---|---|---|
+| - | - | - | - | - |
| 1 | 0 | 0 | 0 | 0 |
| 0 | 2 | 0 | 0 | 0 |
| 0 | 0 | 3 | 0 | 0 |
diff --git a/docs/docs-api/DiagUtility/_SetDiag_test_1.md b/docs/docs-api/DiagUtility/_SetDiag_test_1.md
index 5ac3c672..8f188a74 100644
--- a/docs/docs-api/DiagUtility/_SetDiag_test_1.md
+++ b/docs/docs-api/DiagUtility/_SetDiag_test_1.md
@@ -9,114 +9,114 @@ program main
```
```fortran title="form random diagonal"
- mat = zeros(5,5,1.0_DFP)
- call reallocate(d, size(mat,1))
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = "// CHAR_LF )
+mat = zeros(5,5,1.0_DFP)
+call reallocate(d, size(mat,1))
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = "// CHAR_LF )
```
```fortran title="set main diagonal"
- call SetDiag(mat, d, 0)
- call Display( MdEncode(mat), "mat = " // CHAR_LF)
+call SetDiag(mat, d, 0)
+call Display( MdEncode(mat), "mat = " // CHAR_LF)
```
d =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 6.6689 | 5.5432 | 6.7909 | 2.3661 | 2.1642 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 6.6689 | 5.5432 | 6.7909 | 2.3661 | 2.1642 |
mat =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 6.6689 | 0 | 0 | 0 | 0 |
- | 0 | 5.5432 | 0 | 0 | 0 |
- | 0 | 0 | 6.7909 | 0 | 0 |
- | 0 | 0 | 0 | 2.3661 | 0 |
- | 0 | 0 | 0 | 0 | 2.1642 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 6.6689 | 0 | 0 | 0 | 0 |
+| 0 | 5.5432 | 0 | 0 | 0 |
+| 0 | 0 | 6.7909 | 0 | 0 |
+| 0 | 0 | 0 | 2.3661 | 0 |
+| 0 | 0 | 0 | 0 | 2.1642 |
See line 5.
```fortran {5} title="set first super-diagonal"
- call reallocate(d, size(mat,1)-1)
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = "// CHAR_LF )
- call SetDiag(mat, d, 1)
- call Display( MdEncode(mat), "mat = " // CHAR_LF)
+call reallocate(d, size(mat,1)-1)
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = "// CHAR_LF )
+call SetDiag(mat, d, 1)
+call Display( MdEncode(mat), "mat = " // CHAR_LF)
```
d =
- | | | | |
- |-------|--------|--------|---------|
- | 4.594 | 8.1182 | 4.0813 | 0.83561 |
+| | | | |
+| ----- | ------ | ------ | ------- |
+| 4.594 | 8.1182 | 4.0813 | 0.83561 |
mat =
- | | | | | |
- |--------|--------|--------|--------|---------|
- | 6.6689 | 4.594 | 0 | 0 | 0 |
- | 0 | 5.5432 | 8.1182 | 0 | 0 |
- | 0 | 0 | 6.7909 | 4.0813 | 0 |
- | 0 | 0 | 0 | 2.3661 | 0.83561 |
- | 0 | 0 | 0 | 0 | 2.1642 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------- |
+| 6.6689 | 4.594 | 0 | 0 | 0 |
+| 0 | 5.5432 | 8.1182 | 0 | 0 |
+| 0 | 0 | 6.7909 | 4.0813 | 0 |
+| 0 | 0 | 0 | 2.3661 | 0.83561 |
+| 0 | 0 | 0 | 0 | 2.1642 |
See line 5.
```fortran {5} title="set second super-diagonal"
- call reallocate(d, size(mat,1)-2)
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = "// CHAR_LF )
- call SetDiag(mat, d, 2)
- call Display( MdEncode(mat), "mat = " // CHAR_LF)
+call reallocate(d, size(mat,1)-2)
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = "// CHAR_LF )
+call SetDiag(mat, d, 2)
+call Display( MdEncode(mat), "mat = " // CHAR_LF)
```
d =
- | | | |
- |--------|--------|--------|
- | 7.2706 | 1.6909 | 6.0739 |
+| | | |
+| ------ | ------ | ------ |
+| 7.2706 | 1.6909 | 6.0739 |
mat =
- | | | | | |
- |--------|--------|--------|--------|---------|
- | 6.6689 | 4.594 | 7.2706 | 0 | 0 |
- | 0 | 5.5432 | 8.1182 | 1.6909 | 0 |
- | 0 | 0 | 6.7909 | 4.0813 | 6.0739 |
- | 0 | 0 | 0 | 2.3661 | 0.83561 |
- | 0 | 0 | 0 | 0 | 2.1642 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------- |
+| 6.6689 | 4.594 | 7.2706 | 0 | 0 |
+| 0 | 5.5432 | 8.1182 | 1.6909 | 0 |
+| 0 | 0 | 6.7909 | 4.0813 | 6.0739 |
+| 0 | 0 | 0 | 2.3661 | 0.83561 |
+| 0 | 0 | 0 | 0 | 2.1642 |
See line 5.
```fortran {5} title="set second sub-diagonal"
- call reallocate(d, size(mat,1)-2)
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = "// CHAR_LF )
- call SetDiag(mat, d, -2)
- call Display( MdEncode(mat), "mat = " // CHAR_LF)
+call reallocate(d, size(mat,1)-2)
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = "// CHAR_LF )
+call SetDiag(mat, d, -2)
+call Display( MdEncode(mat), "mat = " // CHAR_LF)
```
d =
- | | | |
- |--------|--------|--------|
- | 8.4214 | 2.8808 | 6.9836 |
+| | | |
+| ------ | ------ | ------ |
+| 8.4214 | 2.8808 | 6.9836 |
mat =
- | | | | | |
- |--------|--------|--------|--------|---------|
- | 6.6689 | 4.594 | 7.2706 | 0 | 0 |
- | 0 | 5.5432 | 8.1182 | 1.6909 | 0 |
- | 8.4214 | 0 | 6.7909 | 4.0813 | 6.0739 |
- | 0 | 2.8808 | 0 | 2.3661 | 0.83561 |
- | 0 | 0 | 6.9836 | 0 | 2.1642 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------- |
+| 6.6689 | 4.594 | 7.2706 | 0 | 0 |
+| 0 | 5.5432 | 8.1182 | 1.6909 | 0 |
+| 8.4214 | 0 | 6.7909 | 4.0813 | 6.0739 |
+| 0 | 2.8808 | 0 | 2.3661 | 0.83561 |
+| 0 | 0 | 6.9836 | 0 | 2.1642 |
```fortran title="cleanup"
end program
diff --git a/docs/docs-api/DiagUtility/_SetTriDiag_test_1.md b/docs/docs-api/DiagUtility/_SetTriDiag_test_1.md
index 26cb4e94..5f7e327d 100644
--- a/docs/docs-api/DiagUtility/_SetTriDiag_test_1.md
+++ b/docs/docs-api/DiagUtility/_SetTriDiag_test_1.md
@@ -8,66 +8,66 @@ program main
```
```fortran title="variables"
- real( DFP ), allocatable :: mat(:, :)
- real( DFP ), allocatable :: d(:), da(:), db(:)
+real( DFP ), allocatable :: mat(:, :)
+real( DFP ), allocatable :: d(:), da(:), db(:)
```
```fortran title="form main diagonal"
- mat = zeros(5,5,1.0_DFP)
- call reallocate(d, size(mat,1))
- call random_number(d)
- d = d * 10
- call display( MdEncode(d), "d = "// CHAR_LF )
+mat = zeros(5,5,1.0_DFP)
+call reallocate(d, size(mat,1))
+call random_number(d)
+d = d * 10
+call display( MdEncode(d), "d = "// CHAR_LF )
```
```fortran title="super diagonal"
- call reallocate(da, size(mat,1)-1)
- call random_number(da)
- da = da * 10
- call display( MdEncode(da), "da = "// CHAR_LF )
+call reallocate(da, size(mat,1)-1)
+call random_number(da)
+da = da * 10
+call display( MdEncode(da), "da = "// CHAR_LF )
```
```fortran title="subdigonal"
- call reallocate(db, size(mat,1)-1)
- call random_number(db)
- db = db * 10
- call display( MdEncode(db), "db = "// CHAR_LF )
+call reallocate(db, size(mat,1)-1)
+call random_number(db)
+db = db * 10
+call display( MdEncode(db), "db = "// CHAR_LF )
```
```fortran title="set tridiagonal"
- call SetTriDiag(mat=mat, d=d, da=da, db=db)
- call Display( MdEncode(mat), "mat = " // CHAR_LF)
+call SetTriDiag(mat=mat, d=d, da=da, db=db)
+call Display( MdEncode(mat), "mat = " // CHAR_LF)
```
### Results
d =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 5.0829 | 9.4562 | 4.3419 | 7.7858 | 3.9234 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 5.0829 | 9.4562 | 4.3419 | 7.7858 | 3.9234 |
da =
- | | | | |
- |--------|--------|---------|--------|
- | 4.9034 | 3.8319 | 0.60738 | 5.3554 |
+| | | | |
+| ------ | ------ | ------- | ------ |
+| 4.9034 | 3.8319 | 0.60738 | 5.3554 |
db =
- | | | | |
- |--------|---------|-------------|--------|
- | 4.7704 | 0.58276 | 7.87791E-02 | 8.1903 |
+| | | | |
+| ------ | ------- | ----------- | ------ |
+| 4.7704 | 0.58276 | 7.87791E-02 | 8.1903 |
mat =
- | | | | | |
- |--------|---------|-------------|---------|--------|
- | 5.0829 | 4.9034 | 0 | 0 | 0 |
- | 4.7704 | 9.4562 | 3.8319 | 0 | 0 |
- | 0 | 0.58276 | 4.3419 | 0.60738 | 0 |
- | 0 | 0 | 7.87791E-02 | 7.7858 | 5.3554 |
- | 0 | 0 | 0 | 8.1903 | 3.9234 |
+| | | | | |
+| ------ | ------- | ----------- | ------- | ------ |
+| 5.0829 | 4.9034 | 0 | 0 | 0 |
+| 4.7704 | 9.4562 | 3.8319 | 0 | 0 |
+| 0 | 0.58276 | 4.3419 | 0.60738 | 0 |
+| 0 | 0 | 7.87791E-02 | 7.7858 | 5.3554 |
+| 0 | 0 | 0 | 8.1903 | 3.9234 |
```fortran title="cleanup"
end program
diff --git a/docs/docs-api/DiagUtility/_TriDiag_test_1.md b/docs/docs-api/DiagUtility/_TriDiag_test_1.md
index cfeb162a..cde1219e 100644
--- a/docs/docs-api/DiagUtility/_TriDiag_test_1.md
+++ b/docs/docs-api/DiagUtility/_TriDiag_test_1.md
@@ -13,17 +13,17 @@ db = -2.0*ones(4, 1.0_DFP) !! Below diagonal
amat = TriDiag(d=d, da=da, db=db, diagNo=1_I4B)
call Display(MdEncode(amat), "amat = ")
-end program main
+end program main
```
## Results
amat =
-| | | | | |
-| --- | --- | --- | --- | --- |
-| 1 | 2 | 0 | 0 | 0 |
-| -2 | 1 | 2 | 0 | 0 |
-| 0 | -2 | 1 | 2 | 0 |
-| 0 | 0 | -2 | 1 | 2 |
-| 0 | 0 | 0 | -2 | 1 |
+| | | | | |
+| -- | -- | -- | -- | - |
+| 1 | 2 | 0 | 0 | 0 |
+| -2 | 1 | 2 | 0 | 0 |
+| 0 | -2 | 1 | 2 | 0 |
+| 0 | 0 | -2 | 1 | 2 |
+| 0 | 0 | 0 | -2 | 1 |
diff --git a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_.md b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_.md
index 56d95f42..bef32c21 100644
--- a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_.md
+++ b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_.md
@@ -26,19 +26,19 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: k
- !! scalar
- TYPE(FEVariableScalar_), INTENT( IN ) :: krank
- !! scalar fe variable
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: k
+ !! scalar
+ TYPE(FEVariableScalar_), INTENT( IN ) :: krank
+ !! scalar fe variable
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 3
@@ -50,19 +50,19 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: k
- !! vector
- TYPE(FEVariableVector_), INTENT( IN ) :: krank
- !! vector
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: k
+ !! vector
+ TYPE(FEVariableVector_), INTENT( IN ) :: krank
+ !! vector
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 4
@@ -74,20 +74,20 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: k
- !! matrix
- TYPE(FEVariableMatrix_), INTENT(IN) :: krank
- !! matrix
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: k
+ !! matrix
+ TYPE(FEVariableMatrix_), INTENT(IN) :: krank
+ !! matrix
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 5
@@ -99,24 +99,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Scalar
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Scalar
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- !! Scalar
- TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
- !! Scalar
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Scalar
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Scalar
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ !! Scalar
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
+ !! Scalar
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 6
@@ -128,24 +128,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Scalar
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Vector
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- !! Scalar
- TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
- !! Vector
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Scalar
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Vector
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ !! Scalar
+ TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
+ !! Vector
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 7
@@ -157,24 +157,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Scalar
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Matrix
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- !! Scalar
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
- !! Matrix
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Scalar
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Matrix
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ !! Scalar
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
+ !! Matrix
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 8:
@@ -186,24 +186,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Vector
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Scalar
- TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
- !! Vector
- TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
- !! Scalar
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Vector
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Scalar
+ TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
+ !! Vector
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
+ !! Scalar
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 9:
@@ -215,24 +215,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Vector
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Vector
- TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
- !! Vector
- TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
- !! Vector
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Vector
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Vector
+ TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
+ !! Vector
+ TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
+ !! Vector
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 10:
@@ -242,24 +242,24 @@ M(I,J)=\int\frac{\partial N^{I}}{\partial x_{i}}v_{p}b_{pi}v_{q}b_{qj}\frac{\par
$$
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Vector
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Matrix
- TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
- !! Vector
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
- !! Matrix
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Vector
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Matrix
+ TYPE(FEVariableVector_), INTENT( IN ) :: c1rank
+ !! Vector
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
+ !! Matrix
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 11:
@@ -269,24 +269,24 @@ M(I,J)=\int\rho_{1}\frac{\partial N^{I}}{\partial x_{i}}k_{ij}\frac{\partial N^{
$$
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Matrix
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Scalar
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
- !! Matrix
- TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
- !! Scalar
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Matrix
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Scalar
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
+ !! Matrix
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
+ !! Scalar
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 12:
@@ -298,24 +298,24 @@ $$
Interface:
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Matrix
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Vector
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
- !! Matrix
- TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
- !! Vector
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Matrix
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Vector
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
+ !! Matrix
+ TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
+ !! Vector
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 13:
@@ -325,24 +325,24 @@ M(I,J)=\int\frac{\partial N^{I}}{\partial x_{i}}b_{ip}c_{pj}\frac{\partial N^{J}
$$
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
- & c2rank, opt ) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: c1
- !! Matrix
- CLASS(FEVariable_), INTENT(IN) :: c2
- !! Matrix
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
- !! Matrix
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
- !! Matrix
- INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
- !! ncopy
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, c1, c2, c1rank, &
+ & c2rank, opt ) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: c1
+ !! Matrix
+ CLASS(FEVariable_), INTENT(IN) :: c2
+ !! Matrix
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c1rank
+ !! Matrix
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
+ !! Matrix
+ INTEGER( I4B ), OPTIONAL, INTENT( IN ) :: opt
+ !! ncopy
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 14:
@@ -360,12 +360,12 @@ $$
$$
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, opt) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- INTEGER( I4B ), INTENT( IN ) :: opt( 1 )
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, opt) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ INTEGER( I4B ), INTENT( IN ) :: opt( 1 )
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
## Diffusion matrix 15:
@@ -383,17 +383,17 @@ $$
$$
```fortran
- MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- !! test function
- CLASS(ElemshapeData_), INTENT(IN) :: trial
- !! trial function
- CLASS(FEVariable_), INTENT(IN) :: k
- !! scalar
- TYPE(FEVariableScalar_), INTENT( IN ) :: krank
- !! scalar fe variable
- INTEGER( I4B ), INTENT( IN ) :: opt(1)
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION DiffusionMatrix
+MODULE PURE FUNCTION DiffusionMatrix(test, trial, k, krank, opt) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ !! test function
+ CLASS(ElemshapeData_), INTENT(IN) :: trial
+ !! trial function
+ CLASS(FEVariable_), INTENT(IN) :: k
+ !! scalar
+ TYPE(FEVariableScalar_), INTENT( IN ) :: krank
+ !! scalar fe variable
+ INTEGER( I4B ), INTENT( IN ) :: opt(1)
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION DiffusionMatrix
```
diff --git a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_2.md b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_2.md
index 20f60bf1..0d68bd82 100644
--- a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_2.md
+++ b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_2.md
@@ -14,9 +14,9 @@ tags:
# MassMatrix example 2
!!! note ""
- This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
-
-Here, we want to do the following.
+This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
+
+Here, we want to do the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -45,51 +45,51 @@ PROGRAM main
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order*refelem%order, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order*refelem%order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]].
-
+Initiate an instance of [[ElemeshapeData_]].
+
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- mat=DiffusionMatrix(test=test, trial=test)
- CALL Display(mat, "mat:")
+mat=DiffusionMatrix(test=test, trial=test)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_3.md b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_3.md
index 52f96aeb..26fe9f73 100644
--- a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_3.md
+++ b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_3.md
@@ -14,9 +14,9 @@ tags:
# DiffusionMatrix example 3
!!! note ""
- This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
-
-Here, we want to DO the following.
+This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -45,66 +45,66 @@ PROGRAM main
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
- CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL Initiate( obj=quad, refelem=simplexElem, &
- & order=factor*refElemForTrial%order, &
- & quadratureType='GaussLegendre' )
+CALL Initiate( obj=quad, refelem=simplexElem, &
+ & order=factor*refElemForTrial%order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL Initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL Initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for test function.
-
+Initiate an instance of [[ElemeshapeData_]] for test function.
+
```fortran
- CALL Initiate(obj=test, &
- & quad=quad, &
- & refelem=refElemForTest, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL Initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for trial function.
-
+Initiate an instance of [[ElemeshapeData_]] for trial function.
+
```fortran
- CALL Initiate(obj=trial, &
- & quad=quad, &
- & refelem=refElemForTrial, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL Initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- mat=DiffusionMatrix(test=test, trial=trial)
- CALL Display(mat, "mat:")
+mat=DiffusionMatrix(test=test, trial=trial)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_4.md b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_4.md
index 5a94678e..edd09acd 100644
--- a/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_4.md
+++ b/docs/docs-api/DiffusionMatrix/DiffusionMatrix_test_4.md
@@ -14,9 +14,9 @@ tags:
# DiffusionMatrix example 4
!!! note ""
- This example shows how to use the subroutine called `DiffusionMatrix` to create a Diffusion matrix in space domain.
-
-Here, we want to do the following.
+This example shows how to use the subroutine called `DiffusionMatrix` to create a Diffusion matrix in space domain.
+
+Here, we want to do the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -24,7 +24,6 @@ $$
- Line2 element
-
## Modules and classes
- [[ElemshapeData_]]
@@ -32,7 +31,6 @@ $$
- [[ReferenceLine_]]
- [[FEVariable_]]
-
## Usage
```fortran
@@ -48,41 +46,40 @@ PROGRAM main
integer( I4B ), parameter :: order = 2
```
-
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
-
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- kvar = NodalVariable(1.0_DFP, TypeFEVariableScalar, TypeFEVariableConstant)
- mat=DiffusionMatrix(test=test, trial=test, k=kvar)
- CALL Display(mat, "mat:")
+kvar = NodalVariable(1.0_DFP, TypeFEVariableScalar, TypeFEVariableConstant)
+mat=DiffusionMatrix(test=test, trial=test, k=kvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -94,7 +91,6 @@ PROGRAM main
-0.500000 0.500000
```
-
!!! settings "Cleanup"
```fortran
diff --git a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_2.md b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_2.md
index 20f60bf1..0d68bd82 100644
--- a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_2.md
+++ b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_2.md
@@ -14,9 +14,9 @@ tags:
# MassMatrix example 2
!!! note ""
- This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
-
-Here, we want to do the following.
+This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
+
+Here, we want to do the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -45,51 +45,51 @@ PROGRAM main
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order*refelem%order, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order*refelem%order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]].
-
+Initiate an instance of [[ElemeshapeData_]].
+
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- mat=DiffusionMatrix(test=test, trial=test)
- CALL Display(mat, "mat:")
+mat=DiffusionMatrix(test=test, trial=test)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_3.md b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_3.md
index 52f96aeb..26fe9f73 100644
--- a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_3.md
+++ b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_3.md
@@ -14,9 +14,9 @@ tags:
# DiffusionMatrix example 3
!!! note ""
- This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
-
-Here, we want to DO the following.
+This example shows how to USE the SUBROUTINE called `DiffusionMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -45,66 +45,66 @@ PROGRAM main
```
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
- CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL Initiate( obj=quad, refelem=simplexElem, &
- & order=factor*refElemForTrial%order, &
- & quadratureType='GaussLegendre' )
+CALL Initiate( obj=quad, refelem=simplexElem, &
+ & order=factor*refElemForTrial%order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
```fortran
- CALL Initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
+CALL Initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for test function.
-
+Initiate an instance of [[ElemeshapeData_]] for test function.
+
```fortran
- CALL Initiate(obj=test, &
- & quad=quad, &
- & refelem=refElemForTest, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL Initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for trial function.
-
+Initiate an instance of [[ElemeshapeData_]] for trial function.
+
```fortran
- CALL Initiate(obj=trial, &
- & quad=quad, &
- & refelem=refElemForTrial, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
+CALL Initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- mat=DiffusionMatrix(test=test, trial=trial)
- CALL Display(mat, "mat:")
+mat=DiffusionMatrix(test=test, trial=trial)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_4.md b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_4.md
index 5a94678e..edd09acd 100644
--- a/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_4.md
+++ b/docs/docs-api/DiffusionMatrix/examples/DiffusionMatrix_test_4.md
@@ -14,9 +14,9 @@ tags:
# DiffusionMatrix example 4
!!! note ""
- This example shows how to use the subroutine called `DiffusionMatrix` to create a Diffusion matrix in space domain.
-
-Here, we want to do the following.
+This example shows how to use the subroutine called `DiffusionMatrix` to create a Diffusion matrix in space domain.
+
+Here, we want to do the following.
$$
\int^{}_{\Omega } \frac{\partial N^{I}}{\partial x_{i}} \frac{\partial N^{J}}{\partial x_{i}} d\Omega
@@ -24,7 +24,6 @@ $$
- Line2 element
-
## Modules and classes
- [[ElemshapeData_]]
@@ -32,7 +31,6 @@ $$
- [[ReferenceLine_]]
- [[FEVariable_]]
-
## Usage
```fortran
@@ -48,41 +46,40 @@ PROGRAM main
integer( I4B ), parameter :: order = 2
```
-
!!! note ""
- Now we create an instance of [[ReferenceLine_]].
+Now we create an instance of [[ReferenceLine_]].
```fortran
- refelem = referenceline(nsd=1)
+refelem = referenceline(nsd=1)
```
!!! note ""
- Here, we create the quadrature points.
+Here, we create the quadrature points.
```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre' )
+CALL initiate( obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre' )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
-
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
+
```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refelem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
```
!!! note ""
- Let us now create the mass matrix.
+Let us now create the mass matrix.
```fortran
- kvar = NodalVariable(1.0_DFP, TypeFEVariableScalar, TypeFEVariableConstant)
- mat=DiffusionMatrix(test=test, trial=test, k=kvar)
- CALL Display(mat, "mat:")
+kvar = NodalVariable(1.0_DFP, TypeFEVariableScalar, TypeFEVariableConstant)
+mat=DiffusionMatrix(test=test, trial=test, k=kvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -94,7 +91,6 @@ PROGRAM main
-0.500000 0.500000
```
-
!!! settings "Cleanup"
```fortran
diff --git a/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_1.md b/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_1.md
index 84fabb19..98662329 100644
--- a/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_1.md
+++ b/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_1.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_ImportFromToml_test_1.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_2.md b/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_2.md
index 2d1f273f..e6913521 100644
--- a/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_2.md
+++ b/docs/docs-api/DirichletBC/examples/_ImportFromToml_test_2.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_ImportFromToml_test_2.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/DirichletBC/examples/_Initiate_test_1.md b/docs/docs-api/DirichletBC/examples/_Initiate_test_1.md
index fdaba123..781fb571 100644
--- a/docs/docs-api/DirichletBC/examples/_Initiate_test_1.md
+++ b/docs/docs-api/DirichletBC/examples/_Initiate_test_1.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_Initiate_test_1.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/DirichletBC/examples/_Initiate_test_2.md b/docs/docs-api/DirichletBC/examples/_Initiate_test_2.md
index 37a0ddfc..9e54927e 100644
--- a/docs/docs-api/DirichletBC/examples/_Initiate_test_2.md
+++ b/docs/docs-api/DirichletBC/examples/_Initiate_test_2.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_Initiate_test_2.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/DirichletBC/examples/_Initiate_test_3.md b/docs/docs-api/DirichletBC/examples/_Initiate_test_3.md
index 8bf94822..21aa7c8e 100644
--- a/docs/docs-api/DirichletBC/examples/_Initiate_test_3.md
+++ b/docs/docs-api/DirichletBC/examples/_Initiate_test_3.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_Initiate_test_3.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/DirichletBC/examples/_SetElemToLocalBoundary_test_1.md b/docs/docs-api/DirichletBC/examples/_SetElemToLocalBoundary_test_1.md
index ae63882c..175e2286 100644
--- a/docs/docs-api/DirichletBC/examples/_SetElemToLocalBoundary_test_1.md
+++ b/docs/docs-api/DirichletBC/examples/_SetElemToLocalBoundary_test_1.md
@@ -1,7 +1,5 @@
-
import CodeBlock from '@theme/CodeBlock';
import CodeSnippet from '!!raw-loader!./_SetElemToLocalBoundary_test_1.F90';
{CodeSnippet}
-
diff --git a/docs/docs-api/Display_Method/Display.md b/docs/docs-api/Display_Method/Display.md
index 64ab1cd9..c86a5693 100644
--- a/docs/docs-api/Display_Method/Display.md
+++ b/docs/docs-api/Display_Method/Display.md
@@ -1,6 +1,6 @@
# Display
-Display function prints variable on the screen.
+Display function prints variable on the screen.
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
diff --git a/docs/docs-api/Display_Method/SetDisplayProfile.md b/docs/docs-api/Display_Method/SetDisplayProfile.md
index 1e8d6420..e35dd6db 100644
--- a/docs/docs-api/Display_Method/SetDisplayProfile.md
+++ b/docs/docs-api/Display_Method/SetDisplayProfile.md
@@ -55,7 +55,7 @@ DispProfile is an instance of DISP_SETTINGS. You can pass following predefined g
- style="UNDERLINE"
- trim="FALSE"
- ZEROAS="."
-:::
+ :::
:::note DisplayProfilePrint
@@ -65,13 +65,13 @@ DispProfile is an instance of DISP_SETTINGS. You can pass following predefined g
- style="UNDERLINE"
- trim="FALSE"
- ZEROAS=""
-:::
+ :::
#### advance
It can take following values:
-1. "YES", go to the next line.
+1. "YES", go to the next line.
2. "NO", stay on the same line.
#### digmax
diff --git a/docs/docs-api/DistributedVector/index.md b/docs/docs-api/DistributedVector/index.md
index 3683a79e..48a2647b 100644
--- a/docs/docs-api/DistributedVector/index.md
+++ b/docs/docs-api/DistributedVector/index.md
@@ -5,4 +5,3 @@ update: 2023-08-05
---
# DistributedVector
-
diff --git a/docs/docs-api/Domain/InitiateFacetElements.md b/docs/docs-api/Domain/InitiateFacetElements.md
index 75995182..47bbdc4f 100644
--- a/docs/docs-api/Domain/InitiateFacetElements.md
+++ b/docs/docs-api/Domain/InitiateFacetElements.md
@@ -1,6 +1,6 @@
# InitiateFacetElements
-This routine initiates the facet element information for every mesh of the domain.
+This routine initiates the facet element information for every mesh of the domain.
More details are given in the following pages.
diff --git a/docs/docs-api/Domain/SetDomainFacetElement.md b/docs/docs-api/Domain/SetDomainFacetElement.md
index b3fef5d5..ca9492df 100644
--- a/docs/docs-api/Domain/SetDomainFacetElement.md
+++ b/docs/docs-api/Domain/SetDomainFacetElement.md
@@ -2,13 +2,13 @@
This routine sets the domain boundary element for cells and faces.
-When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh). Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
+When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh). Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
However, some of these boundary facet-elements will be located at the domain’s boundary. These facet elements are called `DOMAIN_BOUNDARY_ELEMENT`.
-Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
+Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
-This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
+This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
:::info
This routine needs facet element data information stored inside the mesh. Therefore, if for a mesh `isFacetDataInitiated` is false, then this routine will make a call to [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for that mesh.
diff --git a/docs/docs-api/Domain/SetFacetElementType.md b/docs/docs-api/Domain/SetFacetElementType.md
index 75c64502..a663db04 100644
--- a/docs/docs-api/Domain/SetFacetElementType.md
+++ b/docs/docs-api/Domain/SetFacetElementType.md
@@ -2,18 +2,18 @@
This routine corrrects the facet element type in each mesh.
-When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh).
+When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh).
-Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
+Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
However, some of these boundary facet-elements will be located at the domain’s boundary. These facet elements are called `DOMAIN_BOUNDARY_ELEMENT`.
-Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
+Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
-This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
+This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
:::info
-This method needs information of boundary data in a mesh, which can be set by calling [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) by the user.
+This method needs information of boundary data in a mesh, which can be set by calling [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) by the user.
In this routine if for a mesh `isBoundaryDataInitiated` is `.FALSE.`, then this routine will make a call to [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) for that mesh and initiate the required boundary data.
:::
@@ -24,7 +24,6 @@ Please check documentation of following methods:
- [SetMeshFacetElement](SetMeshFacetElement.md)
- [SetFacetElementType](SetFacetElementType.md)
-
## Interface
```fortran
diff --git a/docs/docs-api/Domain/examples/_GetTotalElements_test_1.md b/docs/docs-api/Domain/examples/_GetTotalElements_test_1.md
index 8cecbe3a..2f5e0643 100644
--- a/docs/docs-api/Domain/examples/_GetTotalElements_test_1.md
+++ b/docs/docs-api/Domain/examples/_GetTotalElements_test_1.md
@@ -1,9 +1,9 @@
-This example show how to initiate an instance of `Domain_` from the `HDF5File_`
-mesh/domain file.
+This example show how to initiate an instance of `Domain_` from the `HDF5File_`
+mesh/domain file.
It tests `GetTotalElements`, and `OPERATOR(.tElements.)` methods
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/Domain/examples/_GetTotalNodes_test_1.md b/docs/docs-api/Domain/examples/_GetTotalNodes_test_1.md
index 49ae333a..d8b5177d 100644
--- a/docs/docs-api/Domain/examples/_GetTotalNodes_test_1.md
+++ b/docs/docs-api/Domain/examples/_GetTotalNodes_test_1.md
@@ -1,7 +1,7 @@
-This example show how to initiate an instance of `Domain_` from the `HDF5File_` mesh/domain file.
+This example show how to initiate an instance of `Domain_` from the `HDF5File_` mesh/domain file.
It tests `GetTotalNodes` and `Operator(.tNodes.)` methods.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/Domain/examples/_IsNodePresent_test_1.md b/docs/docs-api/Domain/examples/_IsNodePresent_test_1.md
index 1a566782..01941535 100644
--- a/docs/docs-api/Domain/examples/_IsNodePresent_test_1.md
+++ b/docs/docs-api/Domain/examples/_IsNodePresent_test_1.md
@@ -1,7 +1,7 @@
-This example show how to initiate an instance of `Domain_` from the `HDF5File_` mesh/domain file.
+This example show how to initiate an instance of `Domain_` from the `HDF5File_` mesh/domain file.
It tests `isNodePresent`, `getTotalNodes`, and `Operator(.tNodes.)` methods
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/Domain/examples/_SetMeshFacetElement_test_1.md b/docs/docs-api/Domain/examples/_SetMeshFacetElement_test_1.md
index 1514f44f..16abe5c8 100644
--- a/docs/docs-api/Domain/examples/_SetMeshFacetElement_test_1.md
+++ b/docs/docs-api/Domain/examples/_SetMeshFacetElement_test_1.md
@@ -1,6 +1,6 @@
This example tests the `SetMeshFacetElement` method of the domain.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/Domain/examples/_SetMeshMap_test_1.md b/docs/docs-api/Domain/examples/_SetMeshMap_test_1.md
index ce081d0b..5851cacb 100644
--- a/docs/docs-api/Domain/examples/_SetMeshMap_test_1.md
+++ b/docs/docs-api/Domain/examples/_SetMeshMap_test_1.md
@@ -1,6 +1,6 @@
This example tests the `SetMeshMap` method of the domain.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_1.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_1.md
index cbda1527..401961dc 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_1.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_1.md
@@ -6,7 +6,7 @@ Pressure domain consists Triangle3 elements as shown below.
Importing modules and variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -21,20 +21,20 @@ PROGRAM main
```
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
This will create node to node-connectivity data from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=pressureDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
- nodeToNode => obj%getNodeToNodePointer()
- pressureMesh => pressureDomain%getMeshPointer( 2, 1 )
- pressureNode => pressureDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=pressureDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
+nodeToNode => obj%getNodeToNodePointer()
+pressureMesh => pressureDomain%getMeshPointer( 2, 1 )
+pressureNode => pressureDomain%getNodeCoordPointer()
```
```fortran
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_10.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_10.md
index f5b3495a..4ad59ab5 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_10.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_10.md
@@ -8,7 +8,7 @@ Velocity domain consists Triangle6 elements as shown below.

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -25,46 +25,46 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain2=velocityDomain, &
- & domain1=pressureDomain )
- nodeToNode => obj%getNodeToNodePointer()
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain2=velocityDomain, &
+ & domain1=pressureDomain )
+nodeToNode => obj%getNodeToNodePointer()
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = pressureDomain%minNptrs, pressureDomain%maxNptrs
- IF( .NOT. pressureDomain%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( pressureNode(:,pressureDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. velocityNode(:, &
- & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "pressure Node = " // TOSTRING(ii) &
- ! & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: pressure Node = " // TOSTRING(ii) &
- & // " not matches with velocity Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- CALL OK(.TRUE.)
+DO ii = pressureDomain%minNptrs, pressureDomain%maxNptrs
+ IF( .NOT. pressureDomain%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( pressureNode(:,pressureDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. velocityNode(:, &
+ & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "pressure Node = " // TOSTRING(ii) &
+ ! & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: pressure Node = " // TOSTRING(ii) &
+ & // " not matches with velocity Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+CALL OK(.TRUE.)
```
cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_11.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_11.md
index 9ab248ee..ee6f6aee 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_11.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_11.md
@@ -1,4 +1,4 @@
-In this example we will generate cell to cell connectivity information between part of pressure-domain and part of pressure-Domain.
+In this example we will generate cell to cell connectivity information between part of pressure-domain and part of pressure-Domain.
- dim1=2, entity=1
- dim2=2, entity=1
@@ -7,8 +7,7 @@ Pressure domain consists Triangle3 elements as shown below.

-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -25,18 +24,18 @@ PROGRAM main
Create domain for pressure variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -44,26 +43,26 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
- CALL Display("Success!!")
+CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
+CALL Display("Success!!")
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
- IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .NE. ii) THEN
- CALL FAIL("DomainConnectivity-test has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test-11 has passed")
+cellToCell => obj%getCellToCellPointer()
+pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
+ IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .NE. ii) THEN
+ CALL FAIL("DomainConnectivity-test has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test-11 has passed")
```
Cleaning up.
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_12.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_12.md
index f10ab7f5..494792bf 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_12.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_12.md
@@ -1,10 +1,10 @@
-In this example we will generate cell to cell connectivity information between part of velocity-domain and part of velocity-Domain.
+In this example we will generate cell to cell connectivity information between part of velocity-domain and part of velocity-Domain.
Velocity domain consists Triangle6 elements as shown below.

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -21,18 +21,18 @@ PROGRAM main
create domain for velocity variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -40,25 +40,25 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
- IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .NE. ii) THEN
- CALL FAIL("DomainConnectivity-test has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test has passed")
+cellToCell => obj%getCellToCellPointer()
+velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
+ IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .NE. ii) THEN
+ CALL FAIL("DomainConnectivity-test has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test has passed")
```
Cleaning up.
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_13.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_13.md
index 7487121b..b554e297 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_13.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_13.md
@@ -1,4 +1,4 @@
-In this example we will generate cell to cell connectivity information between part of pressure-domain and part of pressure-Domain. We will map boundary of a domain with the boundary of the other domain
+In this example we will generate cell to cell connectivity information between part of pressure-domain and part of pressure-Domain. We will map boundary of a domain with the boundary of the other domain
Pressure domain consists Triangle3 elements as shown below.
@@ -10,7 +10,7 @@ Velocity domain consists Triangle6 elements as shown below.
Importing modules and variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -27,18 +27,18 @@ PROGRAM main
Create domain for pressure variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -46,26 +46,26 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
- CALL Display("Success!!")
+CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
+CALL Display("Success!!")
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
- IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .NE. ii) THEN
- CALL FAIL("DomainConnectivity-test-11 has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test has passed")
+cellToCell => obj%getCellToCellPointer()
+pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
+ IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .NE. ii) THEN
+ CALL FAIL("DomainConnectivity-test-11 has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test has passed")
```
Cleaning up.
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_14.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_14.md
index 19067157..c7afc624 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_14.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_14.md
@@ -1,4 +1,4 @@
-In this example we will generate cell to cell connectivity information between part of velocity-domain and part of velocity-Domain.
+In this example we will generate cell to cell connectivity information between part of velocity-domain and part of velocity-Domain.
Pressure domain consists Triangle3 elements as shown below.
@@ -10,7 +10,7 @@ Velocity domain consists Triangle6 elements as shown below.
Importing modules and variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -27,18 +27,18 @@ PROGRAM main
Create domain for velocity variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -46,25 +46,25 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
- IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .NE. ii) THEN
- CALL FAIL("DomainConnectivity-test-11 has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test has passed")
+cellToCell => obj%getCellToCellPointer()
+velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
+ IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .NE. ii) THEN
+ CALL FAIL("DomainConnectivity-test-11 has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test has passed")
```
Cleaning up.
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_15.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_15.md
index 1cf040e1..ef1a4883 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_15.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_15.md
@@ -30,27 +30,27 @@ PROGRAM main
create domain for velocity variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
```
create domain for pressure variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -58,28 +58,27 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
- IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .EQ. 0) THEN
- CALL FAIL("DomainConnectivity-test has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test has passed")
+cellToCell => obj%getCellToCellPointer()
+velocityMesh => velocityDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = velocityMesh%minElemNum, velocityMesh%maxElemNum
+ IF (.NOT. velocityMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .EQ. 0) THEN
+ CALL FAIL("DomainConnectivity-test has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test has passed")
```
-
```fortran
CALL pressureDomain%Deallocate()
CALL velocityDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_16.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_16.md
index f89331c2..1b579465 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_16.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_16.md
@@ -28,27 +28,27 @@ PROGRAM main
Create domain for velocity variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
```
Create domain for pressure variables, 🎇 READ the mesh file, and ⭕ initiates the domain for pressure
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
Initiates the node to node connectivity DATA. It is important that we initiate the node to node DATA before initiating cell to cell DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -56,28 +56,27 @@ This will create node-to-node connectivity DATA from domain1 (dim=2, entityNum=1
Now we can initiate cell-to-cell DATA between the above mentioned meshes.
```fortran
- CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
- & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
- & entityNum2=entity2)
+CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
+ & domain2=velocityDomain, dim1=dim1, entityNum1=entity1, dim2=dim2, &
+ & entityNum2=entity2)
```
Now let us run some checks on the results. This is ONLY for the testing purpose. IF you want, you can skip this part, and move on to the next examples.
```fortran
- cellToCell => obj%getCellToCellPointer()
- pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
- & entityNum=entity1)
- DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
- IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
- IF (cellToCell(ii) .EQ. 0) THEN
- CALL FAIL("DomainConnectivity-test has failed")
- STOP
- END IF
- END DO
- CALL PASS("DomainConnectivity-test has passed")
+cellToCell => obj%getCellToCellPointer()
+pressureMesh => pressureDomain%getMeshPointer(dim=dim1, &
+ & entityNum=entity1)
+DO ii = pressureMesh%minElemNum, pressureMesh%maxElemNum
+ IF (.NOT. pressureMesh%isElementPresent(ii)) CYCLE
+ IF (cellToCell(ii) .EQ. 0) THEN
+ CALL FAIL("DomainConnectivity-test has failed")
+ STOP
+ END IF
+END DO
+CALL PASS("DomainConnectivity-test has passed")
```
-
```fortran
CALL pressureDomain%Deallocate()
CALL velocityDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_17.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_17.md
index e4f7920f..529dee53 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_17.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_17.md
@@ -10,7 +10,7 @@ Velocity domain consists Triangle6 elements as shown below.
Importing modules and variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -28,17 +28,17 @@ PROGRAM main
Initiate domain for pressure variable.
```fortran
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
```
Initiate node to node DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=pressureDomain )
- CALL PASS("InitiateNodeToNodeData()")
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=pressureDomain )
+CALL PASS("InitiateNodeToNodeData()")
```
This will create node to node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -46,32 +46,31 @@ This will create node to node connectivity DATA from domain1 (dim=2, entityNum=1
Initiate cell to cell connectivity DATA.
```fortran
- CALL obj%InitiateCellToCellData(domain1=pressureDomain, &
- & domain2=pressureDomain)
+CALL obj%InitiateCellToCellData(domain1=pressureDomain, &
+ & domain2=pressureDomain)
```
now let us run some tests.
```fortran
- cellToCell => obj%getCellToCellPointer()
- DO iel = pressureDomain%minElemNum, pressureDomain%maxElemNum
- IF (.NOT. pressureDomain%isElementPresent(iel)) CYCLE
- IF (cellToCell(iel) .EQ. 0) THEN
- pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
- refelem => pressureMesh%getRefElemPointer()
- IF (refelem%xidimension .EQ. pressureDomain%getNSD()) &
- & CALL fail("CellToCell: error code 1")
- ELSE
- IF (cellToCell(iel) .NE. iel) THEN
- CALL fail("CellToCell: error code 2")
- STOP
- END IF
- END IF
- END DO
- CALL PASS("InitiateCellToCellData()")
+cellToCell => obj%getCellToCellPointer()
+DO iel = pressureDomain%minElemNum, pressureDomain%maxElemNum
+ IF (.NOT. pressureDomain%isElementPresent(iel)) CYCLE
+ IF (cellToCell(iel) .EQ. 0) THEN
+ pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
+ refelem => pressureMesh%getRefElemPointer()
+ IF (refelem%xidimension .EQ. pressureDomain%getNSD()) &
+ & CALL fail("CellToCell: error code 1")
+ ELSE
+ IF (cellToCell(iel) .NE. iel) THEN
+ CALL fail("CellToCell: error code 2")
+ STOP
+ END IF
+ END IF
+END DO
+CALL PASS("InitiateCellToCellData()")
```
-
```fortran
CALL pressureMeshFile%Deallocate()
CALL pressureDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_18.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_18.md
index 235ccd14..a458e967 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_18.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_18.md
@@ -10,7 +10,7 @@ Velocity domain consists Triangle6 elements as shown below.
Importing modules and variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -28,17 +28,17 @@ PROGRAM main
Initiate domain for velocity variable.
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
```
Initiate node to node DATA.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=velocityDomain )
- CALL PASS("InitiateNodeToNodeData()")
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=velocityDomain )
+CALL PASS("InitiateNodeToNodeData()")
```
This will create node to node connectivity DATA from domain1 (dim=2, entityNum=1) to domain2 (dim=2, entityNum=2).
@@ -46,32 +46,31 @@ This will create node to node connectivity DATA from domain1 (dim=2, entityNum=1
Initiate cell to cell connectivity DATA.
```fortran
- CALL obj%InitiateCellToCellData(domain1=velocityDomain, &
- & domain2=velocityDomain)
+CALL obj%InitiateCellToCellData(domain1=velocityDomain, &
+ & domain2=velocityDomain)
```
-now let us run some tests, this is only for testing purpose, so you can ignore the forthcoming section.
+now let us run some tests, this is only for testing purpose, so you can ignore the forthcoming section.
```fortran
- cellToCell => obj%getCellToCellPointer()
- DO iel = velocityDomain%minElemNum, velocityDomain%maxElemNum
- IF (.NOT. velocityDomain%isElementPresent(iel)) CYCLE
- IF (cellToCell(iel) .EQ. 0) THEN
- velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
- refelem => velocityMesh%getRefElemPointer()
- IF (refelem%xidimension .EQ. velocityDomain%getNSD()) &
- & CALL fail("CellToCell: error code 1")
- ELSE
- IF (cellToCell(iel) .NE. iel) THEN
- CALL fail("CellToCell: error code 2")
- STOP
- END IF
- END IF
- END DO
- CALL PASS("InitiateCellToCellData()")
+cellToCell => obj%getCellToCellPointer()
+DO iel = velocityDomain%minElemNum, velocityDomain%maxElemNum
+ IF (.NOT. velocityDomain%isElementPresent(iel)) CYCLE
+ IF (cellToCell(iel) .EQ. 0) THEN
+ velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
+ refelem => velocityMesh%getRefElemPointer()
+ IF (refelem%xidimension .EQ. velocityDomain%getNSD()) &
+ & CALL fail("CellToCell: error code 1")
+ ELSE
+ IF (cellToCell(iel) .NE. iel) THEN
+ CALL fail("CellToCell: error code 2")
+ STOP
+ END IF
+ END IF
+END DO
+CALL PASS("InitiateCellToCellData()")
```
-
```fortran
CALL velocityMeshFile%Deallocate()
CALL velocityDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_19.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_19.md
index 069b632c..7b6fc4c5 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_19.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_19.md
@@ -32,68 +32,68 @@ PROGRAM main
Open the mesh file for pressure and velocity domain
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
Initiate the domain for pressure and velocity
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL pressureDomain%Initiate( pressureMeshFile, "")
```
Initiate node to node data between velocity domain and pressure domain.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain )
- CALL PASS("InitiateNodeToNodeData()")
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain )
+CALL PASS("InitiateNodeToNodeData()")
```
Now that node-to-node data is ready, let us initiate cell to cell data from velocity domain to pressure domain.
```fortran
- CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
- & domain2=pressureDomain )
+CALL obj%InitiateCellToCellData( domain1=velocityDomain, &
+ & domain2=pressureDomain )
```
now let us run some tests to check the validity of the data. This is only for testing purpose, so you can ignore the forthcoming section.
```fortran
- cellToCell => obj%getCellToCellPointer()
- DO iel = velocityDomain%minElemNum, velocityDomain%maxElemNum
- IF (.NOT. velocityDomain%isElementPresent(iel)) CYCLE
- IF (cellToCell(iel) .EQ. 0) THEN
- velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
- refelem => velocityMesh%getRefElemPointer()
- IF (refelem%xidimension .EQ. velocityDomain%getNSD()) THEN
- CALL fail("CellToCell: error code 1")
- STOP
- END IF
- ELSE
- !! here i am checking if the cellToCell(iel) is present in
- !! in the pressure domain or not.
- !! If it is present then it should be a cell element.
- ii = cellToCell(iel)
- IF (.NOT. pressureDomain%isElementPresent(ii)) THEN
- CALL fail("CellToCell: error code 2")
- STOP
- ELSE
- velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
- velocityRefelem => velocityMesh%getRefElemPointer()
- pressureMesh => pressureDomain%getMeshPointer(globalElement=ii)
- pressureRefelem => pressureMesh%getRefElemPointer()
- IF (pressureRefelem%xidimension .NE. velocityRefelem%xidimension) THEN
- CALL fail("CellToCell: error code 3")
- STOP
- END IF
- END IF
+cellToCell => obj%getCellToCellPointer()
+DO iel = velocityDomain%minElemNum, velocityDomain%maxElemNum
+ IF (.NOT. velocityDomain%isElementPresent(iel)) CYCLE
+ IF (cellToCell(iel) .EQ. 0) THEN
+ velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
+ refelem => velocityMesh%getRefElemPointer()
+ IF (refelem%xidimension .EQ. velocityDomain%getNSD()) THEN
+ CALL fail("CellToCell: error code 1")
+ STOP
+ END IF
+ ELSE
+ !! here i am checking if the cellToCell(iel) is present in
+ !! in the pressure domain or not.
+ !! If it is present then it should be a cell element.
+ ii = cellToCell(iel)
+ IF (.NOT. pressureDomain%isElementPresent(ii)) THEN
+ CALL fail("CellToCell: error code 2")
+ STOP
+ ELSE
+ velocityMesh => velocityDomain%getMeshPointer(globalElement=iel)
+ velocityRefelem => velocityMesh%getRefElemPointer()
+ pressureMesh => pressureDomain%getMeshPointer(globalElement=ii)
+ pressureRefelem => pressureMesh%getRefElemPointer()
+ IF (pressureRefelem%xidimension .NE. velocityRefelem%xidimension) THEN
+ CALL fail("CellToCell: error code 3")
+ STOP
END IF
- END DO
- CALL PASS("InitiateCellToCellData()")
+ END IF
+ END IF
+END DO
+CALL PASS("InitiateCellToCellData()")
```
```fortran
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_2.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_2.md
index c49d3098..ee20f217 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_2.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_2.md
@@ -21,43 +21,43 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=velocityDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( 2, 1 )
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=velocityDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( 2, 1 )
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) THEN
- CALL Display( "ERRRO: nodeToNode( "//TOSTRING(ii) // ") = 0 " )
- STOP
- END IF
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. &
- & velocityNode(:, &
- & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "velocity Node = " // TOSTRING(ii) &
- ! & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with velocity Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- CALL OK(.true.)
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) THEN
+ CALL Display( "ERRRO: nodeToNode( "//TOSTRING(ii) // ") = 0 " )
+ STOP
+ END IF
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. &
+ & velocityNode(:, &
+ & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "velocity Node = " // TOSTRING(ii) &
+ ! & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with velocity Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+CALL OK(.true.)
```
cleaning up
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_20.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_20.md
index 4284e7da..ee786a54 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_20.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_20.md
@@ -32,71 +32,70 @@ PROGRAM main
Open the mesh file for pressure and velocity domain
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
Initiate the domain for pressure and velocity
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL pressureDomain%Initiate( pressureMeshFile, "")
```
Initiate node to node data between velocity domain and pressure domain.
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
- & domain2=velocityDomain )
- CALL PASS("InitiateNodeToNodeData()")
+CALL obj%InitiateNodeToNodeData( domain1=pressureDomain, &
+ & domain2=velocityDomain )
+CALL PASS("InitiateNodeToNodeData()")
```
Now that node-to-node data is ready, let us initiate cell to cell data from pressure domain to velocity domain.
```fortran
- CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
- & domain2=velocityDomain )
+CALL obj%InitiateCellToCellData( domain1=pressureDomain, &
+ & domain2=velocityDomain )
```
now let us run some tests to check the validity of the data. This is only for testing purpose, so you can ignore the forthcoming section.
```fortran
- cellToCell => obj%getCellToCellPointer()
- DO iel = pressureDomain%minElemNum, pressureDomain%maxElemNum
- IF (.NOT. pressureDomain%isElementPresent(iel)) CYCLE
- IF (cellToCell(iel) .EQ. 0) THEN
- pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
- refelem => pressureMesh%getRefElemPointer()
- IF (refelem%xidimension .EQ. pressureDomain%getNSD()) THEN
- CALL fail("CellToCell: error code 1")
- STOP
- END IF
- ELSE
- !! here i am checking if the cellToCell(iel) is present in
- !! in the pressure domain or not.
- !! If it is present then it should be a cell element.
- ii = cellToCell(iel)
- IF (.NOT. velocityDomain%isElementPresent(ii)) THEN
- CALL fail("CellToCell: error code 2")
- STOP
- ELSE
- velocityMesh => velocityDomain%getMeshPointer(globalElement=ii)
- velocityRefelem => velocityMesh%getRefElemPointer()
- pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
- pressureRefelem => pressureMesh%getRefElemPointer()
- IF (pressureRefelem%xidimension .NE. velocityRefelem%xidimension) THEN
- CALL fail("CellToCell: error code 3")
- STOP
- END IF
- END IF
+cellToCell => obj%getCellToCellPointer()
+DO iel = pressureDomain%minElemNum, pressureDomain%maxElemNum
+ IF (.NOT. pressureDomain%isElementPresent(iel)) CYCLE
+ IF (cellToCell(iel) .EQ. 0) THEN
+ pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
+ refelem => pressureMesh%getRefElemPointer()
+ IF (refelem%xidimension .EQ. pressureDomain%getNSD()) THEN
+ CALL fail("CellToCell: error code 1")
+ STOP
+ END IF
+ ELSE
+ !! here i am checking if the cellToCell(iel) is present in
+ !! in the pressure domain or not.
+ !! If it is present then it should be a cell element.
+ ii = cellToCell(iel)
+ IF (.NOT. velocityDomain%isElementPresent(ii)) THEN
+ CALL fail("CellToCell: error code 2")
+ STOP
+ ELSE
+ velocityMesh => velocityDomain%getMeshPointer(globalElement=ii)
+ velocityRefelem => velocityMesh%getRefElemPointer()
+ pressureMesh => pressureDomain%getMeshPointer(globalElement=iel)
+ pressureRefelem => pressureMesh%getRefElemPointer()
+ IF (pressureRefelem%xidimension .NE. velocityRefelem%xidimension) THEN
+ CALL fail("CellToCell: error code 3")
+ STOP
END IF
- END DO
- CALL PASS("InitiateCellToCellData()")
+ END IF
+ END IF
+END DO
+CALL PASS("InitiateCellToCellData()")
```
-
```fortran
CALL pressureMeshFile%Deallocate()
CALL velocityMeshFile%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_21.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_21.md
index 3297f2a0..c57d76b1 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_21.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_21.md
@@ -25,29 +25,29 @@ PROGRAM main
Open the mesh file for cellDomain
```fortran
- CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
- CALL cellDomainFile%Open()
+CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
+CALL cellDomainFile%Open()
```
Initiate the cellDomain
```fortran
- CALL cellDomain%Initiate( cellDomainFile, "")
+CALL cellDomain%Initiate( cellDomainFile, "")
```
Make a pointer to cellMesh and facet mesh
```fortran
- cellMesh => cellDomain%getMeshPointer( dim=2, entityNum=1)
- facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=2 )
+cellMesh => cellDomain%getMeshPointer( dim=2, entityNum=1)
+facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=2 )
```
Initiate FacetTOCellData.
```fortran
- CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
- & cellMesh=cellMesh, dim=2, entityNum=1, isMaster=.TRUE. )
- CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
+CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
+ & cellMesh=cellMesh, dim=2, entityNum=1, isMaster=.TRUE. )
+CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
```
```fortran
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_22.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_22.md
index 3eb2bbe3..30dc29ff 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_22.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_22.md
@@ -4,7 +4,6 @@ The Cellmesh is shown below.

-
Importing modules and variables
```fortran
@@ -25,28 +24,28 @@ PROGRAM main
Open the mesh file for cellDomain
```fortran
- CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
- CALL cellDomainFile%Open()
+CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
+CALL cellDomainFile%Open()
```
Initiate the cellDomain
```fortran
- CALL cellDomain%Initiate( cellDomainFile, "")
+CALL cellDomain%Initiate( cellDomainFile, "")
```
Make a pointer to cellMesh and facet mesh
```fortran
- facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=2 )
+facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=2 )
```
Initiate FacetTOCellData.
```fortran
- CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
- & cellDomain=cellDomain )
- CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
+CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
+ & cellDomain=cellDomain )
+CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
```
```fortran
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_23.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_23.md
index d5af8ff0..7e90f93f 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_23.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_23.md
@@ -25,32 +25,31 @@ PROGRAM main
Open the mesh file for cellDomain
```fortran
- CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
- CALL cellDomainFile%Open()
+CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
+CALL cellDomainFile%Open()
```
Initiate the cellDomain
```fortran
- CALL cellDomain%Initiate( cellDomainFile, "")
+CALL cellDomain%Initiate( cellDomainFile, "")
```
Make a pointer to cellMesh and facet mesh
```fortran
- cellMesh => cellDomain%getMeshPointer( dim=2, entityNum=1)
- facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=7 )
+cellMesh => cellDomain%getMeshPointer( dim=2, entityNum=1)
+facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=7 )
```
Initiate FacetTOCellData.
```fortran
- CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
- & cellMesh=cellMesh, dim=2, entityNum=1, isMaster=.TRUE. )
- CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
+CALL obj%InitiateFacetToCellData( facetMesh=facetMesh, &
+ & cellMesh=cellMesh, dim=2, entityNum=1, isMaster=.TRUE. )
+CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
```
-
```fortran
CALL cellDomainFile%Deallocate()
CALL cellDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_24.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_24.md
index 4e73a355..d2fcc46e 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_24.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_24.md
@@ -25,39 +25,37 @@ PROGRAM main
Open the mesh file for cellDomain
```fortran
- CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
- CALL cellDomainFile%Open()
+CALL cellDomainFile%Initiate( FileName=cellDomainFileName, MODE="READ" )
+CALL cellDomainFile%Open()
```
Initiate the cellDomain
```fortran
- CALL cellDomain%Initiate( cellDomainFile, "")
+CALL cellDomain%Initiate( cellDomainFile, "")
```
Make a pointer to cellMesh and facet mesh
```fortran
- facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=7 )
+facetMesh => cellDomain%getMeshPointer( dim=1, entityNum=7 )
```
Initiate FacetTOCellData.
```fortran
- CALL obj%InitiateFacetToCellData( &
- & facetMesh=facetMesh, &
- & cellDomain=cellDomain)
- !CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
+CALL obj%InitiateFacetToCellData( &
+ & facetMesh=facetMesh, &
+ & cellDomain=cellDomain)
+!CALL obj%DisplayFacetToCellData( msg="facetToCell=" )
```
-
```fortran
CALL OK(obj%MasterCellNumber(localElement=1) .eq. 46, "masterCellNumber ")
CALL OK(ALL(obj%MasterCellNumber(localElement=[1,3]) .eq. [46,27]), &
& "masterCellNumber ")
```
-
```fortran
CALL OK(ALL(obj%MasterDimTag(localElement=1) .eq. [2,1]), "masterDimTag ")
CALL OK( &
@@ -66,7 +64,6 @@ CALL OK( &
& "masterDimTag ")
```
-
```fortran
CALL OK(ALL(obj%SlaveDimTag(localElement=1) .eq. [2,2]), "slaveDimTag ")
CALL OK( &
@@ -75,14 +72,12 @@ CALL OK( &
& "slaveDimTag ")
```
-
```fortran
CALL OK(obj%SlaveCellNumber(localElement=1) .eq. 59, "slaveCellNumber ")
CALL OK(ALL(obj%SlaveCellNumber(localElement=[1,3]) .eq. [59, 55]), &
& "slaveCellNumber ")
```
-
```fortran
CALL OK(ALL(obj%SlaveDimTag(localElement=1) .eq. [2,2]), "slaveDimTag ")
CALL OK( &
@@ -91,7 +86,6 @@ CALL OK( &
& "slaveDimTag ")
```
-
```fortran
CALL OK(obj%MasterFacetLocalID(localElement=1) .eq. 1, "masterFacetLocalID ")
CALL OK( &
@@ -100,7 +94,6 @@ CALL OK( &
& "masterFacetLocalID ")
```
-
```fortran
CALL OK(obj%SlaveFacetLocalID(localElement=1) .eq. 1, "slaveFacetLocalID ")
CALL OK( &
@@ -109,7 +102,6 @@ CALL OK( &
& "slaveFacetLocalID ")
```
-
```fortran
CALL OK(obj%GlobalFacetID(localElement=1) .eq. 23, "globalFacetID ")
CALL OK( &
@@ -118,7 +110,6 @@ CALL OK( &
& "globalFacetID ")
```
-
```fortran
CALL cellDomainFile%Deallocate()
CALL cellDomain%Deallocate()
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_3.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_3.md
index 10b3c533..2147dd13 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_3.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_3.md
@@ -27,48 +27,48 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( 2, 1 )
- pressureMesh => pressureDomain%getMeshPointer( 2, 1 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=2, entityNum1=1, dim2=2, entityNum2=1)
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( 2, 1 )
+pressureMesh => pressureDomain%getMeshPointer( 2, 1 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
running some simple tests.
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "velocity Node = " // TOSTRING(ii) &
- ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- CALL OK(.true.)
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "velocity Node = " // TOSTRING(ii) &
+ ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+CALL OK(.true.)
```
Cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_4.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_4.md
index f45d7be7..dbbd8b95 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_4.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_4.md
@@ -28,49 +28,49 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
- & dim2=dim2, entityNum2=entityNum2 )
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
- pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
+ & dim2=dim2, entityNum2=entityNum2 )
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
+pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "velocity Node = " // TOSTRING(ii) &
- ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- call ok(.true.)
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "velocity Node = " // TOSTRING(ii) &
+ ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+call ok(.true.)
```
Cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_5.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_5.md
index b3c15fcd..53bcd880 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_5.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_5.md
@@ -1,4 +1,3 @@
-
In this example we will generate node to node-connectivity information between part of velocity-domain (2,1) and part of pressure-Domain (1,2).
Pressure domain consists Triangle3 elements as shown below.
@@ -29,49 +28,49 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
- & dim2=dim2, entityNum2=entityNum2 )
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
- pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
+ & dim2=dim2, entityNum2=entityNum2 )
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
+pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "velocity Node = " // TOSTRING(ii) &
- ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- call ok(.true.)
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "velocity Node = " // TOSTRING(ii) &
+ ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+call ok(.true.)
```
cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_6.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_6.md
index 6c797ea5..e7d219a6 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_6.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_6.md
@@ -8,7 +8,7 @@ Velocity domain consists Triangle6 elements as shown below.

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -28,49 +28,49 @@ PROGRAM main
```
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
- & dim2=dim2, entityNum2=entityNum2 )
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
- pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
+ & dim2=dim2, entityNum2=entityNum2 )
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
+pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- !CALL Display( "velocity Node = " // TOSTRING(ii) &
- ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
- call ok(.true.)
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ !CALL Display( "velocity Node = " // TOSTRING(ii) &
+ ! & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
+call ok(.true.)
```
clean up
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_7.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_7.md
index 16220c1a..fa063160 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_7.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_7.md
@@ -8,8 +8,7 @@ Velocity domain consists Triangle6 elements as shown below.

-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -28,52 +27,49 @@ PROGRAM main
INTEGER( I4B ) :: ii
```
-
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
-
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
-
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
- & dim2=dim2, entityNum2=entityNum2 )
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
- pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
+ & dim2=dim2, entityNum2=entityNum2 )
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
+pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
- IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- CALL Display( "velocity Node = " // TOSTRING(ii) &
- & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
+DO ii = velocityMesh%minNptrs, velocityMesh%maxNptrs
+ IF( .NOT. velocityMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ CALL Display( "velocity Node = " // TOSTRING(ii) &
+ & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
```
cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_8.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_8.md
index 11892b96..2194d8b8 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_8.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_8.md
@@ -8,7 +8,7 @@ Velocity domain consists Triangle6 elements as shown below.

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -27,51 +27,49 @@ PROGRAM main
INTEGER( I4B ) :: ii
```
-
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
-
```fortran
- CALL obj%InitiateNodeToNodeData( domain2=velocityDomain, &
- & domain1=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
- & dim2=dim2, entityNum2=entityNum2 )
- nodeToNode => obj%getNodeToNodePointer()
- velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
- pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain2=velocityDomain, &
+ & domain1=pressureDomain, dim1=dim1, entityNum1=entityNum1, &
+ & dim2=dim2, entityNum2=entityNum2 )
+nodeToNode => obj%getNodeToNodePointer()
+velocityMesh => velocityDomain%getMeshPointer( dim1, entityNum1 )
+pressureMesh => pressureDomain%getMeshPointer( dim2, entityNum2 )
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = pressureMesh%minNptrs, pressureMesh%maxNptrs
- IF( .NOT. pressureMesh%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( pressureNode(:,pressureDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. velocityNode(:, &
- & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- CALL Display( "pressure Node = " // TOSTRING(ii) &
- & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: pressure Node = " // TOSTRING(ii) &
- & // " not matches with velocity Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
+DO ii = pressureMesh%minNptrs, pressureMesh%maxNptrs
+ IF( .NOT. pressureMesh%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( pressureNode(:,pressureDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. velocityNode(:, &
+ & velocityDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ CALL Display( "pressure Node = " // TOSTRING(ii) &
+ & // " matches with velocity Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: pressure Node = " // TOSTRING(ii) &
+ & // " not matches with velocity Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
```
Cleanup
diff --git a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_9.md b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_9.md
index ab35d71c..5f2bbabb 100644
--- a/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_9.md
+++ b/docs/docs-api/DomainConnectivity/examples/_DomainConnectivity_test_9.md
@@ -1,4 +1,4 @@
-In this example we will generate node to node connectivity information between velocity-domain and pressure-Domain.
+In this example we will generate node to node connectivity information between velocity-domain and pressure-Domain.
Pressure domain consists Triangle3 elements as shown below.
@@ -8,8 +8,7 @@ Velocity domain consists Triangle6 elements as shown below.

-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -25,48 +24,46 @@ PROGRAM main
INTEGER( I4B ) :: ii
```
-
```fortran
- CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
- CALL velocityMeshFile%Open()
- CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
- CALL pressureMeshFile%Open()
+CALL velocityMeshFile%Initiate( FileName="./mesh_tri6.h5", MODE="READ" )
+CALL velocityMeshFile%Open()
+CALL pressureMeshFile%Initiate( FileName="./mesh_tri3.h5", MODE="READ" )
+CALL pressureMeshFile%Open()
```
```fortran
- CALL velocityDomain%Initiate( velocityMeshFile, "")
- CALL velocityMeshFile%Deallocate()
- CALL pressureDomain%Initiate( pressureMeshFile, "")
- CALL pressureMeshFile%Deallocate()
+CALL velocityDomain%Initiate( velocityMeshFile, "")
+CALL velocityMeshFile%Deallocate()
+CALL pressureDomain%Initiate( pressureMeshFile, "")
+CALL pressureMeshFile%Deallocate()
```
-
```fortran
- CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
- & domain2=pressureDomain )
- nodeToNode => obj%getNodeToNodePointer()
- pressureNode => pressureDomain%getNodeCoordPointer()
- velocityNode => velocityDomain%getNodeCoordPointer()
+CALL obj%InitiateNodeToNodeData( domain1=velocityDomain, &
+ & domain2=pressureDomain )
+nodeToNode => obj%getNodeToNodePointer()
+pressureNode => pressureDomain%getNodeCoordPointer()
+velocityNode => velocityDomain%getNodeCoordPointer()
```
Simple testing
```fortran
- DO ii = velocityDomain%minNptrs, velocityDomain%maxNptrs
- IF( .NOT. velocityDomain%isNodePresent( globalNode=ii ) ) CYCLE
- IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
- IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
- & .APPROXEQ. pressureNode(:, &
- & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
- CALL Display( "velocity Node = " // TOSTRING(ii) &
- & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
- ELSE
- CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
- & // " not matches with pressure Node = " &
- & // TOSTRING( nodeToNode(ii)))
- STOP
- END IF
- END DO
+DO ii = velocityDomain%minNptrs, velocityDomain%maxNptrs
+ IF( .NOT. velocityDomain%isNodePresent( globalNode=ii ) ) CYCLE
+ IF( nodeToNode( ii ) .EQ. 0 ) CYCLE
+ IF( ALL( velocityNode(:,velocityDomain%getLocalNodeNumber(ii)) &
+ & .APPROXEQ. pressureNode(:, &
+ & pressureDomain%getLocalNodeNumber(nodeToNode(ii)))) ) THEN
+ CALL Display( "velocity Node = " // TOSTRING(ii) &
+ & // " matches with pressure Node = " // TOSTRING( nodeToNode(ii)))
+ ELSE
+ CALL Display( "ERROR: velocity Node = " // TOSTRING(ii) &
+ & // " not matches with pressure Node = " &
+ & // TOSTRING( nodeToNode(ii)))
+ STOP
+ END IF
+END DO
```
cleanup
diff --git a/docs/docs-api/EasyPlplot/EasyPlplot_test_1.md b/docs/docs-api/EasyPlplot/EasyPlplot_test_1.md
index 29cfe1df..dc4b2e7d 100644
--- a/docs/docs-api/EasyPlplot/EasyPlplot_test_1.md
+++ b/docs/docs-api/EasyPlplot/EasyPlplot_test_1.md
@@ -23,12 +23,12 @@ PROGRAM main
!!! note ""
```fortran
- n = 1000
- do ii = 1, n
- call showProgress( "debug-1", real(ii, kind=DFP)/n )
- end do
+n = 1000
+do ii = 1, n
+ call showProgress( "debug-1", real(ii, kind=DFP)/n )
+end do
```
```fortran
END PROGRAM main
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/EasyPlplot/EasyPlplot_test_2.md b/docs/docs-api/EasyPlplot/EasyPlplot_test_2.md
index 0a25b632..78697349 100644
--- a/docs/docs-api/EasyPlplot/EasyPlplot_test_2.md
+++ b/docs/docs-api/EasyPlplot/EasyPlplot_test_2.md
@@ -22,10 +22,10 @@ PROGRAM main
```
```fortran
- call setup(device='svg', fileName='media/logo-%n.svg', &
- & figSize=[600, 500])
- call makeLogo
- call show()
+call setup(device='svg', fileName='media/logo-%n.svg', &
+ & figSize=[600, 500])
+call makeLogo
+call show()
```
```fortran
@@ -54,4 +54,4 @@ PROGRAM main
```fortran
END PROGRAM main
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/EigenUtility/GetSymEigenJacobi.md b/docs/docs-api/EigenUtility/GetSymEigenJacobi.md
index 08b0a2dd..c6edf07a 100644
--- a/docs/docs-api/EigenUtility/GetSymEigenJacobi.md
+++ b/docs/docs-api/EigenUtility/GetSymEigenJacobi.md
@@ -3,7 +3,7 @@
This subroutine computes all eigenvalues and eigenvectors of a real symmetric N × N matrix `Mat`.
:::note Reference
- The algorithm is direct implementation of Numerical Reciepe in Fortran, Page 1225
+The algorithm is direct implementation of Numerical Reciepe in Fortran, Page 1225
:::
import Tabs from '@theme/Tabs';
diff --git a/docs/docs-api/EigenUtility/SymEigenValues.md b/docs/docs-api/EigenUtility/SymEigenValues.md
index e37aa369..0a5a126d 100644
--- a/docs/docs-api/EigenUtility/SymEigenValues.md
+++ b/docs/docs-api/EigenUtility/SymEigenValues.md
@@ -7,7 +7,7 @@ This function calculates eigenvalues of a symmetric matrix.
- For `n=2` it calls [SymEigenValues2y2](SymEigenValues2by2.md)
- For `n=3` it calls [SymEigenValues3by3](SymEigenValues3by3.md)
- For `n>=4` it calls `SYEV` routine from Lapack95
-:::
+ :::
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
diff --git a/docs/docs-api/EigenUtility/_GetSymEigenJacobi_test_1.md b/docs/docs-api/EigenUtility/_GetSymEigenJacobi_test_1.md
index 0b38aca0..4be9b579 100644
--- a/docs/docs-api/EigenUtility/_GetSymEigenJacobi_test_1.md
+++ b/docs/docs-api/EigenUtility/_GetSymEigenJacobi_test_1.md
@@ -6,37 +6,37 @@ USE easifemBase
```
```fortran
- REAL( DFP ), ALLOCATABLE :: eigenValues(:), eigenVectors(:, :), mat(:,:), exact(:)
- REAL( DFP ), PARAMETER :: tol= 1.0E-2
+REAL( DFP ), ALLOCATABLE :: eigenValues(:), eigenVectors(:, :), mat(:,:), exact(:)
+REAL( DFP ), PARAMETER :: tol= 1.0E-2
```
Test 1
```fortran
- mat =RESHAPE( &
- [ 1.96, -6.49, -0.47, -7.20, -0.65, &
- & -6.49, 3.80, -6.39, 1.50, -6.34, &
- & -0.47,-6.39, 4.17, -1.51, 2.67, &
- & -7.20, 1.50,-1.51, 5.70, 1.80, &
- & -0.65,-6.34, 2.67, 1.80,-7.10 &
- ], [5,5])
- !!
- CALL Reallocate(eigenVectors, SIZE(mat,1), SIZE(mat,2))
- CALL Reallocate(eigenValues, SIZE(mat,1))
- !!
- CALL GetSymEigenJacobi(&
- & mat=mat, &
- & eigenValues=eigenValues, &
- & eigenVectors=eigenVectors, &
- & maxIter=SIZE(mat,1))
- !!
- exact = [-11.07, -6.23, 0.86, 8.87, 16.09]
- !!
- CALL OK( ALL(SOFTEQ(eigenValues, exact, tol)), "")
- !!
- CALL Display(MdEncode(eigenValues), "eigenValues=")
- !!
- CALL Display(MdEncode(eigenVectors), "eigenVectors=")
+mat =RESHAPE( &
+ [ 1.96, -6.49, -0.47, -7.20, -0.65, &
+ & -6.49, 3.80, -6.39, 1.50, -6.34, &
+ & -0.47,-6.39, 4.17, -1.51, 2.67, &
+ & -7.20, 1.50,-1.51, 5.70, 1.80, &
+ & -0.65,-6.34, 2.67, 1.80,-7.10 &
+ ], [5,5])
+!!
+CALL Reallocate(eigenVectors, SIZE(mat,1), SIZE(mat,2))
+CALL Reallocate(eigenValues, SIZE(mat,1))
+!!
+CALL GetSymEigenJacobi(&
+ & mat=mat, &
+ & eigenValues=eigenValues, &
+ & eigenVectors=eigenVectors, &
+ & maxIter=SIZE(mat,1))
+!!
+exact = [-11.07, -6.23, 0.86, 8.87, 16.09]
+!!
+CALL OK( ALL(SOFTEQ(eigenValues, exact, tol)), "")
+!!
+CALL Display(MdEncode(eigenValues), "eigenValues=")
+!!
+CALL Display(MdEncode(eigenVectors), "eigenVectors=")
```
Results
@@ -44,7 +44,7 @@ Results
Eigenvalues=
| | | | | |
-|-------------|----------|----------|----------|----------|
+| ----------- | -------- | -------- | -------- | -------- |
| 0.29807 | -0.48964 | -0.40262 | -0.37448 | -0.60751 |
| 0.5078 | 0.60526 | 0.40659 | -0.35717 | -0.28797 |
| 8.16062E-02 | -0.39915 | 0.65997 | 0.50076 | -0.38432 |
diff --git a/docs/docs-api/EigenUtility/_GetSymEigenValues__test_1.md b/docs/docs-api/EigenUtility/_GetSymEigenValues__test_1.md
index c1c3b277..7849102e 100644
--- a/docs/docs-api/EigenUtility/_GetSymEigenValues__test_1.md
+++ b/docs/docs-api/EigenUtility/_GetSymEigenValues__test_1.md
@@ -12,30 +12,30 @@ USE easifemBase
```
```fortran
- REAL( DFP ), ALLOCATABLE :: mat0(:,:), mat(:,:), w(:), exact(:)
- REAL( DFP ), PARAMETER :: tol= 1.0E-2
+REAL( DFP ), ALLOCATABLE :: mat0(:,:), mat(:,:), w(:), exact(:)
+REAL( DFP ), PARAMETER :: tol= 1.0E-2
```
!!! note "Test-1"
```fortran
- mat =RESHAPE( &
- [ 1.96, -6.49, -0.47, -7.20, -0.65, &
- & -6.49, 3.80, -6.39, 1.50, -6.34, &
- & -0.47,-6.39, 4.17, -1.51, 2.67, &
- & -7.20, 1.50,-1.51, 5.70, 1.80, &
- & -0.65,-6.34, 2.67, 1.80,-7.10 &
- ], [5,5])
- mat0=mat
- !!
- CALL Reallocate(w, SIZE(mat,1))
- CALL GetSymEigenValues_(mat=mat, eigenValues=w)
- !!
- exact = [-11.07, -6.23, 0.86, 8.87, 16.09]
- !!
- CALL OK( ALL(SOFTEQ(w, exact, tol)), "")
- !!
- CALL Display(MdEncode(ABS(mat0-mat)), "mat0-mat=")
+mat =RESHAPE( &
+ [ 1.96, -6.49, -0.47, -7.20, -0.65, &
+ & -6.49, 3.80, -6.39, 1.50, -6.34, &
+ & -0.47,-6.39, 4.17, -1.51, 2.67, &
+ & -7.20, 1.50,-1.51, 5.70, 1.80, &
+ & -0.65,-6.34, 2.67, 1.80,-7.10 &
+ ], [5,5])
+mat0=mat
+!!
+CALL Reallocate(w, SIZE(mat,1))
+CALL GetSymEigenValues_(mat=mat, eigenValues=w)
+!!
+exact = [-11.07, -6.23, 0.86, 8.87, 16.09]
+!!
+CALL OK( ALL(SOFTEQ(w, exact, tol)), "")
+!!
+CALL Display(MdEncode(ABS(mat0-mat)), "mat0-mat=")
```
:::caution
@@ -43,13 +43,13 @@ At output `mat` is changed, the difference is given below.
`mat0-mat=`
| | | | | |
-|---------|--------|---------|---------|--------|
+| ------- | ------ | ------- | ------- | ------ |
| 0.79415 | 10.448 | 0.47892 | 7.5634 | 0.5773 |
| 0 | 1.5357 | 2.4282 | 1.5005 | 5.6309 |
| 0 | 0 | 1.599 | 7.8722 | 2.3714 |
| 0 | 0 | 0 | 0.85741 | 8.9405 |
| 0 | 0 | 0 | 0 | 0 |
-:::
+| ::: | | | | |
```fortran
END PROGRAM main
diff --git a/docs/docs-api/EigenUtility/_SymEigenValues2by2_test_1.md b/docs/docs-api/EigenUtility/_SymEigenValues2by2_test_1.md
index e1f7c7ae..178e495e 100644
--- a/docs/docs-api/EigenUtility/_SymEigenValues2by2_test_1.md
+++ b/docs/docs-api/EigenUtility/_SymEigenValues2by2_test_1.md
@@ -4,38 +4,38 @@ USE easifemBase
```
```fortran
- REAL( DFP ) :: mat(2,2), w(2), e, exact(2)
- REAL( DFP ), PARAMETER :: tol= 1.0E-12
+REAL( DFP ) :: mat(2,2), w(2), e, exact(2)
+REAL( DFP ), PARAMETER :: tol= 1.0E-12
```
Test 1
```fortran
- e = 0.5
- exact = [1.0_DFP - e, 1.0_DFP + 4.0_DFP*e]
- mat(1,1) = 1+3*e
- mat(1,2) = 2*e
- mat(2,1) = 2*e
- mat(2,2) = 1
- !!
- w = SymEigenValues2by2(mat)
- !!
- CALL OK( ALL(SOFTEQ(w, exact, tol)), "e = "//tostring(e))
+e = 0.5
+exact = [1.0_DFP - e, 1.0_DFP + 4.0_DFP*e]
+mat(1,1) = 1+3*e
+mat(1,2) = 2*e
+mat(2,1) = 2*e
+mat(2,2) = 1
+!!
+w = SymEigenValues2by2(mat)
+!!
+CALL OK( ALL(SOFTEQ(w, exact, tol)), "e = "//tostring(e))
```
Test 2
```fortran
- e = 0.01
- exact = [1.0_DFP - e, 1.0_DFP + 4.0_DFP*e]
- mat(1,1) = 1+3*e
- mat(1,2) = 2*e
- mat(2,1) = 2*e
- mat(2,2) = 1
- !!
- w = SymEigenValues2by2(mat)
- !!
- CALL OK( ALL(SOFTEQ(w, exact, tol)), "e = "//tostring(e))
+e = 0.01
+exact = [1.0_DFP - e, 1.0_DFP + 4.0_DFP*e]
+mat(1,1) = 1+3*e
+mat(1,2) = 2*e
+mat(2,1) = 2*e
+mat(2,2) = 1
+!!
+w = SymEigenValues2by2(mat)
+!!
+CALL OK( ALL(SOFTEQ(w, exact, tol)), "e = "//tostring(e))
```
```fortran
diff --git a/docs/docs-api/EigenUtility/_SymEigenValues3by3_test_1.md b/docs/docs-api/EigenUtility/_SymEigenValues3by3_test_1.md
index fd2ee142..2cc807e6 100644
--- a/docs/docs-api/EigenUtility/_SymEigenValues3by3_test_1.md
+++ b/docs/docs-api/EigenUtility/_SymEigenValues3by3_test_1.md
@@ -8,20 +8,20 @@ USE easifemBase
```
```fortran
- REAL( DFP ) :: mat(3,3), w(3), exact(3)
- REAL( DFP ), PARAMETER :: tol= 1.0E-5
+REAL( DFP ) :: mat(3,3), w(3), exact(3)
+REAL( DFP ), PARAMETER :: tol= 1.0E-5
```
Test-1
```fortran
- exact = [-5.51082, 3.65928, 5.85154]
- mat = RESHAPE([-2._DFP,-4._DFP,2._DFP,-4._DFP,1._DFP,2._DFP,2._DFP,2._DFP,5._DFP], [3,3])
- !!
- w = SymEigenValues(mat)
- CALL Display(w, "w=")
- !!
- CALL OK( ALL(SOFTEQ(w, exact, tol)), "")
+exact = [-5.51082, 3.65928, 5.85154]
+mat = RESHAPE([-2._DFP,-4._DFP,2._DFP,-4._DFP,1._DFP,2._DFP,2._DFP,2._DFP,5._DFP], [3,3])
+!!
+w = SymEigenValues(mat)
+CALL Display(w, "w=")
+!!
+CALL OK( ALL(SOFTEQ(w, exact, tol)), "")
```
```fortran
diff --git a/docs/docs-api/ElemshapeData/Allocate.md b/docs/docs-api/ElemshapeData/Allocate.md
index 7a887db8..2af33460 100644
--- a/docs/docs-api/ElemshapeData/Allocate.md
+++ b/docs/docs-api/ElemshapeData/Allocate.md
@@ -20,4 +20,3 @@ MODULE PURE SUBROUTINE Allocate(obj, nsd, xidim, nns, nips)
!! number of integration points
END SUBROUTINE Allocate
```
-
diff --git a/docs/docs-api/ElemshapeData/BaseInterpolation.md b/docs/docs-api/ElemshapeData/BaseInterpolation.md
index ccef672c..7f8cfcf5 100644
--- a/docs/docs-api/ElemshapeData/BaseInterpolation.md
+++ b/docs/docs-api/ElemshapeData/BaseInterpolation.md
@@ -6,4 +6,3 @@ MODULE FUNCTION BaseInterpolation(childName) RESULT(Ans)
CLASS(BaseInterpolation_), POINTER :: ans
END FUNCTION BaseInterpolation
```
-
diff --git a/docs/docs-api/ElemshapeData/Deallocate.md b/docs/docs-api/ElemshapeData/Deallocate.md
index 8b0142bd..3b44198b 100644
--- a/docs/docs-api/ElemshapeData/Deallocate.md
+++ b/docs/docs-api/ElemshapeData/Deallocate.md
@@ -9,4 +9,3 @@ MODULE PURE SUBROUTINE Deallocate(obj)
CLASS(ElemshapeData_), INTENT(INOUT) :: obj
END SUBROUTINE Deallocate
```
-
diff --git a/docs/docs-api/ElemshapeData/Divergence.md b/docs/docs-api/ElemshapeData/Divergence.md
index d97d3628..cf2aecfc 100644
--- a/docs/docs-api/ElemshapeData/Divergence.md
+++ b/docs/docs-api/ElemshapeData/Divergence.md
@@ -17,4 +17,3 @@ MODULE PURE FUNCTION Divergence_2(obj, val) RESULT(Ans)
TYPE(FEVariable_) :: ans
END FUNCTION Divergence_2
```
-
diff --git a/docs/docs-api/ElemshapeData/GetDivergence.md b/docs/docs-api/ElemshapeData/GetDivergence.md
index ba8bc0ce..77fb8361 100644
--- a/docs/docs-api/ElemshapeData/GetDivergence.md
+++ b/docs/docs-api/ElemshapeData/GetDivergence.md
@@ -97,4 +97,3 @@ MODULE PURE SUBROUTINE getDivergence_8(obj, lg, val)
!! space time nodal values of scalar/vector/matrix
END SUBROUTINE getDivergence_8
```
-
diff --git a/docs/docs-api/ElemshapeData/GetHRGNParam.md b/docs/docs-api/ElemshapeData/GetHRGNParam.md
index 7499d2ac..49b19153 100644
--- a/docs/docs-api/ElemshapeData/GetHRGNParam.md
+++ b/docs/docs-api/ElemshapeData/GetHRGNParam.md
@@ -92,4 +92,3 @@ MODULE PURE SUBROUTINE GetHRGNParam(obj, h, val, opt)
INTEGER(I4B), OPTIONAL, INTENT(IN) :: opt
END SUBROUTINE GetHRGNParam
```
-
diff --git a/docs/docs-api/ElemshapeData/GetProjectionOfdNTdXt.md b/docs/docs-api/ElemshapeData/GetProjectionOfdNTdXt.md
index 7f6af855..0579557d 100644
--- a/docs/docs-api/ElemshapeData/GetProjectionOfdNTdXt.md
+++ b/docs/docs-api/ElemshapeData/GetProjectionOfdNTdXt.md
@@ -53,4 +53,3 @@ MODULE PURE SUBROUTINE GetProjectionOfdNTdXt(obj, cdNTdXt, val)
TYPE(FEVariable_), INTENT(IN) :: val
END SUBROUTINE GetProjectionOfdNTdXt
```
-
diff --git a/docs/docs-api/ElemshapeData/GetSUGN3Param.md b/docs/docs-api/ElemshapeData/GetSUGN3Param.md
index 71d615b6..2d66da45 100644
--- a/docs/docs-api/ElemshapeData/GetSUGN3Param.md
+++ b/docs/docs-api/ElemshapeData/GetSUGN3Param.md
@@ -71,4 +71,3 @@ MODULE PURE SUBROUTINE GetSUGN3Param_4(obj, tau, val, nu, h, opt)
!! currently, opt is not used, but it may be used in future
END SUBROUTINE GetSUGN3Param_4
```
-
diff --git a/docs/docs-api/ElemshapeData/GetSUGN3Param_Takizawa2018.md b/docs/docs-api/ElemshapeData/GetSUGN3Param_Takizawa2018.md
index da99b282..b78b7acf 100644
--- a/docs/docs-api/ElemshapeData/GetSUGN3Param_Takizawa2018.md
+++ b/docs/docs-api/ElemshapeData/GetSUGN3Param_Takizawa2018.md
@@ -91,4 +91,3 @@ MODULE PURE SUBROUTINE GetSUGN3Param_Takizawa2018_4(obj, tau, val, &
!! currently, opt is not used, but it may be used in future
END SUBROUTINE GetSUGN3Param_Takizawa2018_4
```
-
diff --git a/docs/docs-api/ElemshapeData/GetSUPGParam.md b/docs/docs-api/ElemshapeData/GetSUPGParam.md
index 6e45f176..6186bc59 100644
--- a/docs/docs-api/ElemshapeData/GetSUPGParam.md
+++ b/docs/docs-api/ElemshapeData/GetSUPGParam.md
@@ -268,4 +268,3 @@ MODULE PURE SUBROUTINE GetSUPGParam(obj, tau, c, val, nu, k, &
!! futuristic options
END SUBROUTINE GetSUPGParam
```
-
diff --git a/docs/docs-api/ElemshapeData/H1Div_Hermit.md b/docs/docs-api/ElemshapeData/H1Div_Hermit.md
index d8af7358..007b7109 100644
--- a/docs/docs-api/ElemshapeData/H1Div_Hermit.md
+++ b/docs/docs-api/ElemshapeData/H1Div_Hermit.md
@@ -12,4 +12,3 @@ END SUBROUTINE H1Div_Hermit
```
This method belongs to the generic method [[#Initiate]].
-
diff --git a/docs/docs-api/ElemshapeData/H1_Hermit.md b/docs/docs-api/ElemshapeData/H1_Hermit.md
index 47b5fd8d..f7f66f67 100644
--- a/docs/docs-api/ElemshapeData/H1_Hermit.md
+++ b/docs/docs-api/ElemshapeData/H1_Hermit.md
@@ -12,4 +12,3 @@ END SUBROUTINE H1_Hermit
```
This method belongs to the generic method [[#Initiate]].
-
diff --git a/docs/docs-api/ElemshapeData/H1_Hierarchy.md b/docs/docs-api/ElemshapeData/H1_Hierarchy.md
index 4b0013e6..f5f2ba65 100644
--- a/docs/docs-api/ElemshapeData/H1_Hierarchy.md
+++ b/docs/docs-api/ElemshapeData/H1_Hierarchy.md
@@ -12,4 +12,3 @@ END SUBROUTINE H1_Hierarchy
```
This method belongs to the generic method [[#Initiate]].
-
diff --git a/docs/docs-api/ElemshapeData/H1_Lagrange.md b/docs/docs-api/ElemshapeData/H1_Lagrange.md
index a824241a..fe358b9e 100644
--- a/docs/docs-api/ElemshapeData/H1_Lagrange.md
+++ b/docs/docs-api/ElemshapeData/H1_Lagrange.md
@@ -12,4 +12,3 @@ END SUBROUTINE H1_Lagrange
```
This method belongs to the generic method [[#Initiate]].
-
diff --git a/docs/docs-api/ElemshapeData/LocalDivergence.md b/docs/docs-api/ElemshapeData/LocalDivergence.md
index 15ed63ac..134b37b6 100644
--- a/docs/docs-api/ElemshapeData/LocalDivergence.md
+++ b/docs/docs-api/ElemshapeData/LocalDivergence.md
@@ -15,4 +15,3 @@ MODULE PURE FUNCTION LocalDivergence(obj, val) RESULT(Ans)
TYPE(FEVariable_) :: ans
END FUNCTION LocalDivergence
```
-
diff --git a/docs/docs-api/ElemshapeData/SpatialGradient.md b/docs/docs-api/ElemshapeData/SpatialGradient.md
index 3d5a2c2c..c2bad113 100644
--- a/docs/docs-api/ElemshapeData/SpatialGradient.md
+++ b/docs/docs-api/ElemshapeData/SpatialGradient.md
@@ -15,4 +15,3 @@ MODULE PURE FUNCTION SpatialGradient(obj, val) RESULT(Ans)
TYPE(FEVariable_) :: ans
END FUNCTION SpatialGradient
```
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_1.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_1.md
index 2dfc2109..cc66c5aa 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_1.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_1.md
@@ -9,9 +9,9 @@ This example demonstrates how initiates an instance of [[ElemshapeData_]] for [[
## Usage
!!! note ""
- Import modules and declare variables
+Import modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -23,29 +23,29 @@ PROGRAM main
```
!!! note ""
- Create an instance of [[ReferenceLine_]] element.
+Create an instance of [[ReferenceLine_]] element.
```fortran
- refelem = ReferenceLine( nsd = nsd )
+refelem = ReferenceLine( nsd = nsd )
```
!!! note ""
- Create an instance of [[QuadraturePoint_]]. Here we are creating Gauss-Legendre Quadrature points.
+Create an instance of [[QuadraturePoint_]]. Here we are creating Gauss-Legendre Quadrature points.
```fortran
- quad = GaussLegendreQuadrature( refelem = refelem, order = order )
+quad = GaussLegendreQuadrature( refelem = refelem, order = order )
```
!!! note ""
- Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
+Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
+Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape function used for interpolating the nodal coordinate
@@ -53,14 +53,14 @@ PROGRAM main
- In the case of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Display the content on the terminal.
+Display the content on the terminal.
```fortran
- CALL Display( obj, "obj" )
+CALL Display( obj, "obj" )
```
??? example "Results"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_10.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_10.md
index 7c1d6b7a..be7db0cf 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_10.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_10.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_11.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_11.md
index 34d80e80..4aec1afc 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_11.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_11.md
@@ -11,9 +11,9 @@ This example is build upon example [[_ElemshapeData_test_3]], so make sure you f
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -26,29 +26,29 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceTriangle_]]
+Initiate an instance of [[ReferenceTriangle_]]
```fortran
- refelem = ReferenceTriangle( nsd = nsd )
+refelem = ReferenceTriangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
+Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape FUNCTION used for interpolating the nodal coordinate
@@ -56,14 +56,14 @@ PROGRAM main
- In the CASE of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Display the content on terminal.
+Display the content on terminal.
```fortran
- CALL Display( obj, "obj" )
+CALL Display( obj, "obj" )
```
??? example "Results"
@@ -120,11 +120,11 @@ PROGRAM main
0.00000
!!! note ""
- Now let us CALL the GetProjectionOfdNdXt method.
+Now let us CALL the GetProjectionOfdNdXt method.
```fortran
- CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=[1.0_DFP, 1.0_DFP])
- CALL Display(cdNdXt, "cdNdXt = ")
+CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=[1.0_DFP, 1.0_DFP])
+CALL Display(cdNdXt, "cdNdXt = ")
```
??? example "Results"
@@ -137,7 +137,6 @@ PROGRAM main
1.00000
```
-
```fortran
CALL DEALLOCATE( obj )
END PROGRAM main
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_12.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_12.md
index 45715b5e..043e0064 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_12.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_12.md
@@ -1,4 +1,4 @@
-This example demonstrates how to USE the [[ElemshapeData_#GetProjectionOfdNdXt]] `GetProjectionOfdNdXt` method.
+This example demonstrates how to USE the [[ElemshapeData_#GetProjectionOfdNdXt]] `GetProjectionOfdNdXt` method.
## Modules and classes
@@ -9,9 +9,9 @@ This example demonstrates how to USE the [[ElemshapeData_#GetProjectionOfdNdXt]]
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -26,30 +26,30 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceTriangle_]]
+Initiate an instance of [[ReferenceTriangle_]]
```fortran
- refelem = ReferenceTriangle( nsd = nsd )
+refelem = ReferenceTriangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
+Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape FUNCTION used for interpolating the nodal coordinate
@@ -57,14 +57,14 @@ PROGRAM main
- In the CASE of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Display the content on terminal.
+Display the content on terminal.
```fortran
- CALL Display( obj, "obj" )
+CALL Display( obj, "obj" )
```
??? example "Results"
@@ -121,13 +121,13 @@ PROGRAM main
0.00000
!!! note ""
- Now let us CALL the GetProjectionOfdNdXt method.
+Now let us CALL the GetProjectionOfdNdXt method.
```fortran
- fevar = NodalVariable([1.0_DFP, 1.0_DFP], TypeFEVariableVector, &
- & typeFEVariableConstant)
- CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=fevar)
- CALL Display(cdNdXt, "cdNdXt = ")
+fevar = NodalVariable([1.0_DFP, 1.0_DFP], TypeFEVariableVector, &
+ & typeFEVariableConstant)
+CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=fevar)
+CALL Display(cdNdXt, "cdNdXt = ")
```
??? example "Results"
@@ -143,11 +143,11 @@ PROGRAM main
Let us try another test.
```fortran
- fevar = NodalVariable(reshape([(1.0_DFP, ii=1,6)], [2,3]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace)
- CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=fevar)
- CALL Display(cdNdXt, "cdNdXt = ")
+fevar = NodalVariable(reshape([(1.0_DFP, ii=1,6)], [2,3]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace)
+CALL GetProjectionOfdNdXt(obj=obj, cdNdXt=cdNdXt, val=fevar)
+CALL Display(cdNdXt, "cdNdXt = ")
```
??? example "Results"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_13.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_13.md
index 2a54cbfd..6f1511f7 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_13.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_13.md
@@ -7,7 +7,7 @@ $$
$$
$$
-\nabla \Vert mathbf{v} \Vert / \Vert (\nabla \Vert mathbf{v} \Vert) \Vert
+\nabla \Vert mathbf{v} \Vert / \Vert (\nabla \Vert mathbf{v} \Vert) \Vert
$$
## Modules and classes
@@ -19,9 +19,9 @@ $$
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -42,30 +42,30 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
+Now we PASS the information about the physical element. The code shown below will complete the information of the shape FUNCTION in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape FUNCTION used for interpolating the nodal coordinate
@@ -73,50 +73,47 @@ PROGRAM main
- In the CASE of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Now let us CALL the GetUnitNormal method.
+Now let us CALL the GetUnitNormal method.
```fortran
- CALL GetUnitNormal(obj=obj, r=r, val=v1)
- CALL Display(r, "r = ")
+CALL GetUnitNormal(obj=obj, r=r, val=v1)
+CALL Display(r, "r = ")
```
??? example "Results"
-
!!! note ""
- Getnormal for vector
+Getnormal for vector
```fortran
- CALL GetUnitNormal(obj=obj, r=r, val=v2)
- CALL Display(r, "r = ")
+CALL GetUnitNormal(obj=obj, r=r, val=v2)
+CALL Display(r, "r = ")
```
!!! note ""
- GetUnitNormal for [[FEVariable_]]
+GetUnitNormal for [[FEVariable_]]
```fortran
- fevar = NodalVariable(v1, typeFEVariableScalar, typeFEVariableSpace)
- CALL GetUnitNormal(obj=obj, r=r, val=fevar)
- CALL Display(r, "r=")
+fevar = NodalVariable(v1, typeFEVariableScalar, typeFEVariableSpace)
+CALL GetUnitNormal(obj=obj, r=r, val=fevar)
+CALL Display(r, "r=")
```
!!! note ""
- GetUnitNormal for [[FEVariable_]]
+GetUnitNormal for [[FEVariable_]]
```fortran
- fevar = NodalVariable(v2, typeFEVariableVector, typeFEVariableSpace)
- CALL GetUnitNormal(obj=obj, r=r, val=fevar)
- CALL Display(r, "r=")
+fevar = NodalVariable(v2, typeFEVariableVector, typeFEVariableSpace)
+CALL GetUnitNormal(obj=obj, r=r, val=fevar)
+CALL Display(r, "r=")
```
-
!!! settings "Cleanup"
-
```fortran
CALL DEALLOCATE( obj )
END PROGRAM main
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_14.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_14.md
index 326f0d21..0e028b5c 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_14.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_14.md
@@ -35,9 +35,9 @@ $$
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -57,41 +57,41 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- GetUnitNormal for [[FEVariable_]]
+GetUnitNormal for [[FEVariable_]]
```fortran
- c = NodalVariable([1.0_DFP, 0.0_DFP], typeFEVariableVector, &
- & typeFEVariableConstant)
- nu = NodalVariable(1.0_DFP, typeFEVariableScalar, &
- & typeFEVariableConstant)
- val = NodalVariable(v1, typeFEVariableScalar, typeFEVariableSpace )
- CALL GetSUPGParam(elemsd=obj, tau=tau, c=c, val=val, nu=nu, &
- & dt=0.0_DFP, opt=1)
- CALL Display( tau, "tau=")
+c = NodalVariable([1.0_DFP, 0.0_DFP], typeFEVariableVector, &
+ & typeFEVariableConstant)
+nu = NodalVariable(1.0_DFP, typeFEVariableScalar, &
+ & typeFEVariableConstant)
+val = NodalVariable(v1, typeFEVariableScalar, typeFEVariableSpace )
+CALL GetSUPGParam(elemsd=obj, tau=tau, c=c, val=val, nu=nu, &
+ & dt=0.0_DFP, opt=1)
+CALL Display( tau, "tau=")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_15.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_15.md
index d20fac8b..249ed098 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_15.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_15.md
@@ -10,9 +10,9 @@ This example demonstrates how initiates an instance of [[ElemshapeData_]] for [[
## Usage
!!! note ""
- Import modules and declare variables
+Import modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -27,32 +27,32 @@ PROGRAM main
```
!!! note ""
- Create an instance of [[ReferenceLine_]] [[ReferenceQuadrangle_]] element.
+Create an instance of [[ReferenceLine_]] [[ReferenceQuadrangle_]] element.
```fortran
- refelem_line = ReferenceLine( nsd = nsd )
- refelem_quad = ReferenceQuadrangle( nsd = nsd )
+refelem_line = ReferenceLine( nsd = nsd )
+refelem_quad = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Create an instance of [[QuadraturePoint_]] on the [[ReferenceLine_]]. Here we are creating Gauss-Legendre Quadrature points.
+Create an instance of [[QuadraturePoint_]] on the [[ReferenceLine_]]. Here we are creating Gauss-Legendre Quadrature points.
```fortran
- quad = GaussLegendreQuadrature( refelem = refelem_line, order = order )
+quad = GaussLegendreQuadrature( refelem = refelem_line, order = order )
```
!!! note ""
- Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
+Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
```fortran
- CALL Initiate( obj = elemsd_line, quad = quad, refelem = refelem_line, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Initiate( obj = elemsd_quad, quad = quad, refelem = refelem_quad, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = elemsd_line, quad = quad, refelem = refelem_line, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = elemsd_quad, quad = quad, refelem = refelem_quad, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
+Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
- `val`: is the nodal coordinates of the element
- `N`: is the shape function used for interpolating the nodal coordinate
@@ -60,15 +60,15 @@ PROGRAM main
- In the case of isoparameteric coordinate sysmtem, `N` and `dNdXi` is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=elemsd_line, val=node_line, N=elemsd_line%N, dNdXi=elemsd_line%dNdXi )
- CALL Set( obj=elemsd_quad, val=node_quad, N=elemsd_quad%N, dNdXi=elemsd_quad%dNdXi )
+CALL Set( obj=elemsd_line, val=node_line, N=elemsd_line%N, dNdXi=elemsd_line%dNdXi )
+CALL Set( obj=elemsd_quad, val=node_quad, N=elemsd_quad%N, dNdXi=elemsd_quad%dNdXi )
```
!!! note ""
- Display the content on the terminal.
+Display the content on the terminal.
```fortran
- CALL Display( elemsd_line, "elemsd_line: " )
+CALL Display( elemsd_line, "elemsd_line: " )
```
??? example "Results"
@@ -145,7 +145,6 @@ PROGRAM main
As you can see the value of $\frac{dN}{dXt}$ is zero, we want to calculate these values using cell element.
-
!!! settings "Cleanup"
```fortran
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_2.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_2.md
index 548052e2..8885d060 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_2.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_2.md
@@ -9,9 +9,9 @@ This example demonstrates how initiates an instance of [[ElemshapeData_]] for [[
## Usage
!!! note ""
- Import modules and declare variables
+Import modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -23,29 +23,29 @@ PROGRAM main
```
!!! note ""
- Create an instance of [[ReferenceLine_]] element of order 2. That is `Line3` element.
+Create an instance of [[ReferenceLine_]] element of order 2. That is `Line3` element.
```fortran
- refelem = ReferenceLine( nsd = nsd )
+refelem = ReferenceLine( nsd = nsd )
```
!!! note ""
- Create an instance of [[QuadraturePoint_]]. Here we are creating Gauss-Legendre Quadrature points.
+Create an instance of [[QuadraturePoint_]]. Here we are creating Gauss-Legendre Quadrature points.
```fortran
- quad = GaussLegendreQuadrature( refelem = refelem, order = order )
+quad = GaussLegendreQuadrature( refelem = refelem, order = order )
```
!!! note ""
- Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
+Let us initiate an instance of [[ElemshapeData_]]. The code shown below only initiates the local shape function data.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
+Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape function used for interpolating the nodal coordinate
@@ -53,17 +53,17 @@ PROGRAM main
- In the case of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
!!! note ""
- Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
+Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
```fortran
- CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Display the content on the terminal.
+Display the content on the terminal.
```fortran
- CALL Display( obj, "obj" )
+CALL Display( obj, "obj" )
```
??? example "Results"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_21.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_21.md
index 4ee00f09..e6b107ec 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_21.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_21.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetInterpolation` method for scalar va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,63 +30,63 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetInterpolation"
- Scalar variable, constant.
+Scalar variable, constant.
```fortran
- var1 = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "scalar+constant")
+var1 = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "scalar+constant")
```
```fortran
- var1 = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(Interpolation(obj=obj, val=var1), "scalar+constant")
+var1 = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(Interpolation(obj=obj, val=var1), "scalar+constant")
```
!!! note "GetInterpolation"
- Scalar variable, space.
+Scalar variable, space.
```fortran
- var1 = NodalVariable( ones(4, 1.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "scalar+space")
+var1 = NodalVariable( ones(4, 1.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "scalar+space")
```
```fortran
- var1 = NodalVariable( ones(4, 1.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(Interpolation(obj=obj, val=var1), "scalar+space")
+var1 = NodalVariable( ones(4, 1.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(Interpolation(obj=obj, val=var1), "scalar+space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_22.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_22.md
index 4a014ac7..68a4d5cd 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_22.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_22.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetInterpolation` method for vector va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,52 +30,52 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetInterpolation"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2, 1.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "Vector + constant")
- CALL Display( Interpolation(obj, var1), "Vector + constant")
+var1 = NodalVariable( ones(2, 1.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "Vector + constant")
+CALL Display( Interpolation(obj, var1), "Vector + constant")
```
!!! note "GetInterpolation"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
- & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "Vector + space")
- CALL Display( Interpolation(obj, var1), "Vector + space")
+var1 = NodalVariable( reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
+ & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "Vector + space")
+CALL Display( Interpolation(obj, var1), "Vector + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_23.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_23.md
index 6c323b02..a76ec5d3 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_23.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_23.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetInterpolation` method for matrix va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,51 +30,51 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetInterpolation"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2,2, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "Vector + constant")
- CALL Display( interpolation(obj, var1), "Vector + constant")
+var1 = NodalVariable( ones(2,2, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "Vector + constant")
+CALL Display( interpolation(obj, var1), "Vector + constant")
```
!!! note "GetInterpolation"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
- CALL Display( var2, "Vector + space")
- CALL Display( interpolation(obj, var1), "Vector + space")
+var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL GetInterpolation(obj=obj, interpol=var2, val=var1)
+CALL Display( var2, "Vector + space")
+CALL Display( interpolation(obj, var1), "Vector + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_3.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_3.md
index b35dceae..8ef5892e 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_3.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_3.md
@@ -9,9 +9,9 @@ This example demonstrates how initiates an instance of [[ElemshapeData_]] for [[
## Usage
!!! note ""
- Import modules and declare variables
+Import modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -23,29 +23,29 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceTriangle_]]
+Initiate an instance of [[ReferenceTriangle_]]
```fortran
- refelem = ReferenceTriangle( nsd = nsd )
+refelem = ReferenceTriangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- quad = GaussLegendreQuadrature( refelem = refelem, order = order )
+quad = GaussLegendreQuadrature( refelem = refelem, order = order )
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below only initiates the local shape function data.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceTriangle_]]. The code shown below only initiates the local shape function data.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
```
!!! note ""
- Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
+Now we pass the information about the physical element. The code shown below will complete the information of the shape function in the physical element.
- val: is the nodal coordinates of the element
- N: is the shape function used for interpolating the nodal coordinate
@@ -53,14 +53,14 @@ PROGRAM main
- In the case of isoparameteric coordinate sysmtem, N and dNdXi is same as those stored inside `obj` ([[ElemshapeData_]]).
```fortran
- CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
+CALL Set( obj=obj, val=xij(1:nsd, :), N=obj%N, dNdXi=obj%dNdXi )
```
!!! note ""
- Display the content on terminal.
+Display the content on terminal.
```fortran
- CALL Display( obj, "obj" )
+CALL Display( obj, "obj" )
```
??? example "Results"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_31.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_31.md
index 3f1f6f25..ad0af5d4 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_31.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_31.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetLocalGradient` method for scalar va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,51 +30,51 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetLocalGradient"
- Scalar variable, constant.
+Scalar variable, constant.
```fortran
- var1 = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "scalar+constant")
- CALL Display(LocalGradient(obj=obj, val=var1), "scalar+constant")
+var1 = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "scalar+constant")
+CALL Display(LocalGradient(obj=obj, val=var1), "scalar+constant")
```
!!! note "GetLocalGradient"
- Scalar variable, space.
+Scalar variable, space.
```fortran
- var1 = NodalVariable( ones(4, 1.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "scalar+space")
- CALL Display(LocalGradient(obj=obj, val=var1), "scalar+space")
+var1 = NodalVariable( ones(4, 1.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "scalar+space")
+CALL Display(LocalGradient(obj=obj, val=var1), "scalar+space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_32.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_32.md
index 6fbd8002..53e105cf 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_32.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_32.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetLocalGradient` method for vector va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,53 +30,53 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetLocalGradient"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2, 1.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "Vector + constant")
- CALL Display( LocalGradient(obj, var1), "Vector + constant")
+var1 = NodalVariable( ones(2, 1.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "Vector + constant")
+CALL Display( LocalGradient(obj, var1), "Vector + constant")
```
!!! note "GetLocalGradient"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( &
- & reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
- & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "Vector + space")
- CALL Display( LocalGradient(obj, var1), "Vector + space")
+var1 = NodalVariable( &
+ & reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
+ & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "Vector + space")
+CALL Display( LocalGradient(obj, var1), "Vector + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_33.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_33.md
index e8c6a295..b602eb62 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_33.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_33.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetLocalGradient` method for matrix va
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,51 +30,51 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetLocalGradient"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2,2, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "matrix+ constant")
- CALL Display( LocalGradient(obj, var1), "matrix + constant")
+var1 = NodalVariable( ones(2,2, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "matrix+ constant")
+CALL Display( LocalGradient(obj, var1), "matrix + constant")
```
!!! note "GetLocalGradient"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "matrix + space")
- CALL Display( LocalGradient(obj, var1), "matrix + space")
+var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL GetLocalGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "matrix + space")
+CALL Display( LocalGradient(obj, var1), "matrix + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_4.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_4.md
index cc0d52f9..390b9e27 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_4.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_4.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_41.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_41.md
index ab415ede..fb05bcd1 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_41.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_41.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetSpatialGradient` method for scalar
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,51 +30,51 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the local shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetSpatialGradient"
- Scalar variable, constant.
+Scalar variable, constant.
```fortran
- var1 = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "scalar+constant")
- CALL Display(SpatialGradient(obj=obj, val=var1), "scalar+constant")
+var1 = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "scalar+constant")
+CALL Display(SpatialGradient(obj=obj, val=var1), "scalar+constant")
```
!!! note "GetSpatialGradient"
- Scalar variable, space.
+Scalar variable, space.
```fortran
- var1 = NodalVariable( ones(4, 1.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "scalar+space")
- CALL Display(SpatialGradient(obj=obj, val=var1), "scalar+space")
+var1 = NodalVariable( ones(4, 1.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "scalar+space")
+CALL Display(SpatialGradient(obj=obj, val=var1), "scalar+space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_42.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_42.md
index 89fbe615..c5e676e2 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_42.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_42.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetSpatialGradient` method for vector
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,53 +30,53 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the Spatial shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the Spatial shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetSpatialGradient"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2, 1.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "Vector + constant")
- CALL Display( SpatialGradient(obj, var1), "Vector + constant")
+var1 = NodalVariable( ones(2, 1.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "Vector + constant")
+CALL Display( SpatialGradient(obj, var1), "Vector + constant")
```
!!! note "GetSpatialGradient"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( &
- & reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
- & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "Vector + space")
- CALL Display( SpatialGradient(obj, var1), "Vector + space")
+var1 = NodalVariable( &
+ & reshape([1.0_DFP, 1.0_DFP, 1.0_DFP, 1.0_DFP, &
+ & 1.0_DFP,1.0_DFP,1.0_DFP,1.0_DFP], [2,4]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "Vector + space")
+CALL Display( SpatialGradient(obj, var1), "Vector + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_43.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_43.md
index 3d479f4f..facc9b31 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_43.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_43.md
@@ -10,9 +10,9 @@ This example demonstrates how to USE the `GetSpatialGradient` method for matrix
## Usage
!!! note ""
- IMPORT modules and declare variables
+IMPORT modules and declare variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -30,51 +30,51 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ReferenceQuadrangle_]]
+Initiate an instance of [[ReferenceQuadrangle_]]
```fortran
- refelem = ReferenceQuadrangle( nsd = nsd )
+refelem = ReferenceQuadrangle( nsd = nsd )
```
!!! note ""
- Initiate Gauss-Legendre Quadrature points.
+Initiate Gauss-Legendre Quadrature points.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre')
+CALL Initiate(obj=quad, refelem=refelem, order=order, &
+ & quadratureType='GaussLegendre')
```
!!! note ""
- Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the Spatial shape FUNCTION DATA.
+Initiate an instance of [[ElemshapeData_]] for [[ReferenceQuadrangle_]]. The code shown below ONLY initiates the Spatial shape FUNCTION DATA.
```fortran
- CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
+CALL Initiate( obj = obj, quad = quad, refelem = refelem, &
+ & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+CALL Set( obj=obj, val=xij, N=obj%N, dNdXi=obj%dNdXi )
```
!!! note "GetSpatialGradient"
- Vector variable, constant.
+Vector variable, constant.
```fortran
- var1 = NodalVariable( ones(2,2, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "matrix+ constant")
- CALL Display( SpatialGradient(obj, var1), "matrix + constant")
+var1 = NodalVariable( ones(2,2, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "matrix+ constant")
+CALL Display( SpatialGradient(obj, var1), "matrix + constant")
```
!!! note "GetSpatialGradient"
- Vector variable, space.
+Vector variable, space.
```fortran
- var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
- CALL Display( var2, "matrix + space")
- CALL Display( SpatialGradient(obj, var1), "matrix + space")
+var1 = NodalVariable( ones(2,2, 4, 1.0_DFP), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL GetSpatialGradient(obj=obj, lg=var2, val=var1)
+CALL Display( var2, "matrix + space")
+CALL Display( SpatialGradient(obj, var1), "matrix + space")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_5.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_5.md
index 96f42324..4400c60f 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_5.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_5.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_6.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_6.md
index 21e8ac00..61a3dec6 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_6.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_6.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_7.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_7.md
index 4785c71a..6dfd1455 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_7.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_7.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_8.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_8.md
index bd40369e..15097bab 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_8.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_8.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_9.md b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_9.md
index 2befb857..5d73fdbd 100644
--- a/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_9.md
+++ b/docs/docs-api/ElemshapeData/examples/_ElemshapeData_test_9.md
@@ -9,4 +9,3 @@ This example demonstrates how to initiate an instance of [[ElemshapeData_]] for
- [[ReferenceTriangle_]]
## Usage
-
diff --git a/docs/docs-api/ExceptionHandler/ExceptionHandler_test_1.md b/docs/docs-api/ExceptionHandler/ExceptionHandler_test_1.md
index 7e795939..cd7fb05e 100644
--- a/docs/docs-api/ExceptionHandler/ExceptionHandler_test_1.md
+++ b/docs/docs-api/ExceptionHandler/ExceptionHandler_test_1.md
@@ -47,9 +47,9 @@ CALL e%raiseInformation(modName//"::"//myName//" - "// &
Result:
[💚 INFORMATION ✅]
- [🚀 Module ] ExceptionHandler_test_1.F90
- [🎇 Method ] main()
- [🔊 Message] Hello world
+[🚀 Module ] ExceptionHandler_test_1.F90
+[🎇 Method ] main()
+[🔊 Message] Hello world
- [[ExceptionHandler_#RaiseWarning]]
@@ -59,9 +59,9 @@ CALL e%raiseWarning(modName//"::"//myName//" - "// &
```
[⚠ WARNING ❗]
- [🚀 Module ] ExceptionHandler_test_1.F90
- [🎇 Method ] main()
- [🔊 Message] Hello world
+[🚀 Module ] ExceptionHandler_test_1.F90
+[🎇 Method ] main()
+[🔊 Message] Hello world
- [[ExceptionHandler_#RaiseDebug]]
@@ -71,9 +71,9 @@ CALL e%raiseDebug(modName//"::"//myName//" - "// &
```
[❓ DEBUG 🐛]
- [🚀 Module ] ExceptionHandler_test_1.F90
- [🎇 Method ] main()
- [🔊 Message] Hello world
+[🚀 Module ] ExceptionHandler_test_1.F90
+[🎇 Method ] main()
+[🔊 Message] Hello world
- [[ExceptionHandler_#RaiseError]]
@@ -83,9 +83,9 @@ CALL e%raiseError(modName//"::"//myName//" - "// &
```
[❎ ERROR ⛔]
- [🚀 Module ] ExceptionHandler_test_1.F90
- [🎇 Method ] main()
- [🔊 Message] Hello world
+[🚀 Module ] ExceptionHandler_test_1.F90
+[🎇 Method ] main()
+[🔊 Message] Hello world
```fortran
END PROGRAM main
diff --git a/docs/docs-api/EyeUtility/_Eye_test_1.md b/docs/docs-api/EyeUtility/_Eye_test_1.md
index 76891103..a50651f6 100644
--- a/docs/docs-api/EyeUtility/_Eye_test_1.md
+++ b/docs/docs-api/EyeUtility/_Eye_test_1.md
@@ -15,8 +15,8 @@ end program main
Eye (Real32) =
-| | | | | |
-| --- | --- | --- | --- | --- |
+| | | | | |
+| - | - | - | - | - |
| 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
@@ -25,8 +25,8 @@ Eye (Real32) =
Eye (Int32) =
-| | | | | |
-| --- | --- | --- | --- | --- |
+| | | | | |
+| - | - | - | - | - |
| 1 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
diff --git a/docs/docs-api/FEDOF/FEDOF_.md b/docs/docs-api/FEDOF/FEDOF_.md
index b20bb245..ca5a8320 100644
--- a/docs/docs-api/FEDOF/FEDOF_.md
+++ b/docs/docs-api/FEDOF/FEDOF_.md
@@ -1,20 +1,5 @@
---
sidebar_position: 2
-date: 2024-09-30
-update: 2024-09-30
-status: stable
-docs: done
-extpkgs: none
-category:
- - Domain
- - Mesh
- - ShapeFunctions
- - FEDOF
-tags:
- - Domain
- - Mesh
- - shapeFunctions
- - FEDOF
---
# Structure
@@ -112,23 +97,23 @@ It is true when `baseInterpolation` is Lagrange
### `tdof`
-Total number of degrees of freedom
+Total number of degrees of freedom in FEDOF object.
### `tNodes`
-Total number of nodes
+Total number of nodes in mesh.
### `tEdges`
-Total number of edges
+Total number of edges in mesh.
### `tFaces`
-Total number of faces
+Total number of faces in mesh.
### `tCells`
-Total number of cells
+Total number of cells in mesh.
### `maxTotalConnectivity`
diff --git a/docs/docs-api/FEDOF/ImportFromToml.md b/docs/docs-api/FEDOF/ImportFromToml.md
new file mode 100644
index 00000000..d76e3c31
--- /dev/null
+++ b/docs/docs-api/FEDOF/ImportFromToml.md
@@ -0,0 +1,57 @@
+---
+title: ImportFromToml
+---
+
+This method imports the configuration form a toml file and initiates the FEDOF instance.
+
+## Interface 1
+
+In this interface to import the data we specify the toml table and mesh.
+
+```fortran
+INTERFACE FEDOFImportFromToml
+ MODULE SUBROUTINE ImportFromToml(obj, table, mesh)
+ CLASS(FEDOF_), INTENT(INOUT) :: obj
+ TYPE(toml_table), INTENT(INOUT) :: table
+ CLASS(AbstractMesh_), TARGET, INTENT(IN) :: mesh
+ END SUBROUTINE ImportFromToml
+END INTERFACE FEDOFImportFromToml
+```
+
+## Interface 2
+
+In this interface to import the data we specify the name of the toml file (or provide an instance of TxtFile), name of the key (tomlName), and mesh.
+
+```fortran
+INTERFACE FEDOFImportFromToml
+ MODULE SUBROUTINE ImportFromToml(obj, tomlName, afile, &
+ filename, printToml, mesh)
+ CLASS(FEDOF_), INTENT(INOUT) :: obj
+ CHARACTER(*), INTENT(IN) :: tomlName
+ TYPE(TxtFile_), OPTIONAL, INTENT(INOUT) :: afile
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: filename
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: printToml
+ CLASS(AbstractMesh_), OPTIONAL, INTENT(IN) :: mesh
+ END SUBROUTINE ImportFromToml
+END INTERFACE FEDOFImportFromToml
+```
+
+## Template for Import for toml file
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./examples/toml/_ImportFromToml_test_1.toml';
+
+
{CodeSnippet}
+
+## Example 1
+
+import EXAMPLE47 from "./examples/_ImportFromToml_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE56 from "./examples/_ImportFromToml_test_2.md";
+
+
diff --git a/docs/docs-api/FEDOF/Initiate.md b/docs/docs-api/FEDOF/Initiate.md
index c2d842fd..a78bf878 100644
--- a/docs/docs-api/FEDOF/Initiate.md
+++ b/docs/docs-api/FEDOF/Initiate.md
@@ -4,7 +4,8 @@ sidebar_position: 4
# Initiate
-This method initiates an instance of `FEDOF`. There are several ways to initiate an instance of `FEDOF`.
+This method initiates an instance of `FEDOF`.
+There are several ways to initiate an instance of `FEDOF`.
## Interface 1
@@ -87,10 +88,7 @@ END INTERFACE
## Interface 4
This routine is similar to the interface 2, but the order of the element is defined for global element numbers.
-
-The number of rows in order is equal to 2, the first row contains the global element number the second row contains the order.
-
-This routine will make `order0(:)` from `order(:,:)` and call `Initiate2`.
+`order` is a two-dimensional array. The number of rows in order is equal to 2, the first row contains the global element number the second row contains the order. This routine will make `order0(:)` from `order(:,:)` and call `Initiate2`.
```fortran
INTERFACE
@@ -121,3 +119,48 @@ INTERFACE
END SUBROUTINE Initiate
END INTERFACE
```
+
+## Examples
+
+
+
+
+import EXAMPLE129 from "./examples/_Initiate_test_1.md";
+
+
+
+
+
+
+
+import EXAMPLE139 from "./examples/_Initiate_test_2.md";
+
+
+
+
+
+
+
+import EXAMPLE147 from "./examples/_Initiate_test_3.md";
+
+
+
+
+
+
+
+import EXAMPLE153 from "./examples/_Initiate_test_4.md";
+
+
+
+
+
+
+
+import EXAMPLE162 from "./examples/_Initiate_test_5.md";
+
+
+
+
+
+
diff --git a/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.F90 b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.F90
new file mode 100644
index 00000000..2c558dde
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.F90
@@ -0,0 +1,86 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Initiate FEDOF object by import from toml
+
+PROGRAM main
+USE FEDOF_Class
+USE FEDomain_Class
+USE AbstractMesh_Class
+USE HDF5File_Class
+USE Display_Method
+USE GlobalData
+USE Test_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+
+IMPLICIT NONE
+
+TYPE(FEDOF_) :: obj
+TYPE(FEDomain_) :: dom
+CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
+CHARACTER(*), PARAMETER :: filename = &
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
+TYPE(HDF5File_) :: meshfile
+INTEGER(I4B) :: found, want
+
+CALL e%setQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+CALL meshfile%Initiate(filename, mode="READ")
+CALL meshfile%OPEN()
+CALL dom%Initiate(meshfile, '')
+
+meshptr => dom%GetMeshPointer()
+
+CALL obj%ImportFromToml(tomlName="test1", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+!CALL fedof%Display("FEDOF:")
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes()
+CALL IS(found, want, "Total DOF (order=1): ")
+
+CALL obj%ImportFromToml(tomlName="test2", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + meshptr%GetTotalFaces() + 0*meshptr%GetTotalCells()
+CALL IS(found, want, "Total DOF (order=2): ")
+
+CALL obj%ImportFromToml(tomlName="test3", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + 2*meshptr%GetTotalFaces() + 1*meshptr%GetTotalCells()
+CALL IS(found, want, "Total DOF (order=3): ")
+
+CALL obj%ImportFromToml(tomlName="test4", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + 3*meshptr%GetTotalFaces() + 3*meshptr%GetTotalCells()
+CALL OK(found == want, "Total DOF (order=4): ")
+
+CALL obj%ImportFromToml(tomlName="test5", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+!CALL fedof%Display("FEDOF:")
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes()
+CALL IS(found, want, "Total DOF (order=1): ")
+
+CALL obj%ImportFromToml(tomlName="test6", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + meshptr%GetTotalFaces() + 0*meshptr%GetTotalCells()
+CALL IS(found, want, "Total DOF (order=2): ")
+
+CALL obj%ImportFromToml(tomlName="test7", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + 2*meshptr%GetTotalFaces() + 1*meshptr%GetTotalCells()
+CALL IS(found, want, "Total DOF (order=3): ")
+
+CALL obj%ImportFromToml(tomlName="test8", &
+ filename="./toml/_ImportFromToml_test_1.toml", mesh=meshptr)
+found = obj%GetTotalDOF()
+want = meshptr%GetTotalNodes() + 3*meshptr%GetTotalFaces() + 3*meshptr%GetTotalCells()
+CALL OK(found == want, "Total DOF (order=4): ")
+
+!CALL dom%Display("domain:")
+CALL dom%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+
+END PROGRAM main
diff --git a/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.md b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.md
new file mode 100644
index 00000000..98662329
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_1.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_ImportFromToml_test_1.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.F90 b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.F90
new file mode 100644
index 00000000..3d82b9a9
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.F90
@@ -0,0 +1,50 @@
+!> author: Vikas Sharma, Ph. D.
+! date:
+! summary: Initiate fedof with H1 and Heirarchical bases, order is a vector.
+
+PROGRAM main
+USE FEDOF_Class
+USE FEDomain_Class
+USE AbstractMesh_Class
+USE HDF5File_Class
+USE Display_Method
+USE GlobalData
+USE Test_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE ReallocateUtility
+
+IMPLICIT NONE
+
+TYPE(FEDOF_) :: fedof
+TYPE(FEDomain_) :: dom
+CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
+CHARACTER(*), PARAMETER :: filename = &
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
+TYPE(HDF5File_) :: meshfile
+LOGICAL(LGT) :: isok
+INTEGER(I4B) :: found, want, order, ii, iel
+
+CALL e%setQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+CALL meshfile%Initiate(filename, mode="READ")
+CALL meshfile%OPEN()
+CALL dom%Initiate(meshfile, '')
+
+meshptr => dom%GetMeshPointer()
+
+CALL fedof%ImportFromToml(tomlName="test1", &
+ filename="./toml/_ImportFromToml_test_2.toml", mesh=meshptr)
+
+! CALL fedof%DisplayCellOrder("Debug Cell order", full=.TRUE.)
+
+found = fedof%GetTotalDOF()
+want = 39
+isok = found == want
+CALL IS(found, want, "Total DOF ")
+
+! CALL Display(fedof%GetConnectivity(globalElement=13, islocal=.FALSE., opt="A"), &
+! "connectivity of global element 13", full=.TRUE.)
+
+CALL dom%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+
+END PROGRAM main
diff --git a/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.md b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.md
new file mode 100644
index 00000000..e6913521
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_ImportFromToml_test_2.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_ImportFromToml_test_2.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_1.md b/docs/docs-api/FEDOF/examples/_Initiate_test_1.md
new file mode 100644
index 00000000..5b9586f1
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_1.md
@@ -0,0 +1,7 @@
+This example shows how to initiate FEDOF with H1 and Hierarchy interpolation.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_1.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_2.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_2.F90
index e2f85e0c..7ed3c42c 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_2.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_2.F90
@@ -1,3 +1,7 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Initiate fedof for H1 and Heirarchical bases, order is a vector.
+
PROGRAM main
USE FEDOF_Class
USE FEDomain_Class
@@ -15,7 +19,7 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
TYPE(HDF5File_) :: meshfile
INTEGER(I4B) :: found, want
INTEGER(I4B), ALLOCATABLE :: cellOrder(:)
@@ -34,28 +38,28 @@ PROGRAM main
!CALL fedof%Display("FEDOF:")
found = fedof%GetTotalDOF()
want = meshptr%GetTotalNodes()
-CALL OK(found == want, "Total DOF (order=1): ")
+CALL IS(found, want, "Total DOF (order=1): ")
cellOrder = 2
CALL fedof%Initiate(baseContinuity="H1", baseInterpolation="Heirarchical", &
order=cellOrder, mesh=meshptr)
found = fedof%GetTotalDOF()
want = meshptr%GetTotalNodes() + meshptr%GetTotalFaces()
-CALL OK(found == want, "Total DOF (order=2): ")
+CALL IS(found, want, "Total DOF (order=2): ")
cellOrder = 3
CALL fedof%Initiate(baseContinuity="H1", baseInterpolation="Heirarchical", &
order=cellOrder, mesh=meshptr)
found = fedof%GetTotalDOF()
want = meshptr%GetTotalNodes() + 2*meshptr%GetTotalFaces() + meshptr%GetTotalCells()
-CALL OK(found == want, "Total DOF (order=3): ")
+CALL IS(found, want, "Total DOF (order=3): ")
cellOrder = 4
CALL fedof%Initiate(baseContinuity="H1", baseInterpolation="Heirarchical", &
order=cellOrder, mesh=meshptr)
found = fedof%GetTotalDOF()
want = meshptr%GetTotalNodes() + 3*meshptr%GetTotalFaces() + 3*meshptr%GetTotalCells()
-CALL OK(found == want, "Total DOF (order=4): ")
+CALL IS(found, want, "Total DOF (order=4): ")
!CALL dom%Display("domain:")
CALL dom%DEALLOCATE()
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_2.md b/docs/docs-api/FEDOF/examples/_Initiate_test_2.md
new file mode 100644
index 00000000..100cfe13
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_2.md
@@ -0,0 +1,7 @@
+This example shows how to initiate FEDOF with H1 and Hierarchy interpolation. Interface 2 of initiate method is used wherein order is a vector of integers representing the order of basis functions for each cell.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_2.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_3.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_3.F90
index fbe4b68a..1a486add 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_3.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_3.F90
@@ -1,3 +1,7 @@
+!> author: Vikas Sharma, Ph. D.
+! date:
+! summary: Initiate fedof with H1 and Heirarchical bases, order is a vector.
+
PROGRAM main
USE FEDOF_Class
USE FEDomain_Class
@@ -15,7 +19,7 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
TYPE(HDF5File_) :: meshfile
LOGICAL(LGT) :: isok
INTEGER(I4B) :: found, want, order, ii, iel
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_3.md b/docs/docs-api/FEDOF/examples/_Initiate_test_3.md
new file mode 100644
index 00000000..21aa7c8e
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_3.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_3.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_4.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_4.F90
index 3719e3ca..2e7bf158 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_4.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_4.F90
@@ -11,6 +11,7 @@ PROGRAM main
USE GlobalData
USE Test_Method
USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+use BaseType, only: poly=>TypePolynomialOpt
IMPLICIT NONE
@@ -18,10 +19,11 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
+
TYPE(HDF5File_) :: meshfile
INTEGER(I4B) :: found, want
-INTEGER(I4B), PARAMETER :: order = 1
+INTEGER(I4B), PARAMETER :: order = 1, ipType = poly%monomial
CHARACTER(*), PARAMETER :: baseContinuity = "H1"
CHARACTER(*), PARAMETER :: baseInterpolation = "Lagrange"
@@ -32,14 +34,12 @@ PROGRAM main
meshptr => dom%GetMeshPointer()
-CALL fedof%Initiate(baseContinuity=baseContinuity, &
- baseInterpolation=baseInterpolation, &
- order=order, &
- mesh=meshptr)
+CALL fedof%Initiate(baseContinuity=baseContinuity, ipType=ipType, &
+ baseInterpolation=baseInterpolation, order=order, mesh=meshptr)
!CALL fedof%Display("FEDOF:")
found = fedof%GetTotalDOF()
want = meshptr%GetTotalNodes()
-CALL OK(found == want, "Total DOF (order=1): ")
+CALL IS(found, want, "Total DOF (order=1): ")
!CALL dom%Display("domain:")
CALL dom%DEALLOCATE()
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_4.md b/docs/docs-api/FEDOF/examples/_Initiate_test_4.md
new file mode 100644
index 00000000..107a927b
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_4.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_4.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_5.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_5.F90
index 6bf92f44..ae0b32f0 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_5.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_5.F90
@@ -11,6 +11,7 @@ PROGRAM main
USE GlobalData
USE Test_Method
USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE BaseType, ONLY: poly => TypePolynomialOpt
IMPLICIT NONE
@@ -18,10 +19,10 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_tri6_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri6_mesh.h5"
TYPE(HDF5File_) :: meshfile
INTEGER(I4B) :: found, want
-INTEGER(I4B), PARAMETER :: order = 2
+INTEGER(I4B), PARAMETER :: order = 2, ipType = poly%monomial
CHARACTER(*), PARAMETER :: baseContinuity = "H1"
CHARACTER(*), PARAMETER :: baseInterpolation = "Lagrange"
@@ -32,7 +33,7 @@ PROGRAM main
meshptr => dom%GetMeshPointer()
-CALL fedof%Initiate(baseContinuity=baseContinuity, &
+CALL fedof%Initiate(baseContinuity=baseContinuity, ipType=ipType, &
baseInterpolation=baseInterpolation, &
order=order, &
mesh=meshptr)
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_5.md b/docs/docs-api/FEDOF/examples/_Initiate_test_5.md
new file mode 100644
index 00000000..3e1a3ab6
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_5.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_5.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_6.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_6.F90
index d0c31268..493fd8dc 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_6.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_6.F90
@@ -1,25 +1,6 @@
-! This program is a part of EASIFEM library
-! Expandable And Scalable Infrastructure for Finite Element Methods
-! htttps://www.easifem.com
-! Vikas Sharma, Ph.D., vickysharma0812@gmail.com
-!
-! This program is free software: you can redistribute it and/or modify
-! it under the terms of the GNU General Public License as published by
-! the Free Software Foundation, either version 3 of the License, or
-! (at your option) any later version.
-!
-! This program is distributed in the hope that it will be useful,
-! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-! GNU General Public License for more details.
-!
-! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
-!
-
!> author: Vikas Sharma, Ph. D.
! date: 2024-05-24
-! summary: Heirarchical DOF test
+! summary: testing initiate method for Hierarchical bases with different orders
PROGRAM main
USE FEDOF_Class
@@ -38,7 +19,7 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
TYPE(HDF5File_) :: meshfile
LOGICAL(LGT) :: isok
INTEGER(I4B) :: found, want, order, ii, iel
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_6.md b/docs/docs-api/FEDOF/examples/_Initiate_test_6.md
new file mode 100644
index 00000000..a2846396
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_6.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_6.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_7.F90 b/docs/docs-api/FEDOF/examples/_Initiate_test_7.F90
index a75e49ac..e4ad4d15 100644
--- a/docs/docs-api/FEDOF/examples/_Initiate_test_7.F90
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_7.F90
@@ -1,3 +1,7 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Testing initiate methods for Hierarchical DOF
+
PROGRAM main
USE FEDOF_Class
USE FEDomain_Class
@@ -14,7 +18,7 @@ PROGRAM main
TYPE(FEDomain_) :: dom
CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
CHARACTER(*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh.h5"
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
TYPE(HDF5File_) :: meshfile
INTEGER(I4B) :: found, want
CHARACTER(:), ALLOCATABLE :: testname
diff --git a/docs/docs-api/FEDOF/examples/_Initiate_test_7.md b/docs/docs-api/FEDOF/examples/_Initiate_test_7.md
new file mode 100644
index 00000000..91741de4
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Initiate_test_7.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_7.F90';
+
+
{CodeSnippet}
diff --git a/docs/docs-api/FEDOF/examples/_Lagrange_test_1.F90 b/docs/docs-api/FEDOF/examples/_Lagrange_test_1.F90
new file mode 100644
index 00000000..7b29e29b
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/_Lagrange_test_1.F90
@@ -0,0 +1,48 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2024-05-24
+! summary: Lagrange polynomial is tested in this example
+
+PROGRAM main
+USE FEDOF_Class
+USE FEDomain_Class
+USE AbstractMesh_Class
+USE HDF5File_Class
+USE Display_Method
+USE GlobalData
+USE Test_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+use BaseType, only: poly=>TypePolynomialOpt
+
+IMPLICIT NONE
+
+TYPE(FEDOF_) :: fedof
+TYPE(FEDomain_) :: dom
+CLASS(AbstractMesh_), POINTER :: meshptr => NULL()
+CHARACTER(*), PARAMETER :: filename = &
+ "../../FEMesh/examples/meshdata/small_tri3_mesh.h5"
+
+TYPE(HDF5File_) :: meshfile
+INTEGER(I4B) :: found, want
+INTEGER(I4B), PARAMETER :: order = 2, ipType = poly%monomial
+CHARACTER(*), PARAMETER :: baseContinuity = "H1"
+CHARACTER(*), PARAMETER :: baseInterpolation = "Lagrange"
+
+CALL e%setQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+CALL meshfile%Initiate(filename, mode="READ")
+CALL meshfile%OPEN()
+CALL dom%Initiate(meshfile, '')
+
+meshptr => dom%GetMeshPointer()
+
+CALL fedof%Initiate(baseContinuity=baseContinuity, ipType=ipType, &
+ baseInterpolation=baseInterpolation, order=order, mesh=meshptr)
+CALL fedof%Display("FEDOF:")
+found = fedof%GetTotalDOF()
+want = meshptr%GetTotalNodes()
+CALL IS(found, want, "Total DOF (order=2): ")
+
+!CALL dom%Display("domain:")
+CALL dom%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+
+END PROGRAM main
diff --git a/docs/docs-api/FEDOF/examples/runner.toml b/docs/docs-api/FEDOF/examples/runner.toml
index df0e5aec..d6545342 100644
--- a/docs/docs-api/FEDOF/examples/runner.toml
+++ b/docs/docs-api/FEDOF/examples/runner.toml
@@ -1,3 +1,3 @@
BuildType = "Debug"
-BuildDir = "/tmp/easifem-test/"
+BuildDir = "/tmp/easifem-tests/FEDOF"
TargetLibs = ["easifemClasses"]
diff --git a/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_1.toml b/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_1.toml
new file mode 100644
index 00000000..1207cf73
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_1.toml
@@ -0,0 +1,39 @@
+[test1]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 1
+
+[test2]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 2
+
+[test3]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 3
+
+[test4]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 4
+
+[test5]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = [1]
+
+[test6]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = [2]
+
+[test7]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = [3]
+
+[test8]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = [4]
diff --git a/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_2.toml b/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_2.toml
new file mode 100644
index 00000000..39558d89
--- /dev/null
+++ b/docs/docs-api/FEDOF/examples/toml/_ImportFromToml_test_2.toml
@@ -0,0 +1,35 @@
+[test1]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = "./toml/order.csv"
+# [
+# [14, 1],
+# [15, 1],
+# [17, 1],
+# [18, 1],
+# [24, 1],
+# [21, 2],
+# [22, 2],
+# [23, 2],
+# [25, 2],
+# [13, 3],
+# [16, 3],
+# [19, 3],
+# [20, 3],
+# [26, 3]
+# ]
+
+[test2]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 2
+
+[test3]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 3
+
+[test4]
+baseContinuity = "H1"
+baseInterpolation = "Hierarchical"
+order = 4
diff --git a/docs/docs-api/FEDOF/index.md b/docs/docs-api/FEDOF/index.md
index e97597e0..a72a4541 100644
--- a/docs/docs-api/FEDOF/index.md
+++ b/docs/docs-api/FEDOF/index.md
@@ -1,11 +1,11 @@
---
sidebar_position: 1
-date: 2024-05-18
-update: 2024-05-18
+date: 2024-05-18
+update: 2024-05-18
status: stable
docs: done
extpkgs: none
-category:
+category:
- Domain
- Mesh
- ShapeFunctions
@@ -18,7 +18,11 @@ tags:
# FEDOF
-Data type for finite element degree of freedoms. `FEDOF_` defines the abstract node in finite element method. The basic steps of using this data type is given below.
+Data type for finite element degree of freedoms.
+`FEDOF_` defines the abstract node in finite element method.
+The meaning of degree of freedom depends upon the basis interpolation function and type.
+For example, in the case of Lagrange interpolation, the degree of freedoms corresponds to the nodes in the element.
+The basic steps of using this data type is given below.
## Basic usage
@@ -30,11 +34,15 @@ There are several ways to initiate an instance of `FEDOF`.
CALL obj%Initiate(order, mesh, baseContinuity, baseInterpolation, ipType, basisType, alpha, beta, lambda)
```
-- Here `order` represents the order of each element.
-- It can be a scalar, vector, or a two dimensional matrix.
-- [The method with scalar order is given here.](./Initiate.md#interface-1)
-- When it is a vector then it represents the order of each cell element. [This method is given here](./Initiate.md#interface-2)
-- Then order is a matrix then the first row represents the global number of cell element, and the second row represents the order of cell element. [This method is given here](./Initiate.md#interface-4)
+- Here `order` represents the order of each element. It can be a scalar, vector, or a two dimensional matrix of integers. [The method with scalar order is given here.](./Initiate.md#interface-1)
+
+:::tip Order is a vector
+When `order` is a vector of integer then it represents the order of each cell element. [This method is discussed here](./Initiate.md#interface-2). In this case, the length of `order` must be equal to the number of elements in the mesh.
+:::
+
+:::tip Order is a matrix
+When order is a matrix of integer then the first row represents the global number of cell element, and the second row represents the order of cell element. [This method is given here](./Initiate.md#interface-4)
+:::
:::info
Read more about [Initiate](./Initiate.md) method.
@@ -42,7 +50,7 @@ Read more about [Initiate](./Initiate.md) method.
You can also initiate an instance of `FEDOF` using [ParameterList](/docs/docs-api/ParameterList/index.md). The process is given below.
-- First, set parameters in `ParameterList` object by using [SetFEDOFParam].
+- First, set parameters in `ParameterList` object by using [SetFEDOFParam](./SetFEDOFParam.md).
- Then, initiate an instance of `FEDOF` using `ParameterList` object by using [Initiate](/docs/docs-api/FEDOF/Initiate.md#interface-3)
```fortran
@@ -90,3 +98,9 @@ Getting the local element connectivity.
```fortran
CALL obj%GetConnectivity_(globalElement, isLocal, ans, tsize, opt)
```
+
+## Methods
+
+import DocCardList from '@theme/DocCardList';
+
+
diff --git a/docs/docs-api/FEDomain/Initiate.md b/docs/docs-api/FEDomain/Initiate.md
index 141097e7..5af28bca 100644
--- a/docs/docs-api/FEDomain/Initiate.md
+++ b/docs/docs-api/FEDomain/Initiate.md
@@ -34,4 +34,3 @@ import EXAMPLE7 from "./examples/_Initiate_test_1.md";
-
diff --git a/docs/docs-api/FEDomain/InitiateFacetElements.md b/docs/docs-api/FEDomain/InitiateFacetElements.md
index 763680a7..9fdc4a2a 100644
--- a/docs/docs-api/FEDomain/InitiateFacetElements.md
+++ b/docs/docs-api/FEDomain/InitiateFacetElements.md
@@ -1,6 +1,6 @@
# InitiateFacetElements
-This routine initiates the facet element information for every mesh of the domain.
+This routine initiates the facet element information for every mesh of the domain.
- [InitiateFacetElements](../FEMesh/InitiateFacetElements.md)
diff --git a/docs/docs-api/FEDomain/SetDomainFacetElement.md b/docs/docs-api/FEDomain/SetDomainFacetElement.md
index 4e4cb068..33c406c3 100644
--- a/docs/docs-api/FEDomain/SetDomainFacetElement.md
+++ b/docs/docs-api/FEDomain/SetDomainFacetElement.md
@@ -2,13 +2,13 @@
This routine sets the domain boundary element for cells and faces.
-When we call [InitiateFacetElements](../FEMesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh). Moreover, when we call [InitiateFacetElements](../FEMesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
+When we call [InitiateFacetElements](../FEMesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh). Moreover, when we call [InitiateFacetElements](../FEMesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
However, some of these boundary facet-elements will be located at the domain’s boundary. These facet elements are called `DOMAIN_BOUNDARY_ELEMENT`.
-Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
+Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
-This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
+This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
:::info
This routine needs facet element data information stored inside the mesh. Therefore, if for a mesh `isFacetDataInitiated` is false, then this routine will make a call to [InitiateFacetElements](../FEMesh/InitiateFacetElements.md) for that mesh.
diff --git a/docs/docs-api/FEDomain/SetFacetElementType.md b/docs/docs-api/FEDomain/SetFacetElementType.md
index ca302e4a..fc7be8a5 100644
--- a/docs/docs-api/FEDomain/SetFacetElementType.md
+++ b/docs/docs-api/FEDomain/SetFacetElementType.md
@@ -2,18 +2,18 @@
This routine corrrects the facet element type in each mesh.
-When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh).
+When we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) for mesh, we can only identify boundary-facet-elements (i.e., boundary elements of the mesh).
-Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
+Moreover, when we call [InitiateFacetElements](../Mesh/InitiateFacetElements.md) from mesh or domain, all the facet elements are tagged as `DOMAIN_BOUNDARY_ELEMENT`.
However, some of these boundary facet-elements will be located at the domain’s boundary. These facet elements are called `DOMAIN_BOUNDARY_ELEMENT`.
-Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
+Some of the facet elements will be at located at the interface of two mesh regions, these facet elements are called `BOUNDARY_ELEMENT`.
-This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
+This method correctly differentiates between `BOUNDARY_ELEMENT` and `DOMAIN_BOUNDARY_ELEMENT`.
:::info
-This method needs information of boundary data in a mesh, which can be set by calling [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) by the user.
+This method needs information of boundary data in a mesh, which can be set by calling [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) by the user.
In this routine if for a mesh `isBoundaryDataInitiated` is `.FALSE.`, then this routine will make a call to [InitiateBoundaryData](../Mesh/InitiateBoundaryData.md) for that mesh and initiate the required boundary data.
:::
@@ -24,7 +24,6 @@ Please check documentation of following methods:
- [SetMeshFacetElement](./SetMeshFacetElement.md)
- [SetFacetElementType](./SetFacetElementType.md)
-
## Interface
```fortran
diff --git a/docs/docs-api/FEDomain/examples/_GetConnectivity_test_1.md b/docs/docs-api/FEDomain/examples/_GetConnectivity_test_1.md
index e0966acb..a3c967b4 100644
--- a/docs/docs-api/FEDomain/examples/_GetConnectivity_test_1.md
+++ b/docs/docs-api/FEDomain/examples/_GetConnectivity_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/FEDomain/examples/_InitiateKdtree_test_1.F90 b/docs/docs-api/FEDomain/examples/_InitiateKdtree_test_1.F90
index 9989ed97..dedec0cc 100644
--- a/docs/docs-api/FEDomain/examples/_InitiateKdtree_test_1.F90
+++ b/docs/docs-api/FEDomain/examples/_InitiateKdtree_test_1.F90
@@ -1,13 +1,20 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: Test for InitiateKdtree method of FEDomain class
PROGRAM main
-USE easifemBase
-USE easifemClasses
USE FEDomain_Class
+USE HDF5File_Class
+USE GlobalData
+
IMPLICIT NONE
+
TYPE(FEDomain_) :: dom
TYPE(HDF5File_) :: meshfile
+
CHARACTER(*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "./meshdata/small_tri3_mesh.h5"
+
CALL meshfile%Initiate(filename, mode="READ")
CALL meshfile%OPEN()
CALL dom%Initiate(meshfile, '')
diff --git a/docs/docs-api/FEDomain/examples/_IsElementPresent_test_1.md b/docs/docs-api/FEDomain/examples/_IsElementPresent_test_1.md
index 51bc3911..7366928a 100644
--- a/docs/docs-api/FEDomain/examples/_IsElementPresent_test_1.md
+++ b/docs/docs-api/FEDomain/examples/_IsElementPresent_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/FEDomain/examples/_MSH2HDF5_test_1.md b/docs/docs-api/FEDomain/examples/_MSH2HDF5_test_1.md
index bc68da94..b26705d2 100644
--- a/docs/docs-api/FEDomain/examples/_MSH2HDF5_test_1.md
+++ b/docs/docs-api/FEDomain/examples/_MSH2HDF5_test_1.md
@@ -12,22 +12,22 @@ PROGRAM main
Open mesh file, which is in [[HDF5File_]] file format. It is a three setup process; Initiate, open and read.
```fortran
- CALL mshFile%Initiate("./mesh.msh", STATUS="OLD", ACTION="READ")
- CALL mshFile%Open()
- CALL mshFile%Read()
+CALL mshFile%Initiate("./mesh.msh", STATUS="OLD", ACTION="READ")
+CALL mshFile%Open()
+CALL mshFile%Read()
```
Open the [[HDF5File_]] so that we can export data to it from mesh file [[MSHFile_]].
```fortran
- CALL hdf5File%Initiate("./mesh.h5", MODE="NEW")
- CALL hdf5File%Open()
+CALL hdf5File%Initiate("./mesh.h5", MODE="NEW")
+CALL hdf5File%Open()
```
Export mesh file to [[HDF5File_]].
```fortran
- CALL mshFile%Export(hdf5=hdf5File, group="")
+CALL mshFile%Export(hdf5=hdf5File, group="")
```
```fortran
diff --git a/docs/docs-api/FEDomain/examples/_SetMeshFacetElement_test_1.md b/docs/docs-api/FEDomain/examples/_SetMeshFacetElement_test_1.md
index 1514f44f..16abe5c8 100644
--- a/docs/docs-api/FEDomain/examples/_SetMeshFacetElement_test_1.md
+++ b/docs/docs-api/FEDomain/examples/_SetMeshFacetElement_test_1.md
@@ -1,6 +1,6 @@
This example tests the `SetMeshFacetElement` method of the domain.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/FEDomain/examples/_SetMeshMap_test_1.md b/docs/docs-api/FEDomain/examples/_SetMeshMap_test_1.md
index ce081d0b..5851cacb 100644
--- a/docs/docs-api/FEDomain/examples/_SetMeshMap_test_1.md
+++ b/docs/docs-api/FEDomain/examples/_SetMeshMap_test_1.md
@@ -1,6 +1,6 @@
This example tests the `SetMeshMap` method of the domain.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/FEMatrix/FEMatrix_.md b/docs/docs-api/FEMatrix/FEMatrix_.md
index ba7ad7f7..bb196613 100644
--- a/docs/docs-api/FEMatrix/FEMatrix_.md
+++ b/docs/docs-api/FEMatrix/FEMatrix_.md
@@ -18,7 +18,6 @@ $$
\int_{\Omega } N^{I}T_{a}\rho N^{J}T_{b}d\Omega
$$
-
$$
\iint \frac{\partial N^{I}T_{a}}{\partial t} \rho N^{J}T_{b}d\Omega dt
$$
diff --git a/docs/docs-api/FEMesh/Deallocate.md b/docs/docs-api/FEMesh/Deallocate.md
new file mode 100644
index 00000000..d9070782
--- /dev/null
+++ b/docs/docs-api/FEMesh/Deallocate.md
@@ -0,0 +1,9 @@
+# Deallocate
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/Deallocate.md";
+
+
diff --git a/docs/docs-api/FEMesh/DeallocateKdTree.md b/docs/docs-api/FEMesh/DeallocateKdTree.md
new file mode 100644
index 00000000..e6055b06
--- /dev/null
+++ b/docs/docs-api/FEMesh/DeallocateKdTree.md
@@ -0,0 +1,9 @@
+# DeallocateKdTree
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/DeallocateKdTree.md";
+
+
diff --git a/docs/docs-api/FEMesh/Display.md b/docs/docs-api/FEMesh/Display.md
index 3853fda6..143c9db6 100644
--- a/docs/docs-api/FEMesh/Display.md
+++ b/docs/docs-api/FEMesh/Display.md
@@ -8,3 +8,8 @@ import EXAMPLE5 from "../AbstractMesh/Display.md";
+## Example
+
+import EXAMPLE13 from "./examples/_Display_test_1.md";
+
+
diff --git a/docs/docs-api/FEMesh/DisplayBoundaryFacetData.md b/docs/docs-api/FEMesh/DisplayBoundaryFacetData.md
index 2a74909c..48051ffd 100644
--- a/docs/docs-api/FEMesh/DisplayBoundaryFacetData.md
+++ b/docs/docs-api/FEMesh/DisplayBoundaryFacetData.md
@@ -9,3 +9,15 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/DisplayBoundaryFacetData.md";
+
+## Example 1
+
+import EXAMPLE15 from "./examples/_DisplayBoundaryFacetData_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE21 from "./examples/_DisplayBoundaryFacetData_test_2.md";
+
+
diff --git a/docs/docs-api/FEMesh/DisplayElementData.md b/docs/docs-api/FEMesh/DisplayElementData.md
index 1e8fe337..662ff676 100644
--- a/docs/docs-api/FEMesh/DisplayElementData.md
+++ b/docs/docs-api/FEMesh/DisplayElementData.md
@@ -10,3 +10,14 @@ import EXAMPLE5 from "../AbstractMesh/DisplayElementData.md";
+## Example 1
+
+import EXAMPLE15 from "./examples/_DisplayElementData_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE25 from "./examples/_DisplayElementData_test_2.md";
+
+
diff --git a/docs/docs-api/FEMesh/DisplayFacetData.md b/docs/docs-api/FEMesh/DisplayFacetData.md
new file mode 100644
index 00000000..b40de8e1
--- /dev/null
+++ b/docs/docs-api/FEMesh/DisplayFacetData.md
@@ -0,0 +1,17 @@
+---
+title: DisplayFacetData
+---
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/DisplayFacetData.md";
+
+
+
+## Example
+
+import EXAMPLE15 from "./examples/_DisplayFacetData_test_1.md";
+
+
diff --git a/docs/docs-api/FEMesh/DisplayFacetElemSD.md b/docs/docs-api/FEMesh/DisplayFacetElemSD.md
index b06bbfc6..82131050 100644
--- a/docs/docs-api/FEMesh/DisplayFacetElemSD.md
+++ b/docs/docs-api/FEMesh/DisplayFacetElemSD.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/DisplayFacetElemSD.md";
-
diff --git a/docs/docs-api/FEMesh/DisplayFacetElements.md b/docs/docs-api/FEMesh/DisplayFacetElements.md
index 51a302c3..0b176eb9 100644
--- a/docs/docs-api/FEMesh/DisplayFacetElements.md
+++ b/docs/docs-api/FEMesh/DisplayFacetElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/DisplayFacetElements.md";
-
diff --git a/docs/docs-api/FEMesh/DisplayMeshInfo.md b/docs/docs-api/FEMesh/DisplayMeshInfo.md
new file mode 100644
index 00000000..8fe26a8b
--- /dev/null
+++ b/docs/docs-api/FEMesh/DisplayMeshInfo.md
@@ -0,0 +1,15 @@
+# DisplayMeshInfo
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/DisplayMeshInfo.md";
+
+
+
+## Example 1
+
+import EXAMPLE14 from "./examples/_DisplayMeshInfo_test_1.md";
+
+
diff --git a/docs/docs-api/FEMesh/Export.md b/docs/docs-api/FEMesh/Export.md
new file mode 100644
index 00000000..745908c7
--- /dev/null
+++ b/docs/docs-api/FEMesh/Export.md
@@ -0,0 +1,10 @@
+# Export
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/Export.md";
+
+
+
diff --git a/docs/docs-api/FEMesh/ExportToVTK.md b/docs/docs-api/FEMesh/ExportToVTK.md
new file mode 100644
index 00000000..8e9a3cad
--- /dev/null
+++ b/docs/docs-api/FEMesh/ExportToVTK.md
@@ -0,0 +1,10 @@
+# ExportToVTK
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/ExportToVTK.md";
+
+
+
diff --git a/docs/docs-api/FEMesh/FEMesh_.md b/docs/docs-api/FEMesh/FEMesh_.md
index 859b1922..9e4579a5 100644
--- a/docs/docs-api/FEMesh/FEMesh_.md
+++ b/docs/docs-api/FEMesh/FEMesh_.md
@@ -14,5 +14,3 @@ CONTAINS
FINAL :: obj_Final
END TYPE FEMesh_
```
-
-
diff --git a/docs/docs-api/FEMesh/GetBoundaryElementData.md b/docs/docs-api/FEMesh/GetBoundaryElementData.md
index 5781fbae..63e72197 100644
--- a/docs/docs-api/FEMesh/GetBoundaryElementData.md
+++ b/docs/docs-api/FEMesh/GetBoundaryElementData.md
@@ -10,18 +10,15 @@ import EXAMPLE5 from "../AbstractMesh/GetBoundaryElementData.md";
-
-## Examples
+## Examples
Example 1
-
import EXAMPLE6 from "./examples/_GetBoundaryElementData_test_1.md";
-
diff --git a/docs/docs-api/FEMesh/GetBoundaryNptrs.md b/docs/docs-api/FEMesh/GetBoundaryNptrs.md
index a61fa4fb..2fa35c6f 100644
--- a/docs/docs-api/FEMesh/GetBoundaryNptrs.md
+++ b/docs/docs-api/FEMesh/GetBoundaryNptrs.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetBoundaryNptrs.md";
-
diff --git a/docs/docs-api/FEMesh/GetBoundingBox.md b/docs/docs-api/FEMesh/GetBoundingBox.md
index 9e8f2081..63b2fcd9 100644
--- a/docs/docs-api/FEMesh/GetBoundingBox.md
+++ b/docs/docs-api/FEMesh/GetBoundingBox.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetBoundingBox.md";
-
diff --git a/docs/docs-api/FEMesh/GetCellNumber.md b/docs/docs-api/FEMesh/GetCellNumber.md
index 794c8b68..169df68a 100644
--- a/docs/docs-api/FEMesh/GetCellNumber.md
+++ b/docs/docs-api/FEMesh/GetCellNumber.md
@@ -9,5 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetCellNumber.md";
-
-
diff --git a/docs/docs-api/FEMesh/GetElemNum.md b/docs/docs-api/FEMesh/GetElemNum.md
index 674df0c0..04a44804 100644
--- a/docs/docs-api/FEMesh/GetElemNum.md
+++ b/docs/docs-api/FEMesh/GetElemNum.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetElemNum.md";
-
diff --git a/docs/docs-api/FEMesh/GetElementToElements.md b/docs/docs-api/FEMesh/GetElementToElements.md
index 036ec4f5..f91d05fb 100644
--- a/docs/docs-api/FEMesh/GetElementToElements.md
+++ b/docs/docs-api/FEMesh/GetElementToElements.md
@@ -10,7 +10,7 @@ import EXAMPLE5 from "../AbstractMesh/GetElementToElements.md";
-## Examples
+## Examples
Example 1
@@ -20,7 +20,5 @@ import EXAMPLE6 from "./examples/_GetElementToElements_test_1.md";
-
-
diff --git a/docs/docs-api/FEMesh/GetFacetConnectivity.md b/docs/docs-api/FEMesh/GetFacetConnectivity.md
index fd70f6d2..cbf4e173 100644
--- a/docs/docs-api/FEMesh/GetFacetConnectivity.md
+++ b/docs/docs-api/FEMesh/GetFacetConnectivity.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetFacetConnectivity.md";
-
diff --git a/docs/docs-api/FEMesh/GetGlobalElemNumber.md b/docs/docs-api/FEMesh/GetGlobalElemNumber.md
index 8a30cfd1..c17e1a7f 100644
--- a/docs/docs-api/FEMesh/GetGlobalElemNumber.md
+++ b/docs/docs-api/FEMesh/GetGlobalElemNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetGlobalElemNumber.md";
-
diff --git a/docs/docs-api/FEMesh/GetGlobalNodeNumber.md b/docs/docs-api/FEMesh/GetGlobalNodeNumber.md
index 9c17eaad..154ca99e 100644
--- a/docs/docs-api/FEMesh/GetGlobalNodeNumber.md
+++ b/docs/docs-api/FEMesh/GetGlobalNodeNumber.md
@@ -9,6 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetGlobalNodeNumber.md";
-
-
-
diff --git a/docs/docs-api/FEMesh/GetLocalNodeNumber.md b/docs/docs-api/FEMesh/GetLocalNodeNumber.md
index ac84cfaa..f47f223f 100644
--- a/docs/docs-api/FEMesh/GetLocalNodeNumber.md
+++ b/docs/docs-api/FEMesh/GetLocalNodeNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetLocalNodeNumber.md";
-
diff --git a/docs/docs-api/FEMesh/GetMasterCellNumber.md b/docs/docs-api/FEMesh/GetMasterCellNumber.md
index c3f44384..abb349a7 100644
--- a/docs/docs-api/FEMesh/GetMasterCellNumber.md
+++ b/docs/docs-api/FEMesh/GetMasterCellNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetMasterCellNumber.md";
-
diff --git a/docs/docs-api/FEMesh/GetNodeToElements.md b/docs/docs-api/FEMesh/GetNodeToElements.md
index 14efaab5..6dbb3ced 100644
--- a/docs/docs-api/FEMesh/GetNodeToElements.md
+++ b/docs/docs-api/FEMesh/GetNodeToElements.md
@@ -10,7 +10,7 @@ import EXAMPLE5 from "../AbstractMesh/GetNodeToNodes.md";
-## Examples
+## Examples
Example 1
@@ -22,4 +22,3 @@ import EXAMPLE6 from "./examples/_GetNodeToElements_test_1.md";
-
diff --git a/docs/docs-api/FEMesh/GetNodeToNodes.md b/docs/docs-api/FEMesh/GetNodeToNodes.md
index 392e240d..e581d918 100644
--- a/docs/docs-api/FEMesh/GetNodeToNodes.md
+++ b/docs/docs-api/FEMesh/GetNodeToNodes.md
@@ -22,5 +22,3 @@ import EXAMPLE11 from "./examples/_GetNodeToNodes_test_1.md";
-
-
diff --git a/docs/docs-api/FEMesh/GetNptrs.md b/docs/docs-api/FEMesh/GetNptrs.md
index 7f72b9fe..517fc3ae 100644
--- a/docs/docs-api/FEMesh/GetNptrs.md
+++ b/docs/docs-api/FEMesh/GetNptrs.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetNptrs.md";
-
diff --git a/docs/docs-api/FEMesh/GetRefElemPointer.md b/docs/docs-api/FEMesh/GetRefElemPointer.md
index 97811afb..8c873802 100644
--- a/docs/docs-api/FEMesh/GetRefElemPointer.md
+++ b/docs/docs-api/FEMesh/GetRefElemPointer.md
@@ -9,5 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetRefElemPointer.md";
-
-
diff --git a/docs/docs-api/FEMesh/GetTotalBoundaryElements.md b/docs/docs-api/FEMesh/GetTotalBoundaryElements.md
index f33f1606..e04cee49 100644
--- a/docs/docs-api/FEMesh/GetTotalBoundaryElements.md
+++ b/docs/docs-api/FEMesh/GetTotalBoundaryElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetTotalBoundaryElements.md";
-
diff --git a/docs/docs-api/FEMesh/GetTotalFacetElements.md b/docs/docs-api/FEMesh/GetTotalFacetElements.md
index f4fb5297..0a9b4e61 100644
--- a/docs/docs-api/FEMesh/GetTotalFacetElements.md
+++ b/docs/docs-api/FEMesh/GetTotalFacetElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetTotalFacetElements.md";
-
diff --git a/docs/docs-api/FEMesh/GetTotalInternalFacetElements.md b/docs/docs-api/FEMesh/GetTotalInternalFacetElements.md
index 03c28410..34820efe 100644
--- a/docs/docs-api/FEMesh/GetTotalInternalFacetElements.md
+++ b/docs/docs-api/FEMesh/GetTotalInternalFacetElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetTotalInternalFacetElements.md";
-
diff --git a/docs/docs-api/FEMesh/GetTotalInternalNodes.md b/docs/docs-api/FEMesh/GetTotalInternalNodes.md
index aac6ba47..5baacd30 100644
--- a/docs/docs-api/FEMesh/GetTotalInternalNodes.md
+++ b/docs/docs-api/FEMesh/GetTotalInternalNodes.md
@@ -6,7 +6,6 @@ title: GetTotalInternalNodes
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
-
import EXAMPLE5 from "../AbstractMesh/GetTotalInternalNodes.md";
diff --git a/docs/docs-api/FEMesh/Import.md b/docs/docs-api/FEMesh/Import.md
new file mode 100644
index 00000000..4d4fc26d
--- /dev/null
+++ b/docs/docs-api/FEMesh/Import.md
@@ -0,0 +1,10 @@
+# Import
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/Import.md";
+
+
+
diff --git a/docs/docs-api/FEMesh/Initiate.md b/docs/docs-api/FEMesh/Initiate.md
index a99e3611..24c6ea23 100644
--- a/docs/docs-api/FEMesh/Initiate.md
+++ b/docs/docs-api/FEMesh/Initiate.md
@@ -3,7 +3,6 @@ sidebar_position: 3
title: Initiate
---
-
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
@@ -27,7 +26,7 @@ import EXAMPLE22 from "./examples/_Initiate_test_1.md";
-### Reading surface mesh in 2D
+### Initiate 2D mesh
Examples
@@ -40,7 +39,7 @@ import EXAMPLE43 from "./examples/_Initiate_test_2.md";
-### Reading curve mesh in 2D
+### Initaite 3D mesh
Examples
@@ -53,3 +52,31 @@ import EXAMPLE59 from "./examples/_Initiate_test_4.md";
+### Additional examples
+
+
+
+
+import EXAMPLE60 from "./examples/_Initiate_test_3.md";
+
+
+
+
+
+
+
+import EXAMPLE69 from "./examples/_Initiate_test_5.md";
+
+
+
+
+
+
+
+import EXAMPLE78 from "./examples/_Initiate_test_6.md";
+
+
+
+
+
+
diff --git a/docs/docs-api/FEMesh/InitiateBoundaryData.md b/docs/docs-api/FEMesh/InitiateBoundaryData.md
index 0e8fd1d0..f2709d86 100644
--- a/docs/docs-api/FEMesh/InitiateBoundaryData.md
+++ b/docs/docs-api/FEMesh/InitiateBoundaryData.md
@@ -9,3 +9,9 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateBoundaryData.md";
+
+
+## Example 1
+
+- [ ] TODO: Add example of InitiateBoundaryData Method
+
diff --git a/docs/docs-api/FEMesh/InitiateDynamicDataStructure.md b/docs/docs-api/FEMesh/InitiateDynamicDataStructure.md
new file mode 100644
index 00000000..b6863985
--- /dev/null
+++ b/docs/docs-api/FEMesh/InitiateDynamicDataStructure.md
@@ -0,0 +1,15 @@
+# InitiateDynamicDataStructure
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/InitiateDynamicDataStructure.md";
+
+
+
+## Example 1
+
+import EXAMPLE13 from "./examples/_InitiateDynamicDataStructure_test_1.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateEdgeConnectivity.md b/docs/docs-api/FEMesh/InitiateEdgeConnectivity.md
new file mode 100644
index 00000000..b9f6d892
--- /dev/null
+++ b/docs/docs-api/FEMesh/InitiateEdgeConnectivity.md
@@ -0,0 +1,16 @@
+# InitiateEdgeConnectivity
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/InitiateEdgeConnectivity.md";
+
+
+
+## Example 1
+
+import EXAMPLE13 from "./examples/_InitiateEdgeConnectivity_test_1.md";
+
+
+
diff --git a/docs/docs-api/FEMesh/InitiateElementToElements.md b/docs/docs-api/FEMesh/InitiateElementToElements.md
index b524ff7c..73576ada 100644
--- a/docs/docs-api/FEMesh/InitiateElementToElements.md
+++ b/docs/docs-api/FEMesh/InitiateElementToElements.md
@@ -10,3 +10,8 @@ import EXAMPLE5 from "../AbstractMesh/InitiateElementToElements.md";
+## Example 1
+
+import EXAMPLE15 from "./examples/_InitiateElementToElements_test_1.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateExtraNodeToNodes.md b/docs/docs-api/FEMesh/InitiateExtraNodeToNodes.md
index 2e79cfd2..39b16ccc 100644
--- a/docs/docs-api/FEMesh/InitiateExtraNodeToNodes.md
+++ b/docs/docs-api/FEMesh/InitiateExtraNodeToNodes.md
@@ -9,3 +9,9 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateExtraNodeToNodes.md";
+
+## Example 1
+
+TODO: Add example of InitiateExtraNodeToNodes.
+
+
diff --git a/docs/docs-api/FEMesh/InitiateFaceConnectivity.md b/docs/docs-api/FEMesh/InitiateFaceConnectivity.md
new file mode 100644
index 00000000..e701aa8a
--- /dev/null
+++ b/docs/docs-api/FEMesh/InitiateFaceConnectivity.md
@@ -0,0 +1,23 @@
+---
+title: InitiateFaceConnectivity
+---
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/InitiateFaceConnectivity.md";
+
+
+
+## Example 1
+
+import EXAMPLE15 from "./examples/_InitiateFaceConnectivity_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE22 from "./examples/_InitiateFaceConnectivity_test_2.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateFacetElements.md b/docs/docs-api/FEMesh/InitiateFacetElements.md
index fd1c82ec..1d990fdd 100644
--- a/docs/docs-api/FEMesh/InitiateFacetElements.md
+++ b/docs/docs-api/FEMesh/InitiateFacetElements.md
@@ -2,7 +2,6 @@
title: InitiateFacetElements
---
-
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
@@ -10,3 +9,21 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateFacetElements.md";
+
+## Example 1
+
+import EXAMPLE15 from "./examples/_InitiateFacetElements_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE21 from "./examples/_InitiateFacetElements_test_2.md";
+
+
+
+## Example 3
+
+import EXAMPLE29 from "./examples/_InitiateFacetElements_test_3.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateKdTree.md b/docs/docs-api/FEMesh/InitiateKdTree.md
new file mode 100644
index 00000000..27322a25
--- /dev/null
+++ b/docs/docs-api/FEMesh/InitiateKdTree.md
@@ -0,0 +1,11 @@
+---
+title: InitiateKdTree
+---
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/InitiateKdTree.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateNodeToElements.md b/docs/docs-api/FEMesh/InitiateNodeToElements.md
index 1682ac8a..1b7d7ebf 100644
--- a/docs/docs-api/FEMesh/InitiateNodeToElements.md
+++ b/docs/docs-api/FEMesh/InitiateNodeToElements.md
@@ -9,3 +9,21 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateNodeToElements.md";
+
+## Example 1
+
+import EXAMPLE15 from "./examples/_InitiateNodeToElements_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE23 from "./examples/_InitiateNodeToElements_test_2.md";
+
+
+
+## Example 3
+
+import EXAMPLE24 from "./examples/_InitiateNodeToElements_test_3.md";
+
+
diff --git a/docs/docs-api/FEMesh/InitiateNodeToNodes.md b/docs/docs-api/FEMesh/InitiateNodeToNodes.md
index 8aa215ee..34a9d246 100644
--- a/docs/docs-api/FEMesh/InitiateNodeToNodes.md
+++ b/docs/docs-api/FEMesh/InitiateNodeToNodes.md
@@ -9,3 +9,23 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateNodeToNodes.md";
+
+## Example 1
+
+
+import EXAMPLE15 from "./examples/_InitiateNodeToNodes_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE23 from "./examples/_InitiateNodeToNodes_test_2.md";
+
+
+
+## Example 3
+
+import EXAMPLE24 from "./examples/_InitiateNodeToNodes_test_3.md";
+
+
+
diff --git a/docs/docs-api/FEMesh/IsBoundaryNode.md b/docs/docs-api/FEMesh/IsBoundaryNode.md
index bbde7767..cd2365b8 100644
--- a/docs/docs-api/FEMesh/IsBoundaryNode.md
+++ b/docs/docs-api/FEMesh/IsBoundaryNode.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/IsBoundaryNode.md";
-
diff --git a/docs/docs-api/FEMesh/IsEmpty.md b/docs/docs-api/FEMesh/IsEmpty.md
new file mode 100644
index 00000000..8d393214
--- /dev/null
+++ b/docs/docs-api/FEMesh/IsEmpty.md
@@ -0,0 +1,9 @@
+# IsEmpty
+
+:::tip Inheritence
+This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
+:::
+
+import EXAMPLE5 from "../AbstractMesh/IsEmpty.md";
+
+
diff --git a/docs/docs-api/FEMesh/SetSparsity.md b/docs/docs-api/FEMesh/SetSparsity.md
index fafa43bf..e95d840d 100644
--- a/docs/docs-api/FEMesh/SetSparsity.md
+++ b/docs/docs-api/FEMesh/SetSparsity.md
@@ -1,6 +1,6 @@
---
title: SetSparsity
-----
+---
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
diff --git a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.F90 b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.F90
new file mode 100644
index 00000000..98186b62
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.F90
@@ -0,0 +1,32 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: This example shows how to use `DisplayBoundaryFacetData`
+! method to display the content of boundary facet data.
+
+PROGRAM main
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+
+ IMPLICIT NONE
+
+ TYPE( FEMesh_ ) :: obj
+ TYPE( HDF5File_ ) :: meshfile
+ INTEGER( I4B ), ALLOCATABLE :: nptrs( : )
+ INTEGER( I4B ) :: iel, ii
+ CHARACTER( LEN=* ), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+
+ ! Initiate and open the mesh file which is in [[HDF5File_]] format.
+ ! Then, create an instance of mesh.
+
+ CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+ CALL meshfile%Open()
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
+
+ ! Displaying the node data.
+
+ CALL obj%DisplayBoundaryFacetData( "Boundary facet data" )
+
+ CALL obj%Deallocate()
+ CALL meshfile%Deallocate()
+END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.md b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.md
index 67da0e1b..bfac8206 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_1.md
@@ -1,30 +1,9 @@
This example shows how to use `DisplayBoundaryFacetData` method to display the content of boundary facet data.
-Import modules and declare variables
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- INTEGER( I4B ), ALLOCATABLE :: nptrs( : )
- INTEGER( I4B ) :: iel, ii
- CHARACTER( LEN=* ), PARAMETER :: filename="./mesh.h5"
+import CodeBlock from '@theme/CodeBlock';
- ! Initiate and open the mesh file which is in [[HDF5File_]] format.
- ! Then, create an instance of mesh.
+import CodeSnippet from '!!raw-loader!./_DisplayBoundaryFacetData_test_1.F90';
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- CALL meshfile%Open()
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+{CodeSnippet}
- ! Displaying the node data.
-
- CALL obj%DisplayBoundaryFacetData( "Boundary facet data" )
-
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.F90 b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.F90
new file mode 100644
index 00000000..e8be71f9
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.F90
@@ -0,0 +1,32 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: This example shows how to use `DisplayBoundaryFacetData`
+! method to display the boundary facet data.
+! In this example we do create an instance of Domain, therefore,
+! we build the information about `DOMAIN_BOUNDARY_ELEMENT` and `BOUNDARY_ELEMENT`.
+
+PROGRAM main
+ use FEMesh_Class
+ use FEDomain_Class
+ use HDF5File_Class
+ use GlobalData
+
+ IMPLICIT NONE
+
+ CLASS( AbstractMesh_ ), POINTER :: obj
+ TYPE( FEDomain_ ) :: dom
+ TYPE( HDF5File_ ) :: domainFile
+ INTEGER( I4B ) :: iel, ii
+ CHARACTER( LEN=* ), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+
+ CALL domainFile%Initiate( FileName=filename, MODE="READ" )
+ CALL domainFile%Open()
+ CALL dom%Initiate(hdf5=domainFile, group="" )
+
+ obj => dom%GetMeshPointer(dim=dom%getNSD(), entityNum=1)
+
+ CALL obj%DisplayBoundaryFacetData( "BoundaryFacetData = " )
+
+ CALL obj%Deallocate()
+ CALL domainFile%Deallocate()
+END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.md b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.md
index 86eee510..c885bb39 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.md
+++ b/docs/docs-api/FEMesh/examples/_DisplayBoundaryFacetData_test_2.md
@@ -3,25 +3,10 @@ This example shows how to use `DisplayBoundaryFacetData` method to display the b
In this example we do create an instance of Domain, therefore,
we build the information about `DOMAIN_BOUNDARY_ELEMENT` and `BOUNDARY_ELEMENT`.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- CLASS( Mesh_ ), POINTER :: obj
- TYPE( Domain_ ) :: dom
- TYPE( HDF5File_ ) :: domainFile
- INTEGER( I4B ) :: iel, ii
- CHARACTER( LEN=* ), PARAMETER :: filename="./mesh.h5"
- CALL domainFile%Initiate( FileName=filename, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate(hdf5=domainFile, group="" )
- obj => dom%getMeshPointer(dim=dom%getNSD(), entityNum=1)
+import CodeBlock from '@theme/CodeBlock';
- CALL obj%DisplayBoundaryFacetData( "BoundaryFacetData = " )
+import CodeSnippet from '!!raw-loader!./_DisplayBoundaryFacetData_test_2.F90';
+
+{CodeSnippet}
- CALL obj%Deallocate()
- CALL domainFile%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.F90 b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.F90
index bd8128d1..00f8a576 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.F90
@@ -1,19 +1,25 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: Testing DisplayElementData method of FEMesh class
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+use HDF5File_Class
+use GlobalData
+
IMPLICIT NONE
-TYPE(Mesh_) :: obj
+
+TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
INTEGER(I4B), ALLOCATABLE :: nptrs(:)
INTEGER(I4B) :: iel, ii
-CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_mesh.h5"
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
CALL meshfile%Initiate(FileName=filename, MODE="READ")
CALL meshfile%OPEN()
-CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1")
+CALL obj%Initiate(hdf5=meshfile, dim=2)
CALL obj%DisplayElementData("element data")
-CALL Display("OK")
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
diff --git a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.md b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.md
index 8af255f2..7c1c045f 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_1.md
@@ -1,35 +1,9 @@
This example shows how to use `DisplayElementData` method to display the content of element data inside the mesh.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- INTEGER( I4B ), ALLOCATABLE :: nptrs( : )
- INTEGER( I4B ) :: iel, ii
- CHARACTER( LEN=* ), PARAMETER :: filename="./meshdata/small_mesh.h5"
-```
-Initiate and open the mesh file which is in HDF5File format.
-Then, create an instance of mesh.
+import CodeBlock from '@theme/CodeBlock';
-```fortran
-CALL meshfile%Initiate( FileName=filename, MODE="READ" )
-CALL meshfile%Open()
-CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
-```
+import CodeSnippet from '!!raw-loader!./_DisplayElementData_test_1.F90';
-Displaying the element data.
+{CodeSnippet}
-```fortran
-CALL obj%DisplayElementData( "element data" )
-CALL Display( "OK" )
-```
-
-```fortran
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.F90 b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.F90
index 5481e9ab..87bdbb38 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.F90
@@ -1,7 +1,11 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: Testing DisplayElementData method of FEMesh class
+
PROGRAM main
-USE FEMesh_Class, ONLY: FEMesh_
-USE HDF5File_Class, ONLY: HDF5File_
-USE GlobalData, ONLY: I4B
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
IMPLICIT NONE
@@ -9,11 +13,11 @@ PROGRAM main
TYPE(HDF5File_) :: meshfile
INTEGER(I4B), ALLOCATABLE :: nptrs(:)
INTEGER(I4B) :: iel, ii
-CHARACTER(LEN=*), PARAMETER :: filename = "../../Mesh/examples/meshdata/small_quad4_mesh.h5"
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
CALL meshfile%Initiate(FileName=filename, MODE="READ")
CALL meshfile%OPEN()
-CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1")
+CALL obj%Initiate(hdf5=meshfile, dim=2)
CALL obj%DisplayElementData("element data:", globalElement=1, islocal=.TRUE.)
CALL obj%DEALLOCATE()
diff --git a/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.md b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.md
new file mode 100644
index 00000000..2eaa6766
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayElementData_test_2.md
@@ -0,0 +1,8 @@
+This example shows how to use `DisplayElementData` method to display the content of element data inside the mesh.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_DisplayElementData_test_2.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.md b/docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.md
deleted file mode 100644
index 700a415b..00000000
--- a/docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.md
+++ /dev/null
@@ -1,22 +0,0 @@
-PROGRAM main
-USE easifemBase
-USE easifemClasses
-
-IMPLICIT NONE
-
-TYPE(FEMesh_) :: obj
-TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
-
-CALL meshfile%Initiate(FileName=filename, MODE="READ")
-
-CALL meshfile%OPEN()
-
-CALL obj%Initiate(hdf5=meshfile, dim=2)
-
-CALL obj%InitiateFacetElements()
-
-CALL obj%DEALLOCATE()
-CALL meshfile%DEALLOCATE()
-END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.F90 b/docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.F90
similarity index 65%
rename from docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.F90
rename to docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.F90
index eff43335..e9752872 100644
--- a/docs/docs-api/FEMesh/examples/_DisplayFaceData_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.F90
@@ -1,13 +1,18 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-02
+! summary: Test method for DisplayFacetData
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
IMPLICIT NONE
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
CHARACTER(LEN=*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+ "./meshdata/small_tri3_mesh.h5"
CALL meshfile%Initiate(FileName=filename, MODE="READ")
diff --git a/docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.md b/docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.md
new file mode 100644
index 00000000..e37fe25a
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayFacetData_test_1.md
@@ -0,0 +1,7 @@
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_DisplayFacetData_test_1.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.F90 b/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.F90
new file mode 100644
index 00000000..d80fe72d
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.F90
@@ -0,0 +1,26 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: DisplayMeshInfo method is tested in this example.
+
+PROGRAM main
+USE FEMesh_Class, only: FEMesh_
+USE HDF5File_Class, only: HDF5File_
+USE GlobalData, ONLY: I4B
+USE Test_Method, ONLY: OK
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri6_mesh.h5"
+
+INTEGER(I4B), PARAMETER :: nsd = 2
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+CALL meshfile%OPEN()
+CALL obj%Initiate(hdf5=meshfile, dim=nsd)
+CALL obj%DisplayMeshInfo("FEMesh")
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.md b/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.md
new file mode 100644
index 00000000..87e40fb8
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_DisplayMeshInfo_test_1.md
@@ -0,0 +1,19 @@
+Display method of FEMesh.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_DisplayMeshInfo_test_1.F90';
+
+{CodeSnippet}
+
+The result of this example is given below.
+
+```bash title="results"
+FEMesh
+==============================
+total nodes: 37
+total elements: 14
+tEdges: 0
+tFaces: 25
+==============================
+```
diff --git a/docs/docs-api/FEMesh/examples/_Display_test_1.F90 b/docs/docs-api/FEMesh/examples/_Display_test_1.F90
new file mode 100644
index 00000000..5e050691
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_Display_test_1.F90
@@ -0,0 +1,26 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Display method is tested in this example.
+
+PROGRAM main
+USE FEMesh_Class, only: FEMesh_
+USE HDF5File_Class, only: HDF5File_
+USE GlobalData, ONLY: I4B
+USE Test_Method, ONLY: OK
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri6_mesh.h5"
+
+INTEGER(I4B), PARAMETER :: nsd = 2
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+CALL meshfile%OPEN()
+CALL obj%Initiate(hdf5=meshfile, dim=nsd)
+CALL obj%Display("FEMesh")
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_Display_test_1.md b/docs/docs-api/FEMesh/examples/_Display_test_1.md
new file mode 100644
index 00000000..5b49b58a
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_Display_test_1.md
@@ -0,0 +1,75 @@
+Display method of FEMesh.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Display_test_1.F90';
+
+{CodeSnippet}
+
+The result of this example is given below.
+
+```bash title="results"
+Mesh object initiated: TRUE
+showTime: FALSE
+readFromFile: TRUE
+isNodeToElementsInitiated: FALSE
+isNodeToNodesInitiated: FALSE
+isExtraNodeToNodesInitiated: FALSE
+isElementToElementsInitiated: TRUE
+isEdgeConnectivityInitiated: FALSE
+isFaceConnectivityInitiated: TRUE
+isBoundaryDataInitiated: FALSE
+isFacetDataInitiated: FALSE
+uid: 1
+Total elements (topology wise)
+==============================
+point: 0
+line: 0
+triangle: 14
+quadrangle: 0
+tetrahedron: 0
+hexahedron: 0
+prism: 0
+pyramid: 0
+
+Total topologies: 1
+Topologies(1): Triangle3
+maxNNE: 6
+nsd: 2
+xidim: 2
+maxNptrs: 37
+minNptrs: 1
+maxElemNum: 26
+minElemNum: 13
+tNodes: 37
+tEdges: 0
+tFaces: 25
+tElements: 14
+minX: 0.00000
+maxX: 2.00000
+minY: 0.00000
+maxY: 2.00000
+minZ: 0.00000
+maxZ: 0.00000
+X: 0.00000
+Y: 0.00000
+Z: 0.00000
+boundingEntity ALLOCATED: TRUE
+boundingEntity:
+----------------
+ 1
+ 2
+ 3
+ 4
+local_elemNumber ALLOCATED: TRUE
+local_nptrs ALLOCATED: TRUE
+quality ALLOCATED: FALSE
+facetElementType ALLOCATED: FALSE
+nodeData ALLOCATED: TRUE
+nodeData Size: 37
+elementData ALLOCATED: TRUE
+elementData Size: 14
+facetData ALLOCATED: FALSE
+kdtree Associated: FALSE
+kdresult Allocated: FALSE
+```
diff --git a/docs/docs-api/FEMesh/examples/_HOMesh_test_1.F90 b/docs/docs-api/FEMesh/examples/_HOMesh_test_1.F90
new file mode 100644
index 00000000..cff55931
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_HOMesh_test_1.F90
@@ -0,0 +1,28 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Testing High order two dimensional mesh
+
+PROGRAM main
+USE FEMesh_Class, only: FEMesh_
+USE HDF5File_Class, only: HDF5File_
+USE GlobalData, ONLY: I4B
+USE Test_Method, ONLY: OK
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri6_mesh.h5"
+
+INTEGER(I4B), PARAMETER :: nsd = 2
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+CALL meshfile%OPEN()
+CALL obj%Initiate(hdf5=meshfile, dim=nsd)
+CALL obj%Display("FEMesh")
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
+END PROGRAM main
+
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.F90
index bc236cc3..7a49952c 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.F90
@@ -1,22 +1,30 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Testing InitiateDynamicDataStructure
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="./meshdata/small_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate dynamic data structure
- CALL obj%InitiateDynamicDataStructure()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE GlobalData
+
+IMPLICIT NONE
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+!Open the mesh file
+CALL meshfile%OPEN()
+CALL obj%SetShowTime(.TRUE.)
+!Initiate an instance of `FEMesh_`
+CALL obj%Initiate(hdf5=meshfile, dim=2)
+! Initiate dynamic data structure
+CALL obj%InitiateDynamicDataStructure()
+!Display the content of mesh.
+CALL obj%DisplayMeshInfo(filename)
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.md
new file mode 100644
index 00000000..786bb417
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_1.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateDynamicDataStructure_test_1.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_2.F90 b/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_2.F90
deleted file mode 100644
index 6596dce4..00000000
--- a/docs/docs-api/FEMesh/examples/_InitiateDynamicDataStructure_test_2.F90
+++ /dev/null
@@ -1,21 +0,0 @@
-PROGRAM main
-USE easifemBase
-USE easifemClasses
-IMPLICIT NONE
-TYPE(Mesh_) :: obj
-TYPE(HDF5File_) :: meshfile
-CHARACTER(*), PARAMETER :: filename = "./meshdata/big_mesh.h5"
-CALL e%SetQuietMode(.TRUE.)
-CALL meshfile%Initiate(FileName=filename, MODE="READ")
-!Open the mesh file
-CALL meshfile%OPEN()
-CALL obj%SetShowTime(.TRUE.)
-!Initiate an instance of `Mesh_`
-CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1")
-! Initiate dynamic data structure
-CALL obj%InitiateDynamicDataStructure()
-!Display the content of mesh.
-CALL obj%DisplayMeshInfo(filename)
-CALL obj%DEALLOCATE()
-CALL meshfile%DEALLOCATE()
-END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.F90
index 426a6466..96169190 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.F90
@@ -1,18 +1,28 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: This example demonstrates how to initiate edge connectivity for a mesh object in EasiFEM.
PROGRAM main
- USE easifemBase
- USE easifemClasses
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+ use Display_Method
+ USE ExceptionHandler_Class, only: e
+
IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
+
+ TYPE( FEMesh_ ) :: obj
TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="./meshdata/small_mesh.h5"
+ CHARACTER(*), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+ CHARACTER(*), PARAMETER :: testname="InitiateEdgeConnectivity_test_1"
+
CALL e%SetQuietMode(.TRUE.)
CALL meshfile%Initiate( FileName=filename, MODE="READ" )
!Open the mesh file
CALL meshfile%Open()
CALL obj%SetShowTime(.TRUE.)
!Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
!Initiate an edge connectivity
CALL obj%InitiateEdgeConnectivity()
!Display the content of mesh.
@@ -20,4 +30,5 @@ PROGRAM main
CALL obj%DisplayElementData("ElementData:")
CALL obj%Deallocate()
CALL meshfile%Deallocate()
+ CALL Display("End of test: " // trim(testname))
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.md
index b7263ed6..91f51ac8 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateEdgeConnectivity_test_1.md
@@ -1,4 +1,4 @@
-In this example we show the usage of `InitiateEdgeConnectivity` method.
+In this example we show the usage of `InitiateEdgeConnectivity` method.
```fortran
PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.F90
index 2fa17c70..5f963934 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.F90
@@ -1,24 +1,42 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: This program tests the InitiateElementToElements method of the FEMesh class.
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.TRUE.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- !Initiate an edge connectivity
- CALL obj%InitiateEdgeConnectivity()
- ! Initiate Element to Element data
- CALL obj%InitiateElementToElements()
- !Display the content of mesh.
- CALL obj%DisplayElementData("ElementData:")
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE ExceptionHandler_Class, ONLY: e
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+!Open the mesh file
+
+CALL meshfile%OPEN()
+
+CALL obj%SetShowTime(.TRUE.)
+
+!Initiate an instance of `Mesh_`
+CALL obj%Initiate(hdf5=meshfile, dim=2)
+
+!Initiate an edge connectivity
+CALL obj%InitiateEdgeConnectivity()
+
+! Initiate Element to Element data
+CALL obj%InitiateElementToElements()
+
+!Display the content of mesh.
+CALL obj%DisplayElementData("ElementData:")
+
+! Display the mesh information
+CALL obj%DisplayMeshInfo(filename)
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.md
index ac2da162..1af8db8f 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateElementToElements_test_1.md
@@ -1,34 +1,7 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+import CodeBlock from '@theme/CodeBlock';
- !Open the mesh file
- CALL meshfile%Open()
+import CodeSnippet from '!!raw-loader!./_InitiateElementToElements_test_1.F90';
- CALL obj%SetShowTime(.TRUE.)
+{CodeSnippet}
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
-
- !Initiate an edge connectivity
- CALL obj%InitiateEdgeConnectivity()
-
- ! Initiate Element to Element data
- CALL obj%InitiateElementToElements()
-
- !Display the content of mesh.
- CALL obj%DisplayElementData("ElementData:")
-
- CALL obj%DisplayMeshInfo(filename)
-
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.F90
index 8dc9fb7c..cfc5fcd8 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.F90
@@ -1,23 +1,41 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: This example demonstrates the use of the `InitiateFaceConnectivity` method in the `FEMesh_` class to set up face connectivity for a 3D mesh.
PROGRAM main
- USE easifemBase
- USE easifemClasses
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+ USE Display_Method
+ USE ExceptionHandler_Class, only: e
+
IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
+ TYPE( FEMesh_ ) :: obj
TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="./meshdata/small_mesh_3d.h5"
+ CHARACTER(*), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+ CHARACTER(*), PARAMETER :: testname="InitiateFaceConnectivity_test_1"
+
CALL e%SetQuietMode(.TRUE.)
+
CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+
!Open the mesh file
CALL meshfile%Open()
CALL obj%SetShowTime(.TRUE.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/volumeEntities_1" )
+
+ !Initiate an instance of `FEMesh_`
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
+
!Initiate an edge connectivity
CALL obj%InitiateFaceConnectivity()
+
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
+
CALL obj%DisplayElementData("ElementData:")
+
CALL obj%Deallocate()
CALL meshfile%Deallocate()
+
+ CALL Display("End of test: " //testname)
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.md
index 24337940..0fdc0b11 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_1.md
@@ -1,34 +1,7 @@
In this example we show the usage of `InitiateFaceConnectivity` method.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="./meshdata/small_mesh_3d.h5"
+import CodeBlock from '@theme/CodeBlock';
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+import CodeSnippet from '!!raw-loader!./_InitiateFaceConnectivity_test_1.F90';
- !Open the mesh file
- CALL meshfile%Open()
-
- CALL obj%SetShowTime(.TRUE.)
-
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/volumeEntities_1" )
-
- !Initiate an edge connectivity
- CALL obj%InitiateFaceConnectivity()
-
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
-
- CALL obj%DisplayElementData("ElementData:")
-
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_2.F90 b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_2.F90
index b4b2c2e1..0c87f9e2 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateFaceConnectivity_test_2.F90
@@ -1,36 +1,42 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: This example demonstrates the use of the `InitiateFaceConnectivity` method in the `FEMesh_` class to set up face connectivity for a 3D mesh.
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE Display_Method
+USE ExceptionHandler_Class, ONLY: e
+
IMPLICIT NONE
-TYPE(Mesh_) :: obj
+
+TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
-CHARACTER(*), PARAMETER :: filename = "./meshdata/small_mesh_3d.h5"
+CHARACTER(*), PARAMETER :: filename = "./meshdata/small_hexa8_mesh.h5"
+CHARACTER(*), PARAMETER :: testname = "InitiateFaceConnectivity_test_2"
+
INTEGER(I4B) :: iel, globalFaceCon(4, 6), localFaceCon(4, 6)
+
CALL e%SetQuietMode(.TRUE.)
+
CALL meshfile%Initiate(FileName=filename, MODE="READ")
+
!Open the mesh file
CALL meshfile%OPEN()
CALL obj%SetShowTime(.TRUE.)
+
!Initiate an instance of `Mesh_`
-CALL obj%Initiate(hdf5=meshfile, group="/volumeEntities_1")
+CALL obj%Initiate(hdf5=meshfile, dim=3)
+
!Initiate an edge connectivity
CALL obj%InitiateFaceConnectivity()
+
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
-! CALL obj%DisplayElementData("ElementData:")
-
-CALL ElemData_GetGlobalFaceCon(obj%elementData(1), &
- & globalFaceCon, localFaceCon)
-CALL Display(obj%elementData(1), "elementData(1): ")
-CALL Display(localFaceCon, "localFaceCon(1): ")
-CALL Display(globalFaceCon, "globalFaceCon(1): ")
-
-CALL ElemData_GetGlobalFaceCon(obj%elementData(2), &
- & globalFaceCon, localFaceCon)
-CALL Display(obj%elementData(2), "elementData(2): ")
-CALL Display(localFaceCon, "localFaceCon(2): ")
-CALL Display(globalFaceCon, "globalFaceCon(2): ")
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
+
+CALL Display("End of test: "//testname)
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.F90
index 700a415b..879b60bb 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.F90
@@ -1,13 +1,20 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Test for InitiateFacetElements method of FEMesh class
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE Display_Method
IMPLICIT NONE
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
+CHARACTER(*), PARAMETER :: testname = "InitiateFacetElements_test_1"
CALL meshfile%Initiate(FileName=filename, MODE="READ")
@@ -19,4 +26,6 @@ PROGRAM main
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
+
+CALL Display("Finish test: "//testname)
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.md
index 50b5b192..86d0b1e5 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_1.md
@@ -1,26 +1,5 @@
-
+import CodeBlock from '@theme/CodeBlock';
-```fortran
-PROGRAM main
-USE easifemBase
-USE easifemClasses
+import CodeSnippet from '!!raw-loader!./_InitiateFacetElements_test_1.F90';
-IMPLICIT NONE
-
-TYPE(FEMesh_) :: obj
-TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
-
-CALL meshfile%Initiate(FileName=filename, MODE="READ")
-
-CALL meshfile%OPEN()
-
-CALL obj%Initiate(hdf5=meshfile, dim=2)
-
-CALL obj%InitiateFacetElements()
-
-CALL obj%DEALLOCATE()
-CALL meshfile%DEALLOCATE()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.F90 b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.F90
index e5a61e88..2f844954 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.F90
@@ -1,16 +1,31 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Test for InitiateFacetElements method of FEMesh class
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE Display_Method
+
IMPLICIT NONE
+
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/very_small_quad4_mesh_two_region.h5"
+CHARACTER(*), PARAMETER :: testname="InitiateFacetElements_test_2"
+
CALL meshfile%Initiate(FileName=filename, MODE="READ")
CALL meshfile%OPEN()
+
CALL obj%Initiate(hdf5=meshfile, dim=2)
+
CALL obj%InitiateFacetElements()
+
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
+
+CALL Display("Finish test: " // testname )
+
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.md b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.md
index c3e396ac..ae94b10a 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_2.md
@@ -1,26 +1,5 @@
-
+import CodeBlock from '@theme/CodeBlock';
-```fortran
-PROGRAM main
-USE easifemBase
-USE easifemClasses
+import CodeSnippet from '!!raw-loader!./_InitiateFacetElements_test_2.F90';
-IMPLICIT NONE
-
-TYPE(FEMesh_) :: obj
-TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
-
-CALL meshfile%Initiate(FileName=filename, MODE="READ")
-
-CALL meshfile%OPEN()
-
-CALL obj%Initiate(hdf5=meshfile, dim=2)
-
-CALL obj%InitiateFacetElements()
-
-CALL obj%DEALLOCATE()
-CALL meshfile%DEALLOCATE()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.F90 b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.F90
index 67b5f02e..ddd20007 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.F90
@@ -1,13 +1,20 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Test for InitiateFacetElements method of FEMesh class
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE Display_Method
+use Test_Method
IMPLICIT NONE
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
-CHARACTER(LEN=*), PARAMETER :: filename = &
- & "../../Mesh/examples/meshdata/small_mesh.h5"
+CHARACTER(LEN=*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
+CHARACTER(*), PARAMETER :: testname="InitiateFacetElements_test_3"
INTEGER(I4B) :: found, want
CALL meshfile%Initiate(FileName=filename, MODE="READ")
@@ -32,4 +39,6 @@ PROGRAM main
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
+
+CALL Display("Finish test: " // testname )
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.md b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.md
new file mode 100644
index 00000000..c5771136
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_InitiateFacetElements_test_3.md
@@ -0,0 +1,5 @@
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateFacetElements_test_3.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.F90
index 4eacd291..7ca35e75 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.F90
@@ -1,24 +1,38 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToElements
PROGRAM main
- USE easifemBase
- USE easifemClasses
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+ use ExceptionHandler_Class, only: e
+
IMPLICIT NONE
+
TYPE( FEMesh_ ) :: obj
TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
+ CHARACTER(*), PARAMETER :: filename="./meshdata/small_tri3_mesh.h5"
+
CALL e%SetQuietMode(.TRUE.)
CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+
!Open the mesh file
CALL meshfile%Open()
CALL obj%SetShowTime(.true.)
+
!Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
+
! Initiate dynamic data structure
CALL obj%InitiateNodeToElements()
+
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
+
! Display the mesh data
CALL obj%DisplayNodeData("Node data of " // filename)
+
CALL obj%Deallocate()
CALL meshfile%Deallocate()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.md
index aca950ea..4af2a209 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_1.md
@@ -1,25 +1,7 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate dynamic data structure
- CALL obj%InitiateNodeToElements()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- ! Display the mesh data
- CALL obj%DisplayNodeData("Node data of " // filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToElements_test_1.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.F90
index 65a49da5..c411d618 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.F90
@@ -1,22 +1,38 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToElements
PROGRAM main
- USE easifemBase
- USE easifemClasses
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+ use ExceptionHandler_Class, only: e
+
IMPLICIT NONE
+
TYPE( FEMesh_ ) :: obj
TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_mesh.h5"
+ CHARACTER(*), PARAMETER :: filename="./meshdata/big_tri3_mesh.h5"
+
CALL e%SetQuietMode(.TRUE.)
CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+
!Open the mesh file
CALL meshfile%Open()
CALL obj%SetShowTime(.true.)
+
!Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
+
! Initiate dynamic data structure
CALL obj%InitiateNodeToElements()
+
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
+
+ ! Display the mesh data
+ CALL obj%DisplayNodeData("Node data of " // filename)
+
CALL obj%Deallocate()
CALL meshfile%Deallocate()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.md
index 7d020190..b54dc0bd 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_2.md
@@ -1,23 +1,7 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate dynamic data structure
- CALL obj%InitiateNodeToElements()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToElements_test_2.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.F90
index 6a79dbea..4c22a309 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.F90
@@ -1,22 +1,38 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToElements
PROGRAM main
- USE easifemBase
- USE easifemClasses
+ USE FEMesh_Class
+ USE HDF5File_Class
+ USE GlobalData
+ use ExceptionHandler_Class, only: e
+
IMPLICIT NONE
+
TYPE( FEMesh_ ) :: obj
TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_big_mesh.h5"
+ CHARACTER(*), PARAMETER :: filename="./meshdata/big_big_tri3_mesh.h5"
+
CALL e%SetQuietMode(.TRUE.)
CALL meshfile%Initiate( FileName=filename, MODE="READ" )
+
!Open the mesh file
CALL meshfile%Open()
CALL obj%SetShowTime(.true.)
+
!Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+ CALL obj%Initiate(hdf5=meshfile, dim=2)
+
! Initiate dynamic data structure
CALL obj%InitiateNodeToElements()
+
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
+
+ ! Display the mesh data
+ CALL obj%DisplayNodeData("Node data of " // filename)
+
CALL obj%Deallocate()
CALL meshfile%Deallocate()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.md
index 81cde223..005acbcd 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToElements_test_3.md
@@ -1,23 +1,7 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate dynamic data structure
- CALL obj%InitiateNodeToElements()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToElements_test_3.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.F90
index d58cd973..78559eac 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.F90
@@ -1,24 +1,39 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToNodes
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- ! Display the mesh data
- CALL obj%DisplayNodeData("Node data of " // filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE ExceptionHandler_Class, ONLY: e
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename = "./meshdata/small_tri3_mesh.h5"
+
+CALL e%SetQuietMode(.TRUE.)
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+
+!Open the mesh file
+CALL meshfile%OPEN()
+CALL obj%SetShowTime(.TRUE.)
+
+!Initiate an instance of `Mesh_`
+CALL obj%Initiate(hdf5=meshfile, dim=2)
+
+! Initiate node to nodes
+CALL obj%InitiateNodeToNodes()
+
+!Display the content of mesh.
+CALL obj%DisplayMeshInfo(filename)
+
+! Display the mesh data
+CALL obj%DisplayNodeData("Node data of "//filename)
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.md
index 9efd45dc..68ec964e 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_1.md
@@ -1,25 +1,7 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/small_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- ! Display the mesh data
- CALL obj%DisplayNodeData("Node data of " // filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToNodes_test_1.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.F90
index fa466d28..afc74da3 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.F90
@@ -1,22 +1,39 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToNodes
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE ExceptionHandler_Class, ONLY: e
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename = "./meshdata/big_tri3_mesh.h5"
+
+CALL e%SetQuietMode(.TRUE.)
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+
+!Open the mesh file
+CALL meshfile%OPEN()
+CALL obj%SetShowTime(.TRUE.)
+
+!Initiate an instance of `Mesh_`
+CALL obj%Initiate(hdf5=meshfile, dim=2)
+
+! Initiate node to nodes
+CALL obj%InitiateNodeToNodes()
+
+!Display the content of mesh.
+CALL obj%DisplayMeshInfo(filename)
+
+! Display the mesh data
+CALL obj%DisplayNodeData("Node data of "//filename)
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.md
index 31e852bf..8680fcfa 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_2.md
@@ -1,23 +1,6 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToNodes_test_2.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.F90 b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.F90
index 76ae485b..5e7f91a9 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.F90
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.F90
@@ -1,22 +1,40 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: Testing of InitiateNodeToNodes
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE GlobalData
+USE ExceptionHandler_Class, ONLY: e
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename = "./meshdata/big_big_tri3_mesh.h5"
+
+CALL e%SetQuietMode(.TRUE.)
+
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+
+!Open the mesh file
+CALL meshfile%OPEN()
+CALL obj%SetShowTime(.TRUE.)
+
+!Initiate an instance of `Mesh_`
+CALL obj%Initiate(hdf5=meshfile, dim=2)
+
+! Initiate node to nodes
+CALL obj%InitiateNodeToNodes()
+
+!Display the content of mesh.
+CALL obj%DisplayMeshInfo(filename)
+
+! Display the mesh data
+CALL obj%DisplayNodeData("Node data of "//filename)
+
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
+
diff --git a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.md b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.md
index 62ff20bb..9649c723 100644
--- a/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.md
+++ b/docs/docs-api/FEMesh/examples/_InitiateNodeToNodes_test_3.md
@@ -1,23 +1,6 @@
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="../../Mesh/examples/meshdata/big_big_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate node to nodes
- CALL obj%InitiateNodeToNodes()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_InitiateNodeToNodes_test_3.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_1.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_1.F90
index 4a0ef849..497b8db5 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_1.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_1.F90
@@ -1,5 +1,5 @@
PROGRAM main
-USE MSHFile_Class, ONLY: MSHFile_
+USE MSHFile_Class
USE HDF5File_Class
USE GlobalData
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_1.md b/docs/docs-api/FEMesh/examples/_Initiate_test_1.md
index 45095d2e..f718477c 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_1.md
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_1.md
@@ -4,4 +4,3 @@ import CodeBlock from '@theme/CodeBlock';
import MyCode from '!!raw-loader!./_Initiate_test_1.F90';
{MyCode}
-
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_2.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_2.F90
index f7e3b713..1f717811 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_2.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_2.F90
@@ -1,3 +1,7 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-05-30
+! summary: Read a 2D quadrangle mesh with two regions from an HDF5 file
+
PROGRAM main
USE FEMesh_Class, only: FEMesh_
USE HDF5File_Class, only: HDF5File_
@@ -9,7 +13,7 @@ PROGRAM main
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
+ "./meshdata/very_small_quad4_mesh_two_region.h5"
INTEGER(I4B), PARAMETER :: nsd = 2
INTEGER(I4B), PARAMETER :: entities(2) = [1, 2]
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_2.md b/docs/docs-api/FEMesh/examples/_Initiate_test_2.md
index ad3fc3df..d62ca98e 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_2.md
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_2.md
@@ -1,45 +1,7 @@
-This example shows how to initiate an instance of `Mesh_` by reading data
-from mesh file, which is in `HDF5File_` format.
+Read a two dimensional mesh of quadrangle elements.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER( LEN = *), PARAMETER :: filename= &
- & "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
-```
+import CodeBlock from '@theme/CodeBlock';
-Initiate and open the mesh file which is in `HDF5File_` format.
+import CodeSnippet from '!!raw-loader!./_Initiate_test_2.F90';
-```fortran
-CALL meshfile%Initiate( FileName=filename, MODE="READ" )
-```
-
-Open the mesh file
-
-```fortran
-CALL meshfile%Open()
-```
-
-Initiate an instance of `Mesh_`
-
-```fortran
-CALL obj%Initiate(hdf5=meshfile, dim=2, entities=[1,2] )
-```
-
-Display the content of mesh.
-
-```comment
-CALL obj%Display("")
-```
-
-cleaning up.
-
-```fortran
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_3.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_3.F90
index 7236176c..67aaa7bd 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_3.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_3.F90
@@ -1,3 +1,12 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-05-30
+! summary: Read a 2D quadrangle mesh with two regions from an HDF5 file
+!
+!# Introduction
+!
+! This program reads a 2D quadrangle mesh with two regions from an HDF5 file.
+! It will read all the entities of a given dimension (nsd) from the file.
+
PROGRAM main
USE FEMesh_Class
USE HDF5File_Class
@@ -9,14 +18,16 @@ PROGRAM main
TYPE(HDF5File_) :: meshfile
CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
+ "./meshdata/very_small_quad4_mesh_two_region.h5"
INTEGER(I4B), PARAMETER :: nsd = 2
CALL meshfile%Initiate(FileName=filename, MODE="READ")
CALL meshfile%OPEN()
+! Read all the entities of dim = nsd
CALL obj%Initiate(hdf5=meshfile, dim=nsd)
+CALL obj%DisplayMeshInfo("Mesh information: ")
CALL OK(.TRUE., "Initiate")
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_3.md b/docs/docs-api/FEMesh/examples/_Initiate_test_3.md
index 3f71edf3..beb0bad5 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_3.md
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_3.md
@@ -1,45 +1,7 @@
-This example shows how to initiate an instance of `Mesh_` by reading data
-from mesh file, which is in `HDF5File_` format.
+Read a 2D mesh of quadrangle elements with two regions.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER( LEN = *), PARAMETER :: filename= &
- & "../../Mesh/examples/meshdata/small_mesh_two_region.h5"
-```
+import CodeBlock from '@theme/CodeBlock';
-Initiate and open the mesh file which is in `HDF5File_` format.
+import CodeSnippet from '!!raw-loader!./_Initiate_test_3.F90';
-```fortran
-CALL meshfile%Initiate( FileName=filename, MODE="READ" )
-```
-
-Open the mesh file
-
-```fortran
-CALL meshfile%Open()
-```
-
-Initiate an instance of `Mesh_`
-
-```fortran
-CALL obj%Initiate(hdf5=meshfile, dim=2 )
-```
-
-Display the content of mesh.
-
-```fortran
-CALL obj%Display("")
-```
-
-cleaning up.
-
-```fortran
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_4.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_4.F90
index 04a970d9..ff6ce636 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_4.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_4.F90
@@ -10,7 +10,7 @@ PROGRAM main
TYPE(HDF5File_) :: meshfile
CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_3d_two_region.h5"
+ "./meshdata/very_small_hexa8_mesh_two_region.h5"
INTEGER(I4B), PARAMETER :: nsd = 3
CALL meshfile%Initiate(FileName=filename, MODE="READ")
@@ -18,6 +18,7 @@ PROGRAM main
CALL meshfile%OPEN()
CALL obj%Initiate(hdf5=meshfile, dim=nsd)
+CALL obj%DisplayMeshInfo("Mesh information: ")
CALL OK(.TRUE., "Initiate_4")
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_4.md b/docs/docs-api/FEMesh/examples/_Initiate_test_4.md
index 92e7bc80..a07931ae 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_4.md
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_4.md
@@ -1,45 +1,7 @@
-This example shows how to initiate an instance of `Mesh_` by reading data
-from mesh file, which is in `HDF5File_` format.
+In this example, we will read a 3D mesh of hexahedral elements with two regions.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER( LEN = *), PARAMETER :: filename= &
- & "../../Mesh/examples/meshdata/small_mesh_3d_two_region.h5"
-```
+import CodeBlock from '@theme/CodeBlock';
-Initiate and open the mesh file which is in `HDF5File_` format.
+import CodeSnippet from '!!raw-loader!./_Initiate_test_4.F90';
-```fortran
-CALL meshfile%Initiate( FileName=filename, MODE="READ" )
-```
-
-Open the mesh file
-
-```fortran
-CALL meshfile%Open()
-```
-
-Initiate an instance of `Mesh_`
-
-```fortran
-CALL obj%Initiate(hdf5=meshfile, dim=3 )
-```
-
-Display the content of mesh.
-
-```fortran
-CALL obj%Display("")
-```
-
-cleaning up.
-
-```fortran
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_5.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_5.F90
index 532697dc..ff28bb6d 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_5.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_5.F90
@@ -1,3 +1,8 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-05-30
+! summary: Read a 3D mesh with two regions from an HDF5 file.
+! We specify the entities to be read from the file.
+
PROGRAM main
USE FEMesh_Class
USE HDF5File_Class
@@ -9,15 +14,16 @@ PROGRAM main
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
CHARACTER(LEN=*), PARAMETER :: filename = &
- "../../Mesh/examples/meshdata/small_mesh_3d_two_region.h5"
+ "./meshdata/very_small_hexa8_mesh_two_region.h5"
INTEGER(I4B), PARAMETER :: nsd = 3
-INTEGER(I4B), PARAMETER :: entities(10) = [1, 2, 3, 4, 5, 7, 8, 9, 10, 11]
+INTEGER(I4B), PARAMETER :: entities(2) = [1, 2]
CALL meshfile%Initiate(FileName=filename, MODE="READ")
CALL meshfile%OPEN()
CALL obj%Initiate(hdf5=meshfile, dim=nsd, entities=entities)
+CALL obj%DisplayMeshInfo("Mesh information: ")
! CALL obj%Display("")
CALL ok(.TRUE., "Initiate_5")
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_5.md b/docs/docs-api/FEMesh/examples/_Initiate_test_5.md
index d2942cd9..ea08989f 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_5.md
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_5.md
@@ -1,45 +1,7 @@
-This example shows how to initiate an instance of `Mesh_` by reading data
-from mesh file, which is in `HDF5File_` format.
+Read a 3D mesh with two regions from an HDF5 file. We specify the entities to be read from the file.
-```fortran
-PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( FEMesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER( LEN = *), PARAMETER :: filename= &
- & "../../Mesh/examples/meshdata/small_mesh_3d_two_region.h5"
-```
+import CodeBlock from '@theme/CodeBlock';
-Initiate and open the mesh file which is in `HDF5File_` format.
+import CodeSnippet from '!!raw-loader!./_Initiate_test_5.F90';
-```fortran
-CALL meshfile%Initiate( FileName=filename, MODE="READ" )
-```
-
-Open the mesh file
-
-```fortran
-CALL meshfile%Open()
-```
-
-Initiate an instance of `Mesh_`
-
-```fortran
-CALL obj%Initiate(hdf5=meshfile, dim=2, entities =[1, 2, 3, 4, 5, 7, 8, 9, 10, 11] )
-```
-
-Display the content of mesh.
-
-```fortran
-CALL obj%Display("")
-```
-
-cleaning up.
-
-```fortran
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
-END PROGRAM main
-```
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_7.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_6.F90
similarity index 58%
rename from docs/docs-api/FEMesh/examples/_Initiate_test_7.F90
rename to docs/docs-api/FEMesh/examples/_Initiate_test_6.F90
index 8837468b..f7acad8b 100644
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_7.F90
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_6.F90
@@ -1,15 +1,23 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-05-30
+! summary: Benchmark the initiate methods
+
PROGRAM main
USE FEMesh_Class
USE HDF5File_Class
USE GlobalData
USE Test_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
IMPLICIT NONE
TYPE(FEMesh_) :: obj
TYPE(HDF5File_) :: meshfile
-CHARACTER(*), PARAMETER :: filename = "../../Mesh/examples/meshdata/big_mesh.h5"
+CHARACTER(*), PARAMETER :: filename = "./meshdata/big_tri3_mesh.h5"
INTEGER(I4B), PARAMETER :: nsd = 2
+CHARACTER(*), PARAMETER :: testname = "Benchmark Initiate Method"
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
CALL meshfile%Initiate(FileName=filename, MODE="READ")
@@ -23,7 +31,7 @@ PROGRAM main
!Display the content of mesh.
CALL obj%DisplayMeshInfo(filename)
-CALL ok(.TRUE., "Initiate_7")
+CALL ok(.TRUE., testname)
CALL obj%DEALLOCATE()
CALL meshfile%DEALLOCATE()
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_6.md b/docs/docs-api/FEMesh/examples/_Initiate_test_6.md
new file mode 100644
index 00000000..6d9fd623
--- /dev/null
+++ b/docs/docs-api/FEMesh/examples/_Initiate_test_6.md
@@ -0,0 +1,7 @@
+Benchmarking for initiating the mesh.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Initiate_test_6.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/FEMesh/examples/_Initiate_test_8.F90 b/docs/docs-api/FEMesh/examples/_Initiate_test_8.F90
deleted file mode 100644
index 4fa32cc3..00000000
--- a/docs/docs-api/FEMesh/examples/_Initiate_test_8.F90
+++ /dev/null
@@ -1,30 +0,0 @@
-PROGRAM main
-USE FEMesh_Class
-USE HDF5File_Class
-USE GlobalData
-USE Test_Method
-USE ExceptionHandler_Class, ONLY: e
-
-IMPLICIT NONE
-
-TYPE(FEMesh_) :: obj
-TYPE(HDF5File_) :: meshfile
-CHARACTER(*), PARAMETER :: filename = "../../Mesh/examples/meshdata/big_big_mesh.h5"
-INTEGER(I4B), PARAMETER :: nsd = 2
-
-CALL e%SetQuietMode(.TRUE.)
-
-CALL meshfile%Initiate(FileName=filename, MODE="READ")
-
-!Open the mesh file
-CALL meshfile%OPEN()
-CALL obj%SetShowTime(.TRUE.)
-!Initiate an instance of `Mesh_`
-CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1")
-!Display the content of mesh.
-CALL obj%DisplayMeshInfo(filename)
-
-CALL ok(.TRUE., "Initiate_8")
-CALL obj%DEALLOCATE()
-CALL meshfile%DEALLOCATE()
-END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/_generate_mesh_files.md b/docs/docs-api/FEMesh/examples/_generate_mesh_files.md
index 4b23abb0..66d94f59 100644
--- a/docs/docs-api/FEMesh/examples/_generate_mesh_files.md
+++ b/docs/docs-api/FEMesh/examples/_generate_mesh_files.md
@@ -5,9 +5,9 @@ In this director you will find a directory called `meshdata` which contains the
1. ./meshdata/Generate3DMesh.F90: This file generates a 3D structured mesh of eight nodes brick elements.
2. ./meshdata/Generate3DMesh_two_regions.F90: This file generates a 3D structured mesh of eight nodes brick elements with two regions.
3. ./meshdata/GenerateMesh2D_triangle.F90: This file generates a 2D mesh of three and six nodes triangle elements. In this file you need to define the one of the following macro variables. Note that this program generates will create file in gmsh as well as hdf format.
- - `SMALL_TRI3_MESH`: This will generate a mesh of six nodes triangle elements.
- - `SMALL_TRI6_MESH`: This will generate a small mesh of six node triangle elements.
- - `BIG_TRI3_MESH`: This will generate a moderately big mesh of three nodes triangle elements.
- - `BIG_BIG_TRI3_MESH`: This will generate a big mesh of three nodes triangle elements
- - `BIG_TRI6_MESH`: This will generate a moderately big mesh of six nodes triangle elements.
- - `BIG_BIG_TRI6_MESH`: This will generate a big mesh of six nodes triangle elements
+ - `SMALL_TRI3_MESH`: This will generate a mesh of six nodes triangle elements.
+ - `SMALL_TRI6_MESH`: This will generate a small mesh of six node triangle elements.
+ - `BIG_TRI3_MESH`: This will generate a moderately big mesh of three nodes triangle elements.
+ - `BIG_BIG_TRI3_MESH`: This will generate a big mesh of three nodes triangle elements
+ - `BIG_TRI6_MESH`: This will generate a moderately big mesh of six nodes triangle elements.
+ - `BIG_BIG_TRI6_MESH`: This will generate a big mesh of six nodes triangle elements
diff --git a/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh.F90 b/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh.F90
index efdda96a..1d058809 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh.F90
+++ b/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh.F90
@@ -1,13 +1,23 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-03
+! summary: This code generates a simple 3D mesh using GmshStructuredMesh_Class
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
USE GlobalData
+USE GmshStructuredMesh_Class
+USE Gmsh_Class
+USE MSHFile_Class
+USE HDF5File_Class
+USE FPL, ONLY: FPL_Init, ParameterList_
+USE Display_Method
+
IMPLICIT NONE
TYPE(GmshStructuredMesh_) :: obj
TYPE(Gmsh_) :: gmsh
TYPE(ParameterList_) :: param
-CHARACTER(*), PARAMETER :: title = "small_mesh_3d"
+CHARACTER(*), PARAMETER :: title = "small_hexa8_mesh"
+CHARACTER(*), PARAMETER :: testname = "Generate3DMesh.F90"
REAL(DFP), PARAMETER :: pointsOnAxis1(2) = [0.0, 1.0]
REAL(DFP), PARAMETER :: pointsOnAxis2(2) = [0.0, 1.0]
REAL(DFP), PARAMETER :: pointsOnAxis3(2) = [0.0, 1.0]
@@ -24,16 +34,15 @@ PROGRAM main
CALL FPL_Init()
CALL param%Initiate()
-CALL SetGmshStructuredMeshParam( &
- & param=param, &
- & filename=title//".msh", &
- & pointsOnAxis1=pointsOnAxis1, &
- & pointsOnAxis2=pointsOnAxis2, &
- & pointsOnAxis3=pointsOnAxis3, &
- & transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
- & transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
- & transfinitePointsOnAxis3=transfinitePointsOnAxis3, &
- & recombineAll=.TRUE.)
+CALL SetGmshStructuredMeshParam(param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ pointsOnAxis3=pointsOnAxis3, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ transfinitePointsOnAxis3=transfinitePointsOnAxis3, &
+ recombineAll=.TRUE.)
CALL obj%Initiate(param)
@@ -55,4 +64,6 @@ PROGRAM main
CALL mshFile%DEALLOCATE()
CALL hdf5file%DEALLOCATE()
+CALL Display("Test "//TRIM(testname)//" completed successfully")
+
END PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quad_two_regions.F90 b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quad_two_regions.F90
index 2163efd7..f0d9239c 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quad_two_regions.F90
+++ b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quad_two_regions.F90
@@ -1,12 +1,21 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-05-30
+! summary: Generate a 2D quadrangle mesh with two regions
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE GmshStructuredMesh_Class
+USE Gmsh_Class
+USE FPL
+USE GlobalData
+USE MSHFile_Class
+USE HDF5File_Class
+
IMPLICIT NONE
TYPE(GmshStructuredMesh_) :: obj
TYPE(Gmsh_) :: gmsh
TYPE(ParameterList_) :: param
-CHARACTER(*), PARAMETER :: title = "small_mesh_two_region"
+CHARACTER(*), PARAMETER :: title = "very_small_quad4_mesh_two_region"
REAL(DFP), PARAMETER :: pointsOnAxis1(3) = [0.0, 1.0, 2.0]
REAL(DFP), PARAMETER :: pointsOnAxis2(2) = [0.0, 1.0]
@@ -22,13 +31,13 @@ PROGRAM main
CALL param%Initiate()
CALL SetGmshStructuredMeshParam( &
- & param=param, &
- & filename=title//".msh", &
- & pointsOnAxis1=pointsOnAxis1, &
- & pointsOnAxis2=pointsOnAxis2, &
- & transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
- & transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
- & recombineAll=.TRUE.)
+ param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ recombineAll=.TRUE.)
CALL obj%Initiate(param)
diff --git a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quadrangle.F90 b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quadrangle.F90
index 4765d119..a91f6d6e 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quadrangle.F90
+++ b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_quadrangle.F90
@@ -27,14 +27,13 @@ PROGRAM main
CALL FPL_Init()
CALL param%Initiate()
-CALL SetGmshStructuredMeshParam( &
- & param=param, &
- & filename=title//".msh", &
- & pointsOnAxis1=pointsOnAxis1, &
- & pointsOnAxis2=pointsOnAxis2, &
- & transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
- & transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
- & recombineAll=.TRUE.)
+CALL SetGmshStructuredMeshParam(param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ recombineAll=.TRUE.)
CALL obj%Initiate(param)
diff --git a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_triangle.F90 b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_triangle.F90
index bd91cf0c..591f851a 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_triangle.F90
+++ b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh2D_triangle.F90
@@ -1,8 +1,8 @@
-#define SMALL_TRI3_MESH
-!#define SMALL_TRI6_MESH
-!#define BIG_TRI3_MESH
+!#define SMALL_TRI3_MESH
+#define SMALL_TRI6_MESH
+! #define BIG_TRI3_MESH
!#define BIG_BIG_TRI3_MESH
-!#define BIG_TRI6_MESH
+! #define BIG_TRI6_MESH
!#define BIG_BIG_TRI6_MESH
PROGRAM main
diff --git a/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh_two_regions.F90 b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh3D_hexa_two_regions.F90
similarity index 65%
rename from docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh_two_regions.F90
rename to docs/docs-api/FEMesh/examples/meshdata/GenerateMesh3D_hexa_two_regions.F90
index 5517bcbe..e3df94df 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/Generate3DMesh_two_regions.F90
+++ b/docs/docs-api/FEMesh/examples/meshdata/GenerateMesh3D_hexa_two_regions.F90
@@ -1,12 +1,18 @@
+! Create a 3D mesh with two regions using GmshStructuredMesh_Class
+
PROGRAM main
-USE easifemBase
-USE easifemClasses
+USE GmshStructuredMesh_Class
+USE Gmsh_Class
+USE FPL
+USE GlobalData
+USE MSHFile_Class
+USE HDF5File_Class
IMPLICIT NONE
TYPE(GmshStructuredMesh_) :: obj
TYPE(Gmsh_) :: gmsh
TYPE(ParameterList_) :: param
-CHARACTER(*), PARAMETER :: title = "small_mesh_3d_two_region"
+CHARACTER(*), PARAMETER :: title = "very_small_hexa8_mesh_two_region"
REAL(DFP), PARAMETER :: pointsOnAxis1(3) = [0.0, 1.0, 2.0]
REAL(DFP), PARAMETER :: pointsOnAxis2(2) = [0.0, 1.0]
REAL(DFP), PARAMETER :: pointsOnAxis3(2) = [0.0, 1.0]
@@ -24,15 +30,15 @@ PROGRAM main
CALL param%Initiate()
CALL SetGmshStructuredMeshParam( &
- & param=param, &
- & filename=title//".msh", &
- & pointsOnAxis1=pointsOnAxis1, &
- & pointsOnAxis2=pointsOnAxis2, &
- & pointsOnAxis3=pointsOnAxis3, &
- & transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
- & transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
- & transfinitePointsOnAxis3=transfinitePointsOnAxis3, &
- & recombineAll=.TRUE.)
+ param=param, &
+ filename=title//".msh", &
+ pointsOnAxis1=pointsOnAxis1, &
+ pointsOnAxis2=pointsOnAxis2, &
+ pointsOnAxis3=pointsOnAxis3, &
+ transfinitePointsOnAxis1=transfinitePointsOnAxis1, &
+ transfinitePointsOnAxis2=transfinitePointsOnAxis2, &
+ transfinitePointsOnAxis3=transfinitePointsOnAxis3, &
+ recombineAll=.TRUE.)
CALL obj%Initiate(param)
diff --git a/docs/docs-api/FEMesh/examples/meshdata/runner.toml b/docs/docs-api/FEMesh/examples/meshdata/runner.toml
index 90f91481..f00be54a 100644
--- a/docs/docs-api/FEMesh/examples/meshdata/runner.toml
+++ b/docs/docs-api/FEMesh/examples/meshdata/runner.toml
@@ -1,3 +1,3 @@
BuildType = "Debug"
-BuildDir = "/tmp/mesh/"
+BuildDir = "/tmp/easifem-tests/meshdata/"
TargetLibs = ["easifemClasses"]
diff --git a/docs/docs-api/FEMesh/index.md b/docs/docs-api/FEMesh/index.md
index cf68193b..c774ceb3 100644
--- a/docs/docs-api/FEMesh/index.md
+++ b/docs/docs-api/FEMesh/index.md
@@ -18,10 +18,12 @@ tags:
`FEMesh_` datatype handles the finite element mesh.
+It is a child class of [AbstractMesh_](/docs/docs-api/AbstractMesh/AbstractMesh_.md) and inherits all its methods.
+It is used to store the mesh data and provide methods for mesh manipulation, such as adding nodes, elements, and boundaries.
-import EXAMPLE26 from "./FEMesh_.md";
-
-
+:::note
+You can get the overview of all the methods available in this class in the documentation of [AbstractMesh_](../AbstractMesh/index.md)
+:::
## All methods
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_1.md b/docs/docs-api/FEVariable/examples/_ABS_test_1.md
index 30df76e1..6b115c5c 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_1.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_1.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 61
!!! note ""
- This example tests `ABS` operator. Scalar, Nodal Variable.
+This example tests `ABS` operator. Scalar, Nodal Variable.
## Use association
@@ -33,56 +33,56 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(NodalVariable( &
- & -2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ))
- ans = NodalVariable( 2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = ABS(NodalVariable( &
+ & -2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ))
+ans = NodalVariable( 2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = ABS(NodalVariable( &
- & -arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) )
- ans = NodalVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = ABS(NodalVariable( &
+ & -arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) )
+ans = NodalVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = ABS(NodalVariable( &
- & -arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ))
- ans = NodalVariable( &
- & arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = ABS(NodalVariable( &
+ & -arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ))
+ans = NodalVariable( &
+ & arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime" )
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_2.md b/docs/docs-api/FEVariable/examples/_ABS_test_2.md
index 6550452f..b634a3aa 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_2.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 62
!!! note ""
- This example tests `ABS` operator. Scalar, Quadrature Variable.
+This example tests `ABS` operator. Scalar, Quadrature Variable.
## Use association
@@ -33,56 +33,56 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(QuadratureVariable( &
- & -2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ))
- ans = QuadratureVariable( 2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = ABS(QuadratureVariable( &
+ & -2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ))
+ans = QuadratureVariable( 2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = ABS(QuadratureVariable( &
- & -arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) )
- ans = QuadratureVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = ABS(QuadratureVariable( &
+ & -arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) )
+ans = QuadratureVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = ABS(QuadratureVariable( &
- & -arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ))
- ans = QuadratureVariable( &
- & arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = ABS(QuadratureVariable( &
+ & -arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ))
+ans = QuadratureVariable( &
+ & arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime" )
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_3.md b/docs/docs-api/FEVariable/examples/_ABS_test_3.md
index 29a8d344..e10a0ff5 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_3.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 63
!!! note ""
- This example tests `ABS` operator. Vector, Nodal
+This example tests `ABS` operator. Vector, Nodal
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(NodalVariable( &
- & -arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ))
- ans = NodalVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = ABS(NodalVariable( &
+ & -arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ))
+ans = NodalVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime:" )
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime:" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_4.md b/docs/docs-api/FEVariable/examples/_ABS_test_4.md
index 9128d413..58980261 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_4.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 64
!!! note ""
- This example tests `ABS` operator. Vector, Quadrature
+This example tests `ABS` operator. Vector, Quadrature
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(QuadratureVariable( &
- & -arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ))
- ans = QuadratureVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = ABS(QuadratureVariable( &
+ & -arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ))
+ans = QuadratureVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime:" )
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime:" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_5.md b/docs/docs-api/FEVariable/examples/_ABS_test_5.md
index 770a36ba..af7fee32 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_5.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 65
!!! note ""
- This example tests `ABS` operator. Matrix, Nodal
+This example tests `ABS` operator. Matrix, Nodal
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL OK( obj .eq. ans, 'constant' )
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL OK( obj .eq. ans, 'constant' )
```
!!! note "space"
```fortran
- obj = ABS(nodalvariable( &
- & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ))
- ans = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace )
- CALL OK( obj .eq. ans, 'space')
+obj = ABS(nodalvariable( &
+ & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ))
+ans = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace )
+CALL OK( obj .eq. ans, 'space')
```
!!! note "time"
```fortran
- obj = ABS(nodalvariable( &
- & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime ))
- ans = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime )
- CALL OK( obj .eq. ans, 'time')
+obj = ABS(nodalvariable( &
+ & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime ))
+ans = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime )
+CALL OK( obj .eq. ans, 'time')
```
!!! note "spacetime"
```fortran
- obj = ABS(NodalVariable( &
- & reshape(-arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ))
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP) , [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .eq. ans, 'spacetime')
+obj = ABS(NodalVariable( &
+ & reshape(-arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ))
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP) , [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .eq. ans, 'spacetime')
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_ABS_test_6.md b/docs/docs-api/FEVariable/examples/_ABS_test_6.md
index 3849e280..10b76fe1 100644
--- a/docs/docs-api/FEVariable/examples/_ABS_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_ABS_test_6.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 66
!!! note ""
- This example tests `ABS` operator. Matrix, Quadrature
+This example tests `ABS` operator. Matrix, Quadrature
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL OK( obj .eq. ans, 'constant' )
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL OK( obj .eq. ans, 'constant' )
```
!!! note "space"
```fortran
- obj = ABS(Quadraturevariable( &
- & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ))
- ans = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace )
- CALL OK( obj .eq. ans, 'space')
+obj = ABS(Quadraturevariable( &
+ & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ))
+ans = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace )
+CALL OK( obj .eq. ans, 'space')
```
!!! note "time"
```fortran
- obj = ABS(Quadraturevariable( &
- & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime ))
- ans = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime )
- CALL OK( obj .eq. ans, 'time')
+obj = ABS(Quadraturevariable( &
+ & reshape(-arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime ))
+ans = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime )
+CALL OK( obj .eq. ans, 'time')
```
!!! note "spacetime"
```fortran
- obj = ABS(QuadratureVariable( &
- & reshape(-arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ))
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP) , [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .eq. ans, 'spacetime')
+obj = ABS(QuadratureVariable( &
+ & reshape(-arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ))
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP) , [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .eq. ans, 'spacetime')
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_10.md b/docs/docs-api/FEVariable/examples/_Addition_test_10.md
index 60bd618a..31862249 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_10.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_10.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant+space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant+space")
```
space+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_11.md b/docs/docs-api/FEVariable/examples/_Addition_test_11.md
index 3472947d..c9850e55 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_11.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_11.md
@@ -10,87 +10,87 @@ PROGRAM main
constant+constant
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant+constant")
```
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + 10.0_DFP
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + 10.0_DFP
+CALL Display(obj, "constant+constant")
```
space+constant
```fortran
- call display("=================================")
- obj = Quadraturevariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) &
- + Quadraturevariable( reshape(arange(1.0_dfp, 6.0_dfp), [3,2]), &
- & typefevariablematrix, &
- & typefevariableconstant )
- call display(obj, "space+constant")
+call display("=================================")
+obj = Quadraturevariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) &
+ + Quadraturevariable( reshape(arange(1.0_dfp, 6.0_dfp), [3,2]), &
+ & typefevariablematrix, &
+ & typefevariableconstant )
+call display(obj, "space+constant")
```
```fortran
- call display("=================================")
- obj = Quadraturevariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) &
- + 10.0_DFP
- call display(obj, "space+constant")
+call display("=================================")
+obj = Quadraturevariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) &
+ + 10.0_DFP
+call display(obj, "space+constant")
```
time+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + 10.0_DFP
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + 10.0_DFP
+CALL Display(obj, "time+constant")
```
spacetime+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + 10.0_DFP
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + 10.0_DFP
+CALL Display(obj, "spacetime+constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_12.md b/docs/docs-api/FEVariable/examples/_Addition_test_12.md
index 8cf98444..3feeeca9 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_12.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_12.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant+space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant+space")
```
space+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_2.md b/docs/docs-api/FEVariable/examples/_Addition_test_2.md
index 7ca0d8ac..6c88495d 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_2.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = NodalVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat+space")
+call display("=================================")
+obj = NodalVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat+space")
```
space+space
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = NodalVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = NodalVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = NodalVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_3.md b/docs/docs-api/FEVariable/examples/_Addition_test_3.md
index 575f9a80..43979b9d 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_3.md
@@ -10,87 +10,87 @@ PROGRAM main
constant+constant
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant+constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant+constant")
```
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + 10.0_DFP
- CALL Display(obj, "constant+constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + 10.0_DFP
+CALL Display(obj, "constant+constant")
```
space+constant
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space+constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + 10.0_DFP
- CALL Display(obj, "space+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + 10.0_DFP
+CALL Display(obj, "space+constant")
```
time+constant
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time+constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + 10.0_DFP
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + 10.0_DFP
+CALL Display(obj, "time+constant")
```
spacetime+constant
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime+constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + 10.0_DFP
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + 10.0_DFP
+CALL Display(obj, "spacetime+constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_4.md b/docs/docs-api/FEVariable/examples/_Addition_test_4.md
index 6e03456d..6bffc6f0 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_4.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant+space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant+space")
```
space+space
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_5.md b/docs/docs-api/FEVariable/examples/_Addition_test_5.md
index 9d402cb7..2864ab7e 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_5.md
@@ -10,87 +10,87 @@ PROGRAM main
constant+constant
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant+constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant+constant")
```
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + 10.0_DFP
- CALL Display(obj, "constant+constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + 10.0_DFP
+CALL Display(obj, "constant+constant")
```
space+constant
```fortran
- call display("=================================")
- obj = nodalvariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) &
- + nodalvariable( reshape(arange(1.0_dfp, 6.0_dfp), [3,2]), &
- & typefevariablematrix, &
- & typefevariableconstant )
- call display(obj, "space+constant")
+call display("=================================")
+obj = nodalvariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) &
+ + nodalvariable( reshape(arange(1.0_dfp, 6.0_dfp), [3,2]), &
+ & typefevariablematrix, &
+ & typefevariableconstant )
+call display(obj, "space+constant")
```
```fortran
- call display("=================================")
- obj = nodalvariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) &
- + 10.0_DFP
- call display(obj, "space+constant")
+call display("=================================")
+obj = nodalvariable( reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) &
+ + 10.0_DFP
+call display(obj, "space+constant")
```
time+constant
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time+constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + 10.0_DFP
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + 10.0_DFP
+CALL Display(obj, "time+constant")
```
spacetime+constant
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime+constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + 10.0_DFP
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + 10.0_DFP
+CALL Display(obj, "spacetime+constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_6.md b/docs/docs-api/FEVariable/examples/_Addition_test_6.md
index e1f71abe..dd9ae2ba 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_6.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant+space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant+space")
```
space+space
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- + NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- + NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ + NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_7.md b/docs/docs-api/FEVariable/examples/_Addition_test_7.md
index 57d61fde..de8b4bd9 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_7.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_7.md
@@ -10,87 +10,87 @@ PROGRAM main
constant+constant
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( 2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( 2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant+constant")
```
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + 2.0_DFP
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + 2.0_DFP
+CALL Display(obj, "constant+constant")
```
space+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- + QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space + constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ + QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space + constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- + 10.0_DFP
- CALL Display(obj, "space+constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ + 10.0_DFP
+CALL Display(obj, "space+constant")
```
time+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- + QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- + 10.0_DFP
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ + 10.0_DFP
+CALL Display(obj, "time+constant")
```
spacetime+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime + constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime + constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- + 10.0_DFP
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ + 10.0_DFP
+CALL Display(obj, "spacetime+constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_8.md b/docs/docs-api/FEVariable/examples/_Addition_test_8.md
index db4ddff3..37070c5d 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_8.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_8.md
@@ -10,79 +10,79 @@ PROGRAM main
constant+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat+space")
+call display("=================================")
+obj = QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat+space")
```
space+space
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space+space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space+space")
```
constant+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant+time")
+call display("=================================")
+obj = QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant+time")
```
time+time
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time+time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time+time")
```
constant+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( 10.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant+spacetime")
+call display("=================================")
+obj = QuadratureVariable( 10.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant+spacetime")
```
spacetime+spacetime
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime+spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime+spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Addition_test_9.md b/docs/docs-api/FEVariable/examples/_Addition_test_9.md
index 95719b8e..449fac9d 100644
--- a/docs/docs-api/FEVariable/examples/_Addition_test_9.md
+++ b/docs/docs-api/FEVariable/examples/_Addition_test_9.md
@@ -10,87 +10,87 @@ PROGRAM main
constant+constant
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant+constant")
```
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- + 10.0_DFP
- CALL Display(obj, "constant+constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ + 10.0_DFP
+CALL Display(obj, "constant+constant")
```
space+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- + 10.0_DFP
- CALL Display(obj, "space+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ + 10.0_DFP
+CALL Display(obj, "space+constant")
```
time+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- + 10.0_DFP
- CALL Display(obj, "time+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ + 10.0_DFP
+CALL Display(obj, "time+constant")
```
spacetime+constant
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime+constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- + 10.0_DFP
- CALL Display(obj, "spacetime+constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ + 10.0_DFP
+CALL Display(obj, "spacetime+constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_1.md b/docs/docs-api/FEVariable/examples/_Division_test_1.md
index 1008eae5..f52e87a5 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_1.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_1.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 41a
!!! note ""
- This example tests multiplication (/) operator. Scalar nodal variable
+This example tests multiplication (/) operator. Scalar nodal variable
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_10.md b/docs/docs-api/FEVariable/examples/_Division_test_10.md
index 097841ab..f8638c08 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_10.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_10.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 43b
!!! note ""
- This example tests / operator. Matrix, Nodal
+This example tests / operator. Matrix, Nodal
## Use association
@@ -31,82 +31,81 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant / space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant / time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant / time")
```
!!! note "time / time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_11.md b/docs/docs-api/FEVariable/examples/_Division_test_11.md
index ced81f98..81dfab97 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_11.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_11.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 43c
!!! note ""
- This example tests / operator. Matrix, Quadrature
+This example tests / operator. Matrix, Quadrature
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_12.md b/docs/docs-api/FEVariable/examples/_Division_test_12.md
index 34c82bd4..04ad5135 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_12.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_12.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 43d
!!! note ""
- This example tests / operator. Matrix, Quadrature
+This example tests / operator. Matrix, Quadrature
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant / space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant / time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant / time")
```
!!! note "time / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_2.md b/docs/docs-api/FEVariable/examples/_Division_test_2.md
index faa15b17..7b787dd6 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_2.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 41b
!!! note ""
- This example tests / operator. Scalar Nodal Values
+This example tests / operator. Scalar Nodal Values
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat / space")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant / time")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant / time")
```
!!! note "time / time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_3.md b/docs/docs-api/FEVariable/examples/_Division_test_3.md
index ea0b2119..4626c764 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_3.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 41c
!!! note ""
- This example tests multiplication (/) operator. Scalar nodal variable
+This example tests multiplication (/) operator. Scalar nodal variable
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_4.md b/docs/docs-api/FEVariable/examples/_Division_test_4.md
index 200e2d0b..eb1f163b 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_4.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 41d
!!! note ""
- This example tests / operator. Scalar Quadrature
+This example tests / operator. Scalar Quadrature
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat / space")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant / time")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant / time")
```
!!! note "time / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_5.md b/docs/docs-api/FEVariable/examples/_Division_test_5.md
index 370ab88e..7a6ec030 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_5.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 42a
!!! note ""
- This example tests / operator. Vector, Nodal
+This example tests / operator. Vector, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_6.md b/docs/docs-api/FEVariable/examples/_Division_test_6.md
index ffe0dc36..7267b6cd 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_6.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 42b
!!! note ""
- This example tests / operator. Vector, Nodal
+This example tests / operator. Vector, Nodal
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant / space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant/time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant/time")
```
!!! note "time/time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_7.md b/docs/docs-api/FEVariable/examples/_Division_test_7.md
index c7e60b83..e5be7cdb 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_7.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_7.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 42c
!!! note ""
- This example tests / operator. Vector, Quadrature
+This example tests / operator. Vector, Quadrature
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_8.md b/docs/docs-api/FEVariable/examples/_Division_test_8.md
index 0ffe3c31..db0944e0 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_8.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_8.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 42d
!!! note ""
- This example tests / operator. vector, quadrature values
+This example tests / operator. vector, quadrature values
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant / space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant / space")
```
!!! note "space / space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space / space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space / space")
```
!!! note "constant / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant / time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant / time")
```
!!! note "time / time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time / time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time / time")
```
!!! note "constant / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant / spacetime")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant / spacetime")
```
!!! note "spacetime / spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime / spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ / QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime / spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Division_test_9.md b/docs/docs-api/FEVariable/examples/_Division_test_9.md
index 108075a1..dfa83a09 100644
--- a/docs/docs-api/FEVariable/examples/_Division_test_9.md
+++ b/docs/docs-api/FEVariable/examples/_Division_test_9.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 43a
!!! note ""
- This example tests / operator. Matrix, Nodal
+This example tests / operator. Matrix, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant / constant"
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant / constant")
```
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- / 1.0_DFP
- CALL Display(obj, "constant / constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ / 1.0_DFP
+CALL Display(obj, "constant / constant")
```
!!! note "space / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- / 1.0_DFP
- CALL Display(obj, "space / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ / 1.0_DFP
+CALL Display(obj, "space / constant")
```
!!! note "time / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- / 1.0_DFP
- CALL Display(obj, "time / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ / 1.0_DFP
+CALL Display(obj, "time / constant")
```
!!! note "spacetime / constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime / constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- / 1.0_DFP
- CALL Display(obj, "spacetime / constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ / 1.0_DFP
+CALL Display(obj, "spacetime / constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_10.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_10.md
index 12530d3d..58f66754 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_10.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_10.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 33b
!!! note ""
- This example tests * operator. Matrix, Nodal
+This example tests * operator. Matrix, Nodal
## Use association
@@ -31,82 +31,81 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant * space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant * time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant * time")
```
!!! note "time * time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_11.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_11.md
index b441f625..2fbbdedb 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_11.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_11.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 33c
!!! note ""
- This example tests * operator. Matrix, Nodal
+This example tests * operator. Matrix, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant * constant"
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant * constant")
```
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * 1.0_DFP
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * 1.0_DFP
+CALL Display(obj, "constant * constant")
```
!!! note "space * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * 1.0_DFP
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * 1.0_DFP
+CALL Display(obj, "space * constant")
```
!!! note "time * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * 1.0_DFP
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * 1.0_DFP
+CALL Display(obj, "time * constant")
```
!!! note "spacetime * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * 1.0_DFP
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * 1.0_DFP
+CALL Display(obj, "spacetime * constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_12.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_12.md
index 584c9ac3..e19b9232 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_12.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_12.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 33d
!!! note ""
- This example tests * operator. Matrix, Quadrature
+This example tests * operator. Matrix, Quadrature
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant * space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant * time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant * time")
```
!!! note "time * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_2.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_2.md
index b0926d47..3d091566 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_2.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 31b
!!! note ""
- This example tests * operator. Scalar Nodal Values
+This example tests * operator. Scalar Nodal Values
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat * space")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant * time")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant * time")
```
!!! note "time * time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_3.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_3.md
index aef1b9c2..a2d7c285 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_3.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 31c
!!! note ""
- This example tests multiplication (*) operator. Scalar Quadrature
+This example tests multiplication (*) operator. Scalar Quadrature
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant * constant"
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant * constant")
```
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * 1.0_DFP
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * 1.0_DFP
+CALL Display(obj, "constant * constant")
```
!!! note "space * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- * 1.0_DFP
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ * 1.0_DFP
+CALL Display(obj, "space * constant")
```
!!! note "time * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- * QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- * 1.0_DFP
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ * 1.0_DFP
+CALL Display(obj, "time * constant")
```
!!! note "spacetime * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- * 1.0_DFP
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ * 1.0_DFP
+CALL Display(obj, "spacetime * constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_4.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_4.md
index 869197f4..d8b3373e 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_4.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 31d
!!! note ""
- This example tests * operator. Scalar Quadrature
+This example tests * operator. Scalar Quadrature
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat * space")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant * time")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant * time")
```
!!! note "time * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_5.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_5.md
index ba7259ac..5719eb41 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_5.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 32a
!!! note ""
- This example tests * operator. Vector, Nodal
+This example tests * operator. Vector, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant * constant"
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant * constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant * constant")
```
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * 1.0_DFP
- CALL Display(obj, "constant * constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * 1.0_DFP
+CALL Display(obj, "constant * constant")
```
!!! note "space * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * 1.0_DFP
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * 1.0_DFP
+CALL Display(obj, "space * constant")
```
!!! note "time * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * 1.0_DFP
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * 1.0_DFP
+CALL Display(obj, "time * constant")
```
!!! note "spacetime * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * 1.0_DFP
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * 1.0_DFP
+CALL Display(obj, "spacetime * constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_6.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_6.md
index 136d620e..318e80d6 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_6.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 32b
!!! note ""
- This example tests * operator. Vector, Nodal
+This example tests * operator. Vector, Nodal
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant * space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant*time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant*time")
```
!!! note "time*time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_7.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_7.md
index 82fea8f1..92853364 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_7.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_7.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 32c
!!! note ""
- This example tests * operator. Vector, Quadrature
+This example tests * operator. Vector, Quadrature
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant * constant"
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant * constant")
```
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * 1.0_DFP
- CALL Display(obj, "constant * constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * 1.0_DFP
+CALL Display(obj, "constant * constant")
```
!!! note "space * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * 1.0_DFP
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * 1.0_DFP
+CALL Display(obj, "space * constant")
```
!!! note "time * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * 1.0_DFP
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * 1.0_DFP
+CALL Display(obj, "time * constant")
```
!!! note "spacetime * constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime * constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * 1.0_DFP
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * 1.0_DFP
+CALL Display(obj, "spacetime * constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_8.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_8.md
index d767e673..4414b460 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_8.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_8.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 32d
!!! note ""
- This example tests * operator. vector, quadrature values
+This example tests * operator. vector, quadrature values
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,79 +31,79 @@ PROGRAM main
!!! note "constant * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant * space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant * space")
```
!!! note "space * space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space * space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space * space")
```
!!! note "constant * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant * time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant * time")
```
!!! note "time * time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time * time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time * time")
```
!!! note "constant * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant * spacetime")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant * spacetime")
```
!!! note "spacetime * spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime * spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ * QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime * spacetime")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Multiplication_test_9.md b/docs/docs-api/FEVariable/examples/_Multiplication_test_9.md
index 8c178b81..5d640798 100644
--- a/docs/docs-api/FEVariable/examples/_Multiplication_test_9.md
+++ b/docs/docs-api/FEVariable/examples/_Multiplication_test_9.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 33a
!!! note ""
- This example tests * operator. Matrix, Nodal
+This example tests * operator. Matrix, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant * constant"
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant * constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant * constant")
```
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- * 1.0_DFP
- CALL Display(obj, "constant * constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ * 1.0_DFP
+CALL Display(obj, "constant * constant")
```
!!! note "space * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- * 1.0_DFP
- CALL Display(obj, "space * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ * 1.0_DFP
+CALL Display(obj, "space * constant")
```
!!! note "time * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- * 1.0_DFP
- CALL Display(obj, "time * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ * 1.0_DFP
+CALL Display(obj, "time * constant")
```
!!! note "spacetime * constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime * constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- * 1.0_DFP
- CALL Display(obj, "spacetime * constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ * 1.0_DFP
+CALL Display(obj, "spacetime * constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_NodalVariable_test_1.md b/docs/docs-api/FEVariable/examples/_NodalVariable_test_1.md
index 93b7c158..8bc44e3b 100644
--- a/docs/docs-api/FEVariable/examples/_NodalVariable_test_1.md
+++ b/docs/docs-api/FEVariable/examples/_NodalVariable_test_1.md
@@ -10,8 +10,8 @@ PROGRAM main
NodalVariable, scalar, constant
```fortran
- obj = NodalVariable( 1.0_DFP, typeFEVariableScalar, typeFEVariableConstant )
- CALL Display(obj, "NodalVariable, Scalar, Constant")
+obj = NodalVariable( 1.0_DFP, typeFEVariableScalar, typeFEVariableConstant )
+CALL Display(obj, "NodalVariable, Scalar, Constant")
```
Results
@@ -25,9 +25,9 @@ VALUE :: 1.00000
NodalVariable, scalar, space
```fortran
- obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "NodalVariable, scalar, space")
+obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "NodalVariable, scalar, space")
```
Results
@@ -46,9 +46,9 @@ VALUE
NodalVariable, scalar, time
```fortran
- obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "NodalVariable, scalar, time")
+obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "NodalVariable, scalar, time")
```
Results
@@ -68,10 +68,10 @@ VALUE
NodalVariable, scalar, space-time
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "NodalVariable, scalar, space-time")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "NodalVariable, scalar, space-time")
```
Results
diff --git a/docs/docs-api/FEVariable/examples/_NodalVariable_test_2.md b/docs/docs-api/FEVariable/examples/_NodalVariable_test_2.md
index 30476923..1222146d 100644
--- a/docs/docs-api/FEVariable/examples/_NodalVariable_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_NodalVariable_test_2.md
@@ -10,9 +10,9 @@ PROGRAM main
NodalVariable, Vector, constant
```fortran
- obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "NodalVariable, Vector, Constant")
+obj = NodalVariable( arange(0.0_DFP, 3.0_DFP), typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "NodalVariable, Vector, Constant")
```
Results
@@ -32,10 +32,10 @@ RANK :: 1 (VECTOR)
NodalVariable, Vector, space
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "NodalVariable, Vector, Space")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "NodalVariable, Vector, Space")
```
Results
@@ -54,10 +54,10 @@ RANK :: 1 (VECTOR)
NodalVariable, Vector, Time
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "NodalVariable, Vector, Time")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "NodalVariable, Vector, Time")
```
Results
@@ -76,10 +76,10 @@ RANK :: 1 (VECTOR)
NodalVariable, Vector, Space-time
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "NodalVariable, Vector, Space-time")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "NodalVariable, Vector, Space-time")
```
Results
diff --git a/docs/docs-api/FEVariable/examples/_Power_test_2.md b/docs/docs-api/FEVariable/examples/_Power_test_2.md
index 1c75c9ea..628e4c3d 100644
--- a/docs/docs-api/FEVariable/examples/_Power_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_Power_test_2.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 52
!!! note ""
- This example tests POWER `(**)` operator. Scalar, Quadrature Variable.
+This example tests POWER `(**)` operator. Scalar, Quadrature Variable.
## Use association
@@ -33,56 +33,56 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = QuadratureVariable( &
- & 2.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) ** 2
- ans = QuadratureVariable( 4.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = QuadratureVariable( &
+ & 2.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) ** 2
+ans = QuadratureVariable( 4.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = QuadratureVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) ** 2
- ans = QuadratureVariable( &
- & (arange(1.0_DFP, 3.0_DFP))**2, &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = QuadratureVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) ** 2
+ans = QuadratureVariable( &
+ & (arange(1.0_DFP, 3.0_DFP))**2, &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = QuadratureVariable( &
- & arange(0.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) ** 2
- ans = QuadratureVariable( &
- & (arange(0.0_DFP, 3.0_DFP))**2, &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = QuadratureVariable( &
+ & arange(0.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) ** 2
+ans = QuadratureVariable( &
+ & (arange(0.0_DFP, 3.0_DFP))**2, &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) **2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime" )
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) **2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Power_test_3.md b/docs/docs-api/FEVariable/examples/_Power_test_3.md
index b71983ea..bfd77940 100644
--- a/docs/docs-api/FEVariable/examples/_Power_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_Power_test_3.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 53
!!! note ""
- This example tests POWER `(**)` operator. Vector, Nodal
+This example tests POWER `(**)` operator. Vector, Nodal
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = NodalVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) **2
- ans = NodalVariable( &
- & arange(1.0_DFP, 3.0_DFP)**2, &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = NodalVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) **2
+ans = NodalVariable( &
+ & arange(1.0_DFP, 3.0_DFP)**2, &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )**2
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )**2
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) **2
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) **2
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = NodalVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) **2
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP)**2, [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime:" )
+obj = NodalVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) **2
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP)**2, [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime:" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Power_test_4.md b/docs/docs-api/FEVariable/examples/_Power_test_4.md
index 256cd223..561eecf8 100644
--- a/docs/docs-api/FEVariable/examples/_Power_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_Power_test_4.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 54
!!! note ""
- This example tests POWER `(**)` operator. Vector, Quadrature
+This example tests POWER `(**)` operator. Vector, Quadrature
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = QuadratureVariable( &
- & arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) **2
- ans = QuadratureVariable( &
- & arange(1.0_DFP, 3.0_DFP)**2, &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL OK( obj .EQ. ans, "constant:" )
+obj = QuadratureVariable( &
+ & arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) **2
+ans = QuadratureVariable( &
+ & arange(1.0_DFP, 3.0_DFP)**2, &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL OK( obj .EQ. ans, "constant:" )
```
!!! note "space"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )**2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL OK( obj .EQ. ans, "space:" )
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )**2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL OK( obj .EQ. ans, "space:" )
```
!!! note "time"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) **2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL OK( obj .EQ. ans, "time:" )
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) **2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL OK( obj .EQ. ans, "time:" )
```
!!! note "spacetime"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) **2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 12.0_DFP)**2, [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .EQ. ans, "spacetime:" )
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) **2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 12.0_DFP)**2, [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .EQ. ans, "spacetime:" )
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Power_test_5.md b/docs/docs-api/FEVariable/examples/_Power_test_5.md
index eb289091..d08c61b2 100644
--- a/docs/docs-api/FEVariable/examples/_Power_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_Power_test_5.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 55
!!! note ""
- This example tests POWER `(**)` operator. Matrix, Nodal
+This example tests POWER `(**)` operator. Matrix, Nodal
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) ** 2
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL OK( obj .eq. ans, 'constant' )
+obj = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) ** 2
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL OK( obj .eq. ans, 'constant' )
```
!!! note "space"
```fortran
- obj = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) **2
- ans = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace )
- CALL OK( obj .eq. ans, 'space')
+obj = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) **2
+ans = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace )
+CALL OK( obj .eq. ans, 'space')
```
!!! note "time"
```fortran
- obj = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime ) **2
- ans = nodalvariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime )
- CALL OK( obj .eq. ans, 'time')
+obj = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime ) **2
+ans = nodalvariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime )
+CALL OK( obj .eq. ans, 'time')
```
!!! note "spacetime"
```fortran
- obj = NodalVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) **2
- ans = NodalVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP) **2, [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .eq. ans, 'spacetime')
+obj = NodalVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) **2
+ans = NodalVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP) **2, [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .eq. ans, 'spacetime')
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Power_test_6.md b/docs/docs-api/FEVariable/examples/_Power_test_6.md
index 5610b701..33e461e7 100644
--- a/docs/docs-api/FEVariable/examples/_Power_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_Power_test_6.md
@@ -12,7 +12,7 @@ tags:
# FEVariable example 56
!!! note ""
- This example tests POWER `(**)` operator. Matrix, Quadrature
+This example tests POWER `(**)` operator. Matrix, Quadrature
## Use association
@@ -33,57 +33,57 @@ PROGRAM main
!!! note "constant"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) ** 2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL OK( obj .eq. ans, 'constant' )
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) ** 2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 6.0_DFP)**2, [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL OK( obj .eq. ans, 'constant' )
```
!!! note "space"
```fortran
- obj = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace ) **2
- ans = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
- & typefevariablematrix, &
- & typefevariablespace )
- CALL OK( obj .eq. ans, 'space')
+obj = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace ) **2
+ans = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariablespace )
+CALL OK( obj .eq. ans, 'space')
```
!!! note "time"
```fortran
- obj = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime ) **2
- ans = Quadraturevariable( &
- & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
- & typefevariablematrix, &
- & typefevariabletime )
- CALL OK( obj .eq. ans, 'time')
+obj = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp), [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime ) **2
+ans = Quadraturevariable( &
+ & reshape(arange(1.0_dfp, 12.0_dfp)**2, [3,2,2]), &
+ & typefevariablematrix, &
+ & typefevariabletime )
+CALL OK( obj .eq. ans, 'time')
```
!!! note "spacetime"
```fortran
- obj = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) **2
- ans = QuadratureVariable( &
- & reshape(arange(1.0_DFP, 24.0_DFP) **2, [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL OK( obj .eq. ans, 'spacetime')
+obj = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) **2
+ans = QuadratureVariable( &
+ & reshape(arange(1.0_DFP, 24.0_DFP) **2, [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL OK( obj .eq. ans, 'spacetime')
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_1.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_1.md
index eeef1da7..dd984297 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_1.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_1.md
@@ -10,87 +10,87 @@ PROGRAM main
!!! note "constant-constant"
```fortran
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime - constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime - constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime - constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime - constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_10.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_10.md
index 582c647c..6c9f347a 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_10.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_10.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 23b
!!! note ""
- This example tests subtraction operator. Matrix, Nodal
+This example tests subtraction operator. Matrix, Nodal
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant-space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant-space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_11.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_11.md
index 9ad0f5c6..394d845a 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_11.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_11.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 23c
!!! note ""
- This example tests subtraction operator. Matrix, Quadrature
+This example tests subtraction operator. Matrix, Quadrature
## Use association
@@ -31,88 +31,87 @@ PROGRAM main
!!! note "constant-constant"
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
-
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime-constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_12.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_12.md
index fe66c403..25b2578e 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_12.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_12.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 23d
!!! note ""
- This example tests additional operator. Matrix, Quadrature
+This example tests additional operator. Matrix, Quadrature
## Use association
@@ -21,7 +21,6 @@ tags:
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
USE easifemBase
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant-space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant-space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP),[3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_2.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_2.md
index 8c2943bf..f6ac6f04 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_2.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_2.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 21b
!!! note ""
- This example tests substraction operator. Scalar Nodal Values
+This example tests substraction operator. Scalar Nodal Values
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant - space"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat-space")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = NodalVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_3.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_3.md
index 76607717..8d0c0cc9 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_3.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_3.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 21c
!!! note ""
- This example tests subtraction operator. Scalar Quadrature
+This example tests subtraction operator. Scalar Quadrature
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,90 +31,89 @@ PROGRAM main
!!! note "constant-constant"
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime - constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime - constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime - constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime - constant")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_4.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_4.md
index 7804a9a8..544fe5d9 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_4.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_4.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 21d
!!! note ""
- This example tests substraction operator. Scalar Quadrature
+This example tests substraction operator. Scalar Quadrature
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant - space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "constnat-space")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constnat-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableScalar, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableScalar, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( 1.0_DFP, &
- & typeFEVariableScalar, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = QuadratureVariable( 1.0_DFP, &
+ & typeFEVariableScalar, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableScalar, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableScalar, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_5.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_5.md
index a47f2cdb..90f11a8e 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_5.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_5.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 22a
!!! note ""
- This example tests subtraction operator. Vector, Nodal
+This example tests subtraction operator. Vector, Nodal
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant - constant"
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime-constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_6.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_6.md
index 7de5f015..1c41e284 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_6.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_6.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 22b
!!! note ""
- This example tests subtraction operator. Vector, Nodal
+This example tests subtraction operator. Vector, Nodal
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant - space"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant-space")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = NodalVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_7.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_7.md
index 1582c1f4..caed042d 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_7.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_7.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 22c
!!! note ""
- This example tests subtraction operator. Vector, Quadrature
+This example tests subtraction operator. Vector, Quadrature
## Use association
@@ -31,87 +31,87 @@ PROGRAM main
!!! note "constant - constant"
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime-constant")
```
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime-constant")
```
```fortran
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_8.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_8.md
index 6174ad22..f1388777 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_8.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_8.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 22d
!!! note ""
- This example tests subtraction operator. vector, quadrature values
+This example tests subtraction operator. vector, quadrature values
## Use association
@@ -20,7 +20,6 @@ tags:
## Usage
!!! note "Import modules and declare variable"
-
```fortran
PROGRAM main
@@ -32,82 +31,81 @@ PROGRAM main
!!! note "constant-space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "constant-space")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "constant-space")
```
!!! note "space-space"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpace )
- CALL Display(obj, "space-space")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpace )
+CALL Display(obj, "space-space")
```
!!! note "constant-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "constant-time")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "constant-time")
```
!!! note "time-time"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
- & typeFEVariableVector, &
- & typeFEVariableTime )
- CALL Display(obj, "time-time")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 6.0_DFP),[3,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableTime )
+CALL Display(obj, "time-time")
```
!!! note "constant-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
- & typeFEVariableVector, &
- & typeFEVariableConstant ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "constant-spacetime")
+call display("=================================")
+obj = QuadratureVariable( arange(1.0_DFP, 3.0_DFP), &
+ & typeFEVariableVector, &
+ & typeFEVariableConstant ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "constant-spacetime")
```
!!! note "spacetime-spacetime"
```fortran
- call display("=================================")
- obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime ) &
- - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableVector, &
- & typeFEVariableSpaceTime )
- CALL Display(obj, "spacetime-spacetime")
+call display("=================================")
+obj = QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime ) &
+ - QuadratureVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableVector, &
+ & typeFEVariableSpaceTime )
+CALL Display(obj, "spacetime-spacetime")
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/FEVariable/examples/_Subtraction_test_9.md b/docs/docs-api/FEVariable/examples/_Subtraction_test_9.md
index 94a4687a..21ff4768 100644
--- a/docs/docs-api/FEVariable/examples/_Subtraction_test_9.md
+++ b/docs/docs-api/FEVariable/examples/_Subtraction_test_9.md
@@ -11,7 +11,7 @@ tags:
# FEVariable example 23a
!!! note ""
- This example tests subtraction operator. Matrix, Nodal
+This example tests subtraction operator. Matrix, Nodal
## Use association
@@ -31,88 +31,87 @@ PROGRAM main
!!! note "constant-constant"
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "constant-constant")
```
```fortran
- obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant ) &
- - 1.0_DFP
- CALL Display(obj, "constant-constant")
+obj = NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant ) &
+ - 1.0_DFP
+CALL Display(obj, "constant-constant")
```
!!! note "space-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "space-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpace ) &
- - 1.0_DFP
- CALL Display(obj, "space-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpace ) &
+ - 1.0_DFP
+CALL Display(obj, "space-constant")
```
!!! note "time-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "time-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableTime ) &
- - 1.0_DFP
- CALL Display(obj, "time-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 12.0_DFP), [3,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableTime ) &
+ - 1.0_DFP
+CALL Display(obj, "time-constant")
```
-
!!! note "spacetime-constant"
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableConstant )
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - NodalVariable( reshape(arange(1.0_DFP, 6.0_DFP), [3,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableConstant )
+CALL Display(obj, "spacetime-constant")
```
```fortran
- call display("=================================")
- obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
- & typeFEVariableMatrix, &
- & typeFEVariableSpaceTime ) &
- - 1.0_DFP
- CALL Display(obj, "spacetime-constant")
+call display("=================================")
+obj = NodalVariable( reshape(arange(1.0_DFP, 24.0_DFP), [3,2,2,2]), &
+ & typeFEVariableMatrix, &
+ & typeFEVariableSpaceTime ) &
+ - 1.0_DFP
+CALL Display(obj, "spacetime-constant")
```
```fortran
diff --git a/docs/docs-api/FacetMatrix/FacetMatrix_Method.md b/docs/docs-api/FacetMatrix/FacetMatrix_Method.md
index 45e06aac..94c76c6e 100644
--- a/docs/docs-api/FacetMatrix/FacetMatrix_Method.md
+++ b/docs/docs-api/FacetMatrix/FacetMatrix_Method.md
@@ -75,4 +75,3 @@ $$
$$
\begin{aligned}\int_{\Gamma_{e}}\tau\delta p{\bf n}\cdot\nabla pdS & =\int_{\Gamma_{e}}\tau\delta p_{I}N^{I}{\bf n}\cdot\nabla\left(p_{J}N^{J}\right)dS\\ & =\delta p_{I}\left(\int_{\Gamma_{e}}\tau N^{I}{\bf n}\cdot\nabla N^{J}dS\right)p_{J} \end{aligned}
$$
-
diff --git a/docs/docs-api/ForceVector/ForceVector.md b/docs/docs-api/ForceVector/ForceVector.md
index a92d1b66..f5c7d06a 100644
--- a/docs/docs-api/ForceVector/ForceVector.md
+++ b/docs/docs-api/ForceVector/ForceVector.md
@@ -29,10 +29,10 @@ $$
Fortran interface:
```fortran
- MODULE PURE FUNCTION ForceVector(test) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- REAL(DFP), ALLOCATABLE :: ans(:)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ REAL(DFP), ALLOCATABLE :: ans(:)
+END FUNCTION ForceVector
```
## ForceVector2
@@ -42,12 +42,12 @@ F_{I}=\int_{\Omega}\rho N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c
- TYPE(FEVariableScalar_), INTENT( IN ) :: crank
- REAL(DFP), ALLOCATABLE :: ans(:)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c
+ TYPE(FEVariableScalar_), INTENT( IN ) :: crank
+ REAL(DFP), ALLOCATABLE :: ans(:)
+END FUNCTION ForceVector
```
## ForceVector3
@@ -57,12 +57,12 @@ F(i,I)=\int_{\Omega}v_{i}N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c
- TYPE(FEVariableVector_), INTENT( IN ) :: crank
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c
+ TYPE(FEVariableVector_), INTENT( IN ) :: crank
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION ForceVector
```
## ForceVector4
@@ -72,12 +72,12 @@ F(i,j,I)=\int_{\Omega}k_{ij}N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c
- TYPE(FEVariableMatrix_), INTENT( IN ) :: crank
- REAL(DFP), ALLOCATABLE :: ans(:, :, :)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c, crank) RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: crank
+ REAL(DFP), ALLOCATABLE :: ans(:, :, :)
+END FUNCTION ForceVector
```
## ForceVector5
@@ -87,15 +87,15 @@ F_{I}=\int_{\Omega}\rho_{1}\rho_{2}N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c1
- TYPE(FEVariable_), INTENT( IN ) :: c2
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
- REAL(DFP), ALLOCATABLE :: ans(:)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c1
+ TYPE(FEVariable_), INTENT( IN ) :: c2
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c2rank
+ REAL(DFP), ALLOCATABLE :: ans(:)
+END FUNCTION ForceVector
```
## ForceVector6
@@ -105,15 +105,15 @@ F(i,I)=\int_{\Omega}\rho v_{i}N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c1
- TYPE(FEVariable_), INTENT( IN ) :: c2
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
- REAL(DFP), ALLOCATABLE :: ans(:, :)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c1
+ TYPE(FEVariable_), INTENT( IN ) :: c2
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ TYPE(FEVariableVector_), INTENT( IN ) :: c2rank
+ REAL(DFP), ALLOCATABLE :: ans(:, :)
+END FUNCTION ForceVector
```
## ForceVector7
@@ -123,13 +123,13 @@ F(i,j,I)=\int_{\Omega}\rho k_{ij}N^{I}d\Omega
$$
```fortran
- MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
- & RESULT(ans)
- CLASS(ElemshapeData_), INTENT(IN) :: test
- TYPE(FEVariable_), INTENT( IN ) :: c1
- TYPE(FEVariable_), INTENT( IN ) :: c2
- TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
- TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
- REAL(DFP), ALLOCATABLE :: ans(:, :, :)
- END FUNCTION ForceVector
+MODULE PURE FUNCTION ForceVector(test, c1, c1rank, c2, c2rank) &
+ & RESULT(ans)
+ CLASS(ElemshapeData_), INTENT(IN) :: test
+ TYPE(FEVariable_), INTENT( IN ) :: c1
+ TYPE(FEVariable_), INTENT( IN ) :: c2
+ TYPE(FEVariableScalar_), INTENT( IN ) :: c1rank
+ TYPE(FEVariableMatrix_), INTENT( IN ) :: c2rank
+ REAL(DFP), ALLOCATABLE :: ans(:, :, :)
+END FUNCTION ForceVector
```
diff --git a/docs/docs-api/GTK4/_GTK4_test_1.md b/docs/docs-api/GTK4/_GTK4_test_1.md
index 110e48c9..88dd5c03 100644
--- a/docs/docs-api/GTK4/_GTK4_test_1.md
+++ b/docs/docs-api/GTK4/_GTK4_test_1.md
@@ -66,72 +66,72 @@ module handlers
### from `gtk` import
```fortran
- use gtk, only: &
- & gtk_application_new, &
- & G_APPLICATION_FLAGS_NONE, &
- & gtk_application_window_new, &
- & gtk_widget_show, &
- & gtk_window_set_child, &
- & gtk_box_append, &
- & gtk_window_set_title, &
- & g_signal_connect, &
- & gtk_box_new, &
- & gtk_button_new_with_label, &
- & GTK_ORIENTATION_VERTICAL, &
- & FALSE, &
- & gtk_label_new, &
- & gtk_spin_button_new, &
- & gtk_adjustment_new, &
- & gtk_spin_button_get_value, &
- & gtk_drawing_area_new, &
- & gtk_widget_queue_draw, &
- & GDK_COLORSPACE_RGB, &
- & gtk_widget_set_vexpand, &
- & TRUE, &
- & gtk_widget_set_size_request, &
- & gtk_drawing_area_set_draw_func
+use gtk, only: &
+ & gtk_application_new, &
+ & G_APPLICATION_FLAGS_NONE, &
+ & gtk_application_window_new, &
+ & gtk_widget_show, &
+ & gtk_window_set_child, &
+ & gtk_box_append, &
+ & gtk_window_set_title, &
+ & g_signal_connect, &
+ & gtk_box_new, &
+ & gtk_button_new_with_label, &
+ & GTK_ORIENTATION_VERTICAL, &
+ & FALSE, &
+ & gtk_label_new, &
+ & gtk_spin_button_new, &
+ & gtk_adjustment_new, &
+ & gtk_spin_button_get_value, &
+ & gtk_drawing_area_new, &
+ & gtk_widget_queue_draw, &
+ & GDK_COLORSPACE_RGB, &
+ & gtk_widget_set_vexpand, &
+ & TRUE, &
+ & gtk_widget_set_size_request, &
+ & gtk_drawing_area_set_draw_func
```
### from `g` import
```fortran
- use g, only: g_application_run, g_object_unref
+use g, only: g_application_run, g_object_unref
```
### from `cairo` import
```fortran
- use cairo, only: cairo_paint
+use cairo, only: cairo_paint
```
### from `gdk` import
```fortran
- use gdk, only: gdk_cairo_set_source_pixbuf
+use gdk, only: gdk_cairo_set_source_pixbuf
```
```fortran
- use gdk_pixbuf, only: &
- & gdk_pixbuf_new, &
- & gdk_pixbuf_get_rowstride, &
- & gdk_pixbuf_get_pixels, &
- & gdk_pixbuf_get_n_channels
+use gdk_pixbuf, only: &
+ & gdk_pixbuf_new, &
+ & gdk_pixbuf_get_rowstride, &
+ & gdk_pixbuf_get_pixels, &
+ & gdk_pixbuf_get_n_channels
```
### use other modules
```fortran
- use math
+use math
```
### module variables
```fortran
- implicit none
- type(c_ptr) :: r_spin_button, my_drawing_area, my_pixbuf
- integer(kind=c_int) :: nch, rowstride, width, height, pixwidth, pixheight
- character(kind=c_char), dimension(:), pointer :: pixel
- contains
+implicit none
+type(c_ptr) :: r_spin_button, my_drawing_area, my_pixbuf
+integer(kind=c_int) :: nch, rowstride, width, height, pixwidth, pixheight
+character(kind=c_char), dimension(:), pointer :: pixel
+contains
```
### my_button_clicked
@@ -139,11 +139,11 @@ module handlers
The algorithm to draw the bifurcation diagram of the logistic map, also called the Feigenbaum fractal, being short, we will put it directly into the `my_button_clicked` callback function:
```fortran
- subroutine my_button_clicked(widget, gdata) bind(c)
- type(c_ptr), value, intent(in) :: widget, gdata
- real(dp) :: r, x0
- real(dp) :: rmin, rmax
- integer :: p, n, xp, yp, xpmax, ypmax
+subroutine my_button_clicked(widget, gdata) bind(c)
+ type(c_ptr), value, intent(in) :: widget, gdata
+ real(dp) :: r, x0
+ real(dp) :: rmin, rmax
+ integer :: p, n, xp, yp, xpmax, ypmax
```
We choose randomly x0, get r from the `GtkSpinButton` and print the results in the terminal:
@@ -181,7 +181,7 @@ Note also that the graphical coordinate system has the origin (0,0) at the top l
The `gtk_widget_queue_draw()` function tells the main loop that the area needs redrawing. The main loop will manage it as soon as possible.
```fortran
- end subroutine my_button_clicked
+end subroutine my_button_clicked
```
### draw
@@ -203,8 +203,8 @@ The drawing will be made via the Cairo library. Our pixbuf is placed at the top
This subroutine `activate()` will be called by the GTK main loop when we launch our application.
```fortran
- subroutine activate(app, gdata) bind(c)
- type(c_ptr), value, intent(in) :: app, gdata
+subroutine activate(app, gdata) bind(c)
+ type(c_ptr), value, intent(in) :: app, gdata
```
The input arguments are two C pointers:
@@ -216,9 +216,9 @@ The input arguments are two C pointers:
Note firstly the `bind(c)` statement (this Fortran subroutine will be called by a C function from the GTK main loop) and secondly that the C pointers are passed by value (memory addresses).
```fortran
- type(c_ptr) :: window
- type(c_ptr) :: box, my_button
- type(c_ptr) :: label_r
+type(c_ptr) :: window
+type(c_ptr) :: box, my_button
+type(c_ptr) :: label_r
```
### `gtk_application_window_new`
@@ -234,15 +234,15 @@ In GTK 4, the widgets inside a window are all shown by default. It was the contr
Don't forget to add used function names in the `use gtk, only:` statement of the module.
```fortran
- window = gtk_application_window_new(app)
+window = gtk_application_window_new(app)
```
Now we add title to our window.
```fortran
- call gtk_window_set_title( &
- & window, &
- & "Hello world!"//c_null_char)
+call gtk_window_set_title( &
+ & window, &
+ & "Hello world!"//c_null_char)
```
### `gtk_box_new`
@@ -256,8 +256,8 @@ Here, we have chosen to arrange them vertically and separated by 10 pixels.
Our box is then added to the parent window as a "child". A `GtkBox` is indeed what it called a container.
```fortran
- box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10_c_int)
- call gtk_window_set_child(window, box)
+box = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10_c_int)
+call gtk_window_set_child(window, box)
```
!!! note `label_r` is `C` pointer.
@@ -267,14 +267,14 @@ Now, we define our button and add it to the box: the button is therefore contain
### `gtk_spin_button_new`
```fortran
- label_r = gtk_label_new("r parameter"//c_null_char)
- call gtk_box_append(box, label_r)
- r_spin_button = gtk_spin_button_new( &
- & gtk_adjustment_new(3._dp, 0._dp, 4._dp, &
- & 0.1_dp, 0._dp, 0._dp), &
- & 0.0_dp, 3_c_int)
- !!
- call gtk_box_append(box, r_spin_button)
+label_r = gtk_label_new("r parameter"//c_null_char)
+call gtk_box_append(box, label_r)
+r_spin_button = gtk_spin_button_new( &
+ & gtk_adjustment_new(3._dp, 0._dp, 4._dp, &
+ & 0.1_dp, 0._dp, 0._dp), &
+ & 0.0_dp, 3_c_int)
+!!
+call gtk_box_append(box, r_spin_button)
```
!!! note "Spint button"
@@ -283,12 +283,12 @@ Now, we define our button and add it to the box: the button is therefore contain
### `gtk_button_new_with_label`
```fortran
- my_button = gtk_button_new_with_label("Compute"//c_null_char)
- call gtk_box_append(box, my_button)
- call g_signal_connect( &
- & my_button, &
- & "clicked"//c_null_char, &
- & c_funloc(my_button_clicked))
+my_button = gtk_button_new_with_label("Compute"//c_null_char)
+call gtk_box_append(box, my_button)
+call g_signal_connect( &
+ & my_button, &
+ & "clicked"//c_null_char, &
+ & c_funloc(my_button_clicked))
```
!!! note "clicked"
@@ -300,13 +300,13 @@ The interface of callback function can be found by looking in the GTK documentat
### `gtk_drawing_area_new`
```fortran
- my_drawing_area = gtk_drawing_area_new()
- pixwidth = 1000
- pixheight = 600
- call gtk_widget_set_size_request(my_drawing_area, pixwidth, pixheight)
- call gtk_drawing_area_set_draw_func(my_drawing_area, &
- & c_funloc(draw), c_null_ptr, c_null_funptr)
- call gtk_box_append(box, my_drawing_area)
+my_drawing_area = gtk_drawing_area_new()
+pixwidth = 1000
+pixheight = 600
+call gtk_widget_set_size_request(my_drawing_area, pixwidth, pixheight)
+call gtk_drawing_area_set_draw_func(my_drawing_area, &
+ & c_funloc(draw), c_null_ptr, c_null_funptr)
+call gtk_box_append(box, my_drawing_area)
```
The variables `my_drawing_area` and `pixwidth` and `pixheight` will be declared at the top of the `handlers` module, respectively with `type(c_ptr)` and `integer(c_int)`. We will later write the callback `draw` function which will be called each time the drawing area is drawn.
@@ -336,25 +336,24 @@ That array is initialized with zeros and the image will therefore be black (red=
Each time the `GtkDrawingArea` will need to be redrawn (for example if another window was on top), the `draw` signal will be automatically emitted and the callback function called:
```fortran
- my_pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8_c_int, &
- & pixwidth, pixheight)
- nch = gdk_pixbuf_get_n_channels(my_pixbuf)
- rowstride = gdk_pixbuf_get_rowstride(my_pixbuf)
- call c_f_pointer(gdk_pixbuf_get_pixels(my_pixbuf), pixel, &
- & (/pixwidth*pixheight*nch/))
- pixel = char(0)
+my_pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB, FALSE, 8_c_int, &
+ & pixwidth, pixheight)
+nch = gdk_pixbuf_get_n_channels(my_pixbuf)
+rowstride = gdk_pixbuf_get_rowstride(my_pixbuf)
+call c_f_pointer(gdk_pixbuf_get_pixels(my_pixbuf), pixel, &
+ & (/pixwidth*pixheight*nch/))
+pixel = char(0)
```
```fortran
- call gtk_widget_show(window)
- end subroutine activate
+ call gtk_widget_show(window)
+end subroutine activate
```
### end of module `handlers`
```fortran
end module handlers
-
```
## `my_first_gtk_app`
@@ -373,9 +372,9 @@ program my_first_gtk_app
The `gtk_application_new()` function is returning a C pointer to our app variable using the `c_ptr` constant defined in the `iso_c_binding` module. The first argument to pass is the application (unique) identifier: a string composed of alphanumerical characters containing at least one dot.
```fortran
- app = gtk_application_new( &
- & "gtk-fortran.my_first_gtk_app"//c_null_char, &
- & G_APPLICATION_FLAGS_NONE)
+app = gtk_application_new( &
+ & "gtk-fortran.my_first_gtk_app"//c_null_char, &
+ & G_APPLICATION_FLAGS_NONE)
```
### `g_signal_connect`
@@ -383,11 +382,11 @@ The `gtk_application_new()` function is returning a C pointer to our app variabl
Most of the time, out GTK program will be based on a Window widget. And that window must be created when our GTK application is activated (i.e., when we open the window). Therefore, we need to add this line in the main program before running the main app:
```fortran
- call g_signal_connect( &
- & app, &
- & "activate"//c_null_char, &
- & c_funloc(activate), &
- & c_null_ptr)
+call g_signal_connect( &
+ & app, &
+ & "activate"//c_null_char, &
+ & c_funloc(activate), &
+ & c_null_ptr)
```
Let's understand what is going on here.
@@ -405,7 +404,7 @@ The `c_null_ptr` means that no data will be passed to the callback function.
### `g_application_run`
```fortran
- status = g_application_run(app, 0_c_int, [c_null_ptr])
+status = g_application_run(app, 0_c_int, [c_null_ptr])
```
- `g_application_run()`: GTK is based on GLib and a GTK application is therefore a GLib application. We launch our application using the `g_application_run()` function. Here we don't manage the command line arguments: the `0_c_int, [c_null_ptr]` arguments are the classical `int argc, char **argv` used in C language. Calling that function causes your program to enter the main loop of the GUI. That loop is idle most of the time, and waits for something to happen: an event. When quitting the application, the function will return the exit status in the status variable, whose type must be interoperable with the C int type.
@@ -417,7 +416,7 @@ When you read the GTK documentation, be conscious that GTK is using the GLib typ
Note that the Fortran interfaces of the functions `g_signal_connect*`, although belonging to `GLib`, are in the gtk module (they can not be parsed by gtk-4-fortran wrapper because they are defined by C macros).
```fortran
- call g_object_unref(app)
+call g_object_unref(app)
```
- `g_object_unref(app)` line will free the memory
diff --git a/docs/docs-api/Geometry/index.md b/docs/docs-api/Geometry/index.md
index c056afe5..bb3d2faa 100644
--- a/docs/docs-api/Geometry/index.md
+++ b/docs/docs-api/Geometry/index.md
@@ -5,4 +5,3 @@ sidebar_position: 1
# Geometry
The `Geometry_Method` module contains several modules for handling the reference element domain of finite element (such as, line, triangle, tetrahedron, etc.).
-
diff --git a/docs/docs-api/GmshAPI/GmshFLTK_.md b/docs/docs-api/GmshAPI/GmshFLTK_.md
index 34596693..81ea97aa 100644
--- a/docs/docs-api/GmshAPI/GmshFLTK_.md
+++ b/docs/docs-api/GmshAPI/GmshFLTK_.md
@@ -11,18 +11,18 @@
### Initiate
SUBROUTINE fltk_Initiate(obj)
- CLASS(GmshFLTK_), INTENT(INOUT) :: obj
+CLASS(GmshFLTK_), INTENT(INOUT) :: obj
END SUBROUTINE fltk_Initiate
### Initialize
! Create the FLTK graphical user interface. Can only be called in the main
-! * thread.
+! * thread.
FUNCTION fltk_Initialize() RESULT(ans)
- INTEGER(I4B) :: ans
- CALL gmshFltkInitialize(ierr);
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CALL gmshFltkInitialize(ierr);
+ans = int(ierr, i4b)
END FUNCTION fltk_Initialize
### Wait
@@ -32,13 +32,13 @@ END FUNCTION fltk_Initialize
! has not yet been initialized. Can only be called in the main thread.
FUNCTION fltk_Wait(time) RESULT(ans)
- CLASS(*), OPTIONAL, INTENT(IN) :: time
- INTEGER(I4B) :: ans
- !!
- CALL gmshFltkWait( &
- & time=gmsh_opt_cdouble(option=time, default=-1.0_DFP), &
- & ierr=ierr)
- ans = int(ierr, i4b)
+CLASS(*), OPTIONAL, INTENT(IN) :: time
+INTEGER(I4B) :: ans
+!!
+CALL gmshFltkWait( &
+& time=gmsh_opt_cdouble(option=time, default=-1.0_DFP), &
+& ierr=ierr)
+ans = int(ierr, i4b)
END FUNCTION fltk_Wait
### Update
@@ -49,9 +49,9 @@ END FUNCTION fltk_Wait
! to trigger an update of the user interface from another thread. */
FUNCTION fltk_Update() RESULT(ans)
- INTEGER(I4B) :: ans
- CALL gmshFltkUpdate(ierr)
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CALL gmshFltkUpdate(ierr)
+ans = int(ierr, i4b)
END FUNCTION fltk_Update
### Awake
@@ -61,17 +61,17 @@ END FUNCTION fltk_Update
! "update").
FUNCTION fltk_Awake(action) RESULT(ans)
- INTEGER(I4B) :: ans
- CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: action
- !internal
- CHARACTER(LEN=maxStrLen), TARGET :: action_
- !!
- action_ = gmsh_CString(input(option=action, default=""))
- !!
- CALL gmshFltkAwake( &
- & action=action_, ierr=ierr)
- !!
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: action
+!internal
+CHARACTER(LEN=maxStrLen), TARGET :: action_
+!!
+action_ = gmsh_CString(input(option=action, default=""))
+!!
+CALL gmshFltkAwake( &
+& action=action_, ierr=ierr)
+!!
+ans = int(ierr, i4b)
END FUNCTION fltk_Awake
### Lock
@@ -79,9 +79,9 @@ END FUNCTION fltk_Awake
! Block the current thread until it can safely modify the user interface.
FUNCTION Fltk_Lock() RESULT(ans)
- INTEGER(I4B) :: ans
- CALL gmshFltkUnlock(ierr)
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CALL gmshFltkUnlock(ierr)
+ans = int(ierr, i4b)
END FUNCTION Fltk_Lock
### Unlock
@@ -89,9 +89,9 @@ END FUNCTION Fltk_Lock
! Release the lock that was set using lock. */
FUNCTION Fltk_Unlock() RESULT(ans)
- INTEGER(I4B) :: ans
- CALL gmshFltkUnlock(ierr)
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CALL gmshFltkUnlock(ierr)
+ans = int(ierr, i4b)
END FUNCTION Fltk_Unlock
### Run
@@ -101,106 +101,104 @@ END FUNCTION Fltk_Unlock
! been initialized. Can only be called in the main thread. */
FUNCTION Fltk_Run() RESULT(ans)
- INTEGER(I4B) :: ans
- CALL gmshFltkRun(ierr)
- ans = int(ierr, i4b)
+INTEGER(I4B) :: ans
+CALL gmshFltkRun(ierr)
+ans = int(ierr, i4b)
END FUNCTION Fltk_Run
! Check if the user interface is available (e.g. to detect if it has been
! closed).
FUNCTION Fltk_IsAvailable() RESULT(ans)
- LOGICAL(LGT) :: ans
- !> main
- cintvar = gmshFltkIsAvailable(ierr)
- IF (cintvar .EQ. 1_c_int) THEN
- ans = .TRUE.
- ELSE
- ans = .FALSE.
- END IF
+LOGICAL(LGT) :: ans
+!> main
+cintvar = gmshFltkIsAvailable(ierr)
+IF (cintvar .EQ. 1_c_int) THEN
+ans = .TRUE.
+ELSE
+ans = .FALSE.
+END IF
END FUNCTION Fltk_IsAvailable
-! Select entities in the user interface. If `dim' is >= 0, return only the
-! entities of the specified dimension (e.g. points if`dim' == 0).
+! Select entities in the user interface. If `dim' is >= 0, return only the ! entities of the specified dimension (e.g. points if`dim' == 0).
FUNCTION Fltk_SelectEntities(dim) &
- RESULT(dimTags)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: dim
- INTEGER(I4B), ALLOCATABLE :: dimTags(:, :)
- !
- ! internal
- !
- TYPE(C_PTR) :: cptr
- INTEGER(C_SIZE_T) :: dimTags_n
- !
- cintvar = gmshFltkSelectEntities( &
- & dimTags=cptr, &
- & dimTags_n=dimTags_n, &
- & dim=dim, &
- & ierr=ierr)
- !
- dimTags = gmsh_dimtag_c2f(cptr, dimTags_n)
+RESULT(dimTags)
+INTEGER(I4B), OPTIONAL, INTENT(IN) :: dim
+INTEGER(I4B), ALLOCATABLE :: dimTags(:, :)
+!
+! internal
+!
+TYPE(C_PTR) :: cptr
+INTEGER(C_SIZE_T) :: dimTags_n
+!
+cintvar = gmshFltkSelectEntities( &
+& dimTags=cptr, &
+& dimTags_n=dimTags_n, &
+& dim=dim, &
+& ierr=ierr)
+!
+dimTags = gmsh_dimtag_c2f(cptr, dimTags_n)
END FUNCTION Fltk_SelectEntities
! Select elements in the user interface. */
FUNCTION Fltk_SelectElements() &
- & RESULT(elementTags)
- INTEGER(I4B), ALLOCATABLE :: elementTags(:)
- !
- ! internal
- !
- TYPE(C_PTR) :: cptr
- INTEGER(C_SIZE_T) :: elementTags_n
- !
- cintvar = gmshFltkSelectElements( &
- & elementTags=cptr, &
- & elementTags_n=elementTags_n, &
- & ierr=ierr)
- !
- elementTags = gmsh_intvec_c2f(cptr, elementTags_n)
- !
+& RESULT(elementTags)
+INTEGER(I4B), ALLOCATABLE :: elementTags(:)
+!
+! internal
+!
+TYPE(C_PTR) :: cptr
+INTEGER(C_SIZE_T) :: elementTags_n
+!
+cintvar = gmshFltkSelectElements( &
+& elementTags=cptr, &
+& elementTags_n=elementTags_n, &
+& ierr=ierr)
+!
+elementTags = gmsh_intvec_c2f(cptr, elementTags_n)
+!
END FUNCTION Fltk_SelectElements
! Select views in the user interface.
FUNCTION Fltk_SelectViews() &
- & RESULT(viewTags)
- INTEGER(I4B), ALLOCATABLE :: viewTags(:)
- ! internal
- TYPE(C_PTR) :: cptr
- INTEGER(C_SIZE_T) :: viewTags_n
- !
- cintvar = gmshFltkSelectViews( &
- & viewTags=cptr, &
- & viewTags_n=viewTags_n, &
- & ierr=ierr)
- !
- viewTags = gmsh_intvec_c2f(cptr, viewTags_n)
- !
+& RESULT(viewTags)
+INTEGER(I4B), ALLOCATABLE :: viewTags(:)
+! internal
+TYPE(C_PTR) :: cptr
+INTEGER(C_SIZE_T) :: viewTags_n
+!
+cintvar = gmshFltkSelectViews( &
+& viewTags=cptr, &
+& viewTags_n=viewTags_n, &
+& ierr=ierr)
+!
+viewTags = gmsh_intvec_c2f(cptr, viewTags_n)
+!
END FUNCTION Fltk_SelectViews
-! Split the current window horizontally (if `how' = "h") or vertically (if
-!`how' = "v"), using ratio `ratio'. If`how' = "u", restore a single window.
+! Split the current window horizontally (if `how' = "h") or vertically (if !`how' = "v"), using ratio `ratio'. If`how' = "u", restore a single window.
FUNCTION Fltk_SplitCurrentWindow(how, ratio) &
- & RESULT(ans)
- CHARACTER(LEN=*), INTENT(IN) :: how
- CLASS(*), OPTIONAL, INTENT(IN) :: ratio
- INTEGER(I4B) :: ans
- !
- ! internal values
- !
- CHARACTER(LEN=maxStrLen), TARGET :: how_
- !
- how_ = gmsh_CString(how)
- !
- CALL gmshFltkSplitCurrentWindow( &
- & how=how_, &
- & ratio=gmsh_opt_cdouble(option=ratio, default=0.5_DFP), &
- & ierr=ierr)
- !
- ans = int(ierr, i4b)
+& RESULT(ans)
+CHARACTER(LEN=_), INTENT(IN) :: how
+CLASS(_), OPTIONAL, INTENT(IN) :: ratio
+INTEGER(I4B) :: ans
+!
+! internal values
+!
+CHARACTER(LEN=maxStrLen), TARGET :: how_
+!
+how_ = gmsh_CString(how)
+!
+CALL gmshFltkSplitCurrentWindow( &
+& how=how_, &
+& ratio=gmsh_opt_cdouble(option=ratio, default=0.5_DFP), &
+& ierr=ierr)
+!
+ans = int(ierr, i4b)
END FUNCTION Fltk_SplitCurrentWindow
! Set the current window by speficying its index (starting at 0) in the list
@@ -208,87 +206,87 @@ END FUNCTION Fltk_SplitCurrentWindow
! appended at the end of the list.
FUNCTION Fltk_SetCurrentWindow(windowIndex) &
- & RESULT(ans)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: windowIndex
- INTEGER(I4B) :: ans
- !!
- CALL gmshFltkSetCurrentWindow( &
- & windowIndex=gmsh_opt_cint(option=windowIndex, default=0_I4B), &
- & ierr=ierr)
- !!
- ans = int(ierr, i4b)
+& RESULT(ans)
+INTEGER(I4B), OPTIONAL, INTENT(IN) :: windowIndex
+INTEGER(I4B) :: ans
+!!
+CALL gmshFltkSetCurrentWindow( &
+& windowIndex=gmsh_opt_cint(option=windowIndex, default=0_I4B), &
+& ierr=ierr)
+!!
+ans = int(ierr, i4b)
END FUNCTION Fltk_SetCurrentWindow
! Set a status message in the current window. If `graphics' is set, display
! the message inside the graphic window instead of the status bar.
FUNCTION Fltk_SetStatusMessage(message, graphics) &
- & RESULT(ans)
- CHARACTER(LEN=*), INTENT(IN) :: message
- LOGICAL(LGT), OPTIONAL, INTENT(IN) :: graphics
- INTEGER(I4B) :: ans
- ! internal
- CHARACTER(LEN=maxStrLen), TARGET :: message_
- !!
- message_ = gmsh_CString(message)
- !!
- CALL gmshFltkSetStatusMessage( &
- & message=message_, &
- & graphics=optval_c_bool(.FALSE., graphics), &
- & ierr=ierr)
- !!
- ans = int(ierr, i4b)
+& RESULT(ans)
+CHARACTER(LEN=*), INTENT(IN) :: message
+LOGICAL(LGT), OPTIONAL, INTENT(IN) :: graphics
+INTEGER(I4B) :: ans
+! internal
+CHARACTER(LEN=maxStrLen), TARGET :: message_
+!!
+message_ = gmsh_CString(message)
+!!
+CALL gmshFltkSetStatusMessage( &
+& message=message_, &
+& graphics=optval_c_bool(.FALSE., graphics), &
+& ierr=ierr)
+!!
+ans = int(ierr, i4b)
END FUNCTION Fltk_SetStatusMessage
! Show context window for the entity of dimension `dim' and tag`tag'.
FUNCTION Fltk_ShowContextWindow(dim, tag) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: dim, tag
- INTEGER(I4B) :: ans
- ! internal
- CALL gmshFltkShowContextWindow( &
- & dim=gmsh_cint(dim), &
- & tag=gmsh_cint(tag), &
- & ierr=ierr)
- ans = int(ierr, i4b)
+& RESULT(ans)
+INTEGER(I4B), INTENT(IN) :: dim, tag
+INTEGER(I4B) :: ans
+! internal
+CALL gmshFltkShowContextWindow( &
+& dim=gmsh_cint(dim), &
+& tag=gmsh_cint(tag), &
+& ierr=ierr)
+ans = int(ierr, i4b)
END FUNCTION Fltk_ShowContextWindow
! Open the `name' item in the menu tree. */
!
! GMSH_API void gmshFltkOpenTreeItem(const char*name,
-! int *ierr);
+! int *ierr);
FUNCTION Fltk_OpenTreeItem(name) &
- & RESULT(ans)
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(I4B) :: ans
- ! internal
- CHARACTER(LEN=maxStrLen) :: name_
- !
- name_ = gmsh_CString(name)
- !
- CALL gmshFltkOpenTreeItem( &
- & name=name_, ierr=ierr)
- !
- ans = int(ierr, i4b)
+& RESULT(ans)
+CHARACTER(LEN=*), INTENT(IN) :: name
+INTEGER(I4B) :: ans
+! internal
+CHARACTER(LEN=maxStrLen) :: name_
+!
+name_ = gmsh_CString(name)
+!
+CALL gmshFltkOpenTreeItem( &
+& name=name_, ierr=ierr)
+!
+ans = int(ierr, i4b)
END FUNCTION Fltk_OpenTreeItem
! Close the `name' item in the menu tree. */
!
! GMSH_API void gmshFltkCloseTreeItem(const char*name,
-! int *ierr);
+! int *ierr);
FUNCTION Fltk_CloseTreeItem(name) &
- & RESULT(ans)
- CHARACTER(LEN=*), INTENT(IN) :: name
- INTEGER(I4B) :: ans
+& RESULT(ans)
+CHARACTER(LEN=*), INTENT(IN) :: name
+INTEGER(I4B) :: ans
! internal
- CHARACTER(LEN=maxStrLen) :: name_
- !
- name_ = gmsh_CString(name)
- !
- CALL gmshFltkCloseTreeItem(name=name_, ierr=ierr)
- !
- ans = int(ierr, i4b)
+CHARACTER(LEN=maxStrLen) :: name_
+!
+name_ = gmsh_CString(name)
+!
+CALL gmshFltkCloseTreeItem(name=name_, ierr=ierr)
+!
+ans = int(ierr, i4b)
END FUNCTION Fltk_CloseTreeItem
diff --git a/docs/docs-api/GmshAPI/GmshFLTK_test_1.md b/docs/docs-api/GmshAPI/GmshFLTK_test_1.md
index 507759d1..2e261f56 100644
--- a/docs/docs-api/GmshAPI/GmshFLTK_test_1.md
+++ b/docs/docs-api/GmshAPI/GmshFLTK_test_1.md
@@ -32,17 +32,17 @@ IMPLICIT NONE
```
```fortran
- TYPE( gmsh_ ) :: gmsh
+TYPE( gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- INTEGER( I4B ) :: ierr, tag
- REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
- REAL( DFP ) :: x, y, z, meshSize
- CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
- CHARACTER( LEN = 120 ) :: name
+INTEGER( I4B ) :: ierr, tag
+REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
+REAL( DFP ) :: x, y, z, meshSize
+CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
+CHARACTER( LEN = 120 ) :: name
```
- [[Gmsh_#Initialize]]
@@ -50,9 +50,9 @@ IMPLICIT NONE
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%initialize()
- ierr = gmsh%model%add("t1")
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%initialize()
+ierr = gmsh%model%add("t1")
+ierr = gmsh%model%setFileName('t1.geo')
```
### Point
@@ -62,33 +62,33 @@ IMPLICIT NONE
Point-1: Specifying tag explicitly
```fortran
- x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(a) ")
+x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(a) ")
```
Point-2: Not Specifying the tag:
```fortran
- x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
- tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
- call ok(tag .eq. 2_I4B, "(b) ")
+x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
+tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
+call ok(tag .eq. 2_I4B, "(b) ")
```
Point-3: Setting `tag=-1` equivalent to not specifying the tag explicitly.
```fortran
- x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .eq. 3_I4B, "(c) ")
+x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .eq. 3_I4B, "(c) ")
```
Point-4: Specifying tag explicitly.
```fortran
- x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(d) ")
+x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(d) ")
```
### Line
@@ -98,43 +98,43 @@ Point-4: Specifying tag explicitly.
Line-1: explicit tag
```fortran
- ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
- call ok(ierr .NE. 0_I4B, "(e) ")
+ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
+call ok(ierr .NE. 0_I4B, "(e) ")
```
Line-2: automatic tag
```fortran
- tag = gmsh%model%geo%addLine(2,3)
- call ok(tag .EQ. 2_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(2,3)
+call ok(tag .EQ. 2_I4B, "(f) ")
```
Line-3: if `tag=-1` it means automatic tag.
```fortran
- tag = gmsh%model%geo%addLine(3,4,-1)
- call ok(tag .EQ. 3_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(3,4,-1)
+call ok(tag .EQ. 3_I4B, "(f) ")
```
Line-4:
```fortran
- ierr = gmsh%model%geo%addLine(4,1,4)
- call ok(ierr .NE. 0_I4B, "(g) ")
+ierr = gmsh%model%geo%addLine(4,1,4)
+call ok(ierr .NE. 0_I4B, "(g) ")
```
### CurveLoop
!!! note "GmshModelGeo/AddCurveLoop"
- [[GmshModelGeo_#AddCurveLoop]]
+[[GmshModelGeo_#AddCurveLoop]]
- `reorient` is optional, default value is false.
- `tag` is optional
```fortran
- ierr = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
- call ok(ierr .NE. 0_I4B, "(h) ")
+ierr = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
+call ok(ierr .NE. 0_I4B, "(h) ")
```
### PlaneSurface
@@ -144,8 +144,8 @@ Line-4:
- `tag` is explicitly given.
```fortran
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
- call ok(ierr .NE. 0_I4B, "(i) ")
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
+call ok(ierr .NE. 0_I4B, "(i) ")
```
### Synchronize
diff --git a/docs/docs-api/GmshAPI/GmshFLTK_test_2.md b/docs/docs-api/GmshAPI/GmshFLTK_test_2.md
index 3079956f..75319876 100644
--- a/docs/docs-api/GmshAPI/GmshFLTK_test_2.md
+++ b/docs/docs-api/GmshAPI/GmshFLTK_test_2.md
@@ -34,15 +34,15 @@ IMPLICIT NONE
### Variables
```fortran
- TYPE( gmsh_ ) :: gmsh
+TYPE( gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- INTEGER( I4B ) :: ierr, tag
- REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
- REAL( DFP ) :: x, y, z, meshSize
+INTEGER( I4B ) :: ierr, tag
+REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
+REAL( DFP ) :: x, y, z, meshSize
```
### Initiate
@@ -52,9 +52,9 @@ IMPLICIT NONE
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%initialize()
- ierr = gmsh%model%add("t1")
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%initialize()
+ierr = gmsh%model%add("t1")
+ierr = gmsh%model%setFileName('t1.geo')
```
### Point
@@ -64,33 +64,33 @@ IMPLICIT NONE
Point-1: Specifying tag explicitly
```fortran
- x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(a) ")
+x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(a) ")
```
Point-2: Not Specifying the tag:
```fortran
- x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
- tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
- call ok(tag .eq. 2_I4B, "(b) ")
+x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
+tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
+call ok(tag .eq. 2_I4B, "(b) ")
```
Point-3: Setting `tag=-1` equivalent to not specifying the tag explicitly.
```fortran
- x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .eq. 3_I4B, "(c) ")
+x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .eq. 3_I4B, "(c) ")
```
Point-4: Specifying tag explicitly.
```fortran
- x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(d) ")
+x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(d) ")
```
### Line
@@ -100,43 +100,43 @@ Point-4: Specifying tag explicitly.
Line-1: explicit tag
```fortran
- ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
- call ok(ierr .NE. 0_I4B, "(e) ")
+ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
+call ok(ierr .NE. 0_I4B, "(e) ")
```
Line-2: automatic tag
```fortran
- tag = gmsh%model%geo%addLine(2,3)
- call ok(tag .EQ. 2_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(2,3)
+call ok(tag .EQ. 2_I4B, "(f) ")
```
Line-3: if `tag=-1` it means automatic tag.
```fortran
- tag = gmsh%model%geo%addLine(3,4,-1)
- call ok(tag .EQ. 3_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(3,4,-1)
+call ok(tag .EQ. 3_I4B, "(f) ")
```
Line-4:
```fortran
- ierr = gmsh%model%geo%addLine(4,1,4)
- call ok(ierr .NE. 0_I4B, "(g) ")
+ierr = gmsh%model%geo%addLine(4,1,4)
+call ok(ierr .NE. 0_I4B, "(g) ")
```
### CurveLoop
!!! note "GmshModelGeo/AddCurveLoop"
- [[GmshModelGeo_#AddCurveLoop]]
+[[GmshModelGeo_#AddCurveLoop]]
- `reorient` is optional, default value is false.
- `tag` is optional
```fortran
- ierr = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
- call ok(ierr .NE. 0_I4B, "(h) ")
+ierr = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
+call ok(ierr .NE. 0_I4B, "(h) ")
```
### PlaneSurface
@@ -146,8 +146,8 @@ Line-4:
- `tag` is explicitly given.
```fortran
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
- call ok(ierr .NE. 0_I4B, "(i) ")
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
+call ok(ierr .NE. 0_I4B, "(i) ")
```
### Synchronize
diff --git a/docs/docs-api/GmshAPI/GmshFLTK_test_3.md b/docs/docs-api/GmshAPI/GmshFLTK_test_3.md
index 73f753df..31900776 100644
--- a/docs/docs-api/GmshAPI/GmshFLTK_test_3.md
+++ b/docs/docs-api/GmshAPI/GmshFLTK_test_3.md
@@ -32,17 +32,17 @@ IMPLICIT NONE
```
```fortran
- TYPE( gmsh_ ) :: gmsh
+TYPE( gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- INTEGER( I4B ) :: ierr, tag
- REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
- REAL( DFP ) :: x, y, z, meshSize
- CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
- CHARACTER( LEN = 120 ) :: name
+INTEGER( I4B ) :: ierr, tag
+REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
+REAL( DFP ) :: x, y, z, meshSize
+CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
+CHARACTER( LEN = 120 ) :: name
```
- [[Gmsh_#Initialize]]
@@ -50,9 +50,9 @@ IMPLICIT NONE
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%initialize()
- ierr = gmsh%model%add("t1")
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%initialize()
+ierr = gmsh%model%add("t1")
+ierr = gmsh%model%setFileName('t1.geo')
```
### Point
@@ -62,33 +62,33 @@ IMPLICIT NONE
Point-1: Specifying tag explicitly
```fortran
- x = 0.0; y = 0.0; z = 0.0; meshSize = 0.1; tag=1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(a) ")
+x = 0.0; y = 0.0; z = 0.0; meshSize = 0.1; tag=1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(a) ")
```
Point-2: Not Specifying the tag:
```fortran
- x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.1
- tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
- call ok(tag .eq. 2_I4B, "(b) ")
+x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.1
+tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
+call ok(tag .eq. 2_I4B, "(b) ")
```
Point-3: Setting `tag=-1` equivalent to not specifying the tag explicitly.
```fortran
- x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.1; tag=-1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .eq. 3_I4B, "(c) ")
+x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.1; tag=-1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .eq. 3_I4B, "(c) ")
```
Point-4: Specifying tag explicitly.
```fortran
- x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.1; tag=4
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(d) ")
+x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.1; tag=4
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(d) ")
```
### Line
@@ -98,43 +98,43 @@ Point-4: Specifying tag explicitly.
Line-1: explicit tag
```fortran
- ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
- call ok(ierr .NE. 0_I4B, "(e) ")
+ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
+call ok(ierr .NE. 0_I4B, "(e) ")
```
Line-2: automatic tag
```fortran
- tag = gmsh%model%geo%addLine(2,3)
- call ok(tag .EQ. 2_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(2,3)
+call ok(tag .EQ. 2_I4B, "(f) ")
```
Line-3: if `tag=-1` it means automatic tag.
```fortran
- tag = gmsh%model%geo%addLine(3,4,-1)
- call ok(tag .EQ. 3_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(3,4,-1)
+call ok(tag .EQ. 3_I4B, "(f) ")
```
Line-4:
```fortran
- ierr = gmsh%model%geo%addLine(4,1,4)
- call ok(ierr .NE. 0_I4B, "(g) ")
+ierr = gmsh%model%geo%addLine(4,1,4)
+call ok(ierr .NE. 0_I4B, "(g) ")
```
### CurveLoop
!!! note "GmshModelGeo/AddCurveLoop"
- [[GmshModelGeo_#AddCurveLoop]]
+[[GmshModelGeo_#AddCurveLoop]]
- `reorient` is optional, default value is false.
- `tag` is optional
```fortran
- ierr = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
- call ok(ierr .NE. 0_I4B, "(h) ")
+ierr = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
+call ok(ierr .NE. 0_I4B, "(h) ")
```
### PlaneSurface
@@ -144,8 +144,8 @@ Line-4:
- `tag` is explicitly given.
```fortran
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
- call ok(ierr .NE. 0_I4B, "(i) ")
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
+call ok(ierr .NE. 0_I4B, "(i) ")
```
### Synchronize
@@ -162,25 +162,25 @@ ierr = gmsh%model%geo%Synchronize()
- [[GmshFLTK_#SetStatusMessage]]
```fortran
- block
- integer(i4b), allocatable :: elems(:)
- !
- ierr = gmsh%model%mesh%generate(2)
- !
- ierr = gmsh%fltk%run()
- ierr = gmsh%fltk%setStatusMessage("Select an element, or press 'q' to quit", .True.)
- !
- do
- !!ierr = gmsh%fltk%setStatusMessage("Select an element, or press 'q' to quit", .True.)
- !!elems = gmsh%fltk%SelectElements()
- ierr = gmsh%fltk%wait()
- !if( gmsh%fltk%isAvailable()) then
- ! call display( elems, "elems = ")
- !else
- exit
- !end if
- end do
- end block
+block
+ integer(i4b), allocatable :: elems(:)
+ !
+ ierr = gmsh%model%mesh%generate(2)
+ !
+ ierr = gmsh%fltk%run()
+ ierr = gmsh%fltk%setStatusMessage("Select an element, or press 'q' to quit", .True.)
+ !
+ do
+ !!ierr = gmsh%fltk%setStatusMessage("Select an element, or press 'q' to quit", .True.)
+ !!elems = gmsh%fltk%SelectElements()
+ ierr = gmsh%fltk%wait()
+ !if( gmsh%fltk%isAvailable()) then
+ ! call display( elems, "elems = ")
+ !else
+ exit
+ !end if
+ end do
+end block
```
### Cleanup
diff --git a/docs/docs-api/GmshAPI/GmshModelGeo_test_1.md b/docs/docs-api/GmshAPI/GmshModelGeo_test_1.md
index 63971a33..0a07cee5 100644
--- a/docs/docs-api/GmshAPI/GmshModelGeo_test_1.md
+++ b/docs/docs-api/GmshAPI/GmshModelGeo_test_1.md
@@ -29,154 +29,156 @@ IMPLICIT NONE
```
```fortran
- TYPE( gmsh_ ) :: gmsh
+TYPE( gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- INTEGER( I4B ) :: ierr, tag
- REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
- REAL( DFP ) :: x, y, z, meshSize
- CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
- CHARACTER( LEN = 120 ) :: name
+INTEGER( I4B ) :: ierr, tag
+REAL( DFP ), PARAMETER :: LENGTH=1.0, WIDTH=1.0
+REAL( DFP ) :: x, y, z, meshSize
+CHARACTER( LEN = 120 ), ALLOCATABLE :: names( : )
+CHARACTER( LEN = 120 ) :: name
```
!!! note "Gmsh/Initialize"
- - [[Gmsh_#Initialize]]
+
+- [[Gmsh_#Initialize]]
```fortran
- ierr = gmsh%initialize()
+ierr = gmsh%initialize()
```
- [[GmshModel_#Add]]
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%model%add("t1")
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%model%add("t1")
+ierr = gmsh%model%setFileName('t1.geo')
```
!!! note "GmshModelGeo/AddPoint"
- [[GmshModelGeo_#AddPoint]]
+[[GmshModelGeo_#AddPoint]]
Point-1: Specifying tag explicitly
```fortran
- x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(a) ")
+x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag=1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(a) ")
```
Point-2: Not Specifying the tag:
```fortran
- x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
- tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
- call ok(tag .eq. 2_I4B, "(b) ")
+x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01
+tag = gmsh%model%geo%addPoint(x,y,z,meshSize)
+call ok(tag .eq. 2_I4B, "(b) ")
```
Point-3: Setting `tag=-1` equivalent to not specifying the tag explicitly.
```fortran
- x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .eq. 3_I4B, "(c) ")
+x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag=-1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .eq. 3_I4B, "(c) ")
```
Point-4: Specifying tag explicitly.
```fortran
- x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- call ok(ierr .NE. 0_I4B, "(d) ")
+x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag=4
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+call ok(ierr .NE. 0_I4B, "(d) ")
```
!!! note "GmshModelGeo/AddLine"
- [[GmshModelGeo_#AddLine]]
+[[GmshModelGeo_#AddLine]]
Line-1: explicit tag
```fortran
- ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
- call ok(ierr .NE. 0_I4B, "(e) ")
+ierr = gmsh%model%geo%addLine(startTag=1,endTag=2,tag=1)
+call ok(ierr .NE. 0_I4B, "(e) ")
```
Line-2: automatic tag
```fortran
- tag = gmsh%model%geo%addLine(2,3)
- call ok(tag .EQ. 2_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(2,3)
+call ok(tag .EQ. 2_I4B, "(f) ")
```
Line-3: if `tag=-1` it means automatic tag.
```fortran
- tag = gmsh%model%geo%addLine(3,4,-1)
- call ok(tag .EQ. 3_I4B, "(f) ")
+tag = gmsh%model%geo%addLine(3,4,-1)
+call ok(tag .EQ. 3_I4B, "(f) ")
```
Line-4:
```fortran
- ierr = gmsh%model%geo%addLine(4,1,4)
- call ok(ierr .NE. 0_I4B, "(g) ")
+ierr = gmsh%model%geo%addLine(4,1,4)
+call ok(ierr .NE. 0_I4B, "(g) ")
```
!!! note "GmshModelGeo/AddCurveLoop"
- [[GmshModelGeo_#AddCurveLoop]]
+[[GmshModelGeo_#AddCurveLoop]]
- `reorient` is optional, default value is false.
- `tag` is optional
```fortran
- ierr = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
- call ok(ierr .NE. 0_I4B, "(h) ")
+ierr = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4], tag=1, reorient=.TRUE.)
+call ok(ierr .NE. 0_I4B, "(h) ")
```
- automatic tag example:
```txt
- tag = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4], reorient=.TRUE.)
- call ok(tag .EQ. 1_I4B, "(h) ")
+tag = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4], reorient=.TRUE.)
+call ok(tag .EQ. 1_I4B, "(h) ")
```
- automatic tag, without `reorient` option:
```txt
- tag = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2,3,4])
- call ok(tag .EQ. 1_I4B, "(h) ")
+tag = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2,3,4])
+call ok(tag .EQ. 1_I4B, "(h) ")
```
!!! note "GmshModelGeo/AddPlaneSurface"
- - [[GmshModelGeo_#AddPlaneSurface]]
+
+- [[GmshModelGeo_#AddPlaneSurface]]
- `tag` is explicitly given.
```fortran
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
- call ok(ierr .NE. 0_I4B, "(i) ")
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
+call ok(ierr .NE. 0_I4B, "(i) ")
```
- `tag` is automatically set by gmsh.
```txt
- tag = gmsh%model%geo%addPlaneSurface(wireTags=[1])
- call ok(tag .EQ. 1_I4B, "(i) ")
+tag = gmsh%model%geo%addPlaneSurface(wireTags=[1])
+call ok(tag .EQ. 1_I4B, "(i) ")
```
- if `tag=-1`, then tag is automatically set by gmsh.
```txt
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=-1)
- call ok(ierr .EQ. 1_I4B, "(i) ")
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=-1)
+call ok(ierr .EQ. 1_I4B, "(i) ")
```
!!! note "GmshModelGeo/Synchronize"
- [[GmshModelGeo_#Synchronize]]
+[[GmshModelGeo_#Synchronize]]
```fortran
ierr = gmsh%model%geo%Synchronize()
@@ -198,10 +200,11 @@ ierr = gmsh%clear()
```
!!! note "Gmsh/Finalize"
- - [[Gmsh_#Finalize]]
+
+- [[Gmsh_#Finalize]]
```fortran
- ierr = gmsh%finalize()
+ierr = gmsh%finalize()
```
```fortran
diff --git a/docs/docs-api/GmshAPI/GmshModelGeo_test_2.md b/docs/docs-api/GmshAPI/GmshModelGeo_test_2.md
index cb557248..1ad0d117 100644
--- a/docs/docs-api/GmshAPI/GmshModelGeo_test_2.md
+++ b/docs/docs-api/GmshAPI/GmshModelGeo_test_2.md
@@ -29,18 +29,18 @@ IMPLICIT NONE
```
```fortran
- TYPE( gmsh_ ) :: gmsh
+TYPE( gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- INTEGER( I4B ) :: ierr, tag
- REAL( DFP ), PARAMETER :: R=1.0, Xc=0.0, Yc=0.0, Zc=0.0
- REAL( DFP ) :: x, y, z, meshSize
- CHARACTER( LEN = GMSH_API_MAX_STR_LEN ), ALLOCATABLE :: names( : )
- CHARACTER( LEN = GMSH_API_MAX_STR_LEN ) :: name
- CHARACTER(LEN=*), PARAMETER :: PREFIX="t1"
+INTEGER( I4B ) :: ierr, tag
+REAL( DFP ), PARAMETER :: R=1.0, Xc=0.0, Yc=0.0, Zc=0.0
+REAL( DFP ) :: x, y, z, meshSize
+CHARACTER( LEN = GMSH_API_MAX_STR_LEN ), ALLOCATABLE :: names( : )
+CHARACTER( LEN = GMSH_API_MAX_STR_LEN ) :: name
+CHARACTER(LEN=*), PARAMETER :: PREFIX="t1"
```
- [[Gmsh_#Initialize]]
@@ -48,9 +48,9 @@ IMPLICIT NONE
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%initialize()
- ierr = gmsh%model%add( PREFIX )
- ierr = gmsh%model%setFileName( PREFIX//".geo" )
+ierr = gmsh%initialize()
+ierr = gmsh%model%add( PREFIX )
+ierr = gmsh%model%setFileName( PREFIX//".geo" )
```
### Points
@@ -60,12 +60,12 @@ IMPLICIT NONE
Point-1: Specifying tag explicitly
```fortran
- x = Xc-R; y = Yc; z = Zc; meshSize = 0.1; tag=1
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- x = Xc+R; y = Yc; z = Zc; meshSize = 0.1; tag=2
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
- x = Xc; y = Yc; z = Zc; meshSize = 0.1; tag=3
- ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+x = Xc-R; y = Yc; z = Zc; meshSize = 0.1; tag=1
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+x = Xc+R; y = Yc; z = Zc; meshSize = 0.1; tag=2
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
+x = Xc; y = Yc; z = Zc; meshSize = 0.1; tag=3
+ierr = gmsh%model%geo%addPoint(x,y,z,meshSize,tag)
```
### Line and curves
@@ -78,26 +78,26 @@ Point-1: Specifying tag explicitly
- `nx, ny, nz` are optional, default value is zero.
```fortran
- ierr = gmsh%model%geo%AddCircleArc( &
- & startTag=1, &
- & centerTag=3, &
- & endTag=2, &
- & tag=1, &
- & nx=0.0, &
- & ny=0.0, &
- & nz=0.0 )
- call ok(ierr .NE. 0_I4B, "AddCircleArc(1)")
+ierr = gmsh%model%geo%AddCircleArc( &
+ & startTag=1, &
+ & centerTag=3, &
+ & endTag=2, &
+ & tag=1, &
+ & nx=0.0, &
+ & ny=0.0, &
+ & nz=0.0 )
+call ok(ierr .NE. 0_I4B, "AddCircleArc(1)")
```
Adding another circle arc.
```fortran
- ierr = gmsh%model%geo%AddCircleArc( &
- & startTag=2, &
- & centerTag=3, &
- & endTag=1, &
- & tag=2)
- call ok(ierr .NE. 0_I4B, "AddCircleArc(2)")
+ierr = gmsh%model%geo%AddCircleArc( &
+ & startTag=2, &
+ & centerTag=3, &
+ & endTag=1, &
+ & tag=2)
+call ok(ierr .NE. 0_I4B, "AddCircleArc(2)")
```
### CurveLoop
@@ -108,8 +108,8 @@ Adding another circle arc.
- `tag` is optional
```fortran
- ierr = gmsh%model%geo%addCurveLoop( &
- & curveTags=[1,2], tag=1, reorient=.TRUE.)
+ierr = gmsh%model%geo%addCurveLoop( &
+ & curveTags=[1,2], tag=1, reorient=.TRUE.)
```
### AddPlaneSurface
@@ -119,7 +119,7 @@ Adding another circle arc.
- `tag` is explicitly given.
```fortran
- ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
+ierr = gmsh%model%geo%addPlaneSurface(wireTags=[1], tag=1)
```
### Synchronize
diff --git a/docs/docs-api/GmshAPI/GmshModel_.md b/docs/docs-api/GmshAPI/GmshModel_.md
index 09029c99..fdd9b13a 100644
--- a/docs/docs-api/GmshAPI/GmshModel_.md
+++ b/docs/docs-api/GmshAPI/GmshModel_.md
@@ -102,8 +102,7 @@ TYPE :: GmshModel_
### GetEntities
-!> Get all the entities in the current model. If `dim' is >= 0, return only
-!! the entities of the specified dimension (e.g. points if`dim' == 0). The
+!> Get all the entities in the current model. If `dim' is >= 0, return only !! the entities of the specified dimension (e.g. points if`dim' == 0). The
!! entities are returned as a vector of (dim, tag) pairs.
### SetEntityName
@@ -116,8 +115,7 @@ TYPE :: GmshModel_
### GetPhysicalGroups
-!> Get all the physical groups in the current model. If `dim' is >= 0, return
-!! only the entities of the specified dimension (e.g. physical points if`dim'
+!> Get all the physical groups in the current model. If `dim' is >= 0, return !! only the entities of the specified dimension (e.g. physical points if`dim'
!! == 0). The entities are returned as a vector of (dim, tag) pairs.
### GetEntitiesForPhysicalGroup
@@ -132,15 +130,12 @@ TYPE :: GmshModel_
### AddPhysicalGroup
-!> Add a physical group of dimension `dim', grouping the model entities with
-!! tags`tags'. Return the tag of the physical group, equal to `tag' if`tag'
-!! is positive, or a new tag if `tag' < 0. Set the name of the physical group
-!! if`name' is not empty.
+!> Add a physical group of dimension `dim', grouping the model entities with !! tags`tags'. Return the tag of the physical group, equal to `tag' if`tag'
+!! is positive, or a new tag if `tag' < 0. Set the name of the physical group !! if`name' is not empty.
### RemovePhysicalGroups
-!> Remove the physical groups `dimTags' (given as a vector of (dim, tag)
-!! pairs) from the current model. If`dimTags' is empty, remove all groups.
+!> Remove the physical groups `dimTags' (given as a vector of (dim, tag) !! pairs) from the current model. If`dimTags' is empty, remove all groups.
### SetPhysicalName
@@ -161,26 +156,19 @@ TYPE :: GmshModel_
### GetBoundary
-!> Get the boundary of the model entities `dimTags', given as a vector of
-!! (dim, tag) pairs. Return in`outDimTags' the boundary of the individual
-!! entities (if `combined' is false) or the boundary of the combined
-!! geometrical shape formed by all input entities (if`combined' is true).
-!! Return tags multiplied by the sign of the boundary entity if `oriented' is
-!! true. Apply the boundary operator recursively down to dimension 0 (i.e. to
-!! points) if`recursive' is true.
+!> Get the boundary of the model entities `dimTags', given as a vector of !! (dim, tag) pairs. Return in`outDimTags' the boundary of the individual
+!! entities (if `combined' is false) or the boundary of the combined !! geometrical shape formed by all input entities (if`combined' is true).
+!! Return tags multiplied by the sign of the boundary entity if `oriented' is !! true. Apply the boundary operator recursively down to dimension 0 (i.e. to !! points) if`recursive' is true.
### GetAdjacencies
!> Get the upward and downward adjacencies of the model entity of dimension
-!! `dim' and tag`tag'. The `upward' vector returns the tags of adjacent
-!! entities of dimension`dim' + 1; the `downward' vector returns the tags of
-!! adjacent entities of dimension`dim' - 1.
+!! `dim' and tag`tag'. The `upward' vector returns the tags of adjacent !! entities of dimension`dim' + 1; the `downward' vector returns the tags of !! adjacent entities of dimension`dim' - 1.
### GetEntitiesInBoundingBox
!> Get the model entities in the bounding box defined by the two points
-!! (`xmin',`ymin', `zmin') and (`xmax', `ymax',`zmax'). If `dim' is >= 0,
-!! return only the entities of the specified dimension (e.g. points if`dim'
+!! (`xmin',`ymin', `zmin') and (`xmax', `ymax',`zmax'). If `dim' is >= 0, !! return only the entities of the specified dimension (e.g. points if`dim'
!! == 0).
### GetBoundingBox
@@ -195,17 +183,12 @@ TYPE :: GmshModel_
### AddDiscreteEntity
-!> Add a discrete model entity (defined by a mesh) of dimension `dim' in the
-!! current model. Return the tag of the new discrete entity, equal to`tag' if
-!! `tag' is positive, or a new tag if`tag' < 0. `boundary' specifies the tags
-!! of the entities on the boundary of the discrete entity, if any. Specifying
-!!`boundary' allows Gmsh to construct the topology of the overall model.
+!> Add a discrete model entity (defined by a mesh) of dimension `dim' in the !! current model. Return the tag of the new discrete entity, equal to`tag' if
+!! `tag' is positive, or a new tag if`tag' < 0. `boundary' specifies the tags !! of the entities on the boundary of the discrete entity, if any. Specifying !!`boundary' allows Gmsh to construct the topology of the overall model.
### RemoveEntities
-!> Remove the entities `dimTags' (given as a vector of (dim, tag) pairs) of
-!! the current model, provided that they are not on the boundary of (or
-!! embedded in) higher-dimensional entities. If`recursive' is true, remove
+!> Remove the entities `dimTags' (given as a vector of (dim, tag) pairs) of !! the current model, provided that they are not on the boundary of (or !! embedded in) higher-dimensional entities. If`recursive' is true, remove
!! all the entities on their boundaries, down to dimension 0.
### RemoveEntityName
@@ -218,9 +201,7 @@ TYPE :: GmshModel_
### GetParent
-!> In a partitioned model, get the parent of the entity of dimension `dim' and
-!! tag`tag', i.e. from which the entity is a part of, if any. `parentDim' and
-!!`parentTag' are set to -1 if the entity has no parent.
+!> In a partitioned model, get the parent of the entity of dimension `dim' and !! tag`tag', i.e. from which the entity is a part of, if any. `parentDim' and !!`parentTag' are set to -1 if the entity has no parent.
### GetNumberOfPartitions
@@ -236,20 +217,15 @@ TYPE :: GmshModel_
!> Evaluate the parametrization of the entity of dimension `dim' and tag`tag'
!! at the parametric coordinates `parametricCoord'. Only valid for`dim' equal
!! to 0 (with empty `parametricCoord'), 1 (with`parametricCoord' containing
-!! parametric coordinates on the curve) or 2 (with `parametricCoord'
-!! containing u, v parametric coordinates on the surface, concatenated: [p1u,
-!! p1v, p2u, ...]). Return x, y, z coordinates in`coord', concatenated: [p1x,
+!! parametric coordinates on the curve) or 2 (with `parametricCoord' !! containing u, v parametric coordinates on the surface, concatenated: [p1u, !! p1v, p2u, ...]). Return x, y, z coordinates in`coord', concatenated: [p1x,
!! p1y, p1z, p2x, ...].
### GetDerivative
!> Evaluate the derivative of the parametrization of the entity of dimension
-!! `dim' and tag`tag' at the parametric coordinates `parametricCoord'. Only
-!! valid for`dim' equal to 1 (with `parametricCoord' containing parametric
-!! coordinates on the curve) or 2 (with`parametricCoord' containing u, v
+!! `dim' and tag`tag' at the parametric coordinates `parametricCoord'. Only !! valid for`dim' equal to 1 (with `parametricCoord' containing parametric !! coordinates on the curve) or 2 (with`parametricCoord' containing u, v
!! parametric coordinates on the surface, concatenated: [p1u, p1v, p2u, ...]).
-!! For `dim' equal to 1 return the x, y, z components of the derivative with
-!! respect to u [d1ux, d1uy, d1uz, d2ux, ...]; for`dim' equal to 2 return the
+!! For `dim' equal to 1 return the x, y, z components of the derivative with !! respect to u [d1ux, d1uy, d1uz, d2ux, ...]; for`dim' equal to 2 return the
!! x, y, z components of the derivative with respect to u and v: [d1ux, d1uy,
!! d1uz, d1vx, d1vy, d1vz, d2ux, ...].
@@ -257,45 +233,34 @@ TYPE :: GmshModel_
!> Evaluate the second derivative of the parametrization of the entity of
!! dimension `dim' and tag`tag' at the parametric coordinates
-!! `parametricCoord'. Only valid for`dim' equal to 1 (with `parametricCoord'
-!! containing parametric coordinates on the curve) or 2 (with
-!!`parametricCoord' containing u, v parametric coordinates on the surface,
-!! concatenated: [p1u, p1v, p2u, ...]). For `dim' equal to 1 return the x, y,
-!! z components of the second derivative with respect to u [d1uux, d1uuy,
-!! d1uuz, d2uux, ...]; for`dim' equal to 2 return the x, y, z components of
+!! `parametricCoord'. Only valid for`dim' equal to 1 (with `parametricCoord' !! containing parametric coordinates on the curve) or 2 (with !!`parametricCoord' containing u, v parametric coordinates on the surface,
+!! concatenated: [p1u, p1v, p2u, ...]). For `dim' equal to 1 return the x, y, !! z components of the second derivative with respect to u [d1uux, d1uuy, !! d1uuz, d2uux, ...]; for`dim' equal to 2 return the x, y, z components of
!! the second derivative with respect to u and v, and the mixed derivative
!! with respect to u and v: [d1uux, d1uuy, d1uuz, d1vvx, d1vvy, d1vvz, d1uvx,
!! d1uvy, d1uvz, d2uux, ...].
### GetCurvature
-!> Evaluate the (maximum) curvature of the entity of dimension `dim' and tag
-!!`tag' at the parametric coordinates `parametricCoord'. Only valid for`dim'
-!! equal to 1 (with `parametricCoord' containing parametric coordinates on the
-!! curve) or 2 (with`parametricCoord' containing u, v parametric coordinates
+!> Evaluate the (maximum) curvature of the entity of dimension `dim' and tag !!`tag' at the parametric coordinates `parametricCoord'. Only valid for`dim'
+!! equal to 1 (with `parametricCoord' containing parametric coordinates on the !! curve) or 2 (with`parametricCoord' containing u, v parametric coordinates
!! on the surface, concatenated: [p1u, p1v, p2u, ...]).
### GetPrincipalCurvatures
-!> Evaluate the principal curvatures of the surface with tag `tag' at the
-!! parametric coordinates`parametricCoord', as well as their respective
+!> Evaluate the principal curvatures of the surface with tag `tag' at the !! parametric coordinates`parametricCoord', as well as their respective
!! directions. `parametricCoord' are given by pair of u and v coordinates,
!! concatenated: [p1u, p1v, p2u, ...].
### GetNormal
-!> Get the normal to the surface with tag `tag' at the parametric coordinates
-!!`parametricCoord'. The `parametricCoord' vector should contain u and v
-!! coordinates, concatenated: [p1u, p1v, p2u, ...].`normals' are returned as
+!> Get the normal to the surface with tag `tag' at the parametric coordinates !!`parametricCoord'. The `parametricCoord' vector should contain u and v !! coordinates, concatenated: [p1u, p1v, p2u, ...].`normals' are returned as
!! a vector of x, y, z components, concatenated: [n1x, n1y, n1z, n2x, ...].
### GetParametrization
!> Get the parametric coordinates `parametricCoord' for the points`coord' on
-!! the entity of dimension `dim' and tag`tag'. `coord' are given as x, y, z
-!! coordinates, concatenated: [p1x, p1y, p1z, p2x, ...].`parametricCoord'
-!! returns the parametric coordinates t on the curve (if `dim' = 1) or u and v
-!! coordinates concatenated on the surface (if`dim' = 2), i.e. [p1t, p2t,
+!! the entity of dimension `dim' and tag`tag'. `coord' are given as x, y, z !! coordinates, concatenated: [p1x, p1y, p1z, p2x, ...].`parametricCoord'
+!! returns the parametric coordinates t on the curve (if `dim' = 1) or u and v !! coordinates concatenated on the surface (if`dim' = 2), i.e. [p1t, p2t,
!! ...] or [p1u, p1v, p2u, ...].
### GetParametrizationBounds
@@ -305,8 +270,7 @@ TYPE :: GmshModel_
### IsInside
-!> Check if the coordinates (or the parametric coordinates if `parametric' is
-!! set) provided in`coord' correspond to points inside the entity of
+!> Check if the coordinates (or the parametric coordinates if `parametric' is !! set) provided in`coord' correspond to points inside the entity of
!! dimension `dim' and tag`tag', and return the number of points inside. This
!! feature is only available for a subset of entities, depending on the
!! underlying geometrical representation.
@@ -314,25 +278,19 @@ TYPE :: GmshModel_
### GetClosestPoint
!> Get the points `closestCoord' on the entity of dimension`dim' and tag
-!! `tag' to the points`coord', by orthogonal projection. `coord' and
-!!`closestCoord' are given as x, y, z coordinates, concatenated: [p1x, p1y,
-!! p1z, p2x, ...]. `parametricCoord' returns the parametric coordinates t on
-!! the curve (if`dim' = 1) or u and v coordinates concatenated on the surface
+!! `tag' to the points`coord', by orthogonal projection. `coord' and !!`closestCoord' are given as x, y, z coordinates, concatenated: [p1x, p1y,
+!! p1z, p2x, ...]. `parametricCoord' returns the parametric coordinates t on !! the curve (if`dim' = 1) or u and v coordinates concatenated on the surface
!! (if `dim' = 2), i.e. [p1t, p2t, ...] or [p1u, p1v, p2u, ...].
### ReparametrizeOnSurface
-!> Reparametrize the boundary entity (point or curve, i.e. with `dim' == 0 or
-!!`dim' == 1) of tag `tag' on the surface`surfaceTag'. If `dim' == 1,
-!! reparametrize all the points corresponding to the parametric coordinates
-!!`parametricCoord'. Multiple matches in case of periodic surfaces can be
+!> Reparametrize the boundary entity (point or curve, i.e. with `dim' == 0 or !!`dim' == 1) of tag `tag' on the surface`surfaceTag'. If `dim' == 1, !! reparametrize all the points corresponding to the parametric coordinates !!`parametricCoord'. Multiple matches in case of periodic surfaces can be
!! selected with `which'. This feature is only available for a subset of
!! entities, depending on the underlying geometrical representation.
### SetVisibility
-!> Set the visibility of the model entities `dimTags' (given as a vector of
-!! (dim, tag) pairs) to`value'. Apply the visibility setting recursively if
+!> Set the visibility of the model entities `dimTags' (given as a vector of !! (dim, tag) pairs) to`value'. Apply the visibility setting recursively if
!! `recursive' is true.
### GetVisibility
@@ -341,15 +299,12 @@ TYPE :: GmshModel_
### SetVisibilityPerWindow
-!> Set the global visibility of the model per window to `value', where
-!!`windowIndex' identifies the window in the window list.
+!> Set the global visibility of the model per window to `value', where !!`windowIndex' identifies the window in the window list.
### SetColor
-!> Set the color of the model entities `dimTags' (given as a vector of (dim,
-!! tag) pairs) to the RGBA value (`r', `g',`b', `a'), where`r', `g',`b' and
-!! `a' should be integers between 0 and 255. Apply the color setting
-!! recursively if`recursive' is true.
+!> Set the color of the model entities `dimTags' (given as a vector of (dim, !! tag) pairs) to the RGBA value (`r', `g',`b', `a'), where`r', `g',`b' and
+!! `a' should be integers between 0 and 255. Apply the color setting !! recursively if`recursive' is true.
### GetColor
diff --git a/docs/docs-api/GmshAPI/GmshModel_test_1.md b/docs/docs-api/GmshAPI/GmshModel_test_1.md
index 7154b28e..eba6e411 100644
--- a/docs/docs-api/GmshAPI/GmshModel_test_1.md
+++ b/docs/docs-api/GmshAPI/GmshModel_test_1.md
@@ -37,89 +37,89 @@ PROGRAM main
!!! note "declare variables"
```fortran
- type(gmsh_) :: gmsh
+type(gmsh_) :: gmsh
```
- Instance of [[Gmsh_]] engine
```fortran
- integer(i4b) :: ierr, names_n
- type(string), allocatable :: names(:)
- character(gmsh_api_max_str_len) :: name
- type(string), allocatable :: strs(:)
+integer(i4b) :: ierr, names_n
+type(string), allocatable :: names(:)
+character(gmsh_api_max_str_len) :: name
+type(string), allocatable :: strs(:)
```
!!! note "Gmsh/Initialize"
```fortran
- ierr = gmsh%initialize()
+ierr = gmsh%initialize()
```
!!! note "GmshModel/Add"
```fortran
- ierr = gmsh%model%add("t1")
- ierr = gmsh%model%add("t2")
- ierr = gmsh%model%add("t3")
+ierr = gmsh%model%add("t1")
+ierr = gmsh%model%add("t2")
+ierr = gmsh%model%add("t3")
```
!!! note "GmshModel/List"
```fortran
- block
- INTEGER( I4B ) :: ii
- ierr = gmsh%model%list(names)
- call display( ierr, "size of names = ")
- do ii = 1, ierr
- call display( names(ii), "names = ")
- end do
- end block
+block
+INTEGER( I4B ) :: ii
+ierr = gmsh%model%list(names)
+call display( ierr, "size of names = ")
+do ii = 1, ierr
+ call display( names(ii), "names = ")
+end do
+end block
```
!!! note "GmshModel/GetCurrent"
```fortran
- ierr = gmsh%model%getCurrent(name)
- call display(name, 'name: ')
+ierr = gmsh%model%getCurrent(name)
+call display(name, 'name: ')
```
!!! note "GmshModel/SetCurrent"
```fortran
- ierr = gmsh%model%setCurrent('t1')
- ierr = gmsh%model%getCurrent(name)
- call display(name, 'name: ')
+ierr = gmsh%model%setCurrent('t1')
+ierr = gmsh%model%getCurrent(name)
+call display(name, 'name: ')
```
!!! note "GmshModel/SetFileName"
```fortran
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%model%setFileName('t1.geo')
```
!!! note "GmshModel/GetFileName"
```fortran
- ierr = gmsh%model%getFileName(name)
- call display(name, 'name: ')
+ierr = gmsh%model%getFileName(name)
+call display(name, 'name: ')
```
!!! note "GmshModel/Remove"
```fortran
- ierr = gmsh%model%remove()
+ierr = gmsh%model%remove()
```
!!! note "Gmsh/Clear"
```fortran
- ierr = gmsh%clear()
+ierr = gmsh%clear()
```
!!! note "Gmsh/Finalize"
```fortran
- ierr = gmsh%finalize()
+ierr = gmsh%finalize()
```
```fortran
diff --git a/docs/docs-api/GmshAPI/GmshModel_test_2.md b/docs/docs-api/GmshAPI/GmshModel_test_2.md
index c8906e20..82bca56d 100644
--- a/docs/docs-api/GmshAPI/GmshModel_test_2.md
+++ b/docs/docs-api/GmshAPI/GmshModel_test_2.md
@@ -37,120 +37,120 @@ PROGRAM main
!!! note "declare variables"
```fortran
- type(gmsh_) :: gmsh
+type(gmsh_) :: gmsh
```
- Instance of [[Gmsh_]] engine
```fortran
- integer(i4b) :: ierr, tag
- real(dfp), parameter :: length = 1.0, width = 1.0
- real(dfp) :: x, y, z, meshsize
- type(string), allocatable :: names(:)
- type(string), allocatable :: strs(:)
- character(gmsh_api_max_str_len) :: name
- integer(i4b) :: ierr, names_n
+integer(i4b) :: ierr, tag
+real(dfp), parameter :: length = 1.0, width = 1.0
+real(dfp) :: x, y, z, meshsize
+type(string), allocatable :: names(:)
+type(string), allocatable :: strs(:)
+character(gmsh_api_max_str_len) :: name
+integer(i4b) :: ierr, names_n
```
- [[Gmsh_#Initialize]]
```fortran
- ierr = gmsh%initialize()
+ierr = gmsh%initialize()
```
- [[GmshModel_#Add]]
```fortran
- ierr = gmsh%model%add("t1")
+ierr = gmsh%model%add("t1")
```
- [[GmshModel_#SetFileName]]
```fortran
- ierr = gmsh%model%setFileName('t1.geo')
+ierr = gmsh%model%setFileName('t1.geo')
```
- [[GmshModelGeo_#AddPoint]]
```fortran
- x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag = 1
- ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
- !!
- x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01; tag = 2
- ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
- !!
- x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag = 3
- ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
- !!
- x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag = 4
- ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
- !!
+x = 0.0; y = 0.0; z = 0.0; meshSize = 0.01; tag = 1
+ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
+!!
+x = LENGTH; y = 0.0; z = 0.0; meshSize = 0.01; tag = 2
+ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
+!!
+x = LENGTH; y = WIDTH; z = 0.0; meshSize = 0.01; tag = 3
+ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
+!!
+x = 0.0; y = WIDTH; z = 0.0; meshSize = 0.01; tag = 4
+ierr = gmsh%model%geo%addPoint(x, y, z, meshSize, tag)
+!!
```
- [[GmshModelGeo_#AddLine]]
```fortran
- ierr = gmsh%model%geo%addLine(1, 2, 1)
- ierr = gmsh%model%geo%addLine(2, 3, 2)
- ierr = gmsh%model%geo%addLine(3, 4, 3)
- ierr = gmsh%model%geo%addLine(4, 1, 4)
+ierr = gmsh%model%geo%addLine(1, 2, 1)
+ierr = gmsh%model%geo%addLine(2, 3, 2)
+ierr = gmsh%model%geo%addLine(3, 4, 3)
+ierr = gmsh%model%geo%addLine(4, 1, 4)
```
- [[GmshModelGeo_#AddCurveLoop]]
```fortran
- ierr = gmsh%model%geo%addCurveLoop([1, 2, 3, 4], 4, 1, reorient=1)
+ierr = gmsh%model%geo%addCurveLoop([1, 2, 3, 4], 4, 1, reorient=1)
```
- [[GmshModelGeo_#AddPlaneSurface]]
```fortran
- ierr = gmsh%model%geo%addPlaneSurface([1], 1, 1)
+ierr = gmsh%model%geo%addPlaneSurface([1], 1, 1)
```
- [[GmshModelGeo_#Synchronize]]
```fortran
- ierr = gmsh%model%geo%Synchronize()
+ierr = gmsh%model%geo%Synchronize()
```
- [[GmshModel_#GetEntities]]
```fortran
- BLOCK
- integer(i4b), allocatable :: dimtags(:, :)
- integer(i4b) :: dimtags_n
- !!
- ierr = gmsh%model%GetEntities(dimTags)
- CALL display(dimTags, "test-2: getEntities(:,:)=")
- !!
- END BLOCK
+BLOCK
+ integer(i4b), allocatable :: dimtags(:, :)
+ integer(i4b) :: dimtags_n
+ !!
+ ierr = gmsh%model%GetEntities(dimTags)
+ CALL display(dimTags, "test-2: getEntities(:,:)=")
+ !!
+END BLOCK
```
```todo
- BLOCK
- integer(i4b), allocatable :: dimtags(:, :)
- integer(i4b) :: dimtags_n
- !!
- ierr = gmsh%model%GetEntities(dimTags)
- CALL display(dimTags, "test-2: getEntities(:,:)=")
- !!
- ierr = gmsh%model%GetEntities(dimTags, 0)
- CALL display(dimTags, "test-2: getEntities(dim=0)=")
- !!
- ierr = gmsh%model%GetEntities(dimTags, 1)
- CALL display(dimTags, "test-2: getEntities(dim=1)=")
- !!
- ierr = gmsh%model%GetEntities(dimTags, 2)
- CALL display(dimTags, "test-2: getEntities(dim=2)=")
- !!
- END BLOCK
+BLOCK
+ integer(i4b), allocatable :: dimtags(:, :)
+ integer(i4b) :: dimtags_n
+ !!
+ ierr = gmsh%model%GetEntities(dimTags)
+ CALL display(dimTags, "test-2: getEntities(:,:)=")
+ !!
+ ierr = gmsh%model%GetEntities(dimTags, 0)
+ CALL display(dimTags, "test-2: getEntities(dim=0)=")
+ !!
+ ierr = gmsh%model%GetEntities(dimTags, 1)
+ CALL display(dimTags, "test-2: getEntities(dim=1)=")
+ !!
+ ierr = gmsh%model%GetEntities(dimTags, 2)
+ CALL display(dimTags, "test-2: getEntities(dim=2)=")
+ !!
+END BLOCK
```
- [[Gmsh_#Finalize]]
```fortran
- ierr = gmsh%finalize()
+ierr = gmsh%finalize()
```
```fortran
diff --git a/docs/docs-api/GmshAPI/GmshOption_.md b/docs/docs-api/GmshAPI/GmshOption_.md
index 99823fe4..2ee31dd8 100644
--- a/docs/docs-api/GmshAPI/GmshOption_.md
+++ b/docs/docs-api/GmshAPI/GmshOption_.md
@@ -7,4 +7,3 @@
## Structure
## Methods
-
diff --git a/docs/docs-api/GmshAPI/Gmsh_test_1.md b/docs/docs-api/GmshAPI/Gmsh_test_1.md
index dfcae2b4..32eb8f17 100644
--- a/docs/docs-api/GmshAPI/Gmsh_test_1.md
+++ b/docs/docs-api/GmshAPI/Gmsh_test_1.md
@@ -24,54 +24,54 @@ PROGRAM main
!!! note "Declare variables"
```fortran
- TYPE( Gmsh_ ) :: gmsh
+TYPE( Gmsh_ ) :: gmsh
```
- Instance of [[Gmsh_]].
```fortran
- CHARACTER( LEN = * ), PARAMETER :: title="t1"
- REAL( DFP ), PARAMETER :: corner(3)=[0.,0.,0.]
- REAL( DFP ), PARAMETER :: lx = 1.0
- REAL( DFP ), PARAMETER :: ly = 1.0
- REAL( DFP ), PARAMETER :: meshSize=MIN(lx,ly)/10
- INTEGER( I4B ), PARAMETER :: order=1
- INTEGER( I4B ) :: ierr
- REAL( DFP ) :: x, y, z, lc
+CHARACTER( LEN = * ), PARAMETER :: title="t1"
+REAL( DFP ), PARAMETER :: corner(3)=[0.,0.,0.]
+REAL( DFP ), PARAMETER :: lx = 1.0
+REAL( DFP ), PARAMETER :: ly = 1.0
+REAL( DFP ), PARAMETER :: meshSize=MIN(lx,ly)/10
+INTEGER( I4B ), PARAMETER :: order=1
+INTEGER( I4B ) :: ierr
+REAL( DFP ) :: x, y, z, lc
```
!!! note "Gmsh/Initialize"
```fortran
- ierr = gmsh%Initialize()
+ierr = gmsh%Initialize()
```
```fortran
- ierr = gmsh%model%add( title )
- x=corner(1); y=corner(2); z=corner(3); lc=meshSize
- ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=1)
- x=x+lx; y=y; z=z; lc=lc
- ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=2)
- x=x; y=y+ly; z=z; lc=lc
- ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=3)
- x=corner(1); y=y; z=z; lc=lc
- ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=4)
- ierr = gmsh%model%geo%addLine(startTag=1, endTag=2, tag=1)
- ierr = gmsh%model%geo%addLine(2, 3, 2)
- ierr = gmsh%model%geo%addLine(3, 4, 3)
- ierr = gmsh%model%geo%addLine(4, 1, 4)
- ierr = gmsh%model%geo%addCurveLoop([1, 2, 3, 4], tag=1)
- ierr = gmsh%model%geo%addPlaneSurface([1], 1)
- ierr = gmsh%model%geo%synchronize()
- ierr = gmsh%option%setNumber(value=1, name="Mesh.SaveAll")
- ierr = gmsh%model%mesh%generate(2)
- ierr = gmsh%model%mesh%setOrder(order)
- ierr = gmsh%write( title//'.msh' )
- !ierr = gmsh%fltk%run()
+ierr = gmsh%model%add( title )
+x=corner(1); y=corner(2); z=corner(3); lc=meshSize
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=1)
+x=x+lx; y=y; z=z; lc=lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=2)
+x=x; y=y+ly; z=z; lc=lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=3)
+x=corner(1); y=y; z=z; lc=lc
+ierr = gmsh%model%geo%addPoint(x=x, y=y, z=z, meshSize=lc, tag=4)
+ierr = gmsh%model%geo%addLine(startTag=1, endTag=2, tag=1)
+ierr = gmsh%model%geo%addLine(2, 3, 2)
+ierr = gmsh%model%geo%addLine(3, 4, 3)
+ierr = gmsh%model%geo%addLine(4, 1, 4)
+ierr = gmsh%model%geo%addCurveLoop([1, 2, 3, 4], tag=1)
+ierr = gmsh%model%geo%addPlaneSurface([1], 1)
+ierr = gmsh%model%geo%synchronize()
+ierr = gmsh%option%setNumber(value=1, name="Mesh.SaveAll")
+ierr = gmsh%model%mesh%generate(2)
+ierr = gmsh%model%mesh%setOrder(order)
+ierr = gmsh%write( title//'.msh' )
+!ierr = gmsh%fltk%run()
```
```fortran
- ierr = gmsh%Finalize()
+ierr = gmsh%Finalize()
```
```fortran
diff --git a/docs/docs-api/GmshAPI/Gmsh_test_2.md b/docs/docs-api/GmshAPI/Gmsh_test_2.md
index 6251d463..ac3591b3 100644
--- a/docs/docs-api/GmshAPI/Gmsh_test_2.md
+++ b/docs/docs-api/GmshAPI/Gmsh_test_2.md
@@ -1,21 +1,21 @@
PROGRAM main
- USE easifemBase
- USE easifemClasses
- !
- ! [[Gmsh_]]
- !
- TYPE( Gmsh_ ) :: gmsh
- INTEGER( I4B ) :: ierr
- CALL GMSH_INIT
- ! #Gmsh/Initialize
- ierr = gmsh%Initialize()
- ! #Gmsh/Open
- ierr = gmsh%Open(fileName="t1.msh" )
- ! #Gmsh/Write
- ierr = gmsh%Write(fileName="t2.msh")
- ! #Gmsh/Finalize
- ierr = gmsh%Finalize()
- ! #Gmsh/Clear
- ierr = gmsh%Clear()
- CALL GMSH_FINAL
-END PROGRAM main
\ No newline at end of file
+USE easifemBase
+USE easifemClasses
+!
+! [[Gmsh_]]
+!
+TYPE( Gmsh_ ) :: gmsh
+INTEGER( I4B ) :: ierr
+CALL GMSH_INIT
+! #Gmsh/Initialize
+ierr = gmsh%Initialize()
+! #Gmsh/Open
+ierr = gmsh%Open(fileName="t1.msh" )
+! #Gmsh/Write
+ierr = gmsh%Write(fileName="t2.msh")
+! #Gmsh/Finalize
+ierr = gmsh%Finalize()
+! #Gmsh/Clear
+ierr = gmsh%Clear()
+CALL GMSH_FINAL
+END PROGRAM main
diff --git a/docs/docs-api/GridPointUtility/_MeshGrid_test_1.md b/docs/docs-api/GridPointUtility/_MeshGrid_test_1.md
index 8979ab7a..14258ddb 100644
--- a/docs/docs-api/GridPointUtility/_MeshGrid_test_1.md
+++ b/docs/docs-api/GridPointUtility/_MeshGrid_test_1.md
@@ -17,21 +17,21 @@ end program main
x:
-| | | | |
- | --- | --- | --- | --- |
- | 0 | 0 | 0 | 0 |
- | 1 | 1 | 1 | 1 |
- | 2 | 2 | 2 | 2 |
- | 3 | 3 | 3 | 3 |
+| | | | |
+| - | - | - | - |
+| 0 | 0 | 0 | 0 |
+| 1 | 1 | 1 | 1 |
+| 2 | 2 | 2 | 2 |
+| 3 | 3 | 3 | 3 |
y:
-| | | | |
- | --- | --- | --- | --- |
- | 5 | 6 | 7 | 8 |
- | 5 | 6 | 7 | 8 |
- | 5 | 6 | 7 | 8 |
- | 5 | 6 | 7 | 8 |
+| | | | |
+| - | - | - | - |
+| 5 | 6 | 7 | 8 |
+| 5 | 6 | 7 | 8 |
+| 5 | 6 | 7 | 8 |
+| 5 | 6 | 7 | 8 |
diff --git a/docs/docs-api/GridPointUtility/_MeshGrid_test_2.md b/docs/docs-api/GridPointUtility/_MeshGrid_test_2.md
index e6a7270b..94f914c6 100644
--- a/docs/docs-api/GridPointUtility/_MeshGrid_test_2.md
+++ b/docs/docs-api/GridPointUtility/_MeshGrid_test_2.md
@@ -16,53 +16,53 @@ end program main
See results
-x:( :, :, 1 ) =
+x:( :, :, 1 ) =
- | | |
- | --- | --- |
- | 1 | 1 |
- | 2 | 2 |
- | 3 | 3 |
+| | |
+| - | - |
+| 1 | 1 |
+| 2 | 2 |
+| 3 | 3 |
-( :, :, 2 ) =
+( :, :, 2 ) =
- | | |
- | --- | --- |
- | 1 | 1 |
- | 2 | 2 |
- | 3 | 3 |
+| | |
+| - | - |
+| 1 | 1 |
+| 2 | 2 |
+| 3 | 3 |
-y:( :, :, 1 ) =
+y:( :, :, 1 ) =
- | | |
- | --- | --- |
- | 4 | 5 |
- | 4 | 5 |
- | 4 | 5 |
+| | |
+| - | - |
+| 4 | 5 |
+| 4 | 5 |
+| 4 | 5 |
-( :, :, 2 ) =
+( :, :, 2 ) =
- | | |
- | --- | --- |
- | 4 | 5 |
- | 4 | 5 |
- | 4 | 5 |
+| | |
+| - | - |
+| 4 | 5 |
+| 4 | 5 |
+| 4 | 5 |
-z:( :, :, 1 ) =
+z:( :, :, 1 ) =
- | | |
- | --- | --- |
- | 6 | 6 |
- | 6 | 6 |
- | 6 | 6 |
+| | |
+| - | - |
+| 6 | 6 |
+| 6 | 6 |
+| 6 | 6 |
-( :, :, 2 ) =
+( :, :, 2 ) =
- | | |
- | --- | --- |
- | 7 | 7 |
- | 7 | 7 |
- | 7 | 7 |
+| | |
+| - | - |
+| 7 | 7 |
+| 7 | 7 |
+| 7 | 7 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/EquidistanceInPoint_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/EquidistanceInPoint_Hexahedron.md
index d85f4bd6..a521e74a 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/EquidistanceInPoint_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/EquidistanceInPoint_Hexahedron.md
@@ -70,8 +70,8 @@ None
### Order 2
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | 0 | 0 | 0 |
+| -- | ----- | ----- | ----- |
+| 1 | 0 | 0 | 0 |
### Order 3
@@ -79,16 +79,16 @@ None
See results
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -0.33333 | -0.33333 | -0.33333 |
-| 2 | 0.33333 | -0.33333 | -0.33333 |
-| 3 | 0.33333 | 0.33333 | -0.33333 |
-| 4 | -0.33333 | 0.33333 | -0.33333 |
-| 5 | -0.33333 | -0.33333 | 0.33333 |
-| 6 | 0.33333 | -0.33333 | 0.33333 |
-| 7 | 0.33333 | 0.33333 | 0.33333 |
-| 8 | -0.33333 | 0.33333 | 0.33333 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | -------- | -------- | -------- |
+| 1 | -0.33333 | -0.33333 | -0.33333 |
+| 2 | 0.33333 | -0.33333 | -0.33333 |
+| 3 | 0.33333 | 0.33333 | -0.33333 |
+| 4 | -0.33333 | 0.33333 | -0.33333 |
+| 5 | -0.33333 | -0.33333 | 0.33333 |
+| 6 | 0.33333 | -0.33333 | 0.33333 |
+| 7 | 0.33333 | 0.33333 | 0.33333 |
+| 8 | -0.33333 | 0.33333 | 0.33333 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/EquidistancePoint_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/EquidistancePoint_Hexahedron.md
index f1b66459..4094f451 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/EquidistancePoint_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/EquidistancePoint_Hexahedron.md
@@ -82,15 +82,15 @@ xij is the nodal coordinates of Hexahedron. The number of rows in `xij` are 3, a
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
@@ -101,35 +101,35 @@ xij is the nodal coordinates of Hexahedron. The number of rows in `xij` are 3, a
See results
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | ----- | ----- | ----- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | 0 | -1 | -1 |
-| 10 | -1 | 0 | -1 |
-| 11 | -1 | -1 | 0 |
-| 12 | 1 | 0 | -1 |
-| 13 | 1 | -1 | 0 |
-| 14 | 0 | 1 | -1 |
-| 15 | 1 | 1 | 0 |
-| 16 | -1 | 1 | 0 |
-| 17 | 0 | -1 | 1 |
-| 18 | -1 | 0 | 1 |
-| 19 | 1 | 0 | 1 |
-| 20 | 0 | 1 | 1 |
-| 21 | 0 | 0 | -1 |
-| 22 | 0 | 0 | 1 |
-| 23 | -1 | 0 | 0 |
-| 24 | 1 | 0 | 0 |
-| 25 | 0 | -1 | 0 |
-| 26 | 0 | 1 | 0 |
-| 27 | 0 | 0 | 0 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | 0 | -1 | -1 |
+| 10 | -1 | 0 | -1 |
+| 11 | -1 | -1 | 0 |
+| 12 | 1 | 0 | -1 |
+| 13 | 1 | -1 | 0 |
+| 14 | 0 | 1 | -1 |
+| 15 | 1 | 1 | 0 |
+| 16 | -1 | 1 | 0 |
+| 17 | 0 | -1 | 1 |
+| 18 | -1 | 0 | 1 |
+| 19 | 1 | 0 | 1 |
+| 20 | 0 | 1 | 1 |
+| 21 | 0 | 0 | -1 |
+| 22 | 0 | 0 | 1 |
+| 23 | -1 | 0 | 0 |
+| 24 | 1 | 0 | 0 |
+| 25 | 0 | -1 | 0 |
+| 26 | 0 | 1 | 0 |
+| 27 | 0 | 0 | 0 |
@@ -140,72 +140,72 @@ xij is the nodal coordinates of Hexahedron. The number of rows in `xij` are 3, a
See results
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | -0.33333 | -1 | -1 |
-| 10 | 0.33333 | -1 | -1 |
-| 11 | -1 | -0.33333 | -1 |
-| 12 | -1 | 0.33333 | -1 |
-| 13 | -1 | -1 | -0.33333 |
-| 14 | -1 | -1 | 0.33333 |
-| 15 | 1 | -0.33333 | -1 |
-| 16 | 1 | 0.33333 | -1 |
-| 17 | 1 | -1 | -0.33333 |
-| 18 | 1 | -1 | 0.33333 |
-| 19 | 0.33333 | 1 | -1 |
-| 20 | -0.33333 | 1 | -1 |
-| 21 | 1 | 1 | -0.33333 |
-| 22 | 1 | 1 | 0.33333 |
-| 23 | -1 | 1 | -0.33333 |
-| 24 | -1 | 1 | 0.33333 |
-| 25 | -0.33333 | -1 | 1 |
-| 26 | 0.33333 | -1 | 1 |
-| 27 | -1 | -0.33333 | 1 |
-| 28 | -1 | 0.33333 | 1 |
-| 29 | 1 | -0.33333 | 1 |
-| 30 | 1 | 0.33333 | 1 |
-| 31 | 0.33333 | 1 | 1 |
-| 32 | -0.33333 | 1 | 1 |
-| 33 | -0.33333 | -0.33333 | -1 |
-| 34 | -0.33333 | 0.33333 | -1 |
-| 35 | 0.33333 | 0.33333 | -1 |
-| 36 | 0.33333 | -0.33333 | -1 |
-| 37 | -0.33333 | -0.33333 | 1 |
-| 38 | 0.33333 | -0.33333 | 1 |
-| 39 | 0.33333 | 0.33333 | 1 |
-| 40 | -0.33333 | 0.33333 | 1 |
-| 41 | -1 | -0.33333 | 0.33333 |
-| 42 | -1 | -0.33333 | -0.33333 |
-| 43 | -1 | 0.33333 | -0.33333 |
-| 44 | -1 | 0.33333 | 0.33333 |
-| 45 | 1 | -0.33333 | 0.33333 |
-| 46 | 1 | 0.33333 | 0.33333 |
-| 47 | 1 | 0.33333 | -0.33333 |
-| 48 | 1 | -0.33333 | -0.33333 |
-| 49 | 0.33333 | 1 | -0.33333 |
-| 50 | -0.33333 | 1 | -0.33333 |
-| 51 | -0.33333 | 1 | 0.33333 |
-| 52 | 0.33333 | 1 | 0.33333 |
-| 53 | -0.33333 | -1 | -0.33333 |
-| 54 | 0.33333 | -1 | -0.33333 |
-| 55 | 0.33333 | -1 | 0.33333 |
-| 56 | -0.33333 | -1 | 0.33333 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | -------- | -------- | -------- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | -0.33333 | -1 | -1 |
+| 10 | 0.33333 | -1 | -1 |
+| 11 | -1 | -0.33333 | -1 |
+| 12 | -1 | 0.33333 | -1 |
+| 13 | -1 | -1 | -0.33333 |
+| 14 | -1 | -1 | 0.33333 |
+| 15 | 1 | -0.33333 | -1 |
+| 16 | 1 | 0.33333 | -1 |
+| 17 | 1 | -1 | -0.33333 |
+| 18 | 1 | -1 | 0.33333 |
+| 19 | 0.33333 | 1 | -1 |
+| 20 | -0.33333 | 1 | -1 |
+| 21 | 1 | 1 | -0.33333 |
+| 22 | 1 | 1 | 0.33333 |
+| 23 | -1 | 1 | -0.33333 |
+| 24 | -1 | 1 | 0.33333 |
+| 25 | -0.33333 | -1 | 1 |
+| 26 | 0.33333 | -1 | 1 |
+| 27 | -1 | -0.33333 | 1 |
+| 28 | -1 | 0.33333 | 1 |
+| 29 | 1 | -0.33333 | 1 |
+| 30 | 1 | 0.33333 | 1 |
+| 31 | 0.33333 | 1 | 1 |
+| 32 | -0.33333 | 1 | 1 |
+| 33 | -0.33333 | -0.33333 | -1 |
+| 34 | -0.33333 | 0.33333 | -1 |
+| 35 | 0.33333 | 0.33333 | -1 |
+| 36 | 0.33333 | -0.33333 | -1 |
+| 37 | -0.33333 | -0.33333 | 1 |
+| 38 | 0.33333 | -0.33333 | 1 |
+| 39 | 0.33333 | 0.33333 | 1 |
+| 40 | -0.33333 | 0.33333 | 1 |
+| 41 | -1 | -0.33333 | 0.33333 |
+| 42 | -1 | -0.33333 | -0.33333 |
+| 43 | -1 | 0.33333 | -0.33333 |
+| 44 | -1 | 0.33333 | 0.33333 |
+| 45 | 1 | -0.33333 | 0.33333 |
+| 46 | 1 | 0.33333 | 0.33333 |
+| 47 | 1 | 0.33333 | -0.33333 |
+| 48 | 1 | -0.33333 | -0.33333 |
+| 49 | 0.33333 | 1 | -0.33333 |
+| 50 | -0.33333 | 1 | -0.33333 |
+| 51 | -0.33333 | 1 | 0.33333 |
+| 52 | 0.33333 | 1 | 0.33333 |
+| 53 | -0.33333 | -1 | -0.33333 |
+| 54 | 0.33333 | -1 | -0.33333 |
+| 55 | 0.33333 | -1 | 0.33333 |
+| 56 | -0.33333 | -1 | 0.33333 |
| 57 | -0.33333 | -0.33333 | -0.33333 |
-| 58 | 0.33333 | -0.33333 | -0.33333 |
-| 59 | 0.33333 | 0.33333 | -0.33333 |
-| 60 | -0.33333 | 0.33333 | -0.33333 |
-| 61 | -0.33333 | -0.33333 | 0.33333 |
-| 62 | 0.33333 | -0.33333 | 0.33333 |
-| 63 | 0.33333 | 0.33333 | 0.33333 |
-| 64 | -0.33333 | 0.33333 | 0.33333 |
+| 58 | 0.33333 | -0.33333 | -0.33333 |
+| 59 | 0.33333 | 0.33333 | -0.33333 |
+| 60 | -0.33333 | 0.33333 | -0.33333 |
+| 61 | -0.33333 | -0.33333 | 0.33333 |
+| 62 | 0.33333 | -0.33333 | 0.33333 |
+| 63 | 0.33333 | 0.33333 | 0.33333 |
+| 64 | -0.33333 | 0.33333 | 0.33333 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/FacetBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/FacetBasis_Hexahedron.md
index fe50d9c7..96ae4750 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/FacetBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/FacetBasis_Hexahedron.md
@@ -10,34 +10,34 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE FacetBasis_Hexahedron
- MODULE PURE FUNCTION FacetBasis_Hexahedron1( &
- & n1, &
- & n2, &
- & x, &
- & y, &
- & z, &
- & dim1, &
- & dim2) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: n1
- !! order along axis 1 of the face
- !! it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: n2
- !! order along axis 2 of the face
- !! it should be greater than 1
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- INTEGER(I4B), INTENT(IN) :: dim1
- !! direction in n1 direction
- INTEGER(I4B), INTENT(IN) :: dim2
- !! direction in n2 direction
- REAL(DFP) :: ans( &
- & SIZE(x), &
- & (n1 - 1_I4B) * (n1 - 1_I4B) + (n2 - 1_I4B) * (n2 - 1_I4B))
- END FUNCTION FacetBasis_Hexahedron1
+ MODULE PURE FUNCTION FacetBasis_Hexahedron1( &
+ & n1, &
+ & n2, &
+ & x, &
+ & y, &
+ & z, &
+ & dim1, &
+ & dim2) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: n1
+ !! order along axis 1 of the face
+ !! it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: n2
+ !! order along axis 2 of the face
+ !! it should be greater than 1
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ INTEGER(I4B), INTENT(IN) :: dim1
+ !! direction in n1 direction
+ INTEGER(I4B), INTENT(IN) :: dim2
+ !! direction in n2 direction
+ REAL(DFP) :: ans( &
+ & SIZE(x), &
+ & (n1 - 1_I4B) * (n1 - 1_I4B) + (n2 - 1_I4B) * (n2 - 1_I4B))
+ END FUNCTION FacetBasis_Hexahedron1
END INTERFACE FacetBasis_Hexahedron
```
@@ -56,13 +56,13 @@ $$
- `dim1` denotes the first local axis of the facet.
- `dim2` denotes the second local axis of the facet.
-`dim-1` and `dim-2` should be in lexographical order, that is, following combinations are allowed:
+`dim-1` and `dim-2` should be in lexographical order, that is, following combinations are allowed:
| dim1 | dim2 |
-| --- | --- |
-| 1 | 2 |
-| 1 | 3 |
-| 2 | 3 |
+| ---- | ---- |
+| 1 | 2 |
+| 1 | 3 |
+| 2 | 3 |
:::info `x`
:::
diff --git a/docs/docs-api/HexahedronInterpolationUtility/LagrangeCoeff_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/LagrangeCoeff_Hexahedron.md
index 5ee227ff..2aeb8cf2 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/LagrangeCoeff_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/LagrangeCoeff_Hexahedron.md
@@ -18,16 +18,15 @@ $$
This subroutine returns $c_{a,b,c}$ for Lagrange polynomial.
:::
-For example, if we select monomial basis:
+For example, if we select monomial basis:
$$
-1, x, y, xy, z, xz, yz, xyz
+1, x, y, xy, z, xz, yz, xyz
$$
then for order = 1 (linear), we have following results:
-
-coeff
+coeff
| basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ |
| ----- | ------ | ------ | ------ | ------ | ------ | ------ | ----- | ------ |
@@ -40,7 +39,6 @@ coeff
| yz | 0.125 | 0.125 | -0.125 | -0.125 | -0.125 | -0.125 | 0.125 | 0.125 |
| xyz | -0.125 | 0.125 | -0.125 | 0.125 | 0.125 | -0.125 | 0.125 | -0.125 |
-
## Interface 1
import Tabs from '@theme/Tabs';
@@ -83,7 +81,6 @@ INTERFACE LagrangeCoeff_Hexahedron
END INTERFACE LagrangeCoeff_Hexahedron
```
-
## Interface 3
```fortran
@@ -147,23 +144,24 @@ interpolation points for Lagrange polynomials. The number of rows of xij should
:::
:::info `basisType`
+
- Monomials
- Jacobi
- Legendre
- Chebyshev
- Ultraspherical
- Heirarchical
-:::
+ :::
:::info `refHexahedron`
Reference hexahedron can be `UNIT` or `BIUNIT`.
:::
:::info `alpha, beta, lambda`
+
- `alpha` and `beta` are needed when basisType is Jacobi
- `lambda` is needed when basisType is Ultraspherical
-:::
-
+ :::
@@ -180,7 +178,6 @@ import EXAMPLE77 from "./_LagrangeCoeff_Hexahedron_test_1.md";
-
## Interface 5
@@ -267,40 +264,44 @@ END INTERFACE LagrangeCoeff_Hexahedron
```
:::info `p, q, r`
+
- p is order in x direction
- q is order in y direction
- r is order in z direction
-:::
+ :::
:::info `xij`
xij is the interpolation points. The number of rows in xij is 3, and the number of columns in xij should be equal to the total number of degrees of freedom.
:::
-
:::info `basisType1, basisType2, basisType3`
basisType in x, y, and z direction. It can take following values:
+
- Monomials
- Jacobi
- Legendre
- Chebyshev
- Ultraspherical
- Heirarchical
-:::
+ :::
:::info `alpha1, beta1, lambda1`
+
- `alpha1` and `beta1` are needed when basisType1 is Jacobi
- `lambda1` is needed when basisType1 is Ultraspherical
-:::
+ :::
:::info `alpha2, beta2, lambda2`
+
- `alpha2` and `beta2` are needed when basisType2 is Jacobi
- `lambda2` is needed when basisType2 is Ultraspherical
-:::
+ :::
:::info `alpha3, beta, lambda3`
+
- `alpha3` and `beta3` are needed when basisType3 is Jacobi
- `lambda3` is needed when basisType3 is Ultraspherical
-:::
+ :::
:::info `refHexahedron`
Reference hexahedron can be `UNIT` or `BIUNIT`.
@@ -320,6 +321,3 @@ import EXAMPLE178 from "./_LagrangeCoeff_Hexahedron_test_4.md";
-
-
-
diff --git a/docs/docs-api/HexahedronInterpolationUtility/LagrangeDOF_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/LagrangeDOF_Hexahedron.md
index 51611786..ab95c351 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/LagrangeDOF_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/LagrangeDOF_Hexahedron.md
@@ -5,7 +5,7 @@ Returns the total number of degrees of freedom.
The total number of degree of freedom is given by:
$$
-t_{dof}=(p+1)*(q+1)*(r+1)
+t_{dof}=(p+1)_(q+1)_(r+1)
$$
Calling example:
diff --git a/docs/docs-api/HexahedronInterpolationUtility/LagrangeDegree_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/LagrangeDegree_Hexahedron.md
index dbd26780..054fc502 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/LagrangeDegree_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/LagrangeDegree_Hexahedron.md
@@ -5,7 +5,7 @@ This subroutine returns the monomial degrees (basis) for lagrange polynomials.
Lagrange polynomial of order $p,q,r$ is given by
$$
-l(x,y,z) = \text{span} \left\{ x^{a} y^{b} z^{c} \vert a=0,1,\cdots, p; b=0, 1, \cdots, q; c=0,1,\cdots, r \right\}
+l(x,y,z) = \text{span} \left\{ x^{a} y^{b} z^{c} \vert a=0,1,\cdots, p; b=0, 1, \cdots, q; c=0,1,\cdots, r \right\}
$$
Calling example:
@@ -76,7 +76,7 @@ END INTERFACE LagrangeDegree_Hexahedron
- `p` is order in x direction
- `q` is order in y direction
- `r` is order in z direction
-:::
+ :::
diff --git a/docs/docs-api/HexahedronInterpolationUtility/LagrangeInDOF_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/LagrangeInDOF_Hexahedron.md
index ad4f16c0..574ab511 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/LagrangeInDOF_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/LagrangeInDOF_Hexahedron.md
@@ -5,7 +5,7 @@ Returns the total number of degrees of freedom internal to hexahedron.
The total number of degree of freedom is given by:
$$
-t_{dof}=(p-1)*(q-1)*(r-1)
+t_{dof}=(p-1)_(q-1)_(r-1)
$$
## Interface 1
diff --git a/docs/docs-api/HexahedronInterpolationUtility/VertexBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/VertexBasis_Hexahedron.md
index 77d14722..7aa027d4 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/VertexBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/VertexBasis_Hexahedron.md
@@ -16,15 +16,15 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE VertexBasis_Hexahedron
- MODULE PURE FUNCTION VertexBasis_Hexahedron1(x, y, z) &
- & RESULT(ans)
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- REAL(DFP) :: ans(SIZE(x), 8)
- !! ans(:,v1) basis function of vertex v1 at all points
- END FUNCTION VertexBasis_Hexahedron1
+ MODULE PURE FUNCTION VertexBasis_Hexahedron1(x, y, z) &
+ & RESULT(ans)
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ REAL(DFP) :: ans(SIZE(x), 8)
+ !! ans(:,v1) basis function of vertex v1 at all points
+ END FUNCTION VertexBasis_Hexahedron1
END INTERFACE VertexBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_2.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_2.md
index 4fdade2b..f4b14392 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_2.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_2.md
@@ -16,5 +16,5 @@ end program main
xij (order=2)=
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | 0 | 0 | 0 |
+| -- | ----- | ----- | ----- |
+| 1 | 0 | 0 | 0 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_3.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_3.md
index 85c05e7f..195e640d 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_3.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_3.md
@@ -15,13 +15,13 @@ end program main
xij (order=3)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | 0.33333 | 0.33333 | 0.33333 |
-| 2 | 1 | 0.33333 | 0.33333 |
-| 3 | 1 | 1 | 0.33333 |
-| 4 | 0.33333 | 1 | 0.33333 |
-| 5 | 0.33333 | 0.33333 | 1 |
-| 6 | 1 | 0.33333 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | 0.33333 | 1 | 1 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | ------- | ------- | ------- |
+| 1 | 0.33333 | 0.33333 | 0.33333 |
+| 2 | 1 | 0.33333 | 0.33333 |
+| 3 | 1 | 1 | 0.33333 |
+| 4 | 0.33333 | 1 | 0.33333 |
+| 5 | 0.33333 | 0.33333 | 1 |
+| 6 | 1 | 0.33333 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | 0.33333 | 1 | 1 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_4.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_4.md
index 5e184f4b..4abd0efe 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_4.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistanceInPoint_Hexahedron_test_4.md
@@ -16,32 +16,34 @@ end program main
xij (order=4)=
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -0.5 | -0.5 | -0.5 |
-| 2 | 0.5 | -0.5 | -0.5 |
-| 3 | 0.5 | 0.5 | -0.5 |
-| 4 | -0.5 | 0.5 | -0.5 |
-| 5 | -0.5 | -0.5 | 0.5 |
-| 6 | 0.5 | -0.5 | 0.5 |
-| 7 | 0.5 | 0.5 | 0.5 |
-| 8 | -0.5 | 0.5 | 0.5 |
-| 9 | 0 | -0.5 | -0.5 |
-| 10 | -0.5 | 0 | -0.5 |
-| 11 | -0.5 | -0.5 | 0 |
-| 12 | 0.5 | 0 | -0.5 |
-| 13 | 0.5 | -0.5 | 0 |
-| 14 | 0 | 0.5 | -0.5 |
-| 15 | 0.5 | 0.5 | 0 |
-| 16 | -0.5 | 0.5 | 0 |
-| 17 | 0 | -0.5 | 0.5 |
-| 18 | -0.5 | 0 | 0.5 |
-| 19 | 0.5 | 0 | 0.5 |
-| 20 | 0 | 0.5 | 0.5 |
-| 21 | 0 | 0 | -0.5 |
-| 22 | 0 | 0 | 0.5 |
-| 23 | -0.5 | 0 | 0 |
-| 24 | 0.5 | 0 | 0 |
-| 25 | 0 | -0.5 | 0 |
-| 26 | 0 | 0.5 | 0 |
-| 27 | 0 | 0 | 0 |
+| -- | ----- | ----- | ----- |
+| 1 | -0.5 | -0.5 | -0.5 |
+| 2 | 0.5 | -0.5 | -0.5 |
+| 3 | 0.5 | 0.5 | -0.5 |
+| 4 | -0.5 | 0.5 | -0.5 |
+| 5 | -0.5 | -0.5 | 0.5 |
+| 6 | 0.5 | -0.5 | 0.5 |
+| 7 | 0.5 | 0.5 | 0.5 |
+| 8 | -0.5 | 0.5 | 0.5 |
+| 9 | 0 | -0.5 | -0.5 |
+| 10 | -0.5 | 0 | -0.5 |
+| 11 | -0.5 | -0.5 | 0 |
+| 12 | 0.5 | 0 | -0.5 |
+| 13 | 0.5 | -0.5 | 0 |
+| 14 | 0 | 0.5 | -0.5 |
+| 15 | 0.5 | 0.5 | 0 |
+| 16 | -0.5 | 0.5 | 0 |
+| 17 | 0 | -0.5 | 0.5 |
+| 18 | -0.5 | 0 | 0.5 |
+| 19 | 0.5 | 0 | 0.5 |
+| 20 | 0 | 0.5 | 0.5 |
+| 21 | 0 | 0 | -0.5 |
+| 22 | 0 | 0 | 0.5 |
+| 23 | -0.5 | 0 | 0 |
+| 24 | 0.5 | 0 | 0 |
+| 25 | 0 | -0.5 | 0 |
+| 26 | 0 | 0.5 | 0 |
+| 27 | 0 | 0 | 0 |
+
+```
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_1.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_1.md
index 4c622433..3fbcfb75 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_1.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_1.md
@@ -16,12 +16,12 @@ end program main
xij (order=1)=
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_2.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_2.md
index 125cb716..d1b184d0 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_2.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_2.md
@@ -15,32 +15,32 @@ end program main
xij (order=2)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | ----- | ----- | ----- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | 0 | -1 | -1 |
-| 10 | -1 | 0 | -1 |
-| 11 | -1 | -1 | 0 |
-| 12 | 1 | 0 | -1 |
-| 13 | 1 | -1 | 0 |
-| 14 | 0 | 1 | -1 |
-| 15 | 1 | 1 | 0 |
-| 16 | -1 | 1 | 0 |
-| 17 | 0 | -1 | 1 |
-| 18 | -1 | 0 | 1 |
-| 19 | 1 | 0 | 1 |
-| 20 | 0 | 1 | 1 |
-| 21 | 0 | 0 | -1 |
-| 22 | 0 | 0 | 1 |
-| 23 | -1 | 0 | 0 |
-| 24 | 1 | 0 | 0 |
-| 25 | 0 | -1 | 0 |
-| 26 | 0 | 1 | 0 |
-| 27 | 0 | 0 | 0 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | 0 | -1 | -1 |
+| 10 | -1 | 0 | -1 |
+| 11 | -1 | -1 | 0 |
+| 12 | 1 | 0 | -1 |
+| 13 | 1 | -1 | 0 |
+| 14 | 0 | 1 | -1 |
+| 15 | 1 | 1 | 0 |
+| 16 | -1 | 1 | 0 |
+| 17 | 0 | -1 | 1 |
+| 18 | -1 | 0 | 1 |
+| 19 | 1 | 0 | 1 |
+| 20 | 0 | 1 | 1 |
+| 21 | 0 | 0 | -1 |
+| 22 | 0 | 0 | 1 |
+| 23 | -1 | 0 | 0 |
+| 24 | 1 | 0 | 0 |
+| 25 | 0 | -1 | 0 |
+| 26 | 0 | 1 | 0 |
+| 27 | 0 | 0 | 0 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_3.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_3.md
index 88e45a45..e7b4256e 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_3.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_3.md
@@ -15,69 +15,69 @@ end program main
xij (order=3)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | -------- | -------- | -------- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | -0.33333 | -1 | -1 |
-| 10 | 0.33333 | -1 | -1 |
-| 11 | -1 | -0.33333 | -1 |
-| 12 | -1 | 0.33333 | -1 |
-| 13 | -1 | -1 | -0.33333 |
-| 14 | -1 | -1 | 0.33333 |
-| 15 | 1 | -0.33333 | -1 |
-| 16 | 1 | 0.33333 | -1 |
-| 17 | 1 | -1 | -0.33333 |
-| 18 | 1 | -1 | 0.33333 |
-| 19 | 0.33333 | 1 | -1 |
-| 20 | -0.33333 | 1 | -1 |
-| 21 | 1 | 1 | -0.33333 |
-| 22 | 1 | 1 | 0.33333 |
-| 23 | -1 | 1 | -0.33333 |
-| 24 | -1 | 1 | 0.33333 |
-| 25 | -0.33333 | -1 | 1 |
-| 26 | 0.33333 | -1 | 1 |
-| 27 | -1 | -0.33333 | 1 |
-| 28 | -1 | 0.33333 | 1 |
-| 29 | 1 | -0.33333 | 1 |
-| 30 | 1 | 0.33333 | 1 |
-| 31 | 0.33333 | 1 | 1 |
-| 32 | -0.33333 | 1 | 1 |
-| 33 | -0.33333 | -0.33333 | -1 |
-| 34 | -0.33333 | 0.33333 | -1 |
-| 35 | 0.33333 | 0.33333 | -1 |
-| 36 | 0.33333 | -0.33333 | -1 |
-| 37 | -0.33333 | -0.33333 | 1 |
-| 38 | 0.33333 | -0.33333 | 1 |
-| 39 | 0.33333 | 0.33333 | 1 |
-| 40 | -0.33333 | 0.33333 | 1 |
-| 41 | -1 | -0.33333 | -0.33333 |
-| 42 | -1 | -0.33333 | 0.33333 |
-| 43 | -1 | 0.33333 | 0.33333 |
-| 44 | -1 | 0.33333 | -0.33333 |
-| 45 | 1 | -0.33333 | -0.33333 |
-| 46 | 1 | 0.33333 | -0.33333 |
-| 47 | 1 | 0.33333 | 0.33333 |
-| 48 | 1 | -0.33333 | 0.33333 |
-| 49 | 0.33333 | 1 | -0.33333 |
-| 50 | -0.33333 | 1 | -0.33333 |
-| 51 | -0.33333 | 1 | 0.33333 |
-| 52 | 0.33333 | 1 | 0.33333 |
-| 53 | -0.33333 | -1 | -0.33333 |
-| 54 | 0.33333 | -1 | -0.33333 |
-| 55 | 0.33333 | -1 | 0.33333 |
-| 56 | -0.33333 | -1 | 0.33333 |
-| 57 | -0.33333 | -0.33333 | -0.33333 |
-| 58 | 0.33333 | -0.33333 | -0.33333 |
-| 59 | 0.33333 | 0.33333 | -0.33333 |
-| 60 | -0.33333 | 0.33333 | -0.33333 |
-| 61 | -0.33333 | -0.33333 | 0.33333 |
-| 62 | 0.33333 | -0.33333 | 0.33333 |
-| 63 | 0.33333 | 0.33333 | 0.33333 |
-| 64 | -0.33333 | 0.33333 | 0.33333 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | -------- | -------- | -------- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | -0.33333 | -1 | -1 |
+| 10 | 0.33333 | -1 | -1 |
+| 11 | -1 | -0.33333 | -1 |
+| 12 | -1 | 0.33333 | -1 |
+| 13 | -1 | -1 | -0.33333 |
+| 14 | -1 | -1 | 0.33333 |
+| 15 | 1 | -0.33333 | -1 |
+| 16 | 1 | 0.33333 | -1 |
+| 17 | 1 | -1 | -0.33333 |
+| 18 | 1 | -1 | 0.33333 |
+| 19 | 0.33333 | 1 | -1 |
+| 20 | -0.33333 | 1 | -1 |
+| 21 | 1 | 1 | -0.33333 |
+| 22 | 1 | 1 | 0.33333 |
+| 23 | -1 | 1 | -0.33333 |
+| 24 | -1 | 1 | 0.33333 |
+| 25 | -0.33333 | -1 | 1 |
+| 26 | 0.33333 | -1 | 1 |
+| 27 | -1 | -0.33333 | 1 |
+| 28 | -1 | 0.33333 | 1 |
+| 29 | 1 | -0.33333 | 1 |
+| 30 | 1 | 0.33333 | 1 |
+| 31 | 0.33333 | 1 | 1 |
+| 32 | -0.33333 | 1 | 1 |
+| 33 | -0.33333 | -0.33333 | -1 |
+| 34 | -0.33333 | 0.33333 | -1 |
+| 35 | 0.33333 | 0.33333 | -1 |
+| 36 | 0.33333 | -0.33333 | -1 |
+| 37 | -0.33333 | -0.33333 | 1 |
+| 38 | 0.33333 | -0.33333 | 1 |
+| 39 | 0.33333 | 0.33333 | 1 |
+| 40 | -0.33333 | 0.33333 | 1 |
+| 41 | -1 | -0.33333 | -0.33333 |
+| 42 | -1 | -0.33333 | 0.33333 |
+| 43 | -1 | 0.33333 | 0.33333 |
+| 44 | -1 | 0.33333 | -0.33333 |
+| 45 | 1 | -0.33333 | -0.33333 |
+| 46 | 1 | 0.33333 | -0.33333 |
+| 47 | 1 | 0.33333 | 0.33333 |
+| 48 | 1 | -0.33333 | 0.33333 |
+| 49 | 0.33333 | 1 | -0.33333 |
+| 50 | -0.33333 | 1 | -0.33333 |
+| 51 | -0.33333 | 1 | 0.33333 |
+| 52 | 0.33333 | 1 | 0.33333 |
+| 53 | -0.33333 | -1 | -0.33333 |
+| 54 | 0.33333 | -1 | -0.33333 |
+| 55 | 0.33333 | -1 | 0.33333 |
+| 56 | -0.33333 | -1 | 0.33333 |
+| 57 | -0.33333 | -0.33333 | -0.33333 |
+| 58 | 0.33333 | -0.33333 | -0.33333 |
+| 59 | 0.33333 | 0.33333 | -0.33333 |
+| 60 | -0.33333 | 0.33333 | -0.33333 |
+| 61 | -0.33333 | -0.33333 | 0.33333 |
+| 62 | 0.33333 | -0.33333 | 0.33333 |
+| 63 | 0.33333 | 0.33333 | 0.33333 |
+| 64 | -0.33333 | 0.33333 | 0.33333 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_6.md b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_6.md
index b7ff3637..3dea8820 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_6.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_EquidistancePoint_Hexahedron_test_6.md
@@ -15,32 +15,32 @@ end program main
xij (order=2)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | ----- | ----- | ----- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | 0 | -1 | -1 |
-| 10 | -1 | 0 | -1 |
-| 11 | -1 | -1 | 0 |
-| 12 | 1 | 0 | -1 |
-| 13 | 1 | -1 | 0 |
-| 14 | 0 | 1 | -1 |
-| 15 | 1 | 1 | 0 |
-| 16 | -1 | 1 | 0 |
-| 17 | 0 | -1 | 1 |
-| 18 | -1 | 0 | 1 |
-| 19 | 1 | 0 | 1 |
-| 20 | 0 | 1 | 1 |
-| 21 | 0 | 0 | -1 |
-| 22 | 0 | 0 | 1 |
-| 23 | -1 | 0 | 0 |
-| 24 | 1 | 0 | 0 |
-| 25 | 0 | -1 | 0 |
-| 26 | 0 | 1 | 0 |
-| 27 | 0 | 0 | 0 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | 0 | -1 | -1 |
+| 10 | -1 | 0 | -1 |
+| 11 | -1 | -1 | 0 |
+| 12 | 1 | 0 | -1 |
+| 13 | 1 | -1 | 0 |
+| 14 | 0 | 1 | -1 |
+| 15 | 1 | 1 | 0 |
+| 16 | -1 | 1 | 0 |
+| 17 | 0 | -1 | 1 |
+| 18 | -1 | 0 | 1 |
+| 19 | 1 | 0 | 1 |
+| 20 | 0 | 1 | 1 |
+| 21 | 0 | 0 | -1 |
+| 22 | 0 | 0 | 1 |
+| 23 | -1 | 0 | 0 |
+| 24 | 1 | 0 | 0 |
+| 25 | 0 | -1 | 0 |
+| 26 | 0 | 1 | 0 |
+| 27 | 0 | 0 | 0 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_1.md b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_1.md
index 1f5e10e6..ab041e19 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_1.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_1.md
@@ -19,16 +19,16 @@ end program main
xij (order=1)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | ----- | ----- | ----- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_2.md b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_2.md
index 4fdea63e..22d880c2 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_2.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_2.md
@@ -20,34 +20,34 @@ end program main
xij (order=2)=
| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | --- | --- | --- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | 0 | -1 | -1 |
-| 10 | -1 | 0 | -1 |
-| 11 | -1 | -1 | 0 |
-| 12 | 1 | 0 | -1 |
-| 13 | 1 | -1 | 0 |
-| 14 | 0 | 1 | -1 |
-| 15 | 1 | 1 | 0 |
-| 16 | -1 | 1 | 0 |
-| 17 | 0 | -1 | 1 |
-| 18 | -1 | 0 | 1 |
-| 19 | 1 | 0 | 1 |
-| 20 | 0 | 1 | 1 |
-| 21 | 0 | 0 | -1 |
-| 22 | 0 | 0 | 1 |
-| 23 | -1 | 0 | 0 |
-| 24 | 1 | 0 | 0 |
-| 25 | 0 | 1 | 0 |
-| 26 | 0 | -1 | 0 |
-| 27 | 0 | 0 | 0 |
+| -- | ----- | ----- | ----- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | 0 | -1 | -1 |
+| 10 | -1 | 0 | -1 |
+| 11 | -1 | -1 | 0 |
+| 12 | 1 | 0 | -1 |
+| 13 | 1 | -1 | 0 |
+| 14 | 0 | 1 | -1 |
+| 15 | 1 | 1 | 0 |
+| 16 | -1 | 1 | 0 |
+| 17 | 0 | -1 | 1 |
+| 18 | -1 | 0 | 1 |
+| 19 | 1 | 0 | 1 |
+| 20 | 0 | 1 | 1 |
+| 21 | 0 | 0 | -1 |
+| 22 | 0 | 0 | 1 |
+| 23 | -1 | 0 | 0 |
+| 24 | 1 | 0 | 0 |
+| 25 | 0 | 1 | 0 |
+| 26 | 0 | -1 | 0 |
+| 27 | 0 | 0 | 0 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_3.md b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_3.md
index b3b121e7..b47ec3fb 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_3.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_InterpolationPoint_Hexahedron_test_3.md
@@ -19,72 +19,72 @@ END PROGRAM main
xij (order=3)=
-| no | $x_1$ | $x_2$ | $x_3$ |
-| --- | -------- | -------- | -------- |
-| 1 | -1 | -1 | -1 |
-| 2 | 1 | -1 | -1 |
-| 3 | 1 | 1 | -1 |
-| 4 | -1 | 1 | -1 |
-| 5 | -1 | -1 | 1 |
-| 6 | 1 | -1 | 1 |
-| 7 | 1 | 1 | 1 |
-| 8 | -1 | 1 | 1 |
-| 9 | -0.33333 | -1 | -1 |
-| 10 | 0.33333 | -1 | -1 |
-| 11 | -1 | -0.33333 | -1 |
-| 12 | -1 | 0.33333 | -1 |
-| 13 | -1 | -1 | -0.33333 |
-| 14 | -1 | -1 | 0.33333 |
-| 15 | 1 | -0.33333 | -1 |
-| 16 | 1 | 0.33333 | -1 |
-| 17 | 1 | -1 | -0.33333 |
-| 18 | 1 | -1 | 0.33333 |
-| 19 | 0.33333 | 1 | -1 |
-| 20 | -0.33333 | 1 | -1 |
-| 21 | 1 | 1 | -0.33333 |
-| 22 | 1 | 1 | 0.33333 |
-| 23 | -1 | 1 | -0.33333 |
-| 24 | -1 | 1 | 0.33333 |
-| 25 | -0.33333 | -1 | 1 |
-| 26 | 0.33333 | -1 | 1 |
-| 27 | -1 | -0.33333 | 1 |
-| 28 | -1 | 0.33333 | 1 |
-| 29 | 1 | -0.33333 | 1 |
-| 30 | 1 | 0.33333 | 1 |
-| 31 | 0.33333 | 1 | 1 |
-| 32 | -0.33333 | 1 | 1 |
-| 33 | -0.33333 | -0.33333 | -1 |
-| 34 | -0.33333 | 0.33333 | -1 |
-| 35 | 0.33333 | 0.33333 | -1 |
-| 36 | 0.33333 | -0.33333 | -1 |
-| 37 | -0.33333 | -0.33333 | 1 |
-| 38 | 0.33333 | -0.33333 | 1 |
-| 39 | 0.33333 | 0.33333 | 1 |
-| 40 | -0.33333 | 0.33333 | 1 |
-| 41 | -1 | -0.33333 | 0.33333 |
-| 42 | -1 | -0.33333 | -0.33333 |
-| 43 | -1 | 0.33333 | -0.33333 |
-| 44 | -1 | 0.33333 | 0.33333 |
-| 45 | 1 | -0.33333 | 0.33333 |
-| 46 | 1 | 0.33333 | 0.33333 |
-| 47 | 1 | 0.33333 | -0.33333 |
-| 48 | 1 | -0.33333 | -0.33333 |
-| 49 | 0.33333 | 1 | -0.33333 |
-| 50 | -0.33333 | 1 | -0.33333 |
-| 51 | -0.33333 | 1 | 0.33333 |
-| 52 | 0.33333 | 1 | 0.33333 |
-| 53 | -0.33333 | -1 | -0.33333 |
-| 54 | 0.33333 | -1 | -0.33333 |
-| 55 | 0.33333 | -1 | 0.33333 |
-| 56 | -0.33333 | -1 | 0.33333 |
-| 57 | -0.33333 | -0.33333 | -0.33333 |
-| 58 | 0.33333 | -0.33333 | -0.33333 |
-| 59 | 0.33333 | 0.33333 | -0.33333 |
-| 60 | -0.33333 | 0.33333 | -0.33333 |
-| 61 | -0.33333 | -0.33333 | 0.33333 |
-| 62 | 0.33333 | -0.33333 | 0.33333 |
-| 63 | 0.33333 | 0.33333 | 0.33333 |
-| 64 | -0.33333 | 0.33333 | 0.33333 |
+| no | $x_1$ | $x_2$ | $x_3$ |
+| -- | -------- | -------- | -------- |
+| 1 | -1 | -1 | -1 |
+| 2 | 1 | -1 | -1 |
+| 3 | 1 | 1 | -1 |
+| 4 | -1 | 1 | -1 |
+| 5 | -1 | -1 | 1 |
+| 6 | 1 | -1 | 1 |
+| 7 | 1 | 1 | 1 |
+| 8 | -1 | 1 | 1 |
+| 9 | -0.33333 | -1 | -1 |
+| 10 | 0.33333 | -1 | -1 |
+| 11 | -1 | -0.33333 | -1 |
+| 12 | -1 | 0.33333 | -1 |
+| 13 | -1 | -1 | -0.33333 |
+| 14 | -1 | -1 | 0.33333 |
+| 15 | 1 | -0.33333 | -1 |
+| 16 | 1 | 0.33333 | -1 |
+| 17 | 1 | -1 | -0.33333 |
+| 18 | 1 | -1 | 0.33333 |
+| 19 | 0.33333 | 1 | -1 |
+| 20 | -0.33333 | 1 | -1 |
+| 21 | 1 | 1 | -0.33333 |
+| 22 | 1 | 1 | 0.33333 |
+| 23 | -1 | 1 | -0.33333 |
+| 24 | -1 | 1 | 0.33333 |
+| 25 | -0.33333 | -1 | 1 |
+| 26 | 0.33333 | -1 | 1 |
+| 27 | -1 | -0.33333 | 1 |
+| 28 | -1 | 0.33333 | 1 |
+| 29 | 1 | -0.33333 | 1 |
+| 30 | 1 | 0.33333 | 1 |
+| 31 | 0.33333 | 1 | 1 |
+| 32 | -0.33333 | 1 | 1 |
+| 33 | -0.33333 | -0.33333 | -1 |
+| 34 | -0.33333 | 0.33333 | -1 |
+| 35 | 0.33333 | 0.33333 | -1 |
+| 36 | 0.33333 | -0.33333 | -1 |
+| 37 | -0.33333 | -0.33333 | 1 |
+| 38 | 0.33333 | -0.33333 | 1 |
+| 39 | 0.33333 | 0.33333 | 1 |
+| 40 | -0.33333 | 0.33333 | 1 |
+| 41 | -1 | -0.33333 | 0.33333 |
+| 42 | -1 | -0.33333 | -0.33333 |
+| 43 | -1 | 0.33333 | -0.33333 |
+| 44 | -1 | 0.33333 | 0.33333 |
+| 45 | 1 | -0.33333 | 0.33333 |
+| 46 | 1 | 0.33333 | 0.33333 |
+| 47 | 1 | 0.33333 | -0.33333 |
+| 48 | 1 | -0.33333 | -0.33333 |
+| 49 | 0.33333 | 1 | -0.33333 |
+| 50 | -0.33333 | 1 | -0.33333 |
+| 51 | -0.33333 | 1 | 0.33333 |
+| 52 | 0.33333 | 1 | 0.33333 |
+| 53 | -0.33333 | -1 | -0.33333 |
+| 54 | 0.33333 | -1 | -0.33333 |
+| 55 | 0.33333 | -1 | 0.33333 |
+| 56 | -0.33333 | -1 | 0.33333 |
+| 57 | -0.33333 | -0.33333 | -0.33333 |
+| 58 | 0.33333 | -0.33333 | -0.33333 |
+| 59 | 0.33333 | 0.33333 | -0.33333 |
+| 60 | -0.33333 | 0.33333 | -0.33333 |
+| 61 | -0.33333 | -0.33333 | 0.33333 |
+| 62 | 0.33333 | -0.33333 | 0.33333 |
+| 63 | 0.33333 | 0.33333 | 0.33333 |
+| 64 | -0.33333 | 0.33333 | 0.33333 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_1.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_1.md
index 324be2e3..3e42ba46 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_1.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_1.md
@@ -36,31 +36,28 @@ CALL Display(Mdencode(coeff), "coeff : " )
END PROGRAM main
```
-
See results
+degrees:
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
$$
-1, x, y, xy, z, xz, yz, xyz
+1, x, y, xy, z, xz, yz, xyz
$$
-
-coeff
+coeff
| basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ |
| ----- | ------ | ------ | ------ | ------ | ------ | ------ | ----- | ------ |
@@ -73,6 +70,5 @@ coeff
| yz | 0.125 | 0.125 | -0.125 | -0.125 | -0.125 | -0.125 | 0.125 | 0.125 |
| xyz | -0.125 | 0.125 | -0.125 | 0.125 | 0.125 | -0.125 | 0.125 | -0.125 |
-
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_2.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_2.md
index b14c2a1a..6c9bd1fa 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_2.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_2.md
@@ -36,31 +36,28 @@ CALL Display(Mdencode(coeff), "coeff : " )
END PROGRAM main
```
-
See results
+degrees:
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
$$
-1, x, y, xy, z, xz, yz, xyz
+1, x, y, xy, z, xz, yz, xyz
$$
-
-coeff
+coeff
| basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ |
| ----- | ------ | ------ | ------ | ------ | ------ | ------ | ----- | ------ |
@@ -73,6 +70,5 @@ coeff
| yz | 0.125 | 0.125 | -0.125 | -0.125 | -0.125 | -0.125 | 0.125 | 0.125 |
| xyz | -0.125 | 0.125 | -0.125 | 0.125 | 0.125 | -0.125 | 0.125 | -0.125 |
-
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_3.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_3.md
index c25c91c3..9c7290fb 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_3.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_3.md
@@ -28,5 +28,3 @@ coeff = LagrangeCoeff_Hexahedron(&
END PROGRAM main
```
-
-
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_4.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_4.md
index e5673bd1..ba29c95f 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_4.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeCoeff_Hexahedron_test_4.md
@@ -57,31 +57,28 @@ CALL Display(Mdencode(coeff), "coeff : " )
END PROGRAM main
```
-
See results
+degrees:
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
$$
-1, x, y, xy, z, xz, yz, xyz
+1, x, y, xy, z, xz, yz, xyz
$$
-
-coeff
+coeff
| basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ |
| ----- | ------ | ------ | ------ | ------ | ------ | ------ | ----- | ------ |
@@ -94,6 +91,5 @@ coeff
| yz | 0.125 | 0.125 | -0.125 | -0.125 | -0.125 | -0.125 | 0.125 | 0.125 |
| xyz | -0.125 | 0.125 | -0.125 | 0.125 | 0.125 | -0.125 | 0.125 | -0.125 |
-
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_1.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_1.md
index 12967f4e..16b63aa8 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_1.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_1.md
@@ -13,27 +13,25 @@ CALL display(mdencode(deg), "degrees: ")
END PROGRAM main
```
-
See results
+degrees:
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
$$
-1, x, y, xy, z, xz, yz, xyz
+1, x, y, xy, z, xz, yz, xyz
$$
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_2.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_2.md
index e14e3c0e..4ffedb0c 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_2.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_2.md
@@ -13,44 +13,41 @@ CALL display(mdencode(deg), "degrees: ")
END PROGRAM main
```
-
See results
-
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 2 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 2 | 1 | 0 |
-| 0 | 2 | 0 |
-| 1 | 2 | 0 |
-| 2 | 2 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 2 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
-| 2 | 1 | 1 |
-| 0 | 2 | 1 |
-| 1 | 2 | 1 |
-| 2 | 2 | 1 |
-| 0 | 0 | 2 |
-| 1 | 0 | 2 |
-| 2 | 0 | 2 |
-| 0 | 1 | 2 |
-| 1 | 1 | 2 |
-| 2 | 1 | 2 |
-| 0 | 2 | 2 |
-| 1 | 2 | 2 |
-| 2 | 2 | 2 |
-
+degrees:
+
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 2 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 2 | 1 | 0 |
+| 0 | 2 | 0 |
+| 1 | 2 | 0 |
+| 2 | 2 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 2 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
+| 2 | 1 | 1 |
+| 0 | 2 | 1 |
+| 1 | 2 | 1 |
+| 2 | 2 | 1 |
+| 0 | 0 | 2 |
+| 1 | 0 | 2 |
+| 2 | 0 | 2 |
+| 0 | 1 | 2 |
+| 1 | 1 | 2 |
+| 2 | 1 | 2 |
+| 0 | 2 | 2 |
+| 1 | 2 | 2 |
+| 2 | 2 | 2 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_3.md b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_3.md
index d0e71462..0ca49b63 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_3.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/_LagrangeDegree_Hexahedron_test_3.md
@@ -13,28 +13,26 @@ CALL display(mdencode(deg), "degrees: ")
END PROGRAM main
```
-
See results
-
-degrees:
-
-| a | b | c |
-| --- | --- | --- |
-| 0 | 0 | 0 |
-| 1 | 0 | 0 |
-| 2 | 0 | 0 |
-| 0 | 1 | 0 |
-| 1 | 1 | 0 |
-| 2 | 1 | 0 |
-| 0 | 0 | 1 |
-| 1 | 0 | 1 |
-| 2 | 0 | 1 |
-| 0 | 1 | 1 |
-| 1 | 1 | 1 |
-| 2 | 1 | 1 |
+degrees:
+
+| a | b | c |
+| - | - | - |
+| 0 | 0 | 0 |
+| 1 | 0 | 0 |
+| 2 | 0 | 0 |
+| 0 | 1 | 0 |
+| 1 | 1 | 0 |
+| 2 | 1 | 0 |
+| 0 | 0 | 1 |
+| 1 | 0 | 1 |
+| 2 | 0 | 1 |
+| 0 | 1 | 1 |
+| 1 | 1 | 1 |
+| 2 | 1 | 1 |
diff --git a/docs/docs-api/HexahedronInterpolationUtility/xEdgeBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/xEdgeBasis_Hexahedron.md
index 86a4cacf..8f608735 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/xEdgeBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/xEdgeBasis_Hexahedron.md
@@ -14,30 +14,30 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE xEdgeBasis_Hexahedron
- MODULE PURE FUNCTION xEdgeBasis_Hexahedron1( &
- & pe1, &
- & pe2, &
- & pe3, &
- & pe4, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: pe1
- !! order on edge e1, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe2
- !! order on edge e2, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe3
- !! order on edge e3, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe4
- !! order on edge e4, it should be greater than 1
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
- END FUNCTION xEdgeBasis_Hexahedron1
+ MODULE PURE FUNCTION xEdgeBasis_Hexahedron1( &
+ & pe1, &
+ & pe2, &
+ & pe3, &
+ & pe4, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: pe1
+ !! order on edge e1, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe2
+ !! order on edge e2, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe3
+ !! order on edge e3, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe4
+ !! order on edge e4, it should be greater than 1
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
+ END FUNCTION xEdgeBasis_Hexahedron1
END INTERFACE xEdgeBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/xyFacetBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/xyFacetBasis_Hexahedron.md
index 92f27ea3..4d9aaabb 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/xyFacetBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/xyFacetBasis_Hexahedron.md
@@ -12,26 +12,26 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE xyFacetBasis_Hexahedron
- MODULE PURE FUNCTION xyFacetBasis_Hexahedron1( &
- & n1, &
- & n2, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: n1
- !! order along axis 1 of xy face
- INTEGER(I4B), INTENT(IN) :: n2
- !! order along axis 2 of xy face
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans( &
- & SIZE(x), &
- & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
- END FUNCTION xyFacetBasis_Hexahedron1
+ MODULE PURE FUNCTION xyFacetBasis_Hexahedron1( &
+ & n1, &
+ & n2, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: n1
+ !! order along axis 1 of xy face
+ INTEGER(I4B), INTENT(IN) :: n2
+ !! order along axis 2 of xy face
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans( &
+ & SIZE(x), &
+ & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
+ END FUNCTION xyFacetBasis_Hexahedron1
END INTERFACE xyFacetBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/xzFacetBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/xzFacetBasis_Hexahedron.md
index 6b58df51..165436f2 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/xzFacetBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/xzFacetBasis_Hexahedron.md
@@ -12,26 +12,26 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE yzFacetBasis_Hexahedron
- MODULE PURE FUNCTION yzFacetBasis_Hexahedron1( &
- & n1, &
- & n2, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: n1
- !! order along axis 1 of yz face
- INTEGER(I4B), INTENT(IN) :: n2
- !! order along axis 2 of yz face
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans( &
- & SIZE(x), &
- & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
- END FUNCTION yzFacetBasis_Hexahedron1
+ MODULE PURE FUNCTION yzFacetBasis_Hexahedron1( &
+ & n1, &
+ & n2, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: n1
+ !! order along axis 1 of yz face
+ INTEGER(I4B), INTENT(IN) :: n2
+ !! order along axis 2 of yz face
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans( &
+ & SIZE(x), &
+ & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
+ END FUNCTION yzFacetBasis_Hexahedron1
END INTERFACE yzFacetBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/yEdgeBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/yEdgeBasis_Hexahedron.md
index cea79a23..c9253549 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/yEdgeBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/yEdgeBasis_Hexahedron.md
@@ -12,30 +12,30 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE yEdgeBasis_Hexahedron
- MODULE PURE FUNCTION yEdgeBasis_Hexahedron1( &
- & pe1, &
- & pe2, &
- & pe3, &
- & pe4, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: pe1
- !! order on edge e1, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe2
- !! order on edge e2, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe3
- !! order on edge e3, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe4
- !! order on edge e4, it should be greater than 1
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
- END FUNCTION yEdgeBasis_Hexahedron1
+ MODULE PURE FUNCTION yEdgeBasis_Hexahedron1( &
+ & pe1, &
+ & pe2, &
+ & pe3, &
+ & pe4, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: pe1
+ !! order on edge e1, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe2
+ !! order on edge e2, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe3
+ !! order on edge e3, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe4
+ !! order on edge e4, it should be greater than 1
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
+ END FUNCTION yEdgeBasis_Hexahedron1
END INTERFACE yEdgeBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/yzFacetBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/yzFacetBasis_Hexahedron.md
index a56e4d77..0588b352 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/yzFacetBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/yzFacetBasis_Hexahedron.md
@@ -12,28 +12,28 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE yzFacetBasis_Hexahedron
- MODULE PURE FUNCTION yzFacetBasis_Hexahedron1( &
- & n1, &
- & n2, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: n1
- !! order along axis 1 of yz face
- !! it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: n2
- !! order along axis 2 of yz face
- !! it should be greater than 1
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans( &
- & SIZE(x), &
- & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
- END FUNCTION yzFacetBasis_Hexahedron1
+ MODULE PURE FUNCTION yzFacetBasis_Hexahedron1( &
+ & n1, &
+ & n2, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: n1
+ !! order along axis 1 of yz face
+ !! it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: n2
+ !! order along axis 2 of yz face
+ !! it should be greater than 1
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans( &
+ & SIZE(x), &
+ & (n1 - 1_I4B) * (n2 - 1_I4B) * 2_I4B)
+ END FUNCTION yzFacetBasis_Hexahedron1
END INTERFACE yzFacetBasis_Hexahedron
```
diff --git a/docs/docs-api/HexahedronInterpolationUtility/zEdgeBasis_Hexahedron.md b/docs/docs-api/HexahedronInterpolationUtility/zEdgeBasis_Hexahedron.md
index f8e37248..b53e1f09 100644
--- a/docs/docs-api/HexahedronInterpolationUtility/zEdgeBasis_Hexahedron.md
+++ b/docs/docs-api/HexahedronInterpolationUtility/zEdgeBasis_Hexahedron.md
@@ -12,30 +12,30 @@ import TabItem from '@theme/TabItem';
- ```fortran
+```fortran
INTERFACE zEdgeBasis_Hexahedron
- MODULE PURE FUNCTION zEdgeBasis_Hexahedron1( &
- & pe1, &
- & pe2, &
- & pe3, &
- & pe4, &
- & x, &
- & y, &
- & z) &
- & RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: pe1
- !! order on edge e1, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe2
- !! order on edge e2, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe3
- !! order on edge e3, it should be greater than 1
- INTEGER(I4B), INTENT(IN) :: pe4
- !! order on edge e4, it should be greater than 1
- REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
- !! point of evaluation
- !! these points should be between [-1, 1].
- REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
- END FUNCTION zEdgeBasis_Hexahedron1
+ MODULE PURE FUNCTION zEdgeBasis_Hexahedron1( &
+ & pe1, &
+ & pe2, &
+ & pe3, &
+ & pe4, &
+ & x, &
+ & y, &
+ & z) &
+ & RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: pe1
+ !! order on edge e1, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe2
+ !! order on edge e2, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe3
+ !! order on edge e3, it should be greater than 1
+ INTEGER(I4B), INTENT(IN) :: pe4
+ !! order on edge e4, it should be greater than 1
+ REAL(DFP), INTENT(IN) :: x(:), y(:), z(:)
+ !! point of evaluation
+ !! these points should be between [-1, 1].
+ REAL(DFP) :: ans(SIZE(x), pe1 + pe2 + pe3 + pe4 - 4)
+ END FUNCTION zEdgeBasis_Hexahedron1
END INTERFACE zEdgeBasis_Hexahedron
```
diff --git a/docs/docs-api/HierarchicalPolynomialUtility/index.md b/docs/docs-api/HierarchicalPolynomialUtility/index.md
index 85562204..8dcb547e 100644
--- a/docs/docs-api/HierarchicalPolynomialUtility/index.md
+++ b/docs/docs-api/HierarchicalPolynomialUtility/index.md
@@ -18,4 +18,3 @@ tags:
# HierarchicalPolynomialUtility
This module is a collection of methods which are useful for Hierarchical Polynomials.
-
diff --git a/docs/docs-api/IntVector/IntVector_.md b/docs/docs-api/IntVector/IntVector_.md
index b5cb4d49..32327a79 100644
--- a/docs/docs-api/IntVector/IntVector_.md
+++ b/docs/docs-api/IntVector/IntVector_.md
@@ -24,71 +24,71 @@ Vectors of integers.
### Shape
!!! note ""
- Return the shape of IntVector in a fortran vector of size 1. See example [[IntVector_test_1]]
+Return the shape of IntVector in a fortran vector of size 1. See example [[IntVector_test_1]]
### Size
!!! note ""
- Return the size of IntVector, If the instance of intvector is not allocated then it will return 0. See example [[IntVector_test_1]]
+Return the size of IntVector, If the instance of intvector is not allocated then it will return 0. See example [[IntVector_test_1]]
### GetTotalDimension
!!! note ""
- Return a integer scalar, total dimension of IntVector. It will return 1.
- See example [[IntVector_test_1]]
+Return a integer scalar, total dimension of IntVector. It will return 1.
+See example [[IntVector_test_1]]
### Allocate
!!! note ""
- Allocate the size of IntVector. See example [[IntVector_test_1]]
+Allocate the size of IntVector. See example [[IntVector_test_1]]
### Deallocate
!!! note ""
- Deallocate the data stored inside IntVector. See example [[IntVector_test_1]]
+Deallocate the data stored inside IntVector. See example [[IntVector_test_1]]
### Initiate
!!! note ""
- Initiate an instance of IntVector. See example [[IntVector_test_2]] for more details.
+Initiate an instance of IntVector. See example [[IntVector_test_2]] for more details.
### IntVector
!!! note ""
- This is a function, which returns an intance of [[IntVector_]]. You can find more details about this function here 👉⚡ [[IntVector_test_3]].
+This is a function, which returns an intance of [[IntVector_]]. You can find more details about this function here 👉⚡ [[IntVector_test_3]].
### IntVector_Pointer
!!! note ""
- This is a function, which returns a pointer to a newly created instance of [[IntVector_]]. You can find more details about this function here 👉⚡ [[IntVector_test_4]].
+This is a function, which returns a pointer to a newly created instance of [[IntVector_]]. You can find more details about this function here 👉⚡ [[IntVector_test_4]].
### isAllocated
!!! note ""
- This function returns true if the instance of intvector is allocated. See [[IntVector_test_1]] for usage.
+This function returns true if the instance of intvector is allocated. See [[IntVector_test_1]] for usage.
### isInitiated
!!! note ""
- Alias to isAllocated method.
+Alias to isAllocated method.
## IO methods
### Display
!!! note ""
- This function displays the content of intvector. You can find more details about this function here 👉⚡ [[IntVector_test_1]] [[IntVector_test_2]] [[IntVector_test_3]] [[IntVector_test_4]].
+This function displays the content of intvector. You can find more details about this function here 👉⚡ [[IntVector_test_1]] [[IntVector_test_2]] [[IntVector_test_3]] [[IntVector_test_4]].
## Get methods
### Operator(.in.)
!!! note ""
- The operator (.in.) returns true if a integer set is subset of another integer set. You can find the usage and more details about this method 👉🔥 [[IntVector_test_5]]
+The operator (.in.) returns true if a integer set is subset of another integer set. You can find the usage and more details about this method 👉🔥 [[IntVector_test_5]]
### Get
!!! note ""
- Returns the values stored inside intvector. See, 👉🔥 [[IntVector_test_6]] for more details. This routine has all the features of fortran for native integer vectors.
+Returns the values stored inside intvector. See, 👉🔥 [[IntVector_test_6]] for more details. This routine has all the features of fortran for native integer vectors.
## Set methods
diff --git a/docs/docs-api/IntVector/IntVector_test_1.md b/docs/docs-api/IntVector/IntVector_test_1.md
index 74c020d5..abfd0f1d 100644
--- a/docs/docs-api/IntVector/IntVector_test_1.md
+++ b/docs/docs-api/IntVector/IntVector_test_1.md
@@ -20,7 +20,6 @@ Testing and showing usage of methods defined in [[IntVector_#Constructor-methods
## Usage
-
```fortran
PROGRAM main
USE easifemBase
@@ -28,14 +27,14 @@ TYPE(IntVector_) :: obj
```
!!! note ""
- Initiate an instance of [[IntVector_]] by specifying size.
+Initiate an instance of [[IntVector_]] by specifying size.
```fortran
CALL ALLOCATE(obj=obj, dims=10)
```
!!! note ""
- Let us check if obj is initiated or not.
+Let us check if obj is initiated or not.
```fortran
CALL OK(IsAllocated(obj), "IsAllocated(obj)")
@@ -48,28 +47,28 @@ CALL OK(IsInitiated(obj), "IsInitiated(obj)")
```
!!! note ""
- Size of the [[IntVector_]]
+Size of the [[IntVector_]]
```fortran
CALL OK( SIZE(obj) .EQ. 10, "SIZE(obj)")
```
!!! note ""
- Shape of the [[IntVector_]]
+Shape of the [[IntVector_]]
```fortran
CALL OK( ALL(SHAPE(obj) .EQ. [10]), "SHAPE(obj)")
```
!!! note ""
- GetTotalDimension of the [[IntVector_]]
+GetTotalDimension of the [[IntVector_]]
```fortran
CALL OK( GetTotalDimension(obj) .EQ. 1, "GetTotalDimension(obj)")
```
!!! settings ""
- Cleanup.
+Cleanup.
```fortran
CALL DEALLOCATE(obj)
diff --git a/docs/docs-api/IntVector/IntVector_test_2.md b/docs/docs-api/IntVector/IntVector_test_2.md
index b6774267..f0258af4 100644
--- a/docs/docs-api/IntVector/IntVector_test_2.md
+++ b/docs/docs-api/IntVector/IntVector_test_2.md
@@ -14,9 +14,9 @@ tags:
## Usage
!!! note ""
- Initiate an instance of [[IntVector_]] by specifying size.
+Initiate an instance of [[IntVector_]] by specifying size.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
TYPE(IntVector_), ALLOCATABLE :: obj( : )
@@ -25,7 +25,7 @@ INTEGER( I4B ) :: tsize( 4 )
```
!!! note ""
- Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
+Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
```fortran
CALL Initiate(obj=obj1, tSize=10)
@@ -33,7 +33,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- Let us now initiate the instance of [[IntVector_]] by specifying the upper and lower bounds.
+Let us now initiate the instance of [[IntVector_]] by specifying the upper and lower bounds.
```fortran
CALL Initiate(obj1, 11, 20)
@@ -41,10 +41,10 @@ CALL display(obj1, "obj1=")
```
!!! message ""
- In the above CALL the lowerbound is 11 and upperbound is 20.
+In the above CALL the lowerbound is 11 and upperbound is 20.
!!! note ""
- We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
+We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
```fortran
CALL Initiate(obj1, [2, 3])
@@ -52,7 +52,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- ASSIGNMENT OPERATOR can be used instead of calling above initiate method.
+ASSIGNMENT OPERATOR can be used instead of calling above initiate method.
```fortran
obj1=[1,2,3]
@@ -60,7 +60,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- The CALL given below will ALLOCATE the vector `obj(:)` WITH 4 elements. The sizes of obj(1:4) are given in `tsize(1:4)`.
+The CALL given below will ALLOCATE the vector `obj(:)` WITH 4 elements. The sizes of obj(1:4) are given in `tsize(1:4)`.
```fortran
tsize = [5,5,10,10]
@@ -68,18 +68,15 @@ CALL Initiate(obj=obj, tSize=tsize)
```
!!! note ""
- Display the contents.
+Display the contents.
```fortran
CALL display( obj, msg = "test2")
```
!!! settings ""
- Cleanup
+Cleanup
```fortran
END PROGRAM main
```
-
-
-
diff --git a/docs/docs-api/IntVector/IntVector_test_3.md b/docs/docs-api/IntVector/IntVector_test_3.md
index a689d1b0..a1b11f33 100644
--- a/docs/docs-api/IntVector/IntVector_test_3.md
+++ b/docs/docs-api/IntVector/IntVector_test_3.md
@@ -8,7 +8,7 @@ tags:
# Intvector example 3
!!! example ""
- This example shows how to initiate an instance of [[IntVector_]] by using a function called [[IntVector_#IntVector]]
+This example shows how to initiate an instance of [[IntVector_]] by using a function called [[IntVector_#IntVector]]
## Modules and classes
@@ -17,16 +17,16 @@ tags:
## Usage
!!! note ""
- Initiate an instance of [[IntVector_]] by specifying size.
+Initiate an instance of [[IntVector_]] by specifying size.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
TYPE(IntVector_) :: obj1
```
!!! note ""
- Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
+Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
```fortran
obj1 = IntVector(tSize=10)
@@ -34,7 +34,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
+We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
```fortran
obj1 = IntVector([2, 3])
@@ -42,7 +42,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- ASSIGNMENT OPERATOR can be used instead of calling above initiate method.
+ASSIGNMENT OPERATOR can be used instead of calling above initiate method.
```fortran
obj1=[1,2,3]
@@ -50,7 +50,7 @@ CALL display(obj1, "obj1=")
```
!!! settings ""
- Cleanup
+Cleanup
```fortran
END PROGRAM main
diff --git a/docs/docs-api/IntVector/IntVector_test_4.md b/docs/docs-api/IntVector/IntVector_test_4.md
index f4c33dfc..f437144f 100644
--- a/docs/docs-api/IntVector/IntVector_test_4.md
+++ b/docs/docs-api/IntVector/IntVector_test_4.md
@@ -8,7 +8,7 @@ tags:
# Intvector example 4
!!! example ""
- This example shows how to initiate an instance of [[IntVector_]] by using a function called [[IntVector_#IntVector_Pointer]]
+This example shows how to initiate an instance of [[IntVector_]] by using a function called [[IntVector_#IntVector_Pointer]]
## Modules and classes
@@ -17,16 +17,16 @@ tags:
## Usage
!!! note ""
- Initiate an instance of [[IntVector_]] by specifying size.
+Initiate an instance of [[IntVector_]] by specifying size.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
CLASS(IntVector_), POINTER :: obj1 => NULL()
```
!!! note ""
- Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
+Let us first ALLOCATE the scalar instance of [[IntVector_]] obj1. We will set its size to 10. The lower bound is 1 and upper bound is 10.
```fortran
obj1 => IntVector_Pointer(tSize=10)
@@ -34,7 +34,7 @@ CALL display(obj1, "obj1=")
```
!!! note ""
- We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
+We can also initiate an instance of [[IntVector_]] by the vector of INTEGER.
```fortran
obj1 => IntVector_Pointer([2, 3])
@@ -42,7 +42,7 @@ CALL display(obj1, "obj1=")
```
!!! settings ""
- Cleanup
+Cleanup
```fortran
END PROGRAM main
diff --git a/docs/docs-api/IntVector/IntVector_test_5.md b/docs/docs-api/IntVector/IntVector_test_5.md
index e1653015..29174adf 100644
--- a/docs/docs-api/IntVector/IntVector_test_5.md
+++ b/docs/docs-api/IntVector/IntVector_test_5.md
@@ -9,7 +9,7 @@ tags:
# Intvector example 2
!!! note ""
- This examples shows how to use Operator(.in.) to find out if an integer set is a subset of another integer set.
+This examples shows how to use Operator(.in.) to find out if an integer set is a subset of another integer set.
## Modules and classes
@@ -17,15 +17,14 @@ tags:
## Usage
-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
TYPE(IntVector_) :: obj1, obj2
```
!!! note ""
- Initiate an instance of [[IntVector_]]
+Initiate an instance of [[IntVector_]]
```fortran
obj1 = [1,2,3]
@@ -33,7 +32,7 @@ obj2 = [1,2,3]
```
!!! note ""
- Using opertor(.in.) for native fortran integer vectors
+Using opertor(.in.) for native fortran integer vectors
```fortran
CALL OK(obj1%val .in. obj2%val, "operator(.in.)")
@@ -73,13 +72,9 @@ obj1 = [1,2,5,6]
CALL OK( obj1 .in. obj2, "operator(.in.)-should-fail")
```
-
!!! settings ""
- Cleanup
+Cleanup
```fortran
END PROGRAM main
```
-
-
-
diff --git a/docs/docs-api/IntVector/IntVector_test_6.md b/docs/docs-api/IntVector/IntVector_test_6.md
index 27633e2b..49941ece 100644
--- a/docs/docs-api/IntVector/IntVector_test_6.md
+++ b/docs/docs-api/IntVector/IntVector_test_6.md
@@ -9,7 +9,7 @@ tags:
# Intvector example 6
!!! note ""
- This examples shows how to USE `Get` method to access the entries inside the [[IntVector_]]. The output results can be in various formats including the native fortran INTEGER vectors.
+This examples shows how to USE `Get` method to access the entries inside the [[IntVector_]]. The output results can be in various formats including the native fortran INTEGER vectors.
## Modules and classes
@@ -17,72 +17,68 @@ tags:
## Usage
-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
TYPE(IntVector_) :: obj1, obj2
```
!!! note ""
- Initiate an instance of [[IntVector_]]
+Initiate an instance of [[IntVector_]]
```fortran
- obj1 = arange(1,10,1)
- CALL Display(obj1, "obj1: ", orient='row')
+obj1 = arange(1,10,1)
+CALL Display(obj1, "obj1: ", orient='row')
```
!!! note ""
- Lets get entries of obj1 and in obj2. For this purpose, we need to specify the DATA TYPE of RETURN variable. Here, RETURN `datatype` is [[IntVector_]]
+Lets get entries of obj1 and in obj2. For this purpose, we need to specify the DATA TYPE of RETURN variable. Here, RETURN `datatype` is [[IntVector_]]
```fortran
- obj2=Get(obj=obj1, dataType=TypeIntVector)
- CALL Display(obj2, "obj2:", orient='row')
+obj2=Get(obj=obj1, dataType=TypeIntVector)
+CALL Display(obj2, "obj2:", orient='row')
```
> Here, TypeIntVector is a PARAMETER defined in the easifemBase library.
!!! note ""
- Now let us get the selected values specified by the indices in `indx`.
+Now let us get the selected values specified by the indices in `indx`.
```fortran
- obj2=Get(obj=obj1, indx=[1,3,5], datatype=TypeIntVector)
- CALL Display(obj2, "obj2:", orient='row')
+obj2=Get(obj=obj1, indx=[1,3,5], datatype=TypeIntVector)
+CALL Display(obj2, "obj2:", orient='row')
```
!!! note ""
- Triplets are also supported. istart is necessary. iend, and istride are optional.
+Triplets are also supported. istart is necessary. iend, and istride are optional.
Let us get all the values.
```fortran
- obj2 = Get(obj=obj1, istart=1 , datatype=TypeIntVector)
- call Display(obj2, "obj2: all values = ", orient='row')
+obj2 = Get(obj=obj1, istart=1 , datatype=TypeIntVector)
+call Display(obj2, "obj2: all values = ", orient='row')
```
Let us get values at odd index position
```fortran
- obj2 = Get(obj=obj1, istart=1, stride=2, datatype=TypeIntVector)
- call Display(obj2, "obj2: odd index = ", orient='row')
+obj2 = Get(obj=obj1, istart=1, stride=2, datatype=TypeIntVector)
+call Display(obj2, "obj2: odd index = ", orient='row')
```
Let us get values at even index positions
```fortran
- obj2 = Get(obj=obj1, istart=2, stride=2, iend=size(obj1), &
- & datatype=TypeIntVector )
- call Display(obj2, "obj2: even index = ", orient='row')
+obj2 = Get(obj=obj1, istart=2, stride=2, iend=size(obj1), &
+ & datatype=TypeIntVector )
+call Display(obj2, "obj2: even index = ", orient='row')
```
!!! settings ""
- Cleanup
+Cleanup
```fortran
CALL DEALLOCATE(obj1)
CALL DEALLOCATE(obj2)
END PROGRAM main
```
-
-
-
diff --git a/docs/docs-api/IntVector/IntVector_test_7.md b/docs/docs-api/IntVector/IntVector_test_7.md
index f0a0c147..f0f15bf6 100644
--- a/docs/docs-api/IntVector/IntVector_test_7.md
+++ b/docs/docs-api/IntVector/IntVector_test_7.md
@@ -9,7 +9,7 @@ tags:
# Intvector example 7
!!! note ""
- This examples shows how to USE `Get` method to access the entries inside the [[IntVector_]]. The output results can be in various formats including the native fortran INTEGER vectors.
+This examples shows how to USE `Get` method to access the entries inside the [[IntVector_]]. The output results can be in various formats including the native fortran INTEGER vectors.
## Modules and classes
@@ -17,57 +17,51 @@ tags:
## Usage
-
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
TYPE(IntVector_) :: obj1, obj2, obj(4)
```
!!! note ""
- Initiate an instance of [[IntVector_]]
+Initiate an instance of [[IntVector_]]
```fortran
- obj(1) = [1,2]
- obj(2) = [3,4,5]
- obj(3) = [6,7,8]
- obj(4) = [9,10]
+obj(1) = [1,2]
+obj(2) = [3,4,5]
+obj(3) = [6,7,8]
+obj(4) = [9,10]
```
!!! note ""
- Let us serialized the entries of obj(1:4) and get the values in a scalar instance of intvector. Here, RETURN `datatype` is [[IntVector_]]
+Let us serialized the entries of obj(1:4) and get the values in a scalar instance of intvector. Here, RETURN `datatype` is [[IntVector_]]
```fortran
- obj2=Get(obj=obj, dataType=TypeIntVector)
- CALL Display(obj2, "obj2:", orient='row')
+obj2=Get(obj=obj, dataType=TypeIntVector)
+CALL Display(obj2, "obj2:", orient='row')
```
!!! note ""
- Now let us get first two values from each obj(1:4) and packed them in an instance of intvector.
+Now let us get first two values from each obj(1:4) and packed them in an instance of intvector.
```fortran
- obj2=Get(obj=obj, indx=[1,2], datatype=TypeIntVector)
- CALL Display(obj2, "obj2:", orient='row')
+obj2=Get(obj=obj, indx=[1,2], datatype=TypeIntVector)
+CALL Display(obj2, "obj2:", orient='row')
```
!!! error ""
- Note that in the each entry in the indx should be in the bound of obj(1:4).
-
-
+Note that in the each entry in the indx should be in the bound of obj(1:4).
> Here, TypeIntVector is a PARAMETER defined in the easifemBase library.
!!! note ""
- Now let us get the selected values specified by the indices in `indx`.
+Now let us get the selected values specified by the indices in `indx`.
!!! settings ""
- Cleanup
+Cleanup
```fortran
CALL DEALLOCATE(obj1)
CALL DEALLOCATE(obj2)
END PROGRAM main
```
-
-
-
diff --git a/docs/docs-api/InterpolationUtility/VandermondeMatrix.md b/docs/docs-api/InterpolationUtility/VandermondeMatrix.md
index d492b26c..69741f02 100644
--- a/docs/docs-api/InterpolationUtility/VandermondeMatrix.md
+++ b/docs/docs-api/InterpolationUtility/VandermondeMatrix.md
@@ -11,11 +11,11 @@ V = VandermondeMatrix(order, x)
## Interface
```fortran
- MODULE PURE FUNCTION VandermondeMatrix(order, x) RESULT(ans)
- INTEGER(I4B), INTENT(IN) :: order
- REAL(Real32 | Real64) , INTENT(IN) :: x(:)
- REAL(Real32 | Real64) :: ans(SIZE(x), order + 1)
- END FUNCTION VandermondeMatrix
+MODULE PURE FUNCTION VandermondeMatrix(order, x) RESULT(ans)
+ INTEGER(I4B), INTENT(IN) :: order
+ REAL(Real32 | Real64) , INTENT(IN) :: x(:)
+ REAL(Real32 | Real64) :: ans(SIZE(x), order + 1)
+END FUNCTION VandermondeMatrix
```
$$
diff --git a/docs/docs-api/InterpolationUtility/_VandermondeMatrix_test_1.md b/docs/docs-api/InterpolationUtility/_VandermondeMatrix_test_1.md
index 96084127..862133b7 100644
--- a/docs/docs-api/InterpolationUtility/_VandermondeMatrix_test_1.md
+++ b/docs/docs-api/InterpolationUtility/_VandermondeMatrix_test_1.md
@@ -14,10 +14,10 @@ end program main
ans:
-| | | | |
- | --- | --- | --- | --- |
- | 1 | 1 | 1 | 1 |
- | 1 | 2 | 4 | 8 |
+| | | | |
+| - | - | - | - |
+| 1 | 1 | 1 | 1 |
+| 1 | 2 | 4 | 8 |
diff --git a/docs/docs-api/InvUtility/_Det_test_1.md b/docs/docs-api/InvUtility/_Det_test_1.md
index 6752c31d..7a104fa4 100644
--- a/docs/docs-api/InvUtility/_Det_test_1.md
+++ b/docs/docs-api/InvUtility/_Det_test_1.md
@@ -17,11 +17,11 @@ end program main
amat:
- | | | |
- | --- | --- | --- |
- | 0.6584 | 0.74781 | 0.1522 |
- | 0.12227 | 0.83529 | 0.23357 |
- | 0.19271 | 0.50045 | 0.99899 |
+| | | |
+| ------- | ------- | ------- |
+| 0.6584 | 0.74781 | 0.1522 |
+| 0.12227 | 0.83529 | 0.23357 |
+| 0.19271 | 0.50045 | 0.99899 |
det :
diff --git a/docs/docs-api/InvUtility/_Inv_test_1.md b/docs/docs-api/InvUtility/_Inv_test_1.md
index 0a45f46f..9873d879 100644
--- a/docs/docs-api/InvUtility/_Inv_test_1.md
+++ b/docs/docs-api/InvUtility/_Inv_test_1.md
@@ -18,19 +18,19 @@ end program main
amat:
- | | | |
- | --- | --- | --- |
- | 0.88179 | 0.51365 | 0.53015 |
- | 0.24482 | 9.60291E-02 | 0.79165 |
- | 0.25111 | 0.42564 | 9.45404E-04 |
+| | | |
+| ------- | ----------- | ----------- |
+| 0.88179 | 0.51365 | 0.53015 |
+| 0.24482 | 9.60291E-02 | 0.79165 |
+| 0.25111 | 0.42564 | 9.45404E-04 |
ainv:
- | | | |
- | --- | --- | --- |
- | 2.2076 | -1.4756 | -2.3312 |
- | -1.3012 | 0.86698 | 3.7241 |
- | -0.52488 | 1.6144 | 0.26919 |
+| | | |
+| -------- | ------- | ------- |
+| 2.2076 | -1.4756 | -2.3312 |
+| -1.3012 | 0.86698 | 3.7241 |
+| -0.52488 | 1.6144 | 0.26919 |
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_1.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_1.md
index 8a98f34f..fafa0a05 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_1.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_1.md
@@ -30,11 +30,11 @@ real( dfp ), parameter :: alpha=0.0, beta=0.0
### n=1
```fortran
- n = 1
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n = 1
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -47,12 +47,12 @@ J(n=1, alpha=0.0, beta=0.0) :=
### n=2
```fortran
- n=2
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=2
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -66,12 +66,12 @@ J(n=2, alpha=0.0, beta=0.0) :=
### n=3
```fortran
- n=3
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=3
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -86,12 +86,12 @@ J(n=3, alpha=0.0, beta=0.0) :=
### n=4
```fortran
- n=4
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=4
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_10.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_10.md
index f534ec65..d2329286 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_10.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_10.md
@@ -32,37 +32,37 @@ real( dfp ), parameter :: a = 1.0_DFP, alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_11.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_11.md
index 6bde7a9f..be3fd360 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_11.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_11.md
@@ -32,39 +32,39 @@ real( dfp ), parameter :: alpha=0.0, beta=0.0
### n=1
```fortran
- n = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussLobattoQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussLobattoQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
END PROGRAM main
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_12.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_12.md
index 31aa1c4f..27216787 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_12.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_12.md
@@ -7,7 +7,7 @@ tags:
# Jacobi1D example 12
-This example shows the usage of [[Jacobi1D_]] class. We test orthonormal Jacobi polynomial in this case.
+This example shows the usage of [[Jacobi1D_]] class. We test orthonormal Jacobi polynomial in this case.
## Modules and classes
@@ -30,12 +30,12 @@ logical( lgt ), parameter :: isOrthonormal = .TRUE., isMonic=.FALSE.
### n=1
```fortran
- n=1
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=1
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -48,13 +48,13 @@ J(n=1, alpha=0.0, beta=0.0) :=
### n=2
```fortran
- n=2
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic)
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=2
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic)
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -68,13 +68,13 @@ J(n=2, alpha=0.0, beta=0.0) :=
### n=3
```fortran
- n=3
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic)
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n=3
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic)
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
@@ -89,13 +89,13 @@ J(n=3, alpha=0.0, beta=0.0) :=
### n=4
```fortran
- n = 4
- call blanklines( nol=5 )
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic)
- call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
- call obj%Display( "=>" )
- call obj%Deallocate()
+n = 4
+call blanklines( nol=5 )
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic)
+call Display( "J(n=4, alpha=0.0, beta=0.0) := " )
+call obj%Display( "=>" )
+call obj%Deallocate()
```
```txt
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_13.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_13.md
index e3587362..3265c2f7 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_13.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_13.md
@@ -33,20 +33,20 @@ real( dfp ) :: x
### n=1
```fortran
- n=1
- x = 1.0_DFP
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- call display( coeff, "coeff = ")
- call display( scale, "scale = ")
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call display( y, "y = ")
- call obj%Deallocate()
+n=1
+x = 1.0_DFP
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+call display( coeff, "coeff = ")
+call display( scale, "scale = ")
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -67,20 +67,20 @@ J(n=1, alpha=0.0, beta=0.0) :=
### n=2
```fortran
- n=2
- x = 0.0_DFP
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- call display( coeff, "coeff = ")
- call display( scale, "scale = ")
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call display( y, "y = ")
- call obj%Deallocate()
+n=2
+x = 0.0_DFP
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+call display( coeff, "coeff = ")
+call display( scale, "scale = ")
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -104,20 +104,20 @@ J(n=2, alpha=0.0, beta=0.0) :=
### n=3
```fortran
- n=3
- x = 0.0_DFP
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- call display( coeff, "coeff = ")
- call display( scale, "scale = ")
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call display( y, "y = ")
- call obj%Deallocate()
+n=3
+x = 0.0_DFP
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+call display( coeff, "coeff = ")
+call display( scale, "scale = ")
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_14.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_14.md
index 12760780..41560239 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_14.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_14.md
@@ -33,19 +33,19 @@ real( dfp ) :: x( 3 )
### n=1
```fortran
- n=1
- x = [-0.5_DFP, 0.0_DFP, 0.5_DFP]
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call Display( x, "x = " )
- call display( y, "y = " )
- call obj%Deallocate( )
+n=1
+x = [-0.5_DFP, 0.0_DFP, 0.5_DFP]
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call Display( x, "x = " )
+call display( y, "y = " )
+call obj%Deallocate( )
```
```txt
@@ -66,18 +66,18 @@ J(n=1, alpha=0.0, beta=0.0) :=
### n=2
```fortran
- n=2
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call Display( x, "x = ")
- call display( y, "y = ")
- call obj%Deallocate()
+n=2
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call Display( x, "x = ")
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -98,18 +98,18 @@ J(n=2, alpha=0.0, beta=0.0) :=
### n=3
```fortran
- n=3
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
- call Display( x, "x = ")
- call display( y, "y = ")
- call obj%Deallocate()
+n=3
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEval( x=x, coeff=coeff, scale=scale )
+call Display( x, "x = ")
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_15.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_15.md
index 8cb4712e..9f3e0ce6 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_15.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_15.md
@@ -33,18 +33,18 @@ real( dfp ) :: x
### n=1
```fortran
- n=1
- x = 1.0_DFP
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=1
+x = 1.0_DFP
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -54,23 +54,22 @@ J(n=1, alpha=0.0, beta=0.0) :=
-------
0.00000
1.00000
-
```
### n=2
```fortran
- n=2
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=2
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -81,23 +80,22 @@ J(n=2, alpha=0.0, beta=0.0) :=
0.00000
1.00000
3.00000
-
```
### n=3
```fortran
- n=3
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=3
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -109,7 +107,6 @@ J(n=3, alpha=0.0, beta=0.0) :=
1.00000
3.00000
6.00000
-
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_16.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_16.md
index 946f1476..fc971495 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_16.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_16.md
@@ -33,18 +33,18 @@ real( dfp ) :: x
### n=1
```fortran
- n=1
- x = -1.0_DFP
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=1
+x = -1.0_DFP
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=1, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -54,23 +54,22 @@ J(n=1, alpha=0.0, beta=0.0) :=
-------
0.00000
1.00000
-
```
### n=2
```fortran
- n=2
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=2
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=2, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -81,23 +80,22 @@ J(n=2, alpha=0.0, beta=0.0) :=
0.00000
1.00000
-3.00000
-
```
### n=3
```fortran
- n=3
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
- & isOrthonormal=isOrthonormal, isMonic=isMonic )
- call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
- call reallocate( coeff, n, 2)
- call reallocate( scale, n, 2)
- call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
- & isMonic=isMonic, isOrthonormal=isOrthonormal )
- y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
- call display( y, "y = ")
- call obj%Deallocate()
+n=3
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta, &
+ & isOrthonormal=isOrthonormal, isMonic=isMonic )
+call Display( "J(n=3, alpha=0.0, beta=0.0) := " )
+call reallocate( coeff, n, 2)
+call reallocate( scale, n, 2)
+call obj%getCoeffScale( n=n, coeff=coeff, scale=scale, &
+ & isMonic=isMonic, isOrthonormal=isOrthonormal )
+y = obj%BasisEvalGradient( x=x, coeff=coeff, scale=scale, n=n )
+call display( y, "y = ")
+call obj%Deallocate()
```
```txt
@@ -109,7 +107,6 @@ J(n=3, alpha=0.0, beta=0.0) :=
1.00000
-3.00000
6.00000
-
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_2.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_2.md
index 9bd47e56..bf5bfcda 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_2.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_2.md
@@ -29,10 +29,10 @@ integer(i4b) :: ii
Let us generate 100 jacobi polynomials
```fortran
- DO ii = 1, 1000000
- call obj%Initiate(varname="x", n=100, alpha=0.0_DFP, beta=0.0_DFP)
- END DO
- Read( *, * ) ii
+DO ii = 1, 1000000
+ call obj%Initiate(varname="x", n=100, alpha=0.0_DFP, beta=0.0_DFP)
+END DO
+Read( *, * ) ii
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_3.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_3.md
index ad519925..bb01a23c 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_3.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_3.md
@@ -32,42 +32,42 @@ real( dfp ), parameter :: alpha=0.0, beta=0.0
### n=1
```fortran
- n = 1
- x = linspace(-1.0_DFP, 1.0_DFP, 11_I4B)
- yexact = x
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%Eval( x )
- call OK( ALL(y .APPROXEQ. yexact), "test-1:" )
+n = 1
+x = linspace(-1.0_DFP, 1.0_DFP, 11_I4B)
+yexact = x
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%Eval( x )
+call OK( ALL(y .APPROXEQ. yexact), "test-1:" )
```
### n=2
```fortran
- n = 2
- yexact = 1.5*x**2 - 0.5
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%Eval( x )
- call OK( ALL(y .APPROXEQ. yexact), "test-2:" )
+n = 2
+yexact = 1.5*x**2 - 0.5
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%Eval( x )
+call OK( ALL(y .APPROXEQ. yexact), "test-2:" )
```
### n=3
```fortran
- n = 3
- yexact = 2.5*x**3 - 1.5*x
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%Eval( x )
- call OK( ALL(y .APPROXEQ. yexact), "test-3:" )
+n = 3
+yexact = 2.5*x**3 - 1.5*x
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%Eval( x )
+call OK( ALL(y .APPROXEQ. yexact), "test-3:" )
```
### n=4
```fortran
- n = 4
- yexact = (35.0*x**4 - 30.0*x**2 + 3.0)/8.0
- obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%Eval( x )
- call OK( ALL(y .APPROXEQ. yexact), "test-4:" )
+n = 4
+yexact = (35.0*x**4 - 30.0*x**2 + 3.0)/8.0
+obj = Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%Eval( x )
+call OK( ALL(y .APPROXEQ. yexact), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_4.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_4.md
index 91eccec6..19926f79 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_4.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_4.md
@@ -27,24 +27,23 @@ integer(i4b) :: ii, nn
real( dfp ) :: x, y, t1, t2
```
-
```fortran
- Call obj%Initiate(varname="x", n=10, alpha=0.0_DFP, beta=0.0_DFP)
+Call obj%Initiate(varname="x", n=10, alpha=0.0_DFP, beta=0.0_DFP)
```
```fortran
- DO
- WRITE( *, "(A)", ADVANCE="NO" ) "Enter loop size (-1 exit ) = "
- Read( *, * ) nn
- IF( nn .LT. 0 ) EXIT
- CALL CPU_TIME( t1 )
- DO ii = 1, nn
- x = RAND()
- y = obj%Eval( x )
- END DO
- CALL CPU_TIME(t2)
- CALL Display( abs(t2-t1)/nn, "time = " )
+DO
+ WRITE( *, "(A)", ADVANCE="NO" ) "Enter loop size (-1 exit ) = "
+ Read( *, * ) nn
+ IF( nn .LT. 0 ) EXIT
+ CALL CPU_TIME( t1 )
+ DO ii = 1, nn
+ x = RAND()
+ y = obj%Eval( x )
END DO
+ CALL CPU_TIME(t2)
+ CALL Display( abs(t2-t1)/nn, "time = " )
+END DO
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_5.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_5.md
index 5a5012f9..40e3611a 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_5.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_5.md
@@ -33,45 +33,45 @@ real( dfp ), parameter :: tol=1.0E-10, alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- x = RAND()
- yexact = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-1:" )
+n = 1
+x = RAND()
+yexact = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-1:" )
```
### n=2
```fortran
- n=2
- x = RAND()
- yexact = 3.0*x
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-2:" )
+n=2
+x = RAND()
+yexact = 3.0*x
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-2:" )
```
### n=3
```fortran
- n=3
- x = RAND()
- yexact = 2.5*3.0*x**2 - 1.5
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-3:" )
+n=3
+x = RAND()
+yexact = 2.5*3.0*x**2 - 1.5
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-3:" )
```
### n=4
```fortran
- n=4
- x = RAND()
- yexact = (35.0*4.0*x**3 - 30.0*2.0*x**1)/8.0
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK( SOFTEQ( y, yexact, tol ), "test-4:" )
+n=4
+x = RAND()
+yexact = (35.0*4.0*x**3 - 30.0*2.0*x**1)/8.0
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK( SOFTEQ( y, yexact, tol ), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_6.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_6.md
index 3a2513af..aa085eec 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_6.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_6.md
@@ -33,42 +33,42 @@ real( dfp ), parameter :: tol=1.0E-10, alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- x = linspace(0.0_DFP, 1.0_DFP, 11_I4B)
- yexact = ones(11, 1)
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK( ALL( y .APPROXEQ. yexact), "test-1:" )
+n = 1
+x = linspace(0.0_DFP, 1.0_DFP, 11_I4B)
+yexact = ones(11, 1)
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK( ALL( y .APPROXEQ. yexact), "test-1:" )
```
### n=2
```fortran
- n=2
- yexact = 3.0*x
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK(ALL(y .APPROXEQ. yexact), "test-2:" )
+n=2
+yexact = 3.0*x
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK(ALL(y .APPROXEQ. yexact), "test-2:" )
```
### n=3
```fortran
- n=3
- yexact = 2.5*3.0*x**2 - 1.5
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-3:" )
+n=3
+yexact = 2.5*3.0*x**2 - 1.5
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-3:" )
```
### n=4
```fortran
- n=4
- yexact = (35.0*4.0*x**3 - 30.0*2.0*x**1)/8.0
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- y = obj%EvalGradient( x )
- call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-4:" )
+n=4
+yexact = (35.0*4.0*x**3 - 30.0*2.0*x**1)/8.0
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+y = obj%EvalGradient( x )
+call OK(ALL( SOFTEQ( y, yexact, tol=tol )), "test-4:" )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_7.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_7.md
index 556f89f6..715fe114 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_7.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_7.md
@@ -32,37 +32,37 @@ real( dfp ), parameter :: alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=2
```fortran
- n = 2
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 2
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=3
```fortran
- n = 3
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 3
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
### n=4
```fortran
- n = 4
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%zeros()
- call display( x, "zeros for n="//tostring(n), orient="ROW" )
+n = 4
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%zeros()
+call display( x, "zeros for n="//tostring(n), orient="ROW" )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_8.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_8.md
index 8e6909ad..283dd44f 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_8.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_8.md
@@ -32,37 +32,37 @@ real( dfp ), parameter :: alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussQuadrature()
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussQuadrature()
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
diff --git a/docs/docs-api/Jacobi1D/Jacobi1D_test_9.md b/docs/docs-api/Jacobi1D/Jacobi1D_test_9.md
index e1a5e9b5..3c646366 100644
--- a/docs/docs-api/Jacobi1D/Jacobi1D_test_9.md
+++ b/docs/docs-api/Jacobi1D/Jacobi1D_test_9.md
@@ -32,37 +32,37 @@ real( dfp ), parameter :: a = -1.0_DFP, alpha=0.0_DFP, beta=0.0_DFP
### n=1
```fortran
- n = 1
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 1
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=2
```fortran
- n = 2
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 2
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=3
```fortran
- n = 3
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 3
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
### n=4
```fortran
- n = 4
- obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
- x = obj%GaussRadauQuadrature(a)
- call display( x, "pt | wt for n="//tostring(n) )
+n = 4
+obj=Jacobi1D(varname="x", n=n, alpha=alpha, beta=beta)
+x = obj%GaussRadauQuadrature(a)
+call display( x, "pt | wt for n="//tostring(n) )
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/GetJacobiRecurrenceCoeff.md b/docs/docs-api/JacobiPolynomialUtility/GetJacobiRecurrenceCoeff.md
index 7c391d2c..97022a03 100644
--- a/docs/docs-api/JacobiPolynomialUtility/GetJacobiRecurrenceCoeff.md
+++ b/docs/docs-api/JacobiPolynomialUtility/GetJacobiRecurrenceCoeff.md
@@ -42,8 +42,8 @@ import EXAMPLE23 from "./_GetJacobiRecurrenceCoeff_test_1.md";
These recurrence coefficients are for non-monic jacobi polynomials.
$$
- P_{n+1}^{(\alpha,\beta)}=\left(a_{n}x+b_{n}\right)P_{n}^{(\alpha,\beta)}
- -c_{n}P_{n-1}^{(\alpha,\beta)},\quad n=1,2,\cdots
+P_{n+1}^{(\alpha,\beta)}=\left(a_{n}x+b_{n}\right)P_{n}^{(\alpha,\beta)}
+-c_{n}P_{n-1}^{(\alpha,\beta)},\quad n=1,2,\cdots
$$
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/JacobiEval.md b/docs/docs-api/JacobiPolynomialUtility/JacobiEval.md
index 2f726f79..8b8f34c1 100644
--- a/docs/docs-api/JacobiPolynomialUtility/JacobiEval.md
+++ b/docs/docs-api/JacobiPolynomialUtility/JacobiEval.md
@@ -41,7 +41,7 @@ INTERFACE
END INTERFACE
```
-- N is order of polynomial to compute.
+- N is order of polynomial to compute.
- alpha, beta are parameters
- x: the point at which the polynomials are to be evaluated.
- ans, the values of the Jacobi polynomials at the several points.
diff --git a/docs/docs-api/JacobiPolynomialUtility/JacobiGaussLobattoQuadrature.md b/docs/docs-api/JacobiPolynomialUtility/JacobiGaussLobattoQuadrature.md
index 5ec29442..7be05751 100644
--- a/docs/docs-api/JacobiPolynomialUtility/JacobiGaussLobattoQuadrature.md
+++ b/docs/docs-api/JacobiPolynomialUtility/JacobiGaussLobattoQuadrature.md
@@ -8,7 +8,7 @@ quadrature points.
- The first quadrature point is $-1$
- The second quadrature point is $+1$
-The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Jacobi polynomial of order n with
+The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Jacobi polynomial of order n with
respect to the following weight.
$$
diff --git a/docs/docs-api/JacobiPolynomialUtility/JacobiGaussRadauQuadrature.md b/docs/docs-api/JacobiPolynomialUtility/JacobiGaussRadauQuadrature.md
index c56a768c..c4bdc99c 100644
--- a/docs/docs-api/JacobiPolynomialUtility/JacobiGaussRadauQuadrature.md
+++ b/docs/docs-api/JacobiPolynomialUtility/JacobiGaussRadauQuadrature.md
@@ -3,16 +3,16 @@
This routine returns the $n+1$ Quadrature points and weights.
The Gauss-Radau quadrature points consists one of the end points denoted
-by $a$. So $a$ can be $\pm 1$. The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Jacobi polynomial of order n with
+by $a$. So $a$ can be $\pm 1$. The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Jacobi polynomial of order n with
respect to the following weight.
- $(1-x)^{\alpha} (1+x)^{\beta} (x+1)$ if $a=-1$.
- $(1-x)^{\alpha} (1+x)^{\beta} (1-x)$ if $a=+1$.
- Here n is the order of Jacobi polynomial.
+Here n is the order of Jacobi polynomial.
- If $a=1$ then n+1 quadrature point will be +1
- If $a=-1$ then 1st quadrature point will be -1
+If $a=1$ then n+1 quadrature point will be +1
+If $a=-1$ then 1st quadrature point will be -1
```fortran
INTERFACE
diff --git a/docs/docs-api/JacobiPolynomialUtility/JacobiJacobiLobattoMatrix.md b/docs/docs-api/JacobiPolynomialUtility/JacobiJacobiLobattoMatrix.md
index 766d4b20..2f01e4a2 100644
--- a/docs/docs-api/JacobiPolynomialUtility/JacobiJacobiLobattoMatrix.md
+++ b/docs/docs-api/JacobiPolynomialUtility/JacobiJacobiLobattoMatrix.md
@@ -20,7 +20,6 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(OUT) :: betaCoeff(0:)
END SUBROUTINE JacobiJacobiLobattoMatrix
END INTERFACE
-
```
## Examples
diff --git a/docs/docs-api/JacobiPolynomialUtility/_GetJacobiRecurrenceCoeff_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_GetJacobiRecurrenceCoeff_test_1.md
index b166a0d8..5c6bb1ac 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_GetJacobiRecurrenceCoeff_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_GetJacobiRecurrenceCoeff_test_1.md
@@ -18,7 +18,6 @@ call display( alphacoeff .colconcat. betacoeff, "ans = ")
end program main
```
-
See results
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiDMatrix_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiDMatrix_test_1.md
index 7402d746..2cdb2d09 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiDMatrix_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiDMatrix_test_1.md
@@ -25,29 +25,29 @@ $$
:::
```fortran title "Prepare quadratures"
+!!
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
!!
- error = zeros(30, 2, 1.0_DFP)
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- DO n = 1, SIZE(error,1)
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = JacobiDMatrix(n=n, alpha=alpha, &
- & beta=beta, x=pt, quadType=quadType)
- !!
- f1val = dfunc1(pt)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
- !!
- END DO
+ call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
!!
- CALL display( MdEncode(error), "error=")
+ fval = func1(pt)
+ !!
+ D = JacobiDMatrix(n=n, alpha=alpha, &
+ & beta=beta, x=pt, quadType=quadType)
+ !!
+ f1val = dfunc1(pt)
+ !!
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
@@ -57,32 +57,32 @@ $$
error=
| order(n) | MAX(err) |
-|----------|-------------|
-| 1 | 17.772 |
-| 2 | 21.766 |
-| 5 | 30.677 |
-| 10 | 30.737 |
-| 15 | 5.9239 |
-| 20 | 8.60174E-02 |
-| 25 | 1.11384E-04 |
-| 30 | 1.93772E-07 |
+| -------- | ----------- |
+| 1 | 17.772 |
+| 2 | 21.766 |
+| 5 | 30.677 |
+| 10 | 30.737 |
+| 15 | 5.9239 |
+| 20 | 8.60174E-02 |
+| 25 | 1.11384E-04 |
+| 30 | 1.93772E-07 |
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_1.md
index 9b02487a..dd1eb00b 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_1.md
@@ -14,8 +14,8 @@ program main
```
```fortran title "Jacobi-Gauss"
- x = [-1.0, 0.0, 1.0]
- n = 3; call callme
+x = [-1.0, 0.0, 1.0]
+n = 3; call callme
```
@@ -23,7 +23,7 @@ program main
| P0 | P1 | P2 | P3 |
-|----|----|------|----|
+| -- | -- | ---- | -- |
| 1 | -1 | 1 | -1 |
| 1 | 0 | -0.5 | -0 |
| 1 | 1 | 1 | 1 |
@@ -32,12 +32,12 @@ program main
```fortran
- contains
- subroutine callme
- ans= JacobiEvalAll( n=n, alpha=alpha, beta=beta, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= JacobiEvalAll( n=n, alpha=alpha, beta=beta, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_2.md
index 896ef65e..d1dcc205 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalAll_test_2.md
@@ -14,8 +14,8 @@ program main
```
```fortran title "Jacobi-Gauss"
- x = -1.0_DFP
- n = 3; call callme
+x = -1.0_DFP
+n = 3; call callme
```
@@ -23,19 +23,19 @@ program main
| P0 | P1 | P2 | P3 |
-|----|----|----|----|
+| -- | -- | -- | -- |
| 1 | -1 | 1 | -1 |
```fortran
- contains
- subroutine callme
- ans= JacobiEvalAll( n=n, alpha=alpha, beta=beta, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= JacobiEvalAll( n=n, alpha=alpha, beta=beta, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_1.md
index cd06695f..7aadf4d7 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_1.md
@@ -19,50 +19,50 @@ program main
```
```fortran
- n = 3
- coeff = [1.0, 0.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=0_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [1.0, 0.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=0_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 1.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=1_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 1.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=1_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 0.0, 0.0, 1.0]
- x = 0.5_DFP;
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=3_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 0.0, 0.0, 1.0]
+x = 0.5_DFP;
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=3_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [1.0, 2.0, 3.0, 4.0]
- x = 0.5_DFP;
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = &
- & 1.0*JacobiEval(n=0_I4B, x=x, alpha=alpha,beta=beta) &
- &+ 2.0*JacobiEval(n=1_I4B, x=x, alpha=alpha,beta=beta) &
- &+ 3.0*JacobiEval(n=2_I4B, x=x, alpha=alpha,beta=beta) &
- &+ 4.0*JacobiEval(n=3_I4B, x=x, alpha=alpha,beta=beta)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [1.0, 2.0, 3.0, 4.0]
+x = 0.5_DFP;
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = &
+& 1.0*JacobiEval(n=0_I4B, x=x, alpha=alpha,beta=beta) &
+&+ 2.0*JacobiEval(n=1_I4B, x=x, alpha=alpha,beta=beta) &
+&+ 3.0*JacobiEval(n=2_I4B, x=x, alpha=alpha,beta=beta) &
+&+ 4.0*JacobiEval(n=3_I4B, x=x, alpha=alpha,beta=beta)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_2.md
index 9c4b9892..0b0c33be 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEvalSum_test_2.md
@@ -18,36 +18,36 @@ program main
```
```fortran
- n = 3
- coeff = [1.0, 0.0, 0.0, 0.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=0_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [1.0, 0.0, 0.0, 0.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=0_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
- n = 3
- coeff = [0.0, 1.0, 0.0, 0.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=1_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [0.0, 1.0, 0.0, 0.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=1_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
- n = 3
- coeff = [0.0, 0.0, 0.0, 1.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = JacobiEval(n=3_I4B, x=x, alpha=alpha,&
- & beta=beta)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [0.0, 0.0, 0.0, 1.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = JacobiEval(n=3_I4B, x=x, alpha=alpha,&
+ & beta=beta)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_1.md
index 2a66463c..76408632 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_1.md
@@ -13,23 +13,23 @@ program main
```
```fortran title "Jacobi-Gauss"
- n = 3
- x = -1.0_DFP; call callme
- exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
- call ok( SOFTEQ(ans, exact, tol ))
- x = 0.0_DFP; call callme
- exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
- call ok( SOFTEQ(ans, exact, tol ))
- x = +1.0_DFP; call callme
- exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+x = -1.0_DFP; call callme
+exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
+call ok( SOFTEQ(ans, exact, tol ))
+x = 0.0_DFP; call callme
+exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
+call ok( SOFTEQ(ans, exact, tol ))
+x = +1.0_DFP; call callme
+exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- contains
- subroutine callme
- ans= JacobiEval( n=n, alpha=alpha, beta=beta, x=x )
- end subroutine callme
+contains
+subroutine callme
+ ans= JacobiEval( n=n, alpha=alpha, beta=beta, x=x )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_2.md
index 4d348bb7..4d155c8b 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiEval_test_2.md
@@ -14,17 +14,17 @@ program main
```
```fortran title "Jacobi-Gauss"
- n = 3
- x = [-1.0, 0.0, 0.25, 1.0]; call callme
- exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+x = [-1.0, 0.0, 0.25, 1.0]; call callme
+exact = 0.5_DFP*(5.0 * x**3 - 3.0*x)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
- contains
- subroutine callme
- ans= JacobiEval( n=n, alpha=alpha, beta=beta, x=x )
- end subroutine callme
+contains
+subroutine callme
+ ans= JacobiEval( n=n, alpha=alpha, beta=beta, x=x )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussLobattoQuadrature_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussLobattoQuadrature_test_1.md
index 9ab3cbdb..eec67f1e 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussLobattoQuadrature_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussLobattoQuadrature_test_1.md
@@ -17,7 +17,7 @@ program main
order=0
```fortran
- n = 0; call callme
+n = 0; call callme
```
@@ -27,7 +27,7 @@ order=0
Jacobi Gauss Lobatto points, n+2 = 3 alpha=0 beta=0
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.33333 |
| -4.48639E-17 | 1.3333 |
| 1 | 0.33333 |
@@ -38,7 +38,7 @@ Jacobi Gauss Lobatto points, n+2 = 3 alpha=0 beta=0
order=1
```fortran
- n = 1; call callme
+n = 1; call callme
```
@@ -48,7 +48,7 @@ order=1
Jacobi Gauss Lobatto points, n+2 = 3 alpha=0 beta=0
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.33333 |
| -4.48639E-17 | 1.3333 |
| 1 | 0.33333 |
@@ -59,7 +59,7 @@ Jacobi Gauss Lobatto points, n+2 = 3 alpha=0 beta=0
order=2.
```fortran
- n = 2; call callme
+n = 2; call callme
```
@@ -69,7 +69,7 @@ order=2.
Jacobi Gauss Lobatto points, n+2 = 4 alpha=0 beta=0
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.16667 |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
@@ -81,7 +81,7 @@ Jacobi Gauss Lobatto points, n+2 = 4 alpha=0 beta=0
order=4.
```fortran
- n = 4; call callme
+n = 4; call callme
```
@@ -91,7 +91,7 @@ order=4.
Jacobi Gauss Lobatto points, n+2 = 4 alpha=0 beta=0
| pt | wt |
-|----------|-------------|
+| -------- | ----------- |
| -1 | 6.66667E-02 |
| -0.76506 | 0.37847 |
| -0.28523 | 0.55486 |
@@ -103,18 +103,18 @@ Jacobi Gauss Lobatto points, n+2 = 4 alpha=0 beta=0
```fortran
- contains
- subroutine callme
- call reallocate( pt, n+2, wt, n+2 )
- call JacobiGaussLobattoQuadrature( n=n, alpha=alpha, &
- & beta=beta, pt=pt, wt=wt )
- msg="Jacobi Gauss Lobatto points, n+2 = " &
- & // tostring( n+2 ) // " alpha="//tostring( alpha ) // &
- & " beta="//tostring( beta )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+ subroutine callme
+ call reallocate( pt, n+2, wt, n+2 )
+ call JacobiGaussLobattoQuadrature( n=n, alpha=alpha, &
+ & beta=beta, pt=pt, wt=wt )
+ msg="Jacobi Gauss Lobatto points, n+2 = " &
+ & // tostring( n+2 ) // " alpha="//tostring( alpha ) // &
+ & " beta="//tostring( beta )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussQuadrature_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussQuadrature_test_1.md
index 1b6ea7d8..a3c08838 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussQuadrature_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussQuadrature_test_1.md
@@ -16,7 +16,7 @@ program main
order = 1
```fortran
- n = 1; call callme
+n = 1; call callme
```
@@ -26,7 +26,7 @@ order = 1
Zeros of J(x), n = 1 alpha=0 beta=0
| pt | wt |
-|----|----|
+| -- | -- |
| 0 | 2 |
@@ -35,7 +35,7 @@ Zeros of J(x), n = 1 alpha=0 beta=0
order = 2
```fortran
- n = 2; call callme
+n = 2; call callme
```
@@ -45,7 +45,7 @@ order = 2
Zeros of J(x), n = 1 alpha=0 beta=0
| pt | wt |
-|----------|----|
+| -------- | -- |
| -0.57735 | 1 |
| 0.57735 | 1 |
@@ -55,7 +55,7 @@ Zeros of J(x), n = 1 alpha=0 beta=0
order = 5
```fortran
- n = 5; call callme
+n = 5; call callme
```
@@ -65,7 +65,7 @@ order = 5
Zeros of J(x), n = 5 alpha=0 beta=0
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -0.90618 | 0.23693 |
| -0.53847 | 0.47863 |
| -1.56541E-16 | 0.56889 |
@@ -76,17 +76,17 @@ Zeros of J(x), n = 5 alpha=0 beta=0
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call JacobiGaussQuadrature( n=n, alpha=alpha, beta=beta, pt=pt, wt=wt )
- msg = "Zeros of J(x), n = " &
- & // tostring( n ) // " alpha="//tostring( alpha ) // &
- & " beta="//tostring( beta )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call JacobiGaussQuadrature( n=n, alpha=alpha, beta=beta, pt=pt, wt=wt )
+ msg = "Zeros of J(x), n = " &
+ & // tostring( n ) // " alpha="//tostring( alpha ) // &
+ & " beta="//tostring( beta )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussRadauQuadrature_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussRadauQuadrature_test_1.md
index 71423eb7..2c7dd1ad 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussRadauQuadrature_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGaussRadauQuadrature_test_1.md
@@ -18,7 +18,7 @@ program main
order = 1
```fortran
- n = 1; a=left; call callme
+n = 1; a=left; call callme
```
@@ -28,7 +28,7 @@ order = 1
Jacobi Gauss Radau points, n+1 = 2 alpha=0 beta=0
| pt | wt |
-|---------|-----|
+| ------- | --- |
| -1 | 0.5 |
| 0.33333 | 1.5 |
@@ -38,7 +38,7 @@ Jacobi Gauss Radau points, n+1 = 2 alpha=0 beta=0
order=2.
```fortran
- n = 2; a=left; call callme
+n = 2; a=left; call callme
```
@@ -48,7 +48,7 @@ order=2.
Jacobi Gauss Radau points, n+1 = 3 alpha=0 beta=0
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -1 | 0.22222 |
| -0.2899 | 1.025 |
| 0.6899 | 0.75281 |
@@ -59,7 +59,7 @@ Jacobi Gauss Radau points, n+1 = 3 alpha=0 beta=0
order=1.
```fortran
- n = 1; a=right; call callme
+n = 1; a=right; call callme
```
@@ -69,7 +69,7 @@ order=1.
Jacobi Gauss Radau points, n+1 = 2 alpha=0 beta=0
| pt | wt |
-|----------|-----|
+| -------- | --- |
| -0.33333 | 1.5 |
| 1 | 0.5 |
@@ -79,7 +79,7 @@ Jacobi Gauss Radau points, n+1 = 2 alpha=0 beta=0
order = 2
```fortran
- n = 2; a=right; call callme
+n = 2; a=right; call callme
```
@@ -89,7 +89,7 @@ order = 2
Jacobi Gauss Radau points, n+1 = 3 alpha=0 beta=0
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.6899 | 0.75281 |
| 0.2899 | 1.025 |
| 1 | 0.22222 |
@@ -98,18 +98,18 @@ Jacobi Gauss Radau points, n+1 = 3 alpha=0 beta=0
```fortran
- contains
- subroutine callme
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiGaussRadauQuadrature( a=a, n=n, &
- & alpha=alpha, beta=beta, pt=pt, wt=wt )
- msg="Jacobi Gauss Radau points, n+1 = " &
- & // tostring( n+1 ) // " alpha="//tostring( alpha ) // &
- & " beta="//tostring( beta )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n+1, wt, n+1 )
+ call JacobiGaussRadauQuadrature( a=a, n=n, &
+ & alpha=alpha, beta=beta, pt=pt, wt=wt )
+ msg="Jacobi Gauss Radau points, n+1 = " &
+ & // tostring( n+1 ) // " alpha="//tostring( alpha ) // &
+ & " beta="//tostring( beta )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientCoeff_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientCoeff_test_1.md
index 52ac1353..f03e664a 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientCoeff_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientCoeff_test_1.md
@@ -27,44 +27,44 @@ $$
:::
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
- CALL aplot%setTicks()
- x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
+CALL aplot%setTicks()
+x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
```
```fortran title "Prepare quadratures"
- n = 20
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
+n = 20
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
```
```fortran title "JacobiTransformation"
- fval = func1(pt)
- !!
- fhat = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = JacobiGradientCoeff(n=n, alpha=alpha, beta=beta, coeff=fhat)
- !!
+fval = func1(pt)
+!!
+fhat = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=fval, x=pt, w=wt, quadType=quadType)
+!!
+f1hat = JacobiGradientCoeff(n=n, alpha=alpha, beta=beta, coeff=fhat)
+!!
```
```fortran title "JacobiTransformation"
- !! nodal values of derivative of function
- f1val = dfunc1(pt)
- !!
- f1hat2 = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- call display( MdEncode(f1hat .colconcat. f1hat2), "")
- !!
+!! nodal values of derivative of function
+f1val = dfunc1(pt)
+!!
+f1hat2 = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=f1val, x=pt, w=wt, quadType=quadType)
+!!
+call display( MdEncode(f1hat .colconcat. f1hat2), "")
+!!
```
@@ -74,7 +74,7 @@ $$
for n = 10
| $\tilde{f}^{(1)}_{n}$ | $\tilde{\partial f}_{n}$ |
-|-----------------------|--------------------------|
+| --------------------- | ------------------------ |
| 8.33028E-13 | 8.29555E-13 |
| -3.68615E-14 | 7.40033E-15 |
| 1.1937 | 1.1937 |
@@ -101,47 +101,47 @@ for n = 10
```fortran title "Plotting"
- CALL aplot%plot2D( x=x,y=JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
- & x=x, coeff=f1hat), lineColor="k")
- !!
- CALL aplot%plot2D( x=x,y=JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
- & x=x, coeff=f1hat2), lineColor="b")
- !!
- CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
- CALL aplot%setLabels("x","du(x)","")
- !CALL aplot%show()
- !CALL aplot%deallocate()
+CALL aplot%plot2D( x=x,y=JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
+ & x=x, coeff=f1hat), lineColor="k")
+!!
+CALL aplot%plot2D( x=x,y=JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
+ & x=x, coeff=f1hat2), lineColor="b")
+!!
+CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
+CALL aplot%setLabels("x","du(x)","")
+!CALL aplot%show()
+!CALL aplot%deallocate()
```
```fortran title "Prepare quadratures"
- error = zeros(30, 2, 1.0_DFP)
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- DO n = 1, SIZE(error,1)
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- fhat = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = JacobiGradientCoeff(n=n, alpha=alpha, beta=beta, coeff=fhat)
- !!
- !! nodal values of derivative of function
- !!
- f1val = dfunc1(pt)
- !!
- f1hat2 = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1hat-f1hat2) )
- !!
- END DO
+ call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
+ !!
+ fhat = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=fval, x=pt, w=wt, quadType=quadType)
+ !!
+ f1hat = JacobiGradientCoeff(n=n, alpha=alpha, beta=beta, coeff=fhat)
!!
- CALL display( MdEncode(error), "error=")
+ !! nodal values of derivative of function
+ !!
+ f1val = dfunc1(pt)
+ !!
+ f1hat2 = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=f1val, x=pt, w=wt, quadType=quadType)
+ !!
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1hat-f1hat2) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
@@ -149,7 +149,7 @@ for n = 10
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 1 | 0 |
| 2 | 12.566 |
| 3 | 10.418 |
@@ -165,18 +165,18 @@ for n = 10
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_1.md
index 733ac6b7..683a39df 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_1.md
@@ -17,19 +17,19 @@ program main
```
```fortran
- !!
- n=5
- x = 0.25
- exact = LegendreGradientEvalAll(n=n, x=x)
- ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
- !!
- n=10
- x = 0.25
- exact = LegendreGradientEvalAll(n=n, x=x)
- ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
- !!
+!!
+n=5
+x = 0.25
+exact = LegendreGradientEvalAll(n=n, x=x)
+ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+!!
+n=10
+x = 0.25
+exact = LegendreGradientEvalAll(n=n, x=x)
+ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+!!
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_2.md
index 74281e95..b29c4916 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalAll_test_2.md
@@ -14,19 +14,19 @@ program main
```
```fortran
- !!
- n=5
- x = [-0.1, 0.0, 0.1]
- exact = LegendreGradientEvalAll(n=n, x=x)
- ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
- !!
- n=10
- x = [-0.1, 0.0, 0.1]
- exact = LegendreGradientEvalAll(n=n, x=x)
- ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
- !!
+!!
+n=5
+x = [-0.1, 0.0, 0.1]
+exact = LegendreGradientEvalAll(n=n, x=x)
+ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+!!
+n=10
+x = [-0.1, 0.0, 0.1]
+exact = LegendreGradientEvalAll(n=n, x=x)
+ans = JacobiGradientEvalAll(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+!!
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_1.md
index 6480f02a..0131635e 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `JacobiGradientEvalSum` method.
+This example shows the usage of `JacobiGradientEvalSum` method.
This routine evaluates the gradient of finite sum of Jacobi polynomial of order upto n at several points.
$$
@@ -22,33 +22,33 @@ program main
```
```fortran
- n = 3
- coeff = [1.0, 0.0, 0.0, 0.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=0_I4B, x=x)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [1.0, 0.0, 0.0, 0.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=0_I4B, x=x)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
- n = 3
- coeff = [0.0, 1.0, 0.0, 0.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=1_I4B, x=x)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [0.0, 1.0, 0.0, 0.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=1_I4B, x=x)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
- n = 3
- coeff = [0.0, 0.0, 0.0, 1.0]
- x = [0.5_DFP, -0.5_DFP];
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=3_I4B, x=x)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+coeff = [0.0, 0.0, 0.0, 1.0]
+x = [0.5_DFP, -0.5_DFP];
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=3_I4B, x=x)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_2.md
index c8091ff3..f2560971 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_2.md
@@ -23,33 +23,33 @@ program main
```
```fortran
- n = 3
- coeff = [1.0, 0.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=0_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [1.0, 0.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=0_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 1.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=1_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 1.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=1_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 0.0, 0.0, 1.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff)
- exact = LegendreGradientEval(n=3_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 0.0, 0.0, 1.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff)
+exact = LegendreGradientEval(n=3_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_3.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_3.md
index a44a3943..d1ebf1c3 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_3.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEvalSum_test_3.md
@@ -23,33 +23,33 @@ program main
```
```fortran
- n = 3
- coeff = [1.0, 0.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff, k=1)
- exact = LegendreGradientEval(n=0_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [1.0, 0.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff, k=1)
+exact = LegendreGradientEval(n=0_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 1.0, 0.0, 0.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff, k=1)
- exact = LegendreGradientEval(n=1_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 1.0, 0.0, 0.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff, k=1)
+exact = LegendreGradientEval(n=1_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
- n = 3
- coeff = [0.0, 0.0, 0.0, 1.0]
- x = 0.5_DFP;
- ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
- & beta=beta, coeff=coeff, k=1)
- exact = LegendreGradientEval(n=3_I4B, x=x)
- call ok( SOFTEQ(ans, exact, tol ))
+n = 3
+coeff = [0.0, 0.0, 0.0, 1.0]
+x = 0.5_DFP;
+ans = JacobiGradientEvalSum(n=n, x=x, alpha=alpha, &
+ & beta=beta, coeff=coeff, k=1)
+exact = LegendreGradientEval(n=3_I4B, x=x)
+call ok( SOFTEQ(ans, exact, tol ))
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_1.md
index dd961a34..521a786c 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_1.md
@@ -14,19 +14,19 @@ program main
```
```fortran
- !!
- n=5
- x = 0.25
- exact = LegendreGradientEval(n=n, x=x)
- ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
- call OK( SOFTEQ( exact, ans, tol), "")
- !!
- n=10
- x = 0.25
- exact = LegendreGradientEval(n=n, x=x)
- ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
- call OK( SOFTEQ( exact, ans, tol), "")
- !!
+!!
+n=5
+x = 0.25
+exact = LegendreGradientEval(n=n, x=x)
+ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
+call OK( SOFTEQ( exact, ans, tol), "")
+!!
+n=10
+x = 0.25
+exact = LegendreGradientEval(n=n, x=x)
+ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
+call OK( SOFTEQ( exact, ans, tol), "")
+!!
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_2.md
index 249aa061..fb5993b9 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiGradientEval_test_2.md
@@ -14,17 +14,17 @@ program main
```
```fortran
- n=5
- x = [-0.1, 0.0, 0.1]
- exact = LegendreGradientEval(n=n, x=x)
- ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
- !!
- n=10
- x = 0.25
- exact = LegendreGradientEval(n=n, x=x)
- ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
- call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+n=5
+x = [-0.1, 0.0, 0.1]
+exact = LegendreGradientEval(n=n, x=x)
+ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
+!!
+n=10
+x = 0.25
+exact = LegendreGradientEval(n=n, x=x)
+ans = JacobiGradientEval(n=n, alpha=alpha, beta=beta, x=x)
+call OK( ALL(SOFTEQ( exact, ans, tol)), "")
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_1.md
index 2f65c64f..7752bc87 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_1.md
@@ -19,31 +19,31 @@ program main
```
```fortran
- CALL afile%initiate(filename=fname // ".csv", &
- & status="NEW", action="WRITE")
- CALL afile%open()
+CALL afile%initiate(filename=fname // ".csv", &
+ & status="NEW", action="WRITE")
+CALL afile%open()
```
```fortran
- do n = 1, maxN
- !!n = 10
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
- & x=pt, w=wt, quadType=quadType)
- x = 0.1
- exact = SIN(4.0_DFP * pi * x)
- ans = JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
- & x=x, coeff=uhat)
- CALL afile%write( val=n, advance="NO")
- CALL afile%write( val=ABS(exact-ans), advance="YES")
- end do
+do n = 1, maxN
+!!n = 10
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
+ & x=pt, w=wt, quadType=quadType)
+x = 0.1
+exact = SIN(4.0_DFP * pi * x)
+ans = JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
+ & x=x, coeff=uhat)
+CALL afile%write( val=n, advance="NO")
+CALL afile%write( val=ABS(exact-ans), advance="YES")
+end do
```
```fortran
- CALL afile%deallocate()
+CALL afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_2.md
index cdeb107c..59b664f8 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiInvTransform_test_2.md
@@ -19,48 +19,48 @@ program main
```
```fortran title "Open file"
- CALL afile%initiate(filename=fname // ".csv", &
- & status="NEW", action="WRITE")
- CALL afile%open()
+CALL afile%initiate(filename=fname // ".csv", &
+ & status="NEW", action="WRITE")
+CALL afile%open()
```
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
```
```fortran title "Test"
- x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
- ii = 0
- do n = 5,25,5
- ii = ii + 1
- CALL aplot%subplot(5,1,ii)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -2.0_DFP, 2.0_DFP])
- CALL aplot%setTicks()
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
- & x=pt, w=wt, quadType=quadType)
- exact = SIN(4.0_DFP * pi * x)
- ans = JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
- & x=x, coeff=uhat)
- CALL afile%write( val=n, advance="NO")
- CALL afile%write( val=MAXVAL(ABS(exact-ans)), advance="YES")
- CALL aplot%plot2D( x=x,y=ans)
- CALL aplot%plot2D( x=x,y=exact, pointType=PS_DOT, lineWidth=0.0_DFP )
- CALL aplot%setLabels("x","u(x)","n="//tostring(n))
- end do
- CALL aplot%Show()
+x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
+ii = 0
+do n = 5,25,5
+ ii = ii + 1
+ CALL aplot%subplot(5,1,ii)
+ CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -2.0_DFP, 2.0_DFP])
+ CALL aplot%setTicks()
+ call reallocate( pt, n+1, wt, n+1 )
+ call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+ u = SIN(4.0_DFP * pi * pt)
+ uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
+ & x=pt, w=wt, quadType=quadType)
+ exact = SIN(4.0_DFP * pi * x)
+ ans = JacobiInvTransform(n=n, alpha=alpha, beta=beta, &
+ & x=x, coeff=uhat)
+ CALL afile%write( val=n, advance="NO")
+ CALL afile%write( val=MAXVAL(ABS(exact-ans)), advance="YES")
+ CALL aplot%plot2D( x=x,y=ans)
+ CALL aplot%plot2D( x=x,y=exact, pointType=PS_DOT, lineWidth=0.0_DFP )
+ CALL aplot%setLabels("x","u(x)","n="//tostring(n))
+end do
+CALL aplot%Show()
```
```fortran
- CALL afile%deallocate()
- CALL aplot%deallocate()
+CALL afile%deallocate()
+CALL aplot%deallocate()
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiLobattoMatrix_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiLobattoMatrix_test_1.md
index 02130ca7..a4678d02 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiLobattoMatrix_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiLobattoMatrix_test_1.md
@@ -52,7 +52,7 @@ betaCoeff:
0.25714
0.25397
0.25253
- 0.00000
+ 0.00000
```
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiMatrix_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiMatrix_test_1.md
index f5e57c40..77188c7a 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiMatrix_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiMatrix_test_1.md
@@ -48,7 +48,7 @@ betaCoeff:
0.33333
0.26667
0.25714
- 0.25397
+ 0.25397
```
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiRadauMatrix_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiRadauMatrix_test_1.md
index 9bf69cc8..6457e577 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiRadauMatrix_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiJacobiRadauMatrix_test_1.md
@@ -49,7 +49,7 @@ betaCoeff:
0.26667
0.25714
0.25397
- 0.00000
+ 0.00000
```
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiQuadrature_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiQuadrature_test_1.md
index 32d47bf7..608c710f 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiQuadrature_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiQuadrature_test_1.md
@@ -14,7 +14,7 @@ program main
```
```fortran title "Jacobi-Gauss"
- n = 2; quadType=Gauss; call callme
+n = 2; quadType=Gauss; call callme
```
@@ -22,7 +22,7 @@ program main
| pt | wt |
-|----------|----|
+| -------- | -- |
| -0.57735 | 1 |
| 0.57735 | 1 |
@@ -30,7 +30,7 @@ program main
```fortran title "Jacobi-Radau-Left"
- n = 3; quadType=GaussRadauLeft; call callme
+n = 3; quadType=GaussRadauLeft; call callme
```
```txt title="results"
@@ -42,7 +42,7 @@ program main
```
```fortran title "Jacobi-Radau-Right"
- n = 3; quadType=GaussRadauRight; call callme
+n = 3; quadType=GaussRadauRight; call callme
```
@@ -50,7 +50,7 @@ program main
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.6899 | 0.75281 |
| 0.2899 | 1.025 |
| 1 | 0.22222 |
@@ -59,7 +59,7 @@ program main
```fortran title "Jacobi-Lobatto"
- n = 4; quadType=GaussLobatto; call callme
+n = 4; quadType=GaussLobatto; call callme
```
@@ -67,7 +67,7 @@ program main
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.16667 |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
@@ -77,16 +77,16 @@ program main
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call JacobiQuadrature( n=n, alpha=alpha, beta=beta, pt=pt, wt=wt, &
- & quadType=quadType )
- msg = "| pt | wt |"
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call JacobiQuadrature( n=n, alpha=alpha, beta=beta, pt=pt, wt=wt, &
+ & quadType=quadType )
+ msg = "| pt | wt |"
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_1.md
index 85b6a344..f39ce6a4 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_1.md
@@ -18,123 +18,123 @@ program main
```
```fortran
- n = 10
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = JacobiEval(n=5_I4B, alpha=alpha, beta=beta, &
- & x=pt)
- uhat = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=u, &
- & x=pt, w=wt, quadType=quadType)
- uhat( 6 ) = uhat( 6 ) - 1.0_dFP
- CALL ok( SOFTEQ( NORM2(uhat), 0.0_DFP, tol), "test" )
+n = 10
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = JacobiEval(n=5_I4B, alpha=alpha, beta=beta, &
+ & x=pt)
+uhat = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=u, &
+ & x=pt, w=wt, quadType=quadType)
+uhat( 6 ) = uhat( 6 ) - 1.0_dFP
+CALL ok( SOFTEQ( NORM2(uhat), 0.0_DFP, tol), "test" )
```
```fortran
- n = 10
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=u, x=pt, w=wt, quadType=quadType)
+n = 10
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=u, x=pt, w=wt, quadType=quadType)
```
```fortran
- CALL afile%initiate(filename=fname // ".csv", &
- & status="NEW", action="WRITE")
- CALL afile%open()
- CALL afile%write(val="n="//tostring(n))
- CALL afile%write(val=uhat)
- CALL afile%write()
+CALL afile%initiate(filename=fname // ".csv", &
+ & status="NEW", action="WRITE")
+CALL afile%open()
+CALL afile%write(val="n="//tostring(n))
+CALL afile%write(val=uhat)
+CALL afile%write()
```
```fortran
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- pt = arange(0,n,1)
- CALL aplot%setXYLim([-10.0_DFP, 50.0_DFP], [ -3.0_DFP, 3.0_DFP])
- CALL aplot%setTicks()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+pt = arange(0,n,1)
+CALL aplot%setXYLim([-10.0_DFP, 50.0_DFP], [ -3.0_DFP, 3.0_DFP])
+CALL aplot%setTicks()
```
```fortran
- CALL aplot%plot2D(x=pt,y=uhat, &
- & pointType=PS_DOT, &
- & pointSize=4.0_DFP, &
- & pointColor="b", &
- & lineWidth=0.0_DFP)
- !CALL aplot%setLabels("","","")
- !CALL aplot%Show()
+CALL aplot%plot2D(x=pt,y=uhat, &
+ & pointType=PS_DOT, &
+ & pointSize=4.0_DFP, &
+ & pointColor="b", &
+ & lineWidth=0.0_DFP)
+!CALL aplot%setLabels("","","")
+!CALL aplot%Show()
```
```fortran
- n = 20
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta,&
- & coeff=u, x=pt, w=wt, quadType=quadType)
- CALL afile%write(val="n="//tostring(n))
- CALL afile%write(val=uhat)
- CALL afile%write()
+n = 20
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, beta=beta,&
+ & coeff=u, x=pt, w=wt, quadType=quadType)
+CALL afile%write(val="n="//tostring(n))
+CALL afile%write(val=uhat)
+CALL afile%write()
```
```fortran
- pt = arange(0,n,1)
- CALL aplot%plot2D(x=pt,y=uhat, &
- & pointType=PS_DOT, &
- & pointSize=4.0_DFP, &
- & pointColor="r", &
- & lineWidth=0.0_DFP)
- !CALL aplot%setLabels("N","uhat","")
- !CALL aplot%Show()
+pt = arange(0,n,1)
+CALL aplot%plot2D(x=pt,y=uhat, &
+ & pointType=PS_DOT, &
+ & pointSize=4.0_DFP, &
+ & pointColor="r", &
+ & lineWidth=0.0_DFP)
+!CALL aplot%setLabels("N","uhat","")
+!CALL aplot%Show()
```
```fortran
- n = 30
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
- & coeff=u, x=pt, w=wt, quadType=quadType)
- CALL afile%write(val="n="//tostring(n))
- CALL afile%write(val=uhat)
- CALL afile%write()
+n = 30
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
+ & coeff=u, x=pt, w=wt, quadType=quadType)
+CALL afile%write(val="n="//tostring(n))
+CALL afile%write(val=uhat)
+CALL afile%write()
```
```fortran
- pt = arange(0,n,1)
- CALL aplot%plot2D(x=pt,y=uhat, &
- & pointType=PS_DOT, &
- & pointSize=10.0_DFP, &
- & pointColor="k", &
- & lineWidth=0.0_DFP)
- CALL aplot%setLabels("N","uhat","")
- CALL aplot%Show()
+pt = arange(0,n,1)
+CALL aplot%plot2D(x=pt,y=uhat, &
+ & pointType=PS_DOT, &
+ & pointSize=10.0_DFP, &
+ & pointColor="k", &
+ & lineWidth=0.0_DFP)
+CALL aplot%setLabels("N","uhat","")
+CALL aplot%Show()
```
```fortran
- n = 40
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
- & coeff=u, x=pt, w=wt, quadType=quadType)
- CALL afile%write(val="n="//tostring(n))
- CALL afile%write(val=uhat)
- CALL afile%write()
+n = 40
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
+ & coeff=u, x=pt, w=wt, quadType=quadType)
+CALL afile%write(val="n="//tostring(n))
+CALL afile%write(val=uhat)
+CALL afile%write()
```
```fortran
- CALL afile%deallocate()
+CALL afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_2.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_2.md
index babda818..b7d6f95a 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_2.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_2.md
@@ -14,14 +14,14 @@ program main
```
```fortran
- n = 10
- call reallocate( pt, n+1, wt, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
- u = SIN(4.0_DFP * pi * pt) .COLCONCAT. SIN(4.0_DFP * pi * pt)
- uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
- & x=pt, w=wt, quadType=quadType)
- CALL Display(uhat, "uhat=")
+n = 10
+call reallocate( pt, n+1, wt, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
+u = SIN(4.0_DFP * pi * pt) .COLCONCAT. SIN(4.0_DFP * pi * pt)
+uhat = JacobiTransform(n=n, alpha=alpha, beta=beta, coeff=u, &
+ & x=pt, w=wt, quadType=quadType)
+CALL Display(uhat, "uhat=")
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_3.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_3.md
index b929835c..d33be92c 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_3.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiTransform_test_3.md
@@ -20,36 +20,36 @@ To make quadrature points we call `JacobiQuadrature` routine, and specify `QuadT
:::
```fortran
- n = 10
- call reallocate( pt, n+1, wt, n+1, u, n+1 )
- call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
- & pt=pt, wt=wt, quadType=quadType )
+n = 10
+call reallocate( pt, n+1, wt, n+1, u, n+1 )
+call JacobiQuadrature( n=n+1, alpha=alpha, beta=beta, &
+ & pt=pt, wt=wt, quadType=quadType )
```
```fortran title "JacobiTransformation"
- f => func1
- !!
- do ii = 1, size(u)
- u(ii) = f(pt(ii))
- end do
- !!
- uhat = JacobiTransform(n=n, alpha=alpha, &
- & beta=beta, coeff=u, x=pt, w=wt, quadType=quadType)
- !!
- fhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
- & f=f, quadType=quadType)
- !!
- call OK(ALL(SOFTEQ(fhat, uhat, tol)), "n=10")
- !!
+f => func1
+!!
+do ii = 1, size(u)
+ u(ii) = f(pt(ii))
+end do
+!!
+uhat = JacobiTransform(n=n, alpha=alpha, &
+ & beta=beta, coeff=u, x=pt, w=wt, quadType=quadType)
+!!
+fhat = JacobiTransform(n=n, alpha=alpha, beta=beta, &
+ & f=f, quadType=quadType)
+!!
+call OK(ALL(SOFTEQ(fhat, uhat, tol)), "n=10")
+!!
```
```fortran
- contains
- pure function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
+contains
+pure function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
```
```fortran
diff --git a/docs/docs-api/JacobiPolynomialUtility/_JacobiZeros_test_1.md b/docs/docs-api/JacobiPolynomialUtility/_JacobiZeros_test_1.md
index aa2359f0..bb922809 100644
--- a/docs/docs-api/JacobiPolynomialUtility/_JacobiZeros_test_1.md
+++ b/docs/docs-api/JacobiPolynomialUtility/_JacobiZeros_test_1.md
@@ -11,7 +11,7 @@ program main
```
```fortran
- n = 1; call callme
+n = 1; call callme
```
@@ -19,14 +19,14 @@ program main
| x |
-|---|
+| - |
| 0 |
```fortran
- n = 2; call callme
+n = 2; call callme
```
```txt title="results"
@@ -36,7 +36,7 @@ Zeros of J(x), n = 2 alpha=0 beta=0
```
```fortran
- n = 3; call callme
+n = 3; call callme
```
@@ -51,16 +51,16 @@ Zeros of J(x), n = 3 alpha=0 beta=0
```fortran
- contains
- subroutine callme
- pt = JacobiZeros( n=n, alpha=alpha, beta=beta )
- msg = "Zeros of J(x), n = " &
- & // tostring( n ) // " alpha="//tostring( alpha ) // &
- & " beta="//tostring( beta )
- call display(msg%chars())
- astr = MdEncode( pt )
- call display( astr%chars(), "" )
- end subroutine
+contains
+subroutine callme
+ pt = JacobiZeros( n=n, alpha=alpha, beta=beta )
+ msg = "Zeros of J(x), n = " &
+ & // tostring( n ) // " alpha="//tostring( alpha ) // &
+ & " beta="//tostring( beta )
+ call display(msg%chars())
+ astr = MdEncode( pt )
+ call display( astr%chars(), "" )
+end subroutine
```
```fortran
diff --git a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_.md b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_.md
index 2166fe47..61610de9 100644
--- a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_.md
+++ b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_.md
@@ -31,7 +31,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_1]]
+
+- [[JacobiSpace1D_test_1]]
### JacobiSpace1D_Pointer
@@ -54,7 +55,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_1]]
+
+- [[JacobiSpace1D_test_1]]
### Deallocate
@@ -69,7 +71,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_1]]
+
+- [[JacobiSpace1D_test_1]]
### Display
@@ -86,7 +89,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_1]]
+
+- [[JacobiSpace1D_test_1]]
### GetParam
@@ -104,7 +108,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_1]]
+
+- [[JacobiSpace1D_test_1]]
### GetRecurrenceCoeff
@@ -123,7 +128,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_2]]
+
+- [[JacobiSpace1D_test_2]]
### GetRecurrenceCoeff2
@@ -147,7 +153,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_2]]
+
+- [[JacobiSpace1D_test_2]]
### GetAlpha
@@ -164,7 +171,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_2]]
+
+- [[JacobiSpace1D_test_2]]
### GetBeta
@@ -181,7 +189,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_2]]
+
+- [[JacobiSpace1D_test_2]]
### GetLeadingCoeff
@@ -198,7 +207,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_3]]
+
+- [[JacobiSpace1D_test_3]]
### GetLeadingCoeffRatio
@@ -215,7 +225,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_3]]
+
+- [[JacobiSpace1D_test_3]]
### GetNormSqr
@@ -232,7 +243,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_3]]
+
+- [[JacobiSpace1D_test_3]]
### GetNormSqr2
@@ -249,7 +261,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_3]]
+
+- [[JacobiSpace1D_test_3]]
### GetNormSqrRatio
@@ -266,7 +279,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_3]]
+
+- [[JacobiSpace1D_test_3]]
### GetZeros
@@ -283,7 +297,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[JacobiSpace1D_test_4]]
+
+- [[JacobiSpace1D_test_4]]
### GetQuadrature
diff --git a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_1.md b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_1.md
index 9d734596..8bf03d67 100644
--- a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_1.md
+++ b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_1.md
@@ -31,54 +31,52 @@ class(AbstractOrthopolSpace1D_), pointer :: aptr
```
!!! note "Constructor"
- Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
+Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
```fortran
- obj = JacobiSpace1D(alpha=0.0_DFP, beta=0.0_DFP)
+obj = JacobiSpace1D(alpha=0.0_DFP, beta=0.0_DFP)
```
!!! note "Display"
- Display the contents of `obj`
+Display the contents of `obj`
```fortran
- CALL obj%display("obj = ")
+CALL obj%display("obj = ")
```
-!!! example "result"
- domain=
- --------
- -1.00000
- 1.00000
- alpha=0.00000
- beta=0.00000
+## !!! example "result"domain=
+
+-1.00000
+1.00000
+alpha=0.00000
+beta=0.00000
!!! note "JacobiSpace1D_Pointer"
```fortran
- aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
- call aptr%Display("aptr= ")
+aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
+call aptr%Display("aptr= ")
```
-!!! example "result"
- domain=
- --------
- -1.00000
- 1.00000
- alpha=0.00000
- beta=0.00000
+## !!! example "result"domain=
+
+-1.00000
+1.00000
+alpha=0.00000
+beta=0.00000
!!! note "GetParam"
```fortran
- CALL Display(obj%GetParam(), "alpha, beta = ")
+CALL Display(obj%GetParam(), "alpha, beta = ")
```
!!! note "Deallocate"
```fortran
- CALL obj%Deallocate()
- CALL aptr%Deallocate()
- Deallocate(aptr)
+CALL obj%Deallocate()
+CALL aptr%Deallocate()
+Deallocate(aptr)
```
```fortran
diff --git a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_2.md b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_2.md
index 2b0e7970..6438f962 100644
--- a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_2.md
+++ b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_2.md
@@ -12,7 +12,7 @@ tags:
# JacobiSpace1D example 2
-- This example shows how to get the recurrence coefficients.
+- This example shows how to get the recurrence coefficients.
- Following methods are tested.
- [[JacobiSpace1D_#GetRecurrenceCoeff]]
- [[JacobiSpace1D_#GetRecurrenceCoeff2]]
@@ -36,22 +36,22 @@ integer(i4b) :: n
```
!!! note "JacobiSpace1D_Pointer"
- Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
+Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
```fortran
- aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
+aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
```
!!! note "GetRecurrenceCoeff"
```fortran
- n = 10
- coeff = aptr%GetRecurrenceCoeff(n=n)
- call display(MdEncode(coeff), "coeff="//CHAR_LF)
+n = 10
+coeff = aptr%GetRecurrenceCoeff(n=n)
+call display(MdEncode(coeff), "coeff="//CHAR_LF)
```
!!! example "result"
- coeff=
+coeff=
| $\alpha_{n}$ | $\beta_{n}$ |
|--------------|-------------|
@@ -69,13 +69,13 @@ integer(i4b) :: n
!!! note "GetRecurrenceCoeff2"
```fortran
- n = 10
- coeff = aptr%GetRecurrenceCoeff2(n=n)
- call display(MdEncode(coeff), "coeff2="//CHAR_LF)
+n = 10
+coeff = aptr%GetRecurrenceCoeff2(n=n)
+call display(MdEncode(coeff), "coeff2="//CHAR_LF)
```
!!! example "result"
- coeff2=
+coeff2=
| $a_{n}$ | $b_{n}$ | $c_{n}$ |
|---------|---------|---------|
@@ -93,20 +93,20 @@ integer(i4b) :: n
!!! note "GetAlpha"
```fortran
- CALL Display(aptr%GetAlpha(n=2_I4B), "alpha_2=")
+CALL Display(aptr%GetAlpha(n=2_I4B), "alpha_2=")
```
!!! note "GetBeta"
```fortran
- CALL Display(aptr%GetBeta(n=2_I4B), "beta_2=")
+CALL Display(aptr%GetBeta(n=2_I4B), "beta_2=")
```
!!! note "cleanup"
```fortran
- CALL aptr%Deallocate()
- Deallocate(aptr)
+CALL aptr%Deallocate()
+Deallocate(aptr)
```
```fortran
diff --git a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_3.md b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_3.md
index 2d353840..90d6711c 100644
--- a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_3.md
+++ b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_3.md
@@ -37,49 +37,49 @@ integer(i4b) :: n
```
!!! note "JacobiSpace1D_Pointer"
- Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
+Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
```fortran
- aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
+aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
```
!!! note "GetLeadingCoeff"
```fortran
- CALL Display(aptr%GetLeadingCoeff(n=2_I4B), "k_2=")
- CALL Display(aptr%GetLeadingCoeff(n=3_I4B), "k_3=")
+CALL Display(aptr%GetLeadingCoeff(n=2_I4B), "k_2=")
+CALL Display(aptr%GetLeadingCoeff(n=3_I4B), "k_3=")
```
!!! note "GetLeadingCoeffRatio"
```fortran
- CALL Display(aptr%GetLeadingCoeffRatio(n=2_I4B), "k_3/k_2=")
+CALL Display(aptr%GetLeadingCoeffRatio(n=2_I4B), "k_3/k_2=")
```
!!! note "GetNormSqr"
```fortran
- CALL Display(aptr%GetNormSqr(n=2_I4B), "h_2=")
- CALL Display(aptr%GetNormSqr(n=3_I4B), "h_3=")
+CALL Display(aptr%GetNormSqr(n=2_I4B), "h_2=")
+CALL Display(aptr%GetNormSqr(n=3_I4B), "h_3=")
```
!!! note "GetNormSqrRatio"
```fortran
- CALL Display(aptr%GetNormSqrRatio(n=2_I4B), "h_3/h_2=")
+CALL Display(aptr%GetNormSqrRatio(n=2_I4B), "h_3/h_2=")
```
!!! note "GetNormSqr2"
```fortran
- CALL Display(aptr%GetNormSqr2(n=5_I4B), "h=")
+CALL Display(aptr%GetNormSqr2(n=5_I4B), "h=")
```
!!! note "cleanup"
```fortran
- CALL aptr%Deallocate()
- Deallocate(aptr)
+CALL aptr%Deallocate()
+Deallocate(aptr)
```
```fortran
diff --git a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_4.md b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_4.md
index 530a71e0..30cea459 100644
--- a/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_4.md
+++ b/docs/docs-api/JacobiSpace1D/JacobiSpace1D_test_4.md
@@ -29,22 +29,22 @@ integer(i4b) :: n
```
!!! note "JacobiSpace1D_Pointer"
- Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
+Construct an instance of `JacobiSpace1D_` by specifying $\alpha>-1.0$ and $\beta>-1.0$.
```fortran
- aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
+aptr => JacobiSpace1D_Pointer(alpha=0.0_DFP, beta=0.0_DFP)
```
!!! note "GetZeros"
```fortran
- n = 10
- ans = aptr%GetZeros(n=n)
- CALL Display(MdEncode(ans), "zeros="//char_lf)
+n = 10
+ans = aptr%GetZeros(n=n)
+CALL Display(MdEncode(ans), "zeros="//char_lf)
```
!!! example "result"
- zeros=
+zeros=
| | | | | | | | | | |
|----------|----------|----------|---------|----------|---------|--------|---------|---------|---------|
@@ -53,8 +53,8 @@ integer(i4b) :: n
!!! note "cleanup"
```fortran
- CALL aptr%Deallocate()
- Deallocate(aptr)
+CALL aptr%Deallocate()
+Deallocate(aptr)
```
```fortran
diff --git a/docs/docs-api/Lagrange1D/Lagrange1D_.md b/docs/docs-api/Lagrange1D/Lagrange1D_.md
index 64ea06bb..aa774664 100644
--- a/docs/docs-api/Lagrange1D/Lagrange1D_.md
+++ b/docs/docs-api/Lagrange1D/Lagrange1D_.md
@@ -135,7 +135,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Lagrange1D_test_1]]
+
+- [[Lagrange1D_test_1]]
- The following function generates a set of n lagrange polynomials.
@@ -154,7 +155,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Lagrange1D_test_1]]
+
+- [[Lagrange1D_test_1]]
### Lagrange1D_Pointer
diff --git a/docs/docs-api/Lagrange1D/Lagrange1D_test_1.md b/docs/docs-api/Lagrange1D/Lagrange1D_test_1.md
index 8d894637..a406f0bc 100644
--- a/docs/docs-api/Lagrange1D/Lagrange1D_test_1.md
+++ b/docs/docs-api/Lagrange1D/Lagrange1D_test_1.md
@@ -27,7 +27,7 @@ integer(i4b) :: ii, order
```
!!! note "Lagrange1D"
- Initiate lagrange polynomial in one dimension
+Initiate lagrange polynomial in one dimension
$$
l_{1}(x)=1-x \\
@@ -35,12 +35,12 @@ l_{2}(x)=x
$$
```fortran
- x = [0.0,1.0]
- order=1
- f1=Lagrange1D( i=1, x=x, order=order, varname="x" )
- call f1%display( 'f(x)=' )
- f1=Lagrange1D( i=2, x=x, order=order, varname="x" )
- call f1%display( 'f(x)=' )
+x = [0.0,1.0]
+order=1
+f1=Lagrange1D( i=1, x=x, order=order, varname="x" )
+call f1%display( 'f(x)=' )
+f1=Lagrange1D( i=2, x=x, order=order, varname="x" )
+call f1%display( 'f(x)=' )
```
!!! example "result"
@@ -55,19 +55,19 @@ $$
!!! note "Lagrange1D"
```fortran
- order = 4_I4B
- x = linspace(0.0_DFP, 1.0_DFP, order+1)
- allocate( f(order+1) )
- do ii = 1, order+1
- f(ii) = Lagrange1D(ii, x=x, order=order, varname="x")
- call f(ii)%display("l_{"//tostring(ii)//"}=")
- end do
+order = 4_I4B
+x = linspace(0.0_DFP, 1.0_DFP, order+1)
+allocate( f(order+1) )
+do ii = 1, order+1
+ f(ii) = Lagrange1D(ii, x=x, order=order, varname="x")
+ call f(ii)%display("l_{"//tostring(ii)//"}=")
+end do
```
!!! example "result"
$$
-l_{1}=+1x^0-8.3333x^1+23.333x^2-26.667x^3+10.667x^4 \\
+l_{1}=+1x^0-8.3333x^1+23.333x^2-26.667x^3+10.667x^4 \\
l_{2}=+16x^1-69.333x^2+96x^3-42.667x^4 \\
l_{3}=-12x^1+76x^2-128x^3+64x^4 \\
l_{4}=+5.3333x^1-37.333x^2+74.667x^3-42.667x^4 \\
diff --git a/docs/docs-api/Lagrange2D/Lagrange2D_.md b/docs/docs-api/Lagrange2D/Lagrange2D_.md
index 07b2fca1..560825f9 100644
--- a/docs/docs-api/Lagrange2D/Lagrange2D_.md
+++ b/docs/docs-api/Lagrange2D/Lagrange2D_.md
@@ -3,7 +3,7 @@ author: Vikas Sharma, Ph.D.
date: 14 Aug 2022
---
-# Lagrange2D
+# Lagrange2D
## Introduction
diff --git a/docs/docs-api/Lagrange2D/Lagrange2D_test_1.md b/docs/docs-api/Lagrange2D/Lagrange2D_test_1.md
index 0dd53a2c..de2852e4 100644
--- a/docs/docs-api/Lagrange2D/Lagrange2D_test_1.md
+++ b/docs/docs-api/Lagrange2D/Lagrange2D_test_1.md
@@ -29,14 +29,14 @@ integer(i4b) :: ii, order, n
!!! note "order=1"
```fortran
- order=1
- x = EquidistancePoint(order=order, elemType=Triangle)
- f1=Lagrange2D( order=order, i=1, x=x, name1="x", name2="y", elemType=Triangle )
- call f1%display( 'f(x)=' )
- f1=Lagrange2D( order=order, i=2, x=x, name1="x", name2="y", elemType=Triangle )
- call f1%display( 'f(x)=' )
- f1=Lagrange2D( order=order, i=3, x=x, name1="x", name2="y", elemType=Triangle )
- call f1%display( 'f(x)=' )
+order=1
+x = EquidistancePoint(order=order, elemType=Triangle)
+f1=Lagrange2D( order=order, i=1, x=x, name1="x", name2="y", elemType=Triangle )
+call f1%display( 'f(x)=' )
+f1=Lagrange2D( order=order, i=2, x=x, name1="x", name2="y", elemType=Triangle )
+call f1%display( 'f(x)=' )
+f1=Lagrange2D( order=order, i=3, x=x, name1="x", name2="y", elemType=Triangle )
+call f1%display( 'f(x)=' )
```
!!! example "result"
@@ -50,16 +50,16 @@ $$
!!! note "order=2"
```fortran
- order = 2_I4B
- x = EquidistancePoint(order=order, elemType=Triangle)
- n = LagrangeDOF( order=order, elemType=Triangle )
- allocate( f(n) )
- do ii = 1, n
- f(ii) = Lagrange2D(i=ii, x=x, order=order, &
- & name1="x", name2="y", elemType=Triangle)
- call f(ii)%display("l_{"//tostring(ii)//"}=")
- end do
- deallocate(f)
+order = 2_I4B
+x = EquidistancePoint(order=order, elemType=Triangle)
+n = LagrangeDOF( order=order, elemType=Triangle )
+allocate( f(n) )
+do ii = 1, n
+ f(ii) = Lagrange2D(i=ii, x=x, order=order, &
+ & name1="x", name2="y", elemType=Triangle)
+ call f(ii)%display("l_{"//tostring(ii)//"}=")
+end do
+deallocate(f)
```
!!! example "result"
@@ -76,16 +76,16 @@ $$
!!! note "order=3"
```fortran
- order = 3_I4B
- x = EquidistancePoint(order=order, elemType=Triangle)
- n = LagrangeDOF( order=order, elemType=Triangle )
- allocate( f(n) )
- do ii = 1, n
- f(ii) = Lagrange2D(i=ii, x=x, order=order, &
- & name1="x", name2="y", elemType=Triangle)
- call f(ii)%display("l_{"//tostring(ii)//"}=")
- end do
- deallocate(f)
+order = 3_I4B
+x = EquidistancePoint(order=order, elemType=Triangle)
+n = LagrangeDOF( order=order, elemType=Triangle )
+allocate( f(n) )
+do ii = 1, n
+ f(ii) = Lagrange2D(i=ii, x=x, order=order, &
+ & name1="x", name2="y", elemType=Triangle)
+ call f(ii)%display("l_{"//tostring(ii)//"}=")
+end do
+deallocate(f)
```
!!! example "result"
diff --git a/docs/docs-api/Lagrange2D/Lagrange2D_test_2.md b/docs/docs-api/Lagrange2D/Lagrange2D_test_2.md
index 4014988d..35303293 100644
--- a/docs/docs-api/Lagrange2D/Lagrange2D_test_2.md
+++ b/docs/docs-api/Lagrange2D/Lagrange2D_test_2.md
@@ -20,16 +20,16 @@ integer(i4b) :: ii, order, n
!!! note "order=1"
```fortran
- order=1
- x = EquidistancePoint(order=order, elemType=Quadrangle)
- f1=Lagrange2D( order=order, i=1, x=x, name1="x", name2="y", elemType=Quadrangle )
- call f1%display( 'f(x)=' )
- f1=Lagrange2D( order=order, i=2, x=x, name1="x", name2="y", elemType=Quadrangle )
- call f1%display( 'f(x)=' )
- f1=Lagrange2D( order=order, i=3, x=x, name1="x", name2="y", elemType=Quadrangle )
- call f1%display( 'f(x)=' )
- f1=Lagrange2D( order=order, i=4, x=x, name1="x", name2="y", elemType=Quadrangle )
- call f1%display( 'f(x)=' )
+order=1
+x = EquidistancePoint(order=order, elemType=Quadrangle)
+f1=Lagrange2D( order=order, i=1, x=x, name1="x", name2="y", elemType=Quadrangle )
+call f1%display( 'f(x)=' )
+f1=Lagrange2D( order=order, i=2, x=x, name1="x", name2="y", elemType=Quadrangle )
+call f1%display( 'f(x)=' )
+f1=Lagrange2D( order=order, i=3, x=x, name1="x", name2="y", elemType=Quadrangle )
+call f1%display( 'f(x)=' )
+f1=Lagrange2D( order=order, i=4, x=x, name1="x", name2="y", elemType=Quadrangle )
+call f1%display( 'f(x)=' )
```
!!! example "result"
@@ -38,13 +38,12 @@ $$
f(x)=+0.25-0.25 y^1-0.25x^1+0.25x^1 y^1
$$
-
$$
-f(x)=+0.25-0.25 y^1+0.25x^1-0.25x^1 y^1
-$$
+f(x)=+0.25-0.25 y^1+0.25x^1-0.25x^1 y^1
+$$
$$
-f(x)=+0.25+0.25 y^1+0.25x^1+0.25x^1 y^1
+f(x)=+0.25+0.25 y^1+0.25x^1+0.25x^1 y^1
$$
$$
@@ -54,16 +53,16 @@ $$
!!! note "order=2"
```fortran
- order = 2_I4B
- x = EquidistancePoint(order=order, elemType=Quadrangle)
- n = LagrangeDOF( order=order, elemType=Quadrangle )
- allocate( f(n) )
- do ii = 1, n
- f(ii) = Lagrange2D(i=ii, x=x, order=order, &
- & name1="x", name2="y", elemType=Quadrangle)
- call f(ii)%display("l_{"//tostring(ii)//"}=")
- end do
- deallocate( f )
+order = 2_I4B
+x = EquidistancePoint(order=order, elemType=Quadrangle)
+n = LagrangeDOF( order=order, elemType=Quadrangle )
+allocate( f(n) )
+do ii = 1, n
+ f(ii) = Lagrange2D(i=ii, x=x, order=order, &
+ & name1="x", name2="y", elemType=Quadrangle)
+ call f(ii)%display("l_{"//tostring(ii)//"}=")
+end do
+deallocate( f )
```
!!! example "result"
diff --git a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_1.md b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_1.md
index f2d1cf38..3c2a4396 100644
--- a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_1.md
+++ b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_1.md
@@ -24,9 +24,9 @@ integer(i4b), parameter :: ipType=IP_EQUIDISTANCE
!!! note "Order=1"
```fortran
- order=1
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=1
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
@@ -65,11 +65,11 @@ $$
!!! note "Order=2"
```fortran
- order=2
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
-````
+order=2
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
+```
!!! example "result"
@@ -91,10 +91,10 @@ $$
!!! note "Order=3"
```fortran
- order=3
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=3
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
@@ -114,7 +114,7 @@ N(3)=+0.5625x^0-1.6875x^1-0.5625x^2+1.6875x^3
$$
$$
- N(4)=+0.5625x^0+1.6875x^1-0.5625x^2-1.6875x^3
+N(4)=+0.5625x^0+1.6875x^1-0.5625x^2-1.6875x^3
$$
```fortran
diff --git a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_2.md b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_2.md
index b49f08fb..656d5264 100644
--- a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_2.md
+++ b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_2.md
@@ -31,15 +31,15 @@ integer(i4b), parameter :: ipType=IP_EQUIDISTANCE
!!! note "Order=1"
```fortran
- order=1
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=1
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
- order=1
- Total Basis=3
-
+order=1
+Total Basis=3
+
$$
N(1)=+1-1 y^1-1x^1
$$
@@ -55,16 +55,16 @@ $$
!!! note "Order=2"
```fortran
- order=2
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=2
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
- order=2
- Total Basis=6
-
+order=2
+Total Basis=6
+
$$
N(1)=+1-3 y^1+2 y^2+4x^1 y^1-3x^1+2x^2
$$
@@ -91,16 +91,16 @@ $$
!!! note "Order=3"
```fortran
- order=3
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=3
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
- order=3
- Total Basis=10
-
+order=3
+Total Basis=10
+
$$
N(1)=+1+9 y^2-5.5 y^1-4.5 y^3-13.5x^1 y^2+18x^1 y^1-5.5x^1+9x^2-13.5x^2 y^1-4.5x^3
$$
diff --git a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_3.md b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_3.md
index ec19ef8a..fc42c9a7 100644
--- a/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_3.md
+++ b/docs/docs-api/LagrangeFE/examples/LagrangeFE_test_3.md
@@ -31,14 +31,14 @@ integer(i4b), parameter :: ipType=IP_EQUIDISTANCE
!!! note "Order=1"
```fortran
- order=1
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=1
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
- order=1
- Total Basis=4
+order=1
+Total Basis=4
$$
N(1)=+0.25-0.25 y^1-0.25x^1+0.25x^1 y^1
$$
@@ -55,16 +55,16 @@ $$
!!! note "Order=2"
```fortran
- order=2
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=2
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
!!! example "result"
- order=2
- Total Basis=9
-
+order=2
+Total Basis=9
+
$$
N(1)=+0.25x^1 y^1-0.25x^1 y^2-0.25x^2 y^1+0.25x^2 y^2
$$
@@ -96,10 +96,10 @@ $$
!!! note "Order=3"
```fortran
- order=3
- call blanklines(nol=3)
- call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
- call obj%Display( elemName // "order=" //tostring(order) )
+order=3
+call blanklines(nol=3)
+call obj%Initiate(elemType=elemType, order=order, ipType=ipType)
+call obj%Display( elemName // "order=" //tostring(order) )
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_1.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_1.md
index 9ff08838..6ce7a2ef 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_1.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_1.md
@@ -12,47 +12,47 @@ real(dfp), parameter :: tol=1.0E-10
ipType=Equidistance, layout=VEFC
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- ipType = Equidistance
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=2
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=3
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+ipType = Equidistance
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=2
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=3
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
```
@@ -61,33 +61,33 @@ ipType=Equidistance, layout=VEFC
ipType=Equidistance, layout=VEFC
- | |
- | --- |
- | 5.5 |
+| |
+| --- |
+| 5.5 |
ipType=Equidistance, layout=VEFC
- | | |
- | --- | --- |
- | 1 | 10 |
+| | |
+| - | -- |
+| 1 | 10 |
ipType=Equidistance, layout=VEFC
- | | | |
- | --- | --- | --- |
- | 1 | 10 | 5.5 |
+| | | |
+| - | -- | --- |
+| 1 | 10 | 5.5 |
ipType=Equidistance, layout=VEFC
- | | | | |
- | --- | --- | --- | --- |
- | 1 | 10 | 4 | 7 |
+| | | | |
+| - | -- | - | - |
+| 1 | 10 | 4 | 7 |
ipType=Equidistance, layout=VEFC
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | 1 | 10 | 2.8 | 4.6 | 6.4 | 8.2 |
+| | | | | | |
+| - | -- | --- | --- | --- | --- |
+| 1 | 10 | 2.8 | 4.6 | 6.4 | 8.2 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_10.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_10.md
index 9c52be60..5408eeaa 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_10.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_10.md
@@ -17,26 +17,26 @@ type(csvfile_) :: afile
Setup
```fortran
- xij = zeros(2,3, 0.0_DFP)
- xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
- xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
+xij = zeros(2,3, 0.0_DFP)
+xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
+xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
```
```fortran title "ipType=IsaacLegendre, layout=VEFC"
- order=4
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(TRANSPOSE(ip)), &
- & "ipType=IsaacLegendre, layout=VEFC" // char_lf)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=4
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(TRANSPOSE(ip)), &
+ & "ipType=IsaacLegendre, layout=VEFC" // char_lf)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
@@ -46,7 +46,7 @@ Setup
ipType=IsaacLegendre, layout=VEFC
| | |
-|--------------|--------------|
+| ------------ | ------------ |
| -8.32667E-17 | -8.32667E-17 |
| 1 | -8.32667E-17 |
| -8.32667E-17 | 1 |
@@ -67,36 +67,36 @@ ipType=IsaacLegendre, layout=VEFC
```fortran title "ipType=IsaacLegendre, layout=VEFC"
- !!
- order=6
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- !!
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+!!
+order=6
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+!!
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran title "ipType=IsaacLegendre, layout=VEFC"
- !!
- order=9
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+!!
+order=9
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_11.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_11.md
index 7fea89aa..e0068825 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_11.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_11.md
@@ -17,26 +17,26 @@ type(csvfile_) :: afile
setup
```fortran
- xij = zeros(2,3, 0.0_DFP)
- xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
- xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
+xij = zeros(2,3, 0.0_DFP)
+xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
+xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
```
```fortran title "ipType=IsaacChebyshev, layout=VEFC"
- order=4
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(TRANSPOSE(ip)), &
- & "ipType=IsaacChebyshev, layout=VEFC" // char_lf)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=4
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(TRANSPOSE(ip)), &
+ & "ipType=IsaacChebyshev, layout=VEFC" // char_lf)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
@@ -46,7 +46,7 @@ setup
ipType=IsaacChebyshev, layout=VEFC
| | |
-|---------|---------|
+| ------- | ------- |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -67,33 +67,33 @@ ipType=IsaacChebyshev, layout=VEFC
```fortran title "ipType=IsaacChebyshev, layout=VEFC"
- order=6
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=6
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran title "ipType=IsaacChebyshev, layout=VEFC"
- order=9
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=9
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_IsaacChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_2.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_2.md
index 22ee89c6..db7d281a 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_2.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_2.md
@@ -47,27 +47,27 @@ ipType=Equidistance, layout=INCREASING
ipType=Equidistance, layout=INCREASING
- | |
- | --- |
- | 5.5 |
+| |
+| --- |
+| 5.5 |
ipType=Equidistance, layout=INCREASING
- | | |
- | --- | --- |
- | 1 | 10 |
+| | |
+| - | -- |
+| 1 | 10 |
ipType=Equidistance, layout=INCREASING
- | | | |
- | --- | --- | --- |
- | 1 | 5.5 | 10 |
+| | | |
+| - | --- | -- |
+| 1 | 5.5 | 10 |
ipType=Equidistance, layout=INCREASING
- | | | | |
- | --- | --- | --- | --- |
- | 1 | 4 | 7 | 10 |
+| | | | |
+| - | - | - | -- |
+| 1 | 4 | 7 | 10 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_3.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_3.md
index 7cad6557..031ca129 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_3.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_3.md
@@ -12,31 +12,31 @@ real(dfp), parameter :: tol=1.0E-10
ipType=GaussLegendreLobatto, layout=VEFC
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- ipType = GaussLegendreLobatto
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf // char_lf)
- !!
- !!
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf //char_lf)
- !!
- !!
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf // char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+ipType = GaussLegendreLobatto
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf // char_lf)
+!!
+!!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf //char_lf)
+!!
+!!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf // char_lf)
```
@@ -45,21 +45,21 @@ ipType=GaussLegendreLobatto, layout=VEFC
ipType=GaussLegendreLobatto, layout=VEFC
- | |
- | --- |
- | 5.5 |
+| |
+| --- |
+| 5.5 |
ipType=GaussLegendreLobatto, layout=VEFC
- | | |
- | --- | --- |
- | 1 | 10 |
+| | |
+| - | -- |
+| 1 | 10 |
ipType=GaussLegendreLobatto, layout=VEFC
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | 1 | 10 | 2.0573 | 4.2165 | 6.7835 | 8.9427 |
+| | | | | | |
+| - | -- | ------ | ------ | ------ | ------ |
+| 1 | 10 | 2.0573 | 4.2165 | 6.7835 | 8.9427 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_4.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_4.md
index f7385c97..2b49053e 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_4.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_4.md
@@ -12,27 +12,27 @@ real(dfp), parameter :: tol=1.0E-10
ipType=GaussLegendreLobatto layout=INCREASING
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- order=0
- ipType = GaussLegendreLobatto
- layout="INCREASING"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
- !
- order=1
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
- !
- order=5
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+order=0
+ipType = GaussLegendreLobatto
+layout="INCREASING"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
+!
+order=1
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
+!
+order=5
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf //char_lf)
```
@@ -41,21 +41,21 @@ ipType=GaussLegendreLobatto layout=INCREASING
ipType=GaussLegendreLobatto layout=INCREASING
- | |
- | --- |
- | 5.5 |
+| |
+| --- |
+| 5.5 |
ipType=GaussLegendreLobatto layout=INCREASING
- | | |
- | --- | --- |
- | 1 | 10 |
+| | |
+| - | -- |
+| 1 | 10 |
ipType=GaussLegendreLobatto layout=INCREASING
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | 1 | 2.0573 | 4.2165 | 6.7835 | 8.9427 | 10 |
+| | | | | | |
+| - | ------ | ------ | ------ | ------ | -- |
+| 1 | 2.0573 | 4.2165 | 6.7835 | 8.9427 | 10 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_5.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_5.md
index b470a639..831768da 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_5.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_5.md
@@ -12,31 +12,31 @@ real(dfp), parameter :: tol=1.0E-10
ipType=GaussChebyshevLobatto, layout=VEFC
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- ipType = GaussChebyshevLobatto
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
- !
- !
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
- !
- !
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+ipType = GaussChebyshevLobatto
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+!
+!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+!
+!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
```
@@ -45,21 +45,21 @@ ipType=GaussChebyshevLobatto, layout=VEFC
ipType=GaussChebyshevLobatto, layout=VEFC
- | |
- | --- |
- | 0 |
+| |
+| - |
+| 0 |
ipType=GaussChebyshevLobatto, layout=VEFC
- | | |
- | --- | --- |
- | -1 | 1 |
+| | |
+| -- | - |
+| -1 | 1 |
ipType=GaussChebyshevLobatto, layout=VEFC
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | -1 | 1 | -0.80902 | -0.30902 | 0.30902 | 0.80902 |
+| | | | | | |
+| -- | - | -------- | -------- | ------- | ------- |
+| -1 | 1 | -0.80902 | -0.30902 | 0.30902 | 0.80902 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_6.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_6.md
index d9fc0a73..5fd00014 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_6.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_6.md
@@ -12,29 +12,29 @@ real(dfp), parameter :: tol=1.0E-10
ipType=GaussChebyshevLobatto, layout=INCREASING
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- ipType = GaussChebyshevLobatto
- order=0
- layout="INCREASING"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
- !!
- !!
- order=1
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
- !!
- !!
- order=5
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+ipType = GaussChebyshevLobatto
+order=0
+layout="INCREASING"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+!!
+!!
+order=1
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
+!!
+!!
+order=5
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf // char_lf)
```
@@ -46,19 +46,19 @@ result
ipType=GaussChebyshevLobatto, layout=VEFC
| |
-|-----|
+| --- |
| 5.5 |
ipType=GaussChebyshevLobatto, layout=VEFC
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ipType=GaussChebyshevLobatto, layout=VEFC
| | | | | | |
-|---|--------|--------|--------|--------|----|
+| - | ------ | ------ | ------ | ------ | -- |
| 1 | 1.8594 | 4.1094 | 6.8906 | 9.1406 | 10 |
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_7.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_7.md
index b5fb4846..73efe943 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_7.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_7.md
@@ -12,47 +12,47 @@ real(dfp), parameter :: tol=1.0E-10
ipType=Equidistance, layout=VEFC
```fortran
- xij = zeros(1,2, 0.0_DFP)
- xij(1,:) = [1.0, 10.0]
- ipType = Equidistance
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=2
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=3
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- !!
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
+xij = zeros(1,2, 0.0_DFP)
+xij(1,:) = [1.0, 10.0]
+ipType = Equidistance
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=2
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=3
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+!!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
```
result
@@ -60,31 +60,31 @@ result
ip=
| |
-|-----|
+| --- |
| 5.5 |
ip=
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ip=
| | | |
-|---|----|-----|
+| - | -- | --- |
| 1 | 10 | 5.5 |
ip=
| | | | |
-|---|----|---|---|
+| - | -- | - | - |
| 1 | 10 | 4 | 7 |
ip=
| | | | | | |
-|---|----|-----|-----|-----|-----|
+| - | -- | --- | --- | --- | --- |
| 1 | 10 | 2.8 | 4.6 | 6.4 | 8.2 |
ipType=Equidistance, layout=INCREASING
@@ -121,53 +121,53 @@ result
ip=
| |
-|-----|
+| --- |
| 5.5 |
ip=
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ip=
| | | |
-|---|-----|----|
+| - | --- | -- |
| 1 | 5.5 | 10 |
ip=
| | | | |
-|---|---|---|----|
+| - | - | - | -- |
| 1 | 4 | 7 | 10 |
ipType=GaussLegendreLobatto, layout=VEFC
```fortran
- ipType = GaussLegendreLobatto
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
- !!
- !!
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
- !!
- !!
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
+ipType = GaussLegendreLobatto
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
+!!
+!!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
+!!
+!!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto, layout=VEFC" // char_lf)
```
result
@@ -175,42 +175,42 @@ result
ip=
| |
-|-----|
+| --- |
| 5.5 |
ip=
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ip=
| | | | | | |
-|---|----|--------|--------|--------|--------|
+| - | -- | ------ | ------ | ------ | ------ |
| 1 | 10 | 2.0573 | 4.2165 | 6.7835 | 8.9427 |
ipType=GaussLegendreLobatto layout=INCREASING
```fortran
- order=0
- layout="INCREASING"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
- !
- order=1
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
- !
- order=5
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
+order=0
+layout="INCREASING"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
+!
+order=1
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
+!
+order=5
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussLegendreLobatto layout=INCREASING" // char_lf)
```
result
@@ -218,47 +218,47 @@ result
ip=
| |
-|-----|
+| --- |
| 5.5 |
ip=
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ip=
| | | | | | |
-|---|--------|--------|--------|--------|----|
+| - | ------ | ------ | ------ | ------ | -- |
| 1 | 2.0573 | 4.2165 | 6.7835 | 8.9427 | 10 |
ipType=GaussChebyshevLobatto, layout=VEFC
```fortran
- ipType = GaussChebyshevLobatto
- order=0
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
- !
- !
- order=1
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
- !
- !
- order=5
- layout="VEFC"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+ipType = GaussChebyshevLobatto
+order=0
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+!
+!
+order=1
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+!
+!
+order=5
+layout="VEFC"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
```
result
@@ -284,26 +284,26 @@ result
!!! note "ipType=GaussChebyshevLobatto, layout=INCREASING"
```fortran
- order=0
- layout="INCREASING"
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
- !!
- !!
- order=1
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
- !!
- !!
- order=5
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(ip), &
- & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+order=0
+layout="INCREASING"
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+!!
+!!
+order=1
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
+!!
+!!
+order=5
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(ip), &
+ & "ipType=GaussChebyshevLobatto, layout=VEFC" // char_lf)
```
result
@@ -311,19 +311,19 @@ result
ipType=GaussChebyshevLobatto, layout=VEFC
| |
-|-----|
+| --- |
| 5.5 |
ipType=GaussChebyshevLobatto, layout=VEFC
| | |
-|---|----|
+| - | -- |
| 1 | 10 |
ipType=GaussChebyshevLobatto, layout=VEFC
| | | | | | |
-|---|--------|--------|--------|--------|----|
+| - | ------ | ------ | ------ | ------ | -- |
| 1 | 1.8594 | 4.1094 | 6.8906 | 9.1406 | 10 |
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_8.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_8.md
index 3e2ae332..3c8562f0 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_8.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_8.md
@@ -18,21 +18,21 @@ type(csvfile_) :: afile
Setup
```fortran
- xij = zeros(2,3, 0.0_DFP)
- xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
- xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
+xij = zeros(2,3, 0.0_DFP)
+xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
+xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
```
ipType=Equidistance
```todo
- ipType = Equidistance
- !!
- order=5
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(TRANSPOSE(ip)), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
+ipType = Equidistance
+!!
+order=5
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(TRANSPOSE(ip)), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
```
@@ -42,7 +42,7 @@ ipType=Equidistance
ipType=Equidistance, layout=VEFC
| | |
-|-----|-----|
+| --- | --- |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -71,22 +71,22 @@ ipType=Equidistance, layout=VEFC
ipType=BlythPozLegendre, layout=VEFC
```fortran
- ipType = BlythPozLegendre
- !!
- order=4
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(TRANSPOSE(ip)), &
- & "ipType=Equidistance, layout=VEFC" // char_lf)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+ipType = BlythPozLegendre
+!!
+order=4
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(TRANSPOSE(ip)), &
+ & "ipType=Equidistance, layout=VEFC" // char_lf)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
@@ -94,7 +94,7 @@ ipType=BlythPozLegendre, layout=VEFC
| | |
-|--------------|--------------|
+| ------------ | ------------ |
| -3.70074E-17 | -3.70074E-17 |
| 1 | -3.70074E-17 |
| -3.70074E-17 | 1 |
@@ -117,39 +117,39 @@ ipType=BlythPozLegendre, layout=VEFC
ipType=BlythPozLegendre, layout=VEFC
```fortran
- ipType = BlythPozLegendre
- !!
- order=6
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+ipType = BlythPozLegendre
+!!
+order=6
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
ipType=BlythPozLegendre, layout=VEFC
```fortran
- ipType = BlythPozLegendre
- !!
- order=9
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+ipType = BlythPozLegendre
+!!
+order=9
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozLegendre_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_9.md b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_9.md
index a31cc227..e54e8305 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_9.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_InterpolationPoint_test_9.md
@@ -17,26 +17,26 @@ type(csvfile_) :: afile
Setup
```fortran
- xij = zeros(2,3, 0.0_DFP)
- xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
- xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
+xij = zeros(2,3, 0.0_DFP)
+xij(1,:) = [0.0_DFP, 1.0_DFP, 0.0_DFP]
+xij(2,:) = [0.0_DFP, 0.0_DFP, 1.0_DFP]
```
```fortran title "ipType=BlythPozChebyshev, layout=VEFC"
- order=4
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- call display(MdEncode(TRANSPOSE(ip)), &
- & "ipType=BlythPozChebyshev, layout=VEFC" // char_lf)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=4
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+call display(MdEncode(TRANSPOSE(ip)), &
+ & "ipType=BlythPozChebyshev, layout=VEFC" // char_lf)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
@@ -46,7 +46,7 @@ Setup
ipType=BlythPozChebyshev, layout=VEFC
| | |
-|--------------|--------------|
+| ------------ | ------------ |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -67,33 +67,33 @@ ipType=BlythPozChebyshev, layout=VEFC
```fortran title "ipType=BlythPozChebyshev, layout=VEFC"
- order=6
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=6
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran title "ipType=BlythPozChebyshev, layout=VEFC"
- order=9
- ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
- & xij=xij, layout=layout)
- !!
- call afile%initiate( &
- & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
- & status="NEW", &
- & action="WRITE")
- call afile%open()
- call afile%write("x, y")
- call afile%write(ip, orient="TRANSPOSE")
- call afile%deallocate()
+order=9
+ip = InterpolationPoint(order=order, ipType=ipType, elemType=elemType, &
+ & xij=xij, layout=layout)
+!!
+call afile%initiate( &
+ & filename=fname//"_BlythPozChebyshev_m="//tostring(order)//".csv", &
+ & status="NEW", &
+ & action="WRITE")
+call afile%open()
+call afile%write("x, y")
+call afile%write(ip, orient="TRANSPOSE")
+call afile%deallocate()
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_1.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_1.md
index 39a05381..c11eb25d 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_1.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_1.md
@@ -10,16 +10,16 @@ real(dfp), parameter :: tol=1.0E-10
Line LagrangeCoeff
```fortran
- i = 1; elemType=Line; order=1
- xij = zeros(1, 2, 1.0)
- xij(1, : ) = [0,1]
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [1.0, -1.0]
- call ok( all(softeq(coeff, ans, tol)), "")
- i = 2
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans=[0.0, 1.0]
- call ok( all(softeq(coeff, ans, tol)), "")
+i = 1; elemType=Line; order=1
+xij = zeros(1, 2, 1.0)
+xij(1, : ) = [0,1]
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [1.0, -1.0]
+call ok( all(softeq(coeff, ans, tol)), "")
+i = 2
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans=[0.0, 1.0]
+call ok( all(softeq(coeff, ans, tol)), "")
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_2.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_2.md
index 5f6e8db5..71bd3afe 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_2.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_2.md
@@ -14,22 +14,22 @@ real(dfp), parameter :: tol=1.0E-10
Triangle LagrangeCoeff
```fortran
- i = 1; elemType=Triangle; order=1
- xij = EquidistancePoint(order, elemType)
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [1.0, -1.0, -1.0]
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
- i = 2
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [0.0, 1.0, 0.0]
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
- i = 3
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [0.0, 0.0, 1.0]
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
+i = 1; elemType=Triangle; order=1
+xij = EquidistancePoint(order, elemType)
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [1.0, -1.0, -1.0]
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
+i = 2
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [0.0, 1.0, 0.0]
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
+i = 3
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [0.0, 0.0, 1.0]
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_3.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_3.md
index 601f6974..791b25cb 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_3.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeCoeff_test_3.md
@@ -14,22 +14,22 @@ real(dfp), parameter :: tol=1.0E-10
Quadrangle LagrangeCoeff
```fortran
- i = 1; elemType=Quadrangle; order=1
- xij = EquidistancePoint(order, elemType)
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [1.0, -1.0, -1.0, 1.0]*0.25
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
- i = 2
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [1.0, 1.0, -1.0, -1.0]*0.25
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
- i = 3
- coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
- ans = [1.0, 1.0, 1.0, 1.0]*0.25
- !call display(coeff, "coeff=")
- call ok( all(softeq(coeff, ans, tol)), "")
+i = 1; elemType=Quadrangle; order=1
+xij = EquidistancePoint(order, elemType)
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [1.0, -1.0, -1.0, 1.0]*0.25
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
+i = 2
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [1.0, 1.0, -1.0, -1.0]*0.25
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
+i = 3
+coeff = LagrangeCoeff(order=order, elemType=elemType, i=i, xij=xij)
+ans = [1.0, 1.0, 1.0, 1.0]*0.25
+!call display(coeff, "coeff=")
+call ok( all(softeq(coeff, ans, tol)), "")
```
```fortran
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_1.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_1.md
index bbdd599d..a98cdf8e 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_1.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_1.md
@@ -44,7 +44,7 @@ ans (order=3)=
0
1
2
- 3
+ 3
```
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_2.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_2.md
index e4c36968..25cbf5fe 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_2.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_2.md
@@ -64,7 +64,7 @@ ans (order=3)=
0 3
1 3
2 3
- 3 3
+ 3 3
```
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_3.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_3.md
index 86cf772f..b0863755 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_3.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_3.md
@@ -54,7 +54,7 @@ ans (order=3)=
2 1
0 2
1 2
- 0 3
+ 0 3
```
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_4.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_4.md
index 4bac831d..d68178df 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_4.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeDegree_test_4.md
@@ -69,7 +69,7 @@ ans (order=3)=
0 0 2
1 0 2
0 1 2
- 0 0 3
+ 0 0 3
```
diff --git a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeInDOF_test_1.md b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeInDOF_test_1.md
index d8c7b437..80636d49 100644
--- a/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeInDOF_test_1.md
+++ b/docs/docs-api/LagrangePolynomialUtility/examples/_LagrangeInDOF_test_1.md
@@ -33,5 +33,5 @@ program main
i2 = 1
call IS( i1, i2 )
-end program main
+end program main
```
diff --git a/docs/docs-api/Lapack95/Lapack95_test_1.md b/docs/docs-api/Lapack95/Lapack95_test_1.md
index ddf1cda4..30306008 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_1.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_1.md
@@ -79,7 +79,7 @@ ipiv =
info = 0
```
-Using `ipiv` in `SYCONV` to get `LDL` factorization
+Using `ipiv` in `SYCONV` to get `LDL` factorization
```fortran title="conversion to ldl"
n = SIZE(mat, 1)
diff --git a/docs/docs-api/Lapack95/Lapack95_test_10.md b/docs/docs-api/Lapack95/Lapack95_test_10.md
index cd49b4f1..66966802 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_10.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_10.md
@@ -17,7 +17,7 @@ tags:
- SymLUSolve
---
-This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
+This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
- We get LU decomposition of A in LU.
- In this example there is only one rhs
diff --git a/docs/docs-api/Lapack95/Lapack95_test_11.md b/docs/docs-api/Lapack95/Lapack95_test_11.md
index 78bd44a4..b878f9e4 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_11.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_11.md
@@ -17,7 +17,7 @@ tags:
- SymLUSolve
---
-This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
+This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
- We get LU decomposition of A in A itself.
- In this example there is only one rhs
diff --git a/docs/docs-api/Lapack95/Lapack95_test_12.md b/docs/docs-api/Lapack95/Lapack95_test_12.md
index 94e6d555..b59604ea 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_12.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_12.md
@@ -17,7 +17,7 @@ tags:
- SymLUSolve
---
-This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
+This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
- We get LU decomposition of A in LU.
- In this example there are many rhs
diff --git a/docs/docs-api/Lapack95/Lapack95_test_13.md b/docs/docs-api/Lapack95/Lapack95_test_13.md
index 069fd331..d7000423 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_13.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_13.md
@@ -17,7 +17,7 @@ tags:
- SymGetInv
---
-This example shows the use of `SymGetLU` and `SymGetInv` method defined in Lapack95.
+This example shows the use of `SymGetLU` and `SymGetInv` method defined in Lapack95.
- We get LU decomposition of A in LU.
- We get inverse in invA
diff --git a/docs/docs-api/Lapack95/Lapack95_test_15.md b/docs/docs-api/Lapack95/Lapack95_test_15.md
index 73b3db41..06551b36 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_15.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_15.md
@@ -30,14 +30,14 @@ program main
```
```fortran
- n = 10
- allocate(LU(n,n), A(n,n), D(n), E(n), ipiv(n))
+n = 10
+allocate(LU(n,n), A(n,n), D(n), E(n), ipiv(n))
```
```comment
- CALL random_number(A)
- A = A * 10
- A = SYM(A)
+CALL random_number(A)
+A = A * 10
+A = SYM(A)
```
```fortran
diff --git a/docs/docs-api/Lapack95/Lapack95_test_16.md b/docs/docs-api/Lapack95/Lapack95_test_16.md
index 4795f465..a1949308 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_16.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_16.md
@@ -30,14 +30,14 @@ program main
```
```fortran
- n = 10
- allocate(A(n,n), D(n), E(n), ipiv(n))
+n = 10
+allocate(A(n,n), D(n), E(n), ipiv(n))
```
```fortran
- CALL random_number(A)
- A = A * 10
- A = SYM(A)
+CALL random_number(A)
+A = A * 10
+A = SYM(A)
```
```fortran
diff --git a/docs/docs-api/Lapack95/Lapack95_test_3.md b/docs/docs-api/Lapack95/Lapack95_test_3.md
index 3d4ecd7e..3de6c624 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_3.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_3.md
@@ -77,7 +77,7 @@ exact L is given by:
1.50000 1.00000 1.00000
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L, permuted =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_4.md b/docs/docs-api/Lapack95/Lapack95_test_4.md
index 067c952b..740bb4c0 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_4.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_4.md
@@ -77,7 +77,7 @@ exact L is given by:
1.50000 1.00000 1.00000
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L, permuted =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_5.md b/docs/docs-api/Lapack95/Lapack95_test_5.md
index 19d58359..a6c37e8b 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_5.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_5.md
@@ -77,7 +77,7 @@ exact L is given by:
1.50000 1.00000 1.00000
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L, permuted =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_6.md b/docs/docs-api/Lapack95/Lapack95_test_6.md
index bf6152ea..7e02660c 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_6.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_6.md
@@ -77,7 +77,7 @@ exact L is given by:
1.50000 1.00000 1.00000
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L, permuted =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_7.md b/docs/docs-api/Lapack95/Lapack95_test_7.md
index bc234302..eea30f05 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_7.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_7.md
@@ -70,7 +70,7 @@ Exact L is given by:
22.4500 20.9200 6.1100
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_8.md b/docs/docs-api/Lapack95/Lapack95_test_8.md
index d4922150..cf19c81e 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_8.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_8.md
@@ -70,7 +70,7 @@ Exact L is given by:
22.4500 20.9200 6.1100
```
-Computed L $\tilde{L}$ is given below.
+Computed L $\tilde{L}$ is given below.
```txt
L =
diff --git a/docs/docs-api/Lapack95/Lapack95_test_9.md b/docs/docs-api/Lapack95/Lapack95_test_9.md
index 3d12a584..04a261d6 100644
--- a/docs/docs-api/Lapack95/Lapack95_test_9.md
+++ b/docs/docs-api/Lapack95/Lapack95_test_9.md
@@ -17,7 +17,7 @@ tags:
- SymLUSolve
---
-This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
+This example shows the use of `SymGetLU` and `SymLUSolve` method defined in Lapack95.
- We get LU decomposition of A in LU.
- In this example there is only one rhs
diff --git a/docs/docs-api/LegendrePolynomialUtility/LegendreJacobiLobattoMatrix.md b/docs/docs-api/LegendrePolynomialUtility/LegendreJacobiLobattoMatrix.md
index 7a32a7fa..d2cad993 100644
--- a/docs/docs-api/LegendrePolynomialUtility/LegendreJacobiLobattoMatrix.md
+++ b/docs/docs-api/LegendrePolynomialUtility/LegendreJacobiLobattoMatrix.md
@@ -21,7 +21,6 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(OUT) :: betaCoeff(0:)
END SUBROUTINE LegendreJacobiLobattoMatrix
END INTERFACE
-
```
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreApplication_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreApplication_1.md
index ee2680a5..1c5471f7 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreApplication_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreApplication_1.md
@@ -16,158 +16,158 @@ program main
```
:::note "Step-1"
- Create Gauss LobattoPoints
+Create Gauss LobattoPoints
```fortran
- call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
- & quadType=GaussLobatto )
+call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
+ & quadType=GaussLobatto )
```
:::note "Step-2"
- Calculate p_in matrix
+Calculate p_in matrix
```fortran
- p_in = LegendreEvalAll( n=n, x=pt )
+p_in = LegendreEvalAll( n=n, x=pt )
```
:::note "Step-2"
- Calculate p_in matrix
+Calculate p_in matrix
```fortran
- p_in = LegendreEvalAll( n=n, x=pt )
+p_in = LegendreEvalAll( n=n, x=pt )
```
:::note "Step-3"
- Calculate First derivative of P in dp_in
+Calculate First derivative of P in dp_in
```fortran
- dp_in = LegendreGradientEvalAll( n=n, x=pt )
+dp_in = LegendreGradientEvalAll( n=n, x=pt )
```
:::note "Step-4"
- Calculate `CMat` C matrix
+Calculate `CMat` C matrix
```fortran
- CMat = 0.0_DFP
- DO ii = 1, n+1
- CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
- END DO
- !!
+CMat = 0.0_DFP
+DO ii = 1, n+1
+ CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
+END DO
+!!
```
:::note "Step-5"
- Add contribution of `PlPl` into `CMat`
+Add contribution of `PlPl` into `CMat`
```fortran
- CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
+CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
```
:::note "Step-6"
- Initial condition
+Initial condition
```fortran
- u0 = initialCondition()
+u0 = initialCondition()
```
:::note "Step-7"
- Add Initial condition to RHS
+Add Initial condition to RHS
```fortran
- rhs = p_in(1,:) * u0
+rhs = p_in(1,:) * u0
```
!!! warning "Step-8"
- Make nodal value of force vector from tn to tn+1
+Make nodal value of force vector from tn to tn+1
```fortran
- t1 = t0
- t2 = tf
- timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
- fval = forceFunction( timeGP )
- exact_uval = exactSolution( timeGP )
+t1 = t0
+t2 = tf
+timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
+fval = forceFunction( timeGP )
+exact_uval = exactSolution( timeGP )
```
:::note "Step-8"
- Legendre transformation of force.
+Legendre transformation of force.
```fortran
- fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=GaussLobatto)
- gamma = LegendreNormSQR2( n=n )
- CALL display( fhat, "fhat = " )
+fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=GaussLobatto)
+gamma = LegendreNormSQR2( n=n )
+CALL display( fhat, "fhat = " )
```
:::note "Step-9"
- Add contribution to RHS
+Add contribution to RHS
:::
```fortran
- RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
+RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
```
:::note "Step-10"
- Solve "Ax=b"
+Solve "Ax=b"
:::
```fortran
- uhat = 0.0_DFP
- CALL Solve( X=uhat, A=CMat, B=RHS )
+uhat = 0.0_DFP
+CALL Solve( X=uhat, A=CMat, B=RHS )
```
:::note "Step-11"
- Calculate uval from uhat using inverse transformation
+Calculate uval from uhat using inverse transformation
:::
```fortran
- uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
- CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
+uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
+CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
```
:::note "Plot settings"
:::
```fortran
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-n="//tostring(n)// "-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([t0, tf], [ MINVAL(uval), 1.2*MAXVAL(uval)])
- CALL aplot%setTicks()
- CALL aplot%plot2D( x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
- & lineWidth=0.0_DFP )
- CALL aplot%plot2D( &
- & x=linspace(t0, tf, 200), &
- & y=exactSolution(linspace(t0, tf, 200)), &
- & lineColor="b", &
- & lineWidth=2.0_DFP )
- CALL aplot%setLabels("x","u","n="//tostring(n))
- CALL aplot%show()
- CALL aplot%deallocate()
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-n="//tostring(n)// "-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([t0, tf], [ MINVAL(uval), 1.2*MAXVAL(uval)])
+CALL aplot%setTicks()
+CALL aplot%plot2D( x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
+ & lineWidth=0.0_DFP )
+CALL aplot%plot2D( &
+ & x=linspace(t0, tf, 200), &
+ & y=exactSolution(linspace(t0, tf, 200)), &
+ & lineColor="b", &
+ & lineWidth=2.0_DFP )
+CALL aplot%setLabels("x","u","n="//tostring(n))
+CALL aplot%show()
+CALL aplot%deallocate()
```
End of code here!
```fortran
- contains
- !!
- elemental function forceFunction(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = sin(x)
- end function forceFunction
- !!
- elemental function initialCondition() result(ans)
- real( dfp ) :: ans
- ans = -1.0_DFP
- end function initialCondition
- !!
- elemental function exactSolution(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = -cos(x)
- end function exactSolution
- !!
+contains
+!!
+elemental function forceFunction(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = sin(x)
+end function forceFunction
+!!
+elemental function initialCondition() result(ans)
+ real( dfp ) :: ans
+ ans = -1.0_DFP
+end function initialCondition
+!!
+elemental function exactSolution(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = -cos(x)
+end function exactSolution
+!!
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatEvenOdd_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatEvenOdd_test_1.md
index 21979cb8..a5c25ac6 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatEvenOdd_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatEvenOdd_test_1.md
@@ -32,8 +32,8 @@ program main
```
!!! note "function"
- In this example we consider
-
+In this example we consider
+
$$
f(x) = sin(4\pi x)
$$
@@ -41,29 +41,29 @@ $$
!!! note "Structure of D"
```fortran
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL reallocate(e, int(n/2)+1, int(n/2)+1)
- CALL reallocate(o, int(n/2)+1, int(n/2)+1)
- CALL LegendreDMatEvenOdd(n=n,D=D, e=e, o=o)
- !!
- CALL display(MdEncode(D), "D=")
- CALL display(MdEncode(e), "e=")
- CALL display(MdEncode(o), "o=")
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL reallocate(e, int(n/2)+1, int(n/2)+1)
+CALL reallocate(o, int(n/2)+1, int(n/2)+1)
+CALL LegendreDMatEvenOdd(n=n,D=D, e=e, o=o)
+!!
+CALL display(MdEncode(D), "D=")
+CALL display(MdEncode(e), "e=")
+CALL display(MdEncode(o), "o=")
```
!!! example "result"
- D =
+D =
| | | | | | |
|---------|----------|---------|---------|----------|----------|
@@ -95,18 +95,18 @@ $$
!!! note "Define function"
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatrix_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatrix_test_1.md
index 89f2b9e3..6369803b 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatrix_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreDMatrix_test_1.md
@@ -24,25 +24,25 @@ Structure of D for odd N
:::
```fortran
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | |
-|---------|--------------|-------------|--------------|-------------|----------|
+| ------- | ------------ | ----------- | ------------ | ----------- | -------- |
| -7.5 | 10.141 | -4.0362 | 2.2447 | -1.3499 | 0.5 |
| -1.7864 | -1.34059E-14 | 2.5234 | -1.1528 | 0.65355 | -0.23778 |
| 0.48495 | -1.7213 | 5.55112E-15 | 1.753 | -0.78636 | 0.2697 |
@@ -55,25 +55,25 @@ Structure of D for even D
:::
```fortran
- !!
- n = 6
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D="//CHAR_LF)
+!!
+n = 6
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D="//CHAR_LF)
```
D =
| | | | | | | |
-|----------|--------------|-------------|-------------|--------------|-------------|----------|
+| -------- | ------------ | ----------- | ----------- | ------------ | ----------- | -------- |
| -10.5 | 14.202 | -5.669 | 3.2 | -2.05 | 1.3174 | -0.5 |
| -2.4429 | -3.08087E-15 | 3.4558 | -1.5986 | 0.96134 | -0.60225 | 0.22661 |
| 0.62526 | -2.2158 | 2.27596E-15 | 2.2667 | -1.0664 | 0.61639 | -0.2261 |
@@ -83,34 +83,34 @@ D =
| 0.5 | -1.3174 | 2.05 | -3.2 | 5.669 | -14.202 | 10.5 |
```fortran
+!!
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ !!
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- error = zeros(30, 2, 1.0_DFP)
+ call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
!!
- DO n = 1, SIZE(error,1)
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
- !!
- f1val = dfunc1(pt)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
- !!
- END DO
+ D = LegendreDMatrix(n=n, x=pt, quadType=quadType)
+ !!
+ f1val = dfunc1(pt)
!!
- CALL display( MdEncode(error), "error=")
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
error=
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 1 | 17.772 |
| 2 | 21.766 |
| 5 | 30.677 |
@@ -121,18 +121,18 @@ error=
| 30 | 1.93772E-07 |
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_1.md
index ea1fabee..43326e19 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_1.md
@@ -18,7 +18,7 @@ end program main
```
| P0 | P1 | P2 | P3 |
-|----|----|------|----|
+| -- | -- | ---- | -- |
| 1 | -1 | 1 | -1 |
| 1 | 0 | -0.5 | -0 |
| 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_2.md
index 2f83f36c..6f6c3cce 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_2.md
@@ -18,5 +18,5 @@ end program main
```
| P0 | P1 | P2 | P3 |
-|----|----|----|----|
+| -- | -- | -- | -- |
| 1 | -1 | 1 | -1 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_4.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_4.md
index a788309b..d2470ccc 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_4.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreEvalAll_test_4.md
@@ -40,106 +40,106 @@ program main
!!! note "Create nodes and order"
```fortran
- orders = createOrder()
- tTimeElements = SIZE(orders)
- !!
- timeNodes = createTimeNodes()
- tTimeNodes = SIZE(timeNodes)
- !!
- IF( tTimeNodes .NE. tTimeElements + 1 ) THEN
- CALL display( "Error code 1")
- STOP
- END IF
+orders = createOrder()
+tTimeElements = SIZE(orders)
+!!
+timeNodes = createTimeNodes()
+tTimeNodes = SIZE(timeNodes)
+!!
+IF( tTimeNodes .NE. tTimeElements + 1 ) THEN
+ CALL display( "Error code 1")
+ STOP
+END IF
```
!!! note "Plot Settings"
```fortran
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-n="//tostring(n)// "-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim( &
- & [timeNodes(1), timeNodes(tTimeNodes)], &
- & [ minY, maxY])
- CALL aplot%setTicks()
- CALL aplot%plot2D( &
- & x=linspace(timeNodes(1), timeNodes(tTimeNodes), 200), &
- & y=exactSolution(linspace(timeNodes(1), timeNodes(tTimeNodes), 200)), &
- & lineColor="b", &
- & lineWidth=2.0_DFP )
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-n="//tostring(n)// "-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim( &
+ & [timeNodes(1), timeNodes(tTimeNodes)], &
+ & [ minY, maxY])
+CALL aplot%setTicks()
+CALL aplot%plot2D( &
+ & x=linspace(timeNodes(1), timeNodes(tTimeNodes), 200), &
+ & y=exactSolution(linspace(timeNodes(1), timeNodes(tTimeNodes), 200)), &
+ & lineColor="b", &
+ & lineWidth=2.0_DFP )
```
!!! note "InitialCondition"
```fortran
- u0 = initialCondition()
+u0 = initialCondition()
```
!!! note "Start time step loop"
```fortran
- DO iTime = 1, tTimeElements
- CALL BlankLines( nol=5 )
- CALL EqualLine()
- CALL Display( "iTime="//tostring(iTime) )
- CALL EqualLine()
- t1 = timeNodes(iTime)
- t2 = timeNodes(iTime+1)
- n = orders( iTime )
- !!
- call Reallocate( pt, n+1, wt, n+1 )
- call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
- & quadType=GaussLobatto )
- !!
- p_in = LegendreEvalAll( n=n, x=pt )
- dp_in = LegendreGradientEvalAll( n=n, x=pt )
- !!
- call Reallocate( Cmat, n+1, n+1 )
- CMat = 0.0_DFP
- do ii = 1, n+1
- CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
- end do
- !!
- CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
- !!
- RHS = p_in(1,:) * u0
- !!
- timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
- fval = forceFunction( timeGP )
- fhat = LegendreTransform(n=n, coeff=fval, x=pt, &
- & w=wt, quadType=GaussLobatto)
- gamma = LegendreNormSQR2( n=n )
- !!
- CALL display( fhat, "fhat = " ) !! warning
- exact_uval = exactSolution( timeGP ) !! warning
- !!
- RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
- !!
- CALL Reallocate( uhat, n+1 )
- uhat = 0.0_DFP
- CALL Solve( X=uhat, A=CMat, B=RHS )
- !!
- uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
- CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
- !! warning
- !!
- !! At this point calculation is finished for time element
- !! But we need to update initialCondition
- !!
- u0 = uval( n+1 )
- !!
- !! Plotting
- !!
- CALL aplot%plot2D( &
- & x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
- & lineWidth=0.0_DFP )
- END DO
- CALL aplot%setLabels("x","u","tTimeElements="//tostring(tTimeElements))
- CALL aplot%show()
- CALL aplot%deallocate()
+DO iTime = 1, tTimeElements
+ CALL BlankLines( nol=5 )
+ CALL EqualLine()
+ CALL Display( "iTime="//tostring(iTime) )
+ CALL EqualLine()
+ t1 = timeNodes(iTime)
+ t2 = timeNodes(iTime+1)
+ n = orders( iTime )
+ !!
+ call Reallocate( pt, n+1, wt, n+1 )
+ call LegendreQuadrature( n=n+1, pt=pt, wt=wt, &
+ & quadType=GaussLobatto )
+ !!
+ p_in = LegendreEvalAll( n=n, x=pt )
+ dp_in = LegendreGradientEvalAll( n=n, x=pt )
+ !!
+ call Reallocate( Cmat, n+1, n+1 )
+ CMat = 0.0_DFP
+ do ii = 1, n+1
+ CMat = CMat + OUTERPROD( p_in( ii, :), dp_in( ii, : ) ) * wt( ii )
+ end do
+ !!
+ CMat = Cmat + OUTERPROD( p_in(1,:), p_in(1, :) )
+ !!
+ RHS = p_in(1,:) * u0
+ !!
+ timeGP = FromBiUnitLine2Segment( xin=pt, x1=t1, x2=t2 )
+ fval = forceFunction( timeGP )
+ fhat = LegendreTransform(n=n, coeff=fval, x=pt, &
+ & w=wt, quadType=GaussLobatto)
+ gamma = LegendreNormSQR2( n=n )
+ !!
+ CALL display( fhat, "fhat = " ) !! warning
+ exact_uval = exactSolution( timeGP ) !! warning
+ !!
+ RHS = RHS + (t2 - t1)*0.5_DFP * gamma * fhat
+ !!
+ CALL Reallocate( uhat, n+1 )
+ uhat = 0.0_DFP
+ CALL Solve( X=uhat, A=CMat, B=RHS )
+ !!
+ uval = LegendreInvTransform(n=n, coeff=uhat, x=pt)
+ CALL display( uval .colconcat. ABS(uval-exact_uval), "uval | err" )
+ !! warning
+ !!
+ !! At this point calculation is finished for time element
+ !! But we need to update initialCondition
+ !!
+ u0 = uval( n+1 )
+ !!
+ !! Plotting
+ !!
+ CALL aplot%plot2D( &
+ & x=timeGP,y=uval, pointColor="k", pointType=PS_DOT, &
+ & lineWidth=0.0_DFP )
+END DO
+CALL aplot%setLabels("x","u","tTimeElements="//tostring(tTimeElements))
+CALL aplot%show()
+CALL aplot%deallocate()
```
End of code here!
@@ -147,62 +147,62 @@ End of code here!
!!! settings "Force function"
```fortran
- contains
- !!
- elemental function forceFunction(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = sin(x)
- end function forceFunction
- !!
+contains
+!!
+elemental function forceFunction(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = sin(x)
+end function forceFunction
+!!
```
!!! settings "Initial Condition"
```fortran
- !!
- elemental function initialCondition() result(ans)
- real( dfp ) :: ans
- ans = -1.0_DFP
- end function initialCondition
- !!
+!!
+elemental function initialCondition() result(ans)
+ real( dfp ) :: ans
+ ans = -1.0_DFP
+end function initialCondition
+!!
```
!!! settings "Exact Solution"
```fortran
- !!
- elemental function exactSolution(x) result(ans)
- real( dfp ), intent( in ) :: x
- real( dfp ) :: ans
- ans = -cos(x)
- end function exactSolution
- !!
+!!
+elemental function exactSolution(x) result(ans)
+ real( dfp ), intent( in ) :: x
+ real( dfp ) :: ans
+ ans = -cos(x)
+end function exactSolution
+!!
```
!!! settings "createTimeNodes"
```fortran
- !!
- pure function createTimeNodes() result(ans)
- real( dfp ) :: ans( 7 )
- ans = linspace(0.0, 6.0, 7)
- end function createTimeNodes
- !!
+!!
+pure function createTimeNodes() result(ans)
+ real( dfp ) :: ans( 7 )
+ ans = linspace(0.0, 6.0, 7)
+end function createTimeNodes
+!!
```
!!! settings "createOrder"
```fortran
- !!
- pure function createOrder() result(ans)
- real( dfp ) :: ans( 6 )
- ans(1) = 10
- ans(2) = 5
- ans(3) = 6
- ans(4:) = 10
- end function createOrder
- !!
+!!
+pure function createOrder() result(ans)
+ real( dfp ) :: ans( 6 )
+ ans(1) = 10
+ ans(2) = 5
+ ans(3) = 6
+ ans(4:) = 10
+end function createOrder
+!!
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_1.md
index ba32e08f..608507e5 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_1.md
@@ -25,7 +25,7 @@ end program main
Legendre Gauss Lobatto points, n+2 = 4
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.16667 |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_2.md
index 300f5175..747bbc36 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussLobattoQuadrature_test_2.md
@@ -23,92 +23,92 @@ end program main
Legendre Gauss Lobatto points, n+2 = 3
- | | |
- | --- | --- |
- | -1 | 0.33333 |
- | -2.66578E-17 | 1.3333 |
- | 1 | 0.33333 |
+| | |
+| ------------ | ------- |
+| -1 | 0.33333 |
+| -2.66578E-17 | 1.3333 |
+| 1 | 0.33333 |
Legendre Gauss Lobatto points, n+2 = 4
- | | |
- | --- | --- |
- | -1 | 0.16667 |
- | -0.44721 | 0.83333 |
- | 0.44721 | 0.83333 |
- | 1 | 0.16667 |
+| | |
+| -------- | ------- |
+| -1 | 0.16667 |
+| -0.44721 | 0.83333 |
+| 0.44721 | 0.83333 |
+| 1 | 0.16667 |
Legendre Gauss Lobatto points, n+2 = 5
- | | |
- | --- | --- |
- | -1 | 0.1 |
- | -0.65465 | 0.54444 |
- | 4.1375E-17 | 0.71111 |
- | 0.65465 | 0.54444 |
- | 1 | 0.1 |
+| | |
+| ---------- | ------- |
+| -1 | 0.1 |
+| -0.65465 | 0.54444 |
+| 4.1375E-17 | 0.71111 |
+| 0.65465 | 0.54444 |
+| 1 | 0.1 |
Legendre Gauss Lobatto points, n+2 = 6
- | | |
- | --- | --- |
- | -1 | 6.66667E-02 |
- | -0.76506 | 0.37847 |
- | -0.28523 | 0.55486 |
- | 0.28523 | 0.55486 |
- | 0.76506 | 0.37847 |
- | 1 | 6.66667E-02 |
+| | |
+| -------- | ----------- |
+| -1 | 6.66667E-02 |
+| -0.76506 | 0.37847 |
+| -0.28523 | 0.55486 |
+| 0.28523 | 0.55486 |
+| 0.76506 | 0.37847 |
+| 1 | 6.66667E-02 |
Legendre Gauss Lobatto points, n+2 = 7
- | | |
- | --- | --- |
- | -1 | 4.7619E-02 |
- | -0.83022 | 0.27683 |
- | -0.46885 | 0.43175 |
- | 2.39125E-16 | 0.48762 |
- | 0.46885 | 0.43175 |
- | 0.83022 | 0.27683 |
- | 1 | 4.7619E-02 |
+| | |
+| ----------- | ---------- |
+| -1 | 4.7619E-02 |
+| -0.83022 | 0.27683 |
+| -0.46885 | 0.43175 |
+| 2.39125E-16 | 0.48762 |
+| 0.46885 | 0.43175 |
+| 0.83022 | 0.27683 |
+| 1 | 4.7619E-02 |
Legendre Gauss Lobatto points, n+2 = 8
- | | |
- | --- | --- |
- | -1 | 3.57143E-02 |
- | -0.87174 | 0.2107 |
- | -0.5917 | 0.34112 |
- | -0.2093 | 0.41246 |
- | 0.2093 | 0.41246 |
- | 0.5917 | 0.34112 |
- | 0.87174 | 0.2107 |
- | 1 | 3.57143E-02 |
+| | |
+| -------- | ----------- |
+| -1 | 3.57143E-02 |
+| -0.87174 | 0.2107 |
+| -0.5917 | 0.34112 |
+| -0.2093 | 0.41246 |
+| 0.2093 | 0.41246 |
+| 0.5917 | 0.34112 |
+| 0.87174 | 0.2107 |
+| 1 | 3.57143E-02 |
Legendre Gauss Lobatto points, n+2 = 9
- | | |
- | --- | --- |
- | -1 | 2.77778E-02 |
- | -0.89976 | 0.1655 |
- | -0.67719 | 0.27454 |
- | -0.36312 | 0.34643 |
- | -2.81541E-16 | 0.37152 |
- | 0.36312 | 0.34643 |
- | 0.67719 | 0.27454 |
- | 0.89976 | 0.1655 |
- | 1 | 2.77778E-02 |
+| | |
+| ------------ | ----------- |
+| -1 | 2.77778E-02 |
+| -0.89976 | 0.1655 |
+| -0.67719 | 0.27454 |
+| -0.36312 | 0.34643 |
+| -2.81541E-16 | 0.37152 |
+| 0.36312 | 0.34643 |
+| 0.67719 | 0.27454 |
+| 0.89976 | 0.1655 |
+| 1 | 2.77778E-02 |
Legendre Gauss Lobatto points, n+2 = 10
- | | |
- | --- | --- |
- | -1 | 2.22222E-02 |
- | -0.91953 | 0.13331 |
- | -0.73877 | 0.22489 |
- | -0.47792 | 0.29204 |
- | -0.16528 | 0.32754 |
- | 0.16528 | 0.32754 |
- | 0.47792 | 0.29204 |
- | 0.73877 | 0.22489 |
- | 0.91953 | 0.13331 |
- | 1 | 2.22222E-02 |
+| | |
+| -------- | ----------- |
+| -1 | 2.22222E-02 |
+| -0.91953 | 0.13331 |
+| -0.73877 | 0.22489 |
+| -0.47792 | 0.29204 |
+| -0.16528 | 0.32754 |
+| 0.16528 | 0.32754 |
+| 0.47792 | 0.29204 |
+| 0.73877 | 0.22489 |
+| 0.91953 | 0.13331 |
+| 1 | 2.22222E-02 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_1.md
index 058e235d..aa3f09f3 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_1.md
@@ -22,7 +22,7 @@ end program main
Zeros of J(x), n = 5 alpha=0 beta=0
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -0.90618 | 0.23693 |
| -0.53847 | 0.47863 |
| -1.56541E-16 | 0.56889 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_2.md
index 9559a28a..f632082c 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_2.md
@@ -29,13 +29,13 @@ program main
!!! note "test"
```fortran
- n = 1; call callme
- n = 2; call callme
- n = 5; call callme
+n = 1; call callme
+n = 2; call callme
+n = 5; call callme
```
!!! example "result"
- Legendre Gauss Quadrature n = 1
+Legendre Gauss Quadrature n = 1
| |
|---|
@@ -56,15 +56,15 @@ program main
!!! settings "cleanup"
```fortran
- contains
- subroutine callme
- call reallocate( pt, n )
- call LegendreGaussQuadrature( n=n, pt=pt )
- msg = "Legendre Gauss Quadrature n = " // tostring( n )
- call display(msg%chars())
- astr = MdEncode( pt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n )
+ call LegendreGaussQuadrature( n=n, pt=pt )
+ msg = "Legendre Gauss Quadrature n = " // tostring( n )
+ call display(msg%chars())
+ astr = MdEncode( pt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_3.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_3.md
index 1fb9c81a..08272d5e 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_3.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussQuadrature_test_3.md
@@ -24,105 +24,105 @@ end program main
Legendre Gauss Quadrature n = 1
- | Point | Weight |
- | --- | --- |
- | 0 | 2 |
+| Point | Weight |
+| ----- | ------ |
+| 0 | 2 |
Legendre Gauss Quadrature n = 2
- | Point | Weight |
- | --- | --- |
- | -0.57735 | 1 |
- | 0.57735 | 1 |
+| Point | Weight |
+| -------- | ------ |
+| -0.57735 | 1 |
+| 0.57735 | 1 |
Legendre Gauss Quadrature n = 3
- | Point | Weight |
- | --- | --- |
- | -0.7746 | 0.55556 |
- | 3.71231E-16 | 0.88889 |
- | 0.7746 | 0.55556 |
+| Point | Weight |
+| ----------- | ------- |
+| -0.7746 | 0.55556 |
+| 3.71231E-16 | 0.88889 |
+| 0.7746 | 0.55556 |
Legendre Gauss Quadrature n = 4
- | Point | Weight |
- | --- | --- |
- | -0.86114 | 0.34785 |
- | -0.33998 | 0.65215 |
- | 0.33998 | 0.65215 |
- | 0.86114 | 0.34785 |
+| Point | Weight |
+| -------- | ------- |
+| -0.86114 | 0.34785 |
+| -0.33998 | 0.65215 |
+| 0.33998 | 0.65215 |
+| 0.86114 | 0.34785 |
Legendre Gauss Quadrature n = 5
- | Point | Weight |
- | --- | --- |
- | -0.90618 | 0.23693 |
- | -0.53847 | 0.47863 |
- | 2.66893E-17 | 0.56889 |
- | 0.53847 | 0.47863 |
- | 0.90618 | 0.23693 |
+| Point | Weight |
+| ----------- | ------- |
+| -0.90618 | 0.23693 |
+| -0.53847 | 0.47863 |
+| 2.66893E-17 | 0.56889 |
+| 0.53847 | 0.47863 |
+| 0.90618 | 0.23693 |
Legendre Gauss Quadrature n = 6
- | Point | Weight |
- | --- | --- |
- | -0.93247 | 0.17132 |
- | -0.66121 | 0.36076 |
- | -0.23862 | 0.46791 |
- | 0.23862 | 0.46791 |
- | 0.66121 | 0.36076 |
- | 0.93247 | 0.17132 |
+| Point | Weight |
+| -------- | ------- |
+| -0.93247 | 0.17132 |
+| -0.66121 | 0.36076 |
+| -0.23862 | 0.46791 |
+| 0.23862 | 0.46791 |
+| 0.66121 | 0.36076 |
+| 0.93247 | 0.17132 |
Legendre Gauss Quadrature n = 7
- | Point | Weight |
- | --- | --- |
- | -0.94911 | 0.12948 |
- | -0.74153 | 0.27971 |
- | -0.40585 | 0.38183 |
- | 1.88509E-16 | 0.41796 |
- | 0.40585 | 0.38183 |
- | 0.74153 | 0.27971 |
- | 0.94911 | 0.12948 |
+| Point | Weight |
+| ----------- | ------- |
+| -0.94911 | 0.12948 |
+| -0.74153 | 0.27971 |
+| -0.40585 | 0.38183 |
+| 1.88509E-16 | 0.41796 |
+| 0.40585 | 0.38183 |
+| 0.74153 | 0.27971 |
+| 0.94911 | 0.12948 |
Legendre Gauss Quadrature n = 8
- | Point | Weight |
- | --- | --- |
- | -0.96029 | 0.10123 |
- | -0.79667 | 0.22238 |
- | -0.52553 | 0.31371 |
- | -0.18343 | 0.36268 |
- | 0.18343 | 0.36268 |
- | 0.52553 | 0.31371 |
- | 0.79667 | 0.22238 |
- | 0.96029 | 0.10123 |
+| Point | Weight |
+| -------- | ------- |
+| -0.96029 | 0.10123 |
+| -0.79667 | 0.22238 |
+| -0.52553 | 0.31371 |
+| -0.18343 | 0.36268 |
+| 0.18343 | 0.36268 |
+| 0.52553 | 0.31371 |
+| 0.79667 | 0.22238 |
+| 0.96029 | 0.10123 |
Legendre Gauss Quadrature n = 9
- | Point | Weight |
- | --- | --- |
- | -0.96816 | 8.12744E-02 |
- | -0.83603 | 0.18065 |
- | -0.61337 | 0.26061 |
- | -0.32425 | 0.31235 |
- | 2.76366E-17 | 0.33024 |
- | 0.32425 | 0.31235 |
- | 0.61337 | 0.26061 |
- | 0.83603 | 0.18065 |
- | 0.96816 | 8.12744E-02 |
+| Point | Weight |
+| ----------- | ----------- |
+| -0.96816 | 8.12744E-02 |
+| -0.83603 | 0.18065 |
+| -0.61337 | 0.26061 |
+| -0.32425 | 0.31235 |
+| 2.76366E-17 | 0.33024 |
+| 0.32425 | 0.31235 |
+| 0.61337 | 0.26061 |
+| 0.83603 | 0.18065 |
+| 0.96816 | 8.12744E-02 |
Legendre Gauss Quadrature n = 10
- | Point | Weight |
- | --- | --- |
- | -0.97391 | 6.66713E-02 |
- | -0.86506 | 0.14945 |
- | -0.67941 | 0.21909 |
- | -0.4334 | 0.26927 |
- | -0.14887 | 0.29552 |
- | 0.14887 | 0.29552 |
- | 0.4334 | 0.26927 |
- | 0.67941 | 0.21909 |
- | 0.86506 | 0.14945 |
- | 0.97391 | 6.66713E-02 |
+| Point | Weight |
+| -------- | ----------- |
+| -0.97391 | 6.66713E-02 |
+| -0.86506 | 0.14945 |
+| -0.67941 | 0.21909 |
+| -0.4334 | 0.26927 |
+| -0.14887 | 0.29552 |
+| 0.14887 | 0.29552 |
+| 0.4334 | 0.26927 |
+| 0.67941 | 0.21909 |
+| 0.86506 | 0.14945 |
+| 0.97391 | 6.66713E-02 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussRadauQuadrature_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussRadauQuadrature_test_1.md
index 2b7314bf..33012633 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussRadauQuadrature_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGaussRadauQuadrature_test_1.md
@@ -32,7 +32,7 @@ end program main
Legendre Gauss Radau points, n+1 = 3
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -1 | 0.22222 |
| -0.2899 | 1.025 |
| 0.6899 | 0.75281 |
@@ -40,7 +40,7 @@ Legendre Gauss Radau points, n+1 = 3
Legendre Gauss Radau points, n+1 = 3
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.6899 | 0.75281 |
| 0.2899 | 1.025 |
| 1 | 0.22222 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientCoeff_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientCoeff_test_1.md
index 2cf95450..f6ccd313 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientCoeff_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientCoeff_test_1.md
@@ -22,45 +22,45 @@ program main
```
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
- CALL aplot%setTicks()
- x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
+CALL aplot%setTicks()
+x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
```
```fortran title "Prepare quadratures"
- n = 20
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
+n = 20
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call LegendreQuadrature( n=n+1, pt=pt, wt=wt, quadType=quadType )
```
```fortran title "LegendreTransformation"
- fval = func1(pt)
- !!
- fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = LegendreGradientCoeff(n=n, coeff=fhat)
- !!
+fval = func1(pt)
+!!
+fhat = LegendreTransform(n=n, coeff=fval, x=pt, w=wt, quadType=quadType)
+!!
+f1hat = LegendreGradientCoeff(n=n, coeff=fhat)
+!!
```
```fortran title "LegendreTransformation"
- !! nodal values of derivative of function
- f1val = dfunc1(pt)
- !!
- f1hat2 = LegendreTransform(n=n, coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- call display( MdEncode(f1hat .colconcat. f1hat2), "")
- !!
+!! nodal values of derivative of function
+f1val = dfunc1(pt)
+!!
+f1hat2 = LegendreTransform(n=n, coeff=f1val, x=pt, w=wt, quadType=quadType)
+!!
+call display( MdEncode(f1hat .colconcat. f1hat2), "")
+!!
```
| $\tilde{f}^{(1)}_{n}$ | $\tilde{\partial f}_{n}$ |
-|-----------------------|--------------------------|
+| --------------------- | ------------------------ |
| 8.30697E-13 | 8.29555E-13 |
| -3.28493E-14 | 7.40033E-15 |
| 1.1937 | 1.1937 |
@@ -84,51 +84,51 @@ program main
| 0 | 5.52691E-02 |
```fortran title "Plotting"
- CALL aplot%plot2D( x=x,y=LegendreInvTransform(n=n, &
- & x=x, coeff=f1hat), lineColor="k")
- !!
- CALL aplot%plot2D( x=x,y=LegendreInvTransform(n=n, &
- & x=x, coeff=f1hat2), lineColor="b")
- !!
- CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
- CALL aplot%setLabels("x","du(x)","")
- !CALL aplot%show()
- !CALL aplot%deallocate()
+CALL aplot%plot2D( x=x,y=LegendreInvTransform(n=n, &
+ & x=x, coeff=f1hat), lineColor="k")
+!!
+CALL aplot%plot2D( x=x,y=LegendreInvTransform(n=n, &
+ & x=x, coeff=f1hat2), lineColor="b")
+!!
+CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
+CALL aplot%setLabels("x","du(x)","")
+!CALL aplot%show()
+!CALL aplot%deallocate()
```
```fortran title "Prepare quadratures"
- error = zeros(30, 2, 1.0_DFP)
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+ !!
+ call LegendreQuadrature( n=n+1, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
+ !!
+ fhat = LegendreTransform(n=n, &
+ & coeff=fval, x=pt, w=wt, quadType=quadType)
+ !!
+ f1hat = LegendreGradientCoeff(n=n, coeff=fhat)
+ !!
+ !! nodal values of derivative of function
+ !!
+ f1val = dfunc1(pt)
+ !!
+ f1hat2 = LegendreTransform(n=n, &
+ & coeff=f1val, x=pt, w=wt, quadType=quadType)
!!
- DO n = 1, SIZE(error,1)
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call LegendreQuadrature( n=n+1, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- fhat = LegendreTransform(n=n, &
- & coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = LegendreGradientCoeff(n=n, coeff=fhat)
- !!
- !! nodal values of derivative of function
- !!
- f1val = dfunc1(pt)
- !!
- f1hat2 = LegendreTransform(n=n, &
- & coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1hat-f1hat2) )
- !!
- END DO
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1hat-f1hat2) )
!!
- CALL display( MdEncode(error), "error=")
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 2 | 12.566 |
| 4 | 16.409 |
| 6 | 22.967 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_1.md
index d661f4f2..c21299da 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_1.md
@@ -14,7 +14,7 @@ end program main
```
| dP0 | dP1 | dP2 | dP3 |
-|-----|-----|-----|------|
+| --- | --- | --- | ---- |
| 0 | 1 | -3 | 6 |
| 0 | 1 | 0 | -1.5 |
| 0 | 1 | 3 | 6 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_2.md
index c1ee35cb..4a6073b1 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEvalAll_test_2.md
@@ -14,5 +14,5 @@ end program main
```
| P0 | P1 | P2 | P3 |
-|----|----|----|----|
-| 0 | 1 | -3 | 6 |
+| -- | -- | -- | -- |
+| 0 | 1 | -3 | 6 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEval_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEval_test_2.md
index 3845ffcd..48da3723 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEval_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreGradientEval_test_2.md
@@ -29,19 +29,19 @@ program main
!!! note "Legendre-Gauss"
```fortran
- n = 3
- x = [-1.0, 0.0, 1.0]; call callme
- exact = 0.5_DFP*(3*5.0 * x**2 - 3.0)
- call ok( ALL(SOFTEQ(ans, exact, tol )))
+n = 3
+x = [-1.0, 0.0, 1.0]; call callme
+exact = 0.5_DFP*(3*5.0 * x**2 - 3.0)
+call ok( ALL(SOFTEQ(ans, exact, tol )))
```
!!! settings "cleanup"
```fortran
- contains
- subroutine callme
- ans= LegendreGradientEval( n=n, x=x )
- end subroutine callme
+contains
+subroutine callme
+ ans= LegendreGradientEval( n=n, x=x )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreInvTransform_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreInvTransform_test_1.md
index 20cbeab9..7b5ca232 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreInvTransform_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreInvTransform_test_1.md
@@ -33,7 +33,7 @@ end program main
error
| n | error |
-|----|-------------|
+| -- | ----------- |
| 1 | 0.95106 |
| 2 | 0.95106 |
| 3 | 1.1214 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiLobattoMatrix_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiLobattoMatrix_test_1.md
index 0016daa2..a542ec6a 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiLobattoMatrix_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiLobattoMatrix_test_1.md
@@ -52,8 +52,7 @@ betaCoeff:
0.25714
0.25397
0.25253
- 0.00000
-
+ 0.00000
```
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiMatrix_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiMatrix_test_1.md
index f5e57c40..77188c7a 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiMatrix_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiMatrix_test_1.md
@@ -48,7 +48,7 @@ betaCoeff:
0.33333
0.26667
0.25714
- 0.25397
+ 0.25397
```
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiRadauMatrix_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiRadauMatrix_test_1.md
index 1563c406..e94be339 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiRadauMatrix_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreJacobiRadauMatrix_test_1.md
@@ -49,8 +49,7 @@ betaCoeff:
0.26667
0.25714
0.25397
- 0.00000
-
+ 0.00000
```
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreMonomialExpansionAll_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreMonomialExpansionAll_test_1.md
index 0844c528..ec111c8a 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreMonomialExpansionAll_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreMonomialExpansionAll_test_1.md
@@ -28,44 +28,44 @@ program main
!!! note "LegendreMonomialExpansionAll"
```fortran
- n = 5; call callme
+n = 5; call callme
```
!!! example "result"
- | P0 | P1 | P2 | P3 | P4 | P5 |
- |----|----|------|------|-------|-------|
- | 1 | 0 | -0.5 | -0 | 0.375 | 0 |
- | 0 | 1 | 0 | -1.5 | -0 | 1.875 |
- | 0 | 0 | 1.5 | 0 | -3.75 | -0 |
- | 0 | 0 | 0 | 2.5 | 0 | -8.75 |
- | 0 | 0 | 0 | 0 | 4.375 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 7.875 |
+| P0 | P1 | P2 | P3 | P4 | P5 |
+|----|----|------|------|-------|-------|
+| 1 | 0 | -0.5 | -0 | 0.375 | 0 |
+| 0 | 1 | 0 | -1.5 | -0 | 1.875 |
+| 0 | 0 | 1.5 | 0 | -3.75 | -0 |
+| 0 | 0 | 0 | 2.5 | 0 | -8.75 |
+| 0 | 0 | 0 | 0 | 4.375 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 7.875 |
!!! note "LegendreMonomialExpansion"
```fortran
- n = 5; call callme2
+n = 5; call callme2
```
!!! example "result"
- | x0 | x1 | x2 | x3 | x4 | x5 |
- | --- | --- | --- | --- | --- | --- |
- | 0 | 1.875 | -0 | -8.75 | 0 | 7.875 |
+| x0 | x1 | x2 | x3 | x4 | x5 |
+| --- | --- | --- | --- | --- | --- |
+| 0 | 1.875 | -0 | -8.75 | 0 | 7.875 |
!!! settings "cleanup"
```fortran
- contains
- subroutine callme
- coeff=LegendreMonomialExpansionAll( n=n )
- astr = MdEncode( coeff )
- call display( astr%chars(), "" )
- end subroutine callme
- !!
- subroutine callme2
- astr = MdEncode( LegendreMonomialExpansion( n=n ) )
- call display( astr%chars(), "" )
- end subroutine callme2
+contains
+subroutine callme
+ coeff=LegendreMonomialExpansionAll( n=n )
+ astr = MdEncode( coeff )
+ call display( astr%chars(), "" )
+end subroutine callme
+!!
+subroutine callme2
+ astr = MdEncode( LegendreMonomialExpansion( n=n ) )
+ call display( astr%chars(), "" )
+end subroutine callme2
```
```fortran
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_1.md
index 31c9cdd6..9b5a38ed 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_1.md
@@ -17,11 +17,11 @@ program main
:::
```fortran
- n = 2; quadType=Gauss; call callme
+n = 2; quadType=Gauss; call callme
```
| pt | wt |
-|----------|----|
+| -------- | -- |
| -0.57735 | 1 |
| 0.57735 | 1 |
@@ -29,11 +29,11 @@ program main
:::
```fortran
- n = 3; quadType=GaussRadauLeft; call callme
+n = 3; quadType=GaussRadauLeft; call callme
```
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -1 | 0.22222 |
| -0.2899 | 1.025 |
| 0.6899 | 0.75281 |
@@ -42,11 +42,11 @@ program main
:::
```fortran
- n = 3; quadType=GaussRadauRight; call callme
+n = 3; quadType=GaussRadauRight; call callme
```
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.6899 | 0.75281 |
| 0.2899 | 1.025 |
| 1 | 0.22222 |
@@ -55,11 +55,11 @@ program main
:::
```fortran
- n = 4; quadType=GaussLobatto; call callme
+n = 4; quadType=GaussLobatto; call callme
```
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.16667 |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_2.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_2.md
index 6fc8c811..c15f5156 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_2.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreQuadrature_test_2.md
@@ -18,11 +18,11 @@ program main
:::
```fortran
- n = 2; quadType=Gauss; call callme
+n = 2; quadType=Gauss; call callme
```
| pt | wt |
-|----------|----|
+| -------- | -- |
| -0.57735 | 1 |
| 0.57735 | 1 |
@@ -30,11 +30,11 @@ program main
:::
```fortran
- n = 2; quadType=GaussRadauLeft; call callme
+n = 2; quadType=GaussRadauLeft; call callme
```
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.2899 | 1.025 |
| 0.6899 | 0.75281 |
@@ -42,11 +42,11 @@ program main
:::
```fortran
- n = 2; quadType=GaussRadauRight; call callme
+n = 2; quadType=GaussRadauRight; call callme
```
| pt | wt |
-|---------|---------|
+| ------- | ------- |
| -0.6899 | 0.75281 |
| 0.2899 | 1.025 |
@@ -54,11 +54,11 @@ program main
:::
```fortran
- n = 2; quadType=GaussLobatto; call callme
+n = 2; quadType=GaussLobatto; call callme
```
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
diff --git a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreZeros_test_1.md b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreZeros_test_1.md
index 7ca20bc1..2acb7889 100644
--- a/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreZeros_test_1.md
+++ b/docs/docs-api/LegendrePolynomialUtility/examples/_LegendreZeros_test_1.md
@@ -17,6 +17,6 @@ end program main
Zeros of J(x), n = 3
-| | | |
-| --- | --- | --- |
+| | | |
+| ------- | ----------- | ------ |
| -0.7746 | 3.71231E-16 | 0.7746 |
diff --git a/docs/docs-api/LinSolver/Deallocate.md b/docs/docs-api/LinSolver/Deallocate.md
index adfcda4d..d79c03cc 100644
--- a/docs/docs-api/LinSolver/Deallocate.md
+++ b/docs/docs-api/LinSolver/Deallocate.md
@@ -12,5 +12,3 @@ INTERFACE
END SUBROUTINE Deallocate
END INTERFACE
```
-
-
diff --git a/docs/docs-api/LinSolver/Import.md b/docs/docs-api/LinSolver/Import.md
index 5e973e1e..661cc866 100644
--- a/docs/docs-api/LinSolver/Import.md
+++ b/docs/docs-api/LinSolver/Import.md
@@ -18,54 +18,54 @@ END INTERFACE
The template of the file is given below
-| Variable | Data type | Value | Comment |
-| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------: |
-| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
-| `solverName` | String | | Name of the solver |
-| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | |
-| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | |
-| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | |
-| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
-| `maxIter` | INT | | Maximum number of iterations |
-| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
-| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
-| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
+| Variable | Data type | Value | Comment |
+| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
+| `solverName` | String | | Name of the solver |
+| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | |
+| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | |
+| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | |
+| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
+| `maxIter` | INT | | Maximum number of iterations |
+| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
+| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
+| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
Following code explains it
Let us generate the `hdf5File_` (hdf5 file) using `export` command as shown below.
```fortran
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND EXPORT" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
- call hdf5%open()
- call obj%export( hdf5, "" )
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND EXPORT" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
+call hdf5%open()
+call obj%export( hdf5, "" )
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
```
Now let us `import` this information as shown below.
```fortran
- type( LinSolver_ ) :: obj
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING IMPORT" )
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
- call hdf5%open()
- call obj%import(hdf5,"")
- call obj%display("")
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
+type( LinSolver_ ) :: obj
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING IMPORT" )
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
+call hdf5%open()
+call obj%import(hdf5,"")
+call obj%display("")
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
```
diff --git a/docs/docs-api/LinSolver/Initiate.md b/docs/docs-api/LinSolver/Initiate.md
index fd457b1d..58695f1a 100644
--- a/docs/docs-api/LinSolver/Initiate.md
+++ b/docs/docs-api/LinSolver/Initiate.md
@@ -18,17 +18,17 @@ END INTERFACE
The following code explains how to construct `LinSolver` using `initiate` method
```fortran
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND Deallocate" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call obj%Display("LinSolver : ")
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND Deallocate" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call obj%Display("LinSolver : ")
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
```
diff --git a/docs/docs-api/LinSolver/__test_LinSolver.md b/docs/docs-api/LinSolver/__test_LinSolver.md
index f8f06ed1..49d603dc 100644
--- a/docs/docs-api/LinSolver/__test_LinSolver.md
+++ b/docs/docs-api/LinSolver/__test_LinSolver.md
@@ -1,6 +1,5 @@
-
! This program is a part of EASIFEM library
-! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
+! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
@@ -9,11 +8,11 @@
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
+! along with this program. If not, see
!
module test_m
@@ -27,16 +26,16 @@ contains
!----------------------------------------------------------------------------
subroutine test0
- type( LinSolver_ ) :: obj
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING IMPORT" )
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
- call hdf5%open()
- call obj%import(hdf5,"")
- call obj%display("")
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
+type( LinSolver_ ) :: obj
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING IMPORT" )
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
+call hdf5%open()
+call obj%import(hdf5,"")
+call obj%display("")
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
end subroutine
!----------------------------------------------------------------------------
@@ -44,23 +43,23 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test2
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND EXPORT" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
- call hdf5%open()
- call obj%export( hdf5, "" )
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND EXPORT" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+& preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+& convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+& KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
+call hdf5%open()
+call obj%export( hdf5, "" )
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
end subroutine
!----------------------------------------------------------------------------
@@ -68,19 +67,19 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test1
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND Deallocate" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call obj%Display("LinSolver : ")
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND Deallocate" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+& preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+& convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+& KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call obj%Display("LinSolver : ")
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
end subroutine
!----------------------------------------------------------------------------
@@ -88,10 +87,10 @@ end subroutine
!----------------------------------------------------------------------------
subroutine exportMesh
- TYPE( MSH_ ) :: mshFile
- CALL mshFile%initiate( file="./mesh.msh", NSD=2 )
- CALL mshFile%ExportMesh( file="./mesh.h5" )
- CALL mshFile%Deallocate()
+TYPE( MSH_ ) :: mshFile
+CALL mshFile%initiate( file="./mesh.msh", NSD=2 )
+CALL mshFile%ExportMesh( file="./mesh.h5" )
+CALL mshFile%Deallocate()
end
end module test_m
@@ -104,4 +103,4 @@ program main
use test_m
implicit none
call test0
-end program main
\ No newline at end of file
+end program main
diff --git a/docs/docs-api/LinSolver/examples/__test_LinSolver.md b/docs/docs-api/LinSolver/examples/__test_LinSolver.md
index f8f06ed1..49d603dc 100644
--- a/docs/docs-api/LinSolver/examples/__test_LinSolver.md
+++ b/docs/docs-api/LinSolver/examples/__test_LinSolver.md
@@ -1,6 +1,5 @@
-
! This program is a part of EASIFEM library
-! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
+! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
@@ -9,11 +8,11 @@
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
+! along with this program. If not, see
!
module test_m
@@ -27,16 +26,16 @@ contains
!----------------------------------------------------------------------------
subroutine test0
- type( LinSolver_ ) :: obj
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING IMPORT" )
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
- call hdf5%open()
- call obj%import(hdf5,"")
- call obj%display("")
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
+type( LinSolver_ ) :: obj
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING IMPORT" )
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
+call hdf5%open()
+call obj%import(hdf5,"")
+call obj%display("")
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
end subroutine
!----------------------------------------------------------------------------
@@ -44,23 +43,23 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test2
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND EXPORT" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
- call hdf5%open()
- call obj%export( hdf5, "" )
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND EXPORT" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+& preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+& convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+& KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
+call hdf5%open()
+call obj%export( hdf5, "" )
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
end subroutine
!----------------------------------------------------------------------------
@@ -68,19 +67,19 @@ end subroutine
!----------------------------------------------------------------------------
subroutine test1
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND Deallocate" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call obj%Display("LinSolver : ")
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND Deallocate" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+& preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+& convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+& KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call obj%Display("LinSolver : ")
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
end subroutine
!----------------------------------------------------------------------------
@@ -88,10 +87,10 @@ end subroutine
!----------------------------------------------------------------------------
subroutine exportMesh
- TYPE( MSH_ ) :: mshFile
- CALL mshFile%initiate( file="./mesh.msh", NSD=2 )
- CALL mshFile%ExportMesh( file="./mesh.h5" )
- CALL mshFile%Deallocate()
+TYPE( MSH_ ) :: mshFile
+CALL mshFile%initiate( file="./mesh.msh", NSD=2 )
+CALL mshFile%ExportMesh( file="./mesh.h5" )
+CALL mshFile%Deallocate()
end
end module test_m
@@ -104,4 +103,4 @@ program main
use test_m
implicit none
call test0
-end program main
\ No newline at end of file
+end program main
diff --git a/docs/docs-api/LinSolver/examples/linSolver.toml b/docs/docs-api/LinSolver/examples/linSolver.toml
index 0f91a625..b9efa6c2 100644
--- a/docs/docs-api/LinSolver/examples/linSolver.toml
+++ b/docs/docs-api/LinSolver/examples/linSolver.toml
@@ -15,12 +15,11 @@ sor_omega = 1.8999999999999999
[linSolver.precondition]
option = "RIGHT_PRECONDITION"
name = "ILU"
-ilu={ lfil = 5, mbloc = 10, fill = 5, droptol = 0.0050000000000000, permtol = 0.1000000000000000, alpha = 1.0000000000000000 }
-hybrid={ name = "SOR", maxIter = 25, ell = 2, restart = 40, tol = 0.0010000000474975, omega = 1.5000000000000000 }
-is={ m = 3, p_is_alpha = 1.0000000000000000 }
-adds={ iter = 1, isAdditiveSchwarz = true }
-ssor={ omega = 1.0000000000000000 }
-sainv={ drop = 0.0500000007450581 }
-saamg={ theta = 0.0500000007450581, unsym = false }
-iluc={ drop = 0.0500000007450581, rate = 5.0000000000000000 }
-
+ilu = { lfil = 5, mbloc = 10, fill = 5, droptol = 0.0050000000000000, permtol = 0.1000000000000000, alpha = 1.0000000000000000 }
+hybrid = { name = "SOR", maxIter = 25, ell = 2, restart = 40, tol = 0.0010000000474975, omega = 1.5000000000000000 }
+is = { m = 3, p_is_alpha = 1.0000000000000000 }
+adds = { iter = 1, isAdditiveSchwarz = true }
+ssor = { omega = 1.0000000000000000 }
+sainv = { drop = 0.0500000007450581 }
+saamg = { theta = 0.0500000007450581, unsym = false }
+iluc = { drop = 0.0500000007450581, rate = 5.0000000000000000 }
diff --git a/docs/docs-api/LinSolverLis/Import.md b/docs/docs-api/LinSolverLis/Import.md
index 5e973e1e..661cc866 100644
--- a/docs/docs-api/LinSolverLis/Import.md
+++ b/docs/docs-api/LinSolverLis/Import.md
@@ -18,54 +18,54 @@ END INTERFACE
The template of the file is given below
-| Variable | Data type | Value | Comment |
-| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------: |
-| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
-| `solverName` | String | | Name of the solver |
-| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | |
-| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | |
-| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | |
-| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
-| `maxIter` | INT | | Maximum number of iterations |
-| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
-| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
-| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
+| Variable | Data type | Value | Comment |
+| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
+| `solverName` | String | | Name of the solver |
+| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | |
+| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | |
+| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | |
+| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
+| `maxIter` | INT | | Maximum number of iterations |
+| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
+| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
+| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
Following code explains it
Let us generate the `hdf5File_` (hdf5 file) using `export` command as shown below.
```fortran
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND EXPORT" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
- call hdf5%open()
- call obj%export( hdf5, "" )
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND EXPORT" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="NEW" )
+call hdf5%open()
+call obj%export( hdf5, "" )
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
```
Now let us `import` this information as shown below.
```fortran
- type( LinSolver_ ) :: obj
- type( hdf5File_ ) :: hdf5
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING IMPORT" )
- call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
- call hdf5%open()
- call obj%import(hdf5,"")
- call obj%display("")
- call hdf5%close(); call hdf5%Deallocate()
- call obj%Deallocate()
+type( LinSolver_ ) :: obj
+type( hdf5File_ ) :: hdf5
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING IMPORT" )
+call hdf5%initiate( filename="./templateLinSolver.hdf5", MODE="READ" )
+call hdf5%open()
+call obj%import(hdf5,"")
+call obj%display("")
+call hdf5%close(); call hdf5%Deallocate()
+call obj%Deallocate()
```
diff --git a/docs/docs-api/LinSolverLis/Initiate.md b/docs/docs-api/LinSolverLis/Initiate.md
index fd457b1d..58695f1a 100644
--- a/docs/docs-api/LinSolverLis/Initiate.md
+++ b/docs/docs-api/LinSolverLis/Initiate.md
@@ -18,17 +18,17 @@ END INTERFACE
The following code explains how to construct `LinSolver` using `initiate` method
```fortran
- type( LinSolver_ ) :: obj
- type( ParameterList_ ) :: param
- integer( i4b ) :: ierr, tnodes
- call display( "TESTING INITIATE AND Deallocate" )
- call FPL_INIT(); call param%initiate()
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- call obj%initiate(param)
- call obj%Display("LinSolver : ")
- call obj%Deallocate()
- call param%Deallocate(); call FPL_FINALIZE()
+type( LinSolver_ ) :: obj
+type( ParameterList_ ) :: param
+integer( i4b ) :: ierr, tnodes
+call display( "TESTING INITIATE AND Deallocate" )
+call FPL_INIT(); call param%initiate()
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+call obj%initiate(param)
+call obj%Display("LinSolver : ")
+call obj%Deallocate()
+call param%Deallocate(); call FPL_FINALIZE()
```
diff --git a/docs/docs-api/LinSolverLis/SetParam.md b/docs/docs-api/LinSolverLis/SetParam.md
index 653e08bb..cca1cde1 100644
--- a/docs/docs-api/LinSolverLis/SetParam.md
+++ b/docs/docs-api/LinSolverLis/SetParam.md
@@ -72,5 +72,4 @@ INTERFACE
!! Pointer to child of [[AbstractMatrixField_]]
END SUBROUTINE SetParam
END INTERFACE
-
```
diff --git a/docs/docs-api/LineInterpolationUtility/EquidistancePoint_Line.md b/docs/docs-api/LineInterpolationUtility/EquidistancePoint_Line.md
index aa6c4c82..5b9737cf 100644
--- a/docs/docs-api/LineInterpolationUtility/EquidistancePoint_Line.md
+++ b/docs/docs-api/LineInterpolationUtility/EquidistancePoint_Line.md
@@ -7,7 +7,7 @@ sidebar_label: EquidistancePoint
This function returns the equidistance points on edge.
:::note
-This routine returns the points in "VEFC" format, which means `xij(:,1:2)` are the end points, and `xij(:, 3:)` are the internal points.
+This routine returns the points in "VEFC" format, which means `xij(:,1:2)` are the end points, and `xij(:, 3:)` are the internal points.
:::
## Interface
diff --git a/docs/docs-api/LineInterpolationUtility/LagrangeCoeff_Line.md b/docs/docs-api/LineInterpolationUtility/LagrangeCoeff_Line.md
index 55d51f38..b7e3e0ef 100644
--- a/docs/docs-api/LineInterpolationUtility/LagrangeCoeff_Line.md
+++ b/docs/docs-api/LineInterpolationUtility/LagrangeCoeff_Line.md
@@ -40,7 +40,7 @@ ith polynomial
- Interpolation points
- SIZE(xij,1) is equal to 1
- SIZE(xij,2) is equal to order+1
-:::
+ :::
:::note `ans`
`order+1` coefficients of ith Lagrange polynomial.
@@ -96,7 +96,7 @@ ith polynomial
- Vandermonde matrix
- The jth col of v denotes the values of basis function on interpolation points.
- The ith row of v denotes the values of all basis function on ith interpolation points.
-:::
+ :::
:::note `ans`
`order+1` coefficients of ith Lagrange polynomial.
@@ -148,7 +148,7 @@ ith polynomial
- LU decomposition of Vandermonde matrix
- The jth col of v denotes the values of basis function on interpolation points.
- The ith row of v denotes the values of all basis function on ith interpolation points.
-:::
+ :::
:::note `ipiv`
`ipiv` is returned by Lapack when performing `LU` decomposition.
@@ -267,7 +267,7 @@ Currently, we can specify following types of orthogonal polynomials:
- [x] Chebyshev
- [x] Lobatto
- [x] UnscaledLobatto
-:::
+ :::
:::note `alpha, beta`
alpha and beta are parameters of Jacobi Polynomials. They should be present when `orthopol` is equal to `Jacobi`
diff --git a/docs/docs-api/LineInterpolationUtility/QuadraturePoint_Line.md b/docs/docs-api/LineInterpolationUtility/QuadraturePoint_Line.md
index 47d43bf9..e99012e4 100644
--- a/docs/docs-api/LineInterpolationUtility/QuadraturePoint_Line.md
+++ b/docs/docs-api/LineInterpolationUtility/QuadraturePoint_Line.md
@@ -2,7 +2,6 @@
sidebar_label: QuadraturePoint
---
-
# QuadraturePoint_Line
This routine returns the quadrature points on the line.
@@ -17,7 +16,7 @@ ans = QuadraturePoint_Line1( &
& xij, &
& alpha, &
& beta, &
- & lambda)
+ & lambda)
```
:::note `ans`
diff --git a/docs/docs-api/LineInterpolationUtility/_EquidistanceInPoint_Line_test_1.md b/docs/docs-api/LineInterpolationUtility/_EquidistanceInPoint_Line_test_1.md
index e19a113f..af257551 100644
--- a/docs/docs-api/LineInterpolationUtility/_EquidistanceInPoint_Line_test_1.md
+++ b/docs/docs-api/LineInterpolationUtility/_EquidistanceInPoint_Line_test_1.md
@@ -39,13 +39,13 @@ x1 =
```fortran
- call reallocate(x, 3, 2)
- x(:,1)=[0.2,0.2,0.0]
- x(:,2)=[0.2,0.6,0.0]
- ans = EquidistanceInPoint_Line( order=1, xij=x )
- call display( ans, "ans = ")
- ans = EquidistanceInPoint_Line( order=2, xij=x )
- call display( ans, "ans = ")
+call reallocate(x, 3, 2)
+x(:,1)=[0.2,0.2,0.0]
+x(:,2)=[0.2,0.6,0.0]
+ans = EquidistanceInPoint_Line( order=1, xij=x )
+call display( ans, "ans = ")
+ans = EquidistanceInPoint_Line( order=2, xij=x )
+call display( ans, "ans = ")
```
@@ -70,12 +70,12 @@ We can also call the routine without specifying the `xij`. In this case the refe
:::
```fortran
- x = EquidistanceInPoint_Line( order=1 )
- call display( x, "x = " )
- x = EquidistanceInPoint_Line( order=2 )
- call display( x, "x = " )
- x = EquidistanceInPoint_Line( order=3 )
- call display( x, "x = " )
+x = EquidistanceInPoint_Line( order=1 )
+call display( x, "x = " )
+x = EquidistanceInPoint_Line( order=2 )
+call display( x, "x = " )
+x = EquidistanceInPoint_Line( order=3 )
+call display( x, "x = " )
```
diff --git a/docs/docs-api/LineInterpolationUtility/_LagrangeDegree_Line_test_1.md b/docs/docs-api/LineInterpolationUtility/_LagrangeDegree_Line_test_1.md
index 82d81707..dbdcf16c 100644
--- a/docs/docs-api/LineInterpolationUtility/_LagrangeDegree_Line_test_1.md
+++ b/docs/docs-api/LineInterpolationUtility/_LagrangeDegree_Line_test_1.md
@@ -7,25 +7,25 @@ program main
integer(i4b), allocatable :: degree(:,:)
```
-Returns the monomial degrees on Line for constructing Lagrange polynomails.
+Returns the monomial degrees on Line for constructing Lagrange polynomails.
```fortran
- order=1
- degree=LagrangeDegree_Line(order=order)
- call display( degree, "degree (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=2
- degree=LagrangeDegree_Line(order=order)
- call display( degree, "degree (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=3
- degree=LagrangeDegree_Line(order=order)
- call display( degree, "degree (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=4
- degree=LagrangeDegree_Line(order=order)
- call display( degree, "degree (order="//tostring(order)//")=" )
- call blanklines(nol=2)
+order=1
+degree=LagrangeDegree_Line(order=order)
+call display( degree, "degree (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=2
+degree=LagrangeDegree_Line(order=order)
+call display( degree, "degree (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=3
+degree=LagrangeDegree_Line(order=order)
+call display( degree, "degree (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=4
+degree=LagrangeDegree_Line(order=order)
+call display( degree, "degree (order="//tostring(order)//")=" )
+call blanklines(nol=2)
```
```txt title="results"
diff --git a/docs/docs-api/LineInterpolationUtility/_QuadraturePoint_Line_test_1.md b/docs/docs-api/LineInterpolationUtility/_QuadraturePoint_Line_test_1.md
index f15ddfec..9f28a08f 100644
--- a/docs/docs-api/LineInterpolationUtility/_QuadraturePoint_Line_test_1.md
+++ b/docs/docs-api/LineInterpolationUtility/_QuadraturePoint_Line_test_1.md
@@ -35,30 +35,30 @@ end program main
GaussLegendre:
-| | | |
-| --- | --- | --- |
-| -0.7746 | 3.71231E-16 | 0.7746 |
-| 0.55556 | 0.88889 | 0.55556 |
+| | | |
+| ------- | ----------- | ------- |
+| -0.7746 | 3.71231E-16 | 0.7746 |
+| 0.55556 | 0.88889 | 0.55556 |
GaussLegendreLobatto:
-| | | | |
-| --- | --- | --- | --- |
-| -1 | -0.44721 | 0.44721 | 1 |
-| 0.16667 | 0.83333 | 0.83333 | 0.16667 |
+| | | | |
+| ------- | -------- | ------- | ------- |
+| -1 | -0.44721 | 0.44721 | 1 |
+| 0.16667 | 0.83333 | 0.83333 | 0.16667 |
GaussChebyshev:
-| | | |
-| --- | --- | --- |
+| | | |
+| -------- | ----------- | ------- |
| -0.86603 | 1.03412E-13 | 0.86603 |
-| 1.0472 | 1.0472 | 1.0472 |
+| 1.0472 | 1.0472 | 1.0472 |
GaussChebyshevLobatto:
-| | | | |
-| --- | --- | --- | --- |
-| -1 | -0.5 | 0.5 | 1 |
+| | | | |
+| ------ | ------ | ------ | ------ |
+| -1 | -0.5 | 0.5 | 1 |
| 0.5236 | 1.0472 | 1.0472 | 0.5236 |
diff --git a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_3.md b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_3.md
index 95a5de2e..47bfd146 100644
--- a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_3.md
+++ b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_3.md
@@ -22,9 +22,9 @@ end program main
```
```txt title="results"
- 1.00000 0.00000 -0.00000 0.00000 -0.00000
- 0.00000 1.00000 0.00000 -0.00000 0.00000
- 0.00000 0.00000 1.00000 0.00000 -0.00000
- 0.00000 0.00000 -0.00000 1.00000 -0.00000
- 0.00000 -0.00000 0.00000 -0.00000 1.00000
+1.00000 0.00000 -0.00000 0.00000 -0.00000
+0.00000 1.00000 0.00000 -0.00000 0.00000
+0.00000 0.00000 1.00000 0.00000 -0.00000
+0.00000 0.00000 -0.00000 1.00000 -0.00000
+0.00000 -0.00000 0.00000 -0.00000 1.00000
```
diff --git a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_4.md b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_4.md
index 41bfcd38..1f8565b0 100644
--- a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_4.md
+++ b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_4.md
@@ -21,9 +21,9 @@ end program main
```
```txt title="results"
- 1.00000 0.00000 -0.00000 0.00000 -0.00000
- 0.00000 1.00000 0.00000 -0.00000 0.00000
- 0.00000 0.00000 1.00000 0.00000 -0.00000
- 0.00000 0.00000 -0.00000 1.00000 -0.00000
- 0.00000 -0.00000 0.00000 -0.00000 1.00000
+1.00000 0.00000 -0.00000 0.00000 -0.00000
+0.00000 1.00000 0.00000 -0.00000 0.00000
+0.00000 0.00000 1.00000 0.00000 -0.00000
+0.00000 0.00000 -0.00000 1.00000 -0.00000
+0.00000 -0.00000 0.00000 -0.00000 1.00000
```
diff --git a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_5.md b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_5.md
index f9072cb6..035816dc 100644
--- a/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_5.md
+++ b/docs/docs-api/LineInterpolationUtility/examples/_LagrangeEvalAll_Line_test_5.md
@@ -21,9 +21,9 @@ end program main
```
```txt title="results"
- 1.00000 0.00000 -0.00000 0.00000 -0.00000
- 0.00000 1.00000 0.00000 -0.00000 0.00000
- 0.00000 0.00000 1.00000 0.00000 -0.00000
- 0.00000 0.00000 -0.00000 1.00000 -0.00000
- 0.00000 -0.00000 0.00000 -0.00000 1.00000
+1.00000 0.00000 -0.00000 0.00000 -0.00000
+0.00000 1.00000 0.00000 -0.00000 0.00000
+0.00000 0.00000 1.00000 0.00000 -0.00000
+0.00000 0.00000 -0.00000 1.00000 -0.00000
+0.00000 -0.00000 0.00000 -0.00000 1.00000
```
diff --git a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_1.md b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_1.md
index 903a5bf8..b4fd7cdf 100644
--- a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_1.md
+++ b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_1.md
@@ -1,6 +1,6 @@
-!! This examples shows how to use `SetLinearStaticCDRParam` to set the parameters of [[LinearStaticCDR_]] kernel.
+!! This examples shows how to use `SetLinearStaticCDRParam` to set the parameters of [[LinearStaticCDR_]] kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_15.md b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_15.md
index dfcdde21..873fb704 100644
--- a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_15.md
+++ b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_15.md
@@ -41,137 +41,137 @@ PROGRAM main
!! Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!! Set the PARAMETER for [[LinearStaticCDR_]]
```fortran
- CALL SetLinearStaticCDRParam( param=param, &
- & engine="NATIVE_SERIAL", &
- & isConservative=.FALSE., &
- & coordinateSystem=KERNEL_2D, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetLinearStaticCDRParam( param=param, &
+ & engine="NATIVE_SERIAL", &
+ & isConservative=.FALSE., &
+ & coordinateSystem=KERNEL_2D, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!! Set the PARAMETER for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!! Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!! Initiate an instace of [[LinearStaticCDR_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!! Add another material and domain region in the [[LinearStaticCDR_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, &
- & name="SolidMaterial", &
- & massDensity=1.0_DFP, &
- & diffusivity=nu )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, &
+ & name="SolidMaterial", &
+ & massDensity=1.0_DFP, &
+ & diffusivity=nu )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we SELECT the mesh
- boundary, THEN we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we SELECT the mesh
+boundary, THEN we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[1,5] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=leftphi ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[1,5] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=leftphi ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the PROCEDURE mentioned above to prescribe another boundary condition.
+Let us repeat the PROCEDURE mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[4] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=rightphi ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[4] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=rightphi ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will CALL `Set` method.
+Now that we are done setting the kernels properties, we will CALL `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "SetVelocity"
- Let us set the convective velocity
+Let us set the convective velocity
```fortran
- CALL obj%SetVelocity(constantVelocity=[cos(theta), sin(theta)])
+CALL obj%SetVelocity(constantVelocity=[cos(theta), sin(theta)])
```
!!! note "AssembleTanmat"
- Let us assemble the tangent matrix.
+Let us assemble the tangent matrix.
```fortran
- CALL obj%AssembleTanMat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
+CALL obj%AssembleTanMat()
+CALL obj%AssembleRHS()
+CALL obj%Assemble()
```
!!! note "Solve"
- solve the system of linear equations.
+solve the system of linear equations.
```fortran
- CALL obj%Solve()
- CALL obj%Update(reset=.true.)
+CALL obj%Solve()
+CALL obj%Update(reset=.true.)
```
!!! note "Export"
- Now we export the kernel [[HDF5File_]] file
+Now we export the kernel [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%WriteData(outfile, "/1")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%WriteData(outfile, "/1")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_5.md b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_5.md
index 39970924..7e4f9bdb 100644
--- a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_5.md
+++ b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_5.md
@@ -1,6 +1,6 @@
This example demonstrates how to use `addMaterial` to add new material to [[LinearStaticCDR_]] kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_6.md b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_6.md
index e32df1b2..eb17409c 100644
--- a/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_6.md
+++ b/docs/docs-api/LinearStaticCDR/LinearStaticCDR_test_6.md
@@ -1,6 +1,6 @@
This example demonstrates how to USE `addMaterial` to add NEW material to `LinearStaticCDR_` kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
diff --git a/docs/docs-api/LisLinSolver/LISLinSolver_.md b/docs/docs-api/LisLinSolver/LISLinSolver_.md
index a3376bbe..c08e2c79 100644
--- a/docs/docs-api/LisLinSolver/LISLinSolver_.md
+++ b/docs/docs-api/LisLinSolver/LISLinSolver_.md
@@ -104,7 +104,7 @@ configuration files for Windows systems
- `CFLAGS=` specify additional cflags
- `FC=` specify fortran compiler
- `FCFLAGS=` specify additional fortran compiler flags
-- `LDFLAGS=` optional
+- `LDFLAGS=` optional
- `--enable-saamg` optional
- `--enable-quad` optional
- `--enable-longdouble` optional
@@ -250,7 +250,7 @@ The current version has the following limitations:
- The VBR format does not support the multiprocessing environment.
- The SA-AMG preconditioner supports only the CSR format.
- In the multiprocessing environment, the CSR is the only accepted format for user defined
-arrays.
+ arrays.
### Double-double (quadruple) precision operations
@@ -265,7 +265,7 @@ arrays.
- The algorithm of the ILU(k) preconditioner is based on the localized ILU preconditioning[38], which factorizes the block diagonal elements in parallel. Note that the convergence behavior approaches to that of the Jacobi preconditioner as the number of threads or processes increases.
- If a preconditioner other than the Jacobi or SSOR is selected and matrix A is not in the CSR
-format, a new matrix is created in the CSR format for preconditioning.
+ format, a new matrix is created in the CSR format for preconditioning.
- The SA-AMG preconditioner does not support the BiCG method for unsymmetric matrices.
- The SA-AMG preconditioner does not support multithreading.
- The SA-AMG preconditioner does not support complex arithmetic.
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_1.md
index b492a0cf..ba2303d1 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_1.md
@@ -12,12 +12,12 @@ program main
```
```fortran
- x = [-1.0, 0.0, 1.0]
- n = 0; call callme
+x = [-1.0, 0.0, 1.0]
+n = 0; call callme
```
| P0 |
-|-----|
+| --- |
| |
| --- |
| 1 |
@@ -25,34 +25,34 @@ program main
| 0 |
```fortran
- n = 1; call callme
+n = 1; call callme
```
| l0 | l1 |
-|-----|-----|
+| --- | --- |
| 1 | 0 |
| 0.5 | 0.5 |
| 0 | 1 |
```fortran
- x = [-1.0, 0.0, 1.0, 0.5]
- n = 5; call callme
+x = [-1.0, 0.0, 1.0, 0.5]
+n = 5; call callme
```
| l0 | l1 | l2 | l3 | l4 | l5 |
-|------|------|----------|----------|--------------|--------|
+| ---- | ---- | -------- | -------- | ------------ | ------ |
| 1 | 0 | 0 | 0 | 0 | 0 |
| 0.5 | 0.5 | -0.61237 | -0 | 0.23385 | 0 |
| 0 | 1 | 0 | 0 | 0 | 0 |
| 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
```fortran
- contains
- subroutine callme
- ans= LobattoEvalAll( n=n, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= LobattoEvalAll( n=n, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_2.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_2.md
index 83585bb7..c92fb37f 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_2.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEvalAll_test_2.md
@@ -12,39 +12,39 @@ program main
```
```fortran
- x = -1.0_DFP
- n = 5; call callme
+x = -1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 1 | 0 | 0 | 0 | 0 | 0 |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 1 | 0 | 0 | 0 | 0 | 0 |
```fortran
- x = 1.0_DFP
- n = 5; call callme
+x = 1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 0 | 1 | 0 | 0 | 0 | 0 |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 0 | 1 | 0 | 0 | 0 | 0 |
```fortran
- x = 0.5_DFP
- n = 5; call callme
+x = 0.5_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| ---- | ---- | -------- | -------- | ------------ | ------ |
| 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
```fortran
- contains
- subroutine callme
- ans= LobattoEvalAll( n=n, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= LobattoEvalAll( n=n, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEval_test_2.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEval_test_2.md
index 3a712114..17e34acb 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEval_test_2.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoEval_test_2.md
@@ -1,4 +1,4 @@
-This example shows the usage of `LobattoEval` method.
+This example shows the usage of `LobattoEval` method.
This routine evaluates Lobatto polynomial of order n, at several points.
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_1.md
index e86f87a3..12de3b27 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_1.md
@@ -21,7 +21,7 @@ end program main
```
| | | | | | |
-|------|-----|---------|----------|---------|--------|
+| ---- | --- | ------- | -------- | ------- | ------ |
| -0.5 | 0.5 | -1.2247 | 1.5811 | -1.8708 | 2.1213 |
| -0.5 | 0.5 | 0 | -0.79057 | -0 | 0.7955 |
| -0.5 | 0.5 | 1.2247 | 1.5811 | 1.8708 | 2.1213 |
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_2.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_2.md
index d964b160..ede3cf83 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_2.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoGradientEvalAll_test_2.md
@@ -20,6 +20,6 @@ program main
end program main
```
-| | | | | | |
-| --- | --- | --- | --- | --- | --- |
+| | | | | | |
+| ---- | --- | ------ | ------ | ------ | ------ |
| -0.5 | 0.5 | 1.2247 | 1.5811 | 1.8708 | 2.1213 |
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoKernelEvalAll_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoKernelEvalAll_test_1.md
index 36a18acb..925d8a91 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoKernelEvalAll_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoKernelEvalAll_test_1.md
@@ -13,8 +13,8 @@ program main
end program main
```
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
- | 0 | 1 | 0 | 0 | 0 | 0 |
+| | | | | | |
+| ---- | ---- | -------- | -------- | ------------ | ------ |
+| 1 | 0 | 0 | 0 | 0 | 0 |
+| 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
+| 0 | 1 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMassMatrix_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMassMatrix_test_1.md
index 2c39c69f..746982ef 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMassMatrix_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMassMatrix_test_1.md
@@ -12,54 +12,54 @@ program main
```
```fortran
- n = 0
- call callme
+n = 0
+call callme
```
| |
-|---------|
+| ------- |
| 0.66667 |
```fortran
- n = 1
- call callme
+n = 1
+call callme
```
| | |
-|---------|---------|
+| ------- | ------- |
| 0.66667 | 0.33333 |
| 0.33333 | 0.66667 |
```fortran
- n = 2
- call callme
+n = 2
+call callme
```
| | | |
-|----------|----------|----------|
+| -------- | -------- | -------- |
| 0.66667 | 0.33333 | -0.40825 |
| 0.33333 | 0.66667 | -0.40825 |
| -0.40825 | -0.40825 | 0.4 |
```fortran
- n = 3
- call callme
+n = 3
+call callme
```
| | | | |
-|----------|----------|----------|-------------|
+| -------- | -------- | -------- | ----------- |
| 0.66667 | 0.33333 | -0.40825 | 0.10541 |
| 0.33333 | 0.66667 | -0.40825 | -0.10541 |
| -0.40825 | -0.40825 | 0.4 | 0 |
| 0.10541 | -0.10541 | 0 | 9.52381E-02 |
```fortran
- n = 4
- call callme
+n = 4
+call callme
```
| | | | | |
-|----------|----------|--------------|-------------|--------------|
+| -------- | -------- | ------------ | ----------- | ------------ |
| 0.66667 | 0.33333 | -0.40825 | 0.10541 | 0 |
| 0.33333 | 0.66667 | -0.40825 | -0.10541 | 0 |
| -0.40825 | -0.40825 | 0.4 | 0 | -4.36436E-02 |
@@ -67,14 +67,14 @@ program main
| 0 | 0 | -4.36436E-02 | 0 | 4.44444E-02 |
```fortran
- contains
- subroutine callme
- ans= LobattoMassMatrix( n=n )
- astr = MdEncode(ans)
- CALL Display( "Lobatto mass matrix = " )
- CALL Display(astr, "" )
- call blanklines(nol=2)
- end subroutine callme
+contains
+subroutine callme
+ ans= LobattoMassMatrix( n=n )
+ astr = MdEncode(ans)
+ CALL Display( "Lobatto mass matrix = " )
+ CALL Display(astr, "" )
+ call blanklines(nol=2)
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansionAll_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansionAll_test_1.md
index 3d7c95a2..711adf21 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansionAll_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansionAll_test_1.md
@@ -20,7 +20,7 @@ end program main
```
| P0 | P1 | P2 | P3 | P4 | P5 |
-|------|-----|----------|----------|---------|---------|
+| ---- | --- | -------- | -------- | ------- | ------- |
| 0.5 | 0.5 | -0.61237 | -0 | 0.23385 | 0 |
| -0.5 | 0.5 | 0 | -0.79057 | -0 | 0.7955 |
| 0 | 0 | 0.61237 | 0 | -1.4031 | -0 |
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansion_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansion_test_1.md
index 348178c4..aa078372 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansion_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoMonomialExpansion_test_1.md
@@ -12,5 +12,5 @@ end program main
```
| x0 | x1 | x2 | x3 | x4 | x5 |
-|----|--------|----|---------|----|--------|
+| -- | ------ | -- | ------- | -- | ------ |
| 0 | 0.7955 | -0 | -2.6517 | 0 | 1.8562 |
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoStiffnessMatrix_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoStiffnessMatrix_test_1.md
index 2ab9e81d..d490c2aa 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoStiffnessMatrix_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoStiffnessMatrix_test_1.md
@@ -12,31 +12,31 @@ program main
```
```fortran
- n = 0
- call callme
+n = 0
+call callme
```
| |
-|-----|
+| --- |
| 0.5 |
```fortran
- n = 1
- call callme
+n = 1
+call callme
```
| | |
-|------|------|
+| ---- | ---- |
| 0.5 | -0.5 |
| -0.5 | 0.5 |
```fortran
- n = 4
- call callme
+n = 4
+call callme
```
| | | | | |
-|------|------|---|---|---|
+| ---- | ---- | - | - | - |
| 0.5 | -0.5 | 0 | 0 | 0 |
| -0.5 | 0.5 | 0 | 0 | 0 |
| 0 | 0 | 1 | 0 | 0 |
@@ -44,14 +44,14 @@ program main
| 0 | 0 | 0 | 0 | 1 |
```fortran
- contains
- subroutine callme
- ans= LobattoStiffnessMatrix( n=n )
- astr = MdEncode(ans)
- CALL Display( "Lobatto mass matrix = " )
- CALL Display(astr, "" )
- call blanklines(nol=2)
- end subroutine callme
+contains
+subroutine callme
+ ans= LobattoStiffnessMatrix( n=n )
+ astr = MdEncode(ans)
+ CALL Display( "Lobatto mass matrix = " )
+ CALL Display(astr, "" )
+ call blanklines(nol=2)
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoZeros_test_1.md b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoZeros_test_1.md
index 642f799c..fd77d236 100644
--- a/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoZeros_test_1.md
+++ b/docs/docs-api/LobattoPolynomialUtility/examples/_LobattoZeros_test_1.md
@@ -12,53 +12,53 @@ program main
```
```fortran
- n = 2; call callme
+n = 2; call callme
```
| | |
-|----|---|
+| -- | - |
| -1 | 1 |
```fortran
- n = 3; call callme
+n = 3; call callme
```
Zeros of J(x), n = 3
| | | |
-|----|---|---|
+| -- | - | - |
| -1 | 0 | 1 |
```fortran
- n = 4; call callme
+n = 4; call callme
```
Zeros of J(x), n = 4
| | | | |
-|----|----------|---------|---|
+| -- | -------- | ------- | - |
| -1 | -0.44721 | 0.44721 | 1 |
```fortran
- n = 5; call callme
+n = 5; call callme
```
Zeros of J(x), n = 5
| | | | | |
-|----|----------|-------------|---------|---|
+| -- | -------- | ----------- | ------- | - |
| -1 | -0.65465 | 4.29344E-17 | 0.65465 | 1 |
```fortran
- contains
- subroutine callme
- pt = LobattoZeros( n=n )
- msg = "Zeros of J(x), n = " &
- & // tostring( n )
- call display(msg%chars())
- astr = MdEncode( pt )
- call display( astr%chars(), "" )
- end subroutine
+contains
+subroutine callme
+ pt = LobattoZeros( n=n )
+ msg = "Zeros of J(x), n = " &
+ & // tostring( n )
+ call display(msg%chars())
+ astr = MdEncode( pt )
+ call display( astr%chars(), "" )
+end subroutine
```
```fortran
diff --git a/docs/docs-api/MassMatrix/MassMatrix_.md b/docs/docs-api/MassMatrix/MassMatrix_.md
index e51474ce..d08cea63 100644
--- a/docs/docs-api/MassMatrix/MassMatrix_.md
+++ b/docs/docs-api/MassMatrix/MassMatrix_.md
@@ -5,10 +5,11 @@ date: 20 Nov 2021
update: 20 Nov 2021
tags:
- MassMatrix
+category:
+ - MassMatrix
+ - Finite Element
---
-# MassMatrix
-
## Theory
$$
@@ -19,19 +20,27 @@ $$
\int_{\Omega } \rho N^{I} N^{J}d\Omega
$$
-## Constructor methods
+## Example 1
+
+This example shows how to use the subroutine called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to do the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+`rho` can be a constant, or a function of spatial coordinates, or some nonlinear function.
+
+In this example, we use
-!!! note "MassMatrix"
+- ReferenceLine element,
+- QuadraturePoint are `GaussLegendre`
+- order of integrand is 2.
$$
\int_{\Omega } N^{I} N^{J}d\Omega
$$
-
- You can learn more about this in
-
- - [[MassMatrix_test_1]] for [[ReferenceLine_]] `Line2`
- - [[MassMatrix_test_2]] for [[ReferenceLine_]] `Line3`
- - [[MassMatrix_test_3]] for mixed FEM type, Line2 and Line3 [[ReferenceLine_]]
-- [ ] TODO add examples for creating mass matrix for triangle3 and triangle6 and 3D elements.
+This type of mass matrix is useful in cases where $rho$ is a constant.
diff --git a/docs/docs-api/MassMatrix/MassMatrix_test_1.md b/docs/docs-api/MassMatrix/MassMatrix_test_1.md
deleted file mode 100644
index b2593895..00000000
--- a/docs/docs-api/MassMatrix/MassMatrix_test_1.md
+++ /dev/null
@@ -1,111 +0,0 @@
----
-title: MassMatrix example 1
-author: Vikas Sharma, Ph.D.
-date: 20 Nov 2021
-update: 20 Nov 2021
-tags:
- - ReferenceLine
- - ReferenceLine/Initiate
- - QuadraturePoint/Initiate
- - ElemshapeData/Initiate
- - MassMatrix
----
-
-# MassMatrix example 1
-
-!!! note ""
- This example shows how to use the subroutine called `MassMatrix` to create a mass matrix in space domain.
-
-Here, we want to do the following.
-
-$$
-\int_{\Omega } N^{I}\rho N^{J}d\Omega
-$$
-
-!!! warning ""
- `rho` can be a constant, or a function of spatial coordinates, or some nonlinear function.
-
-In this example, we use
-
-- [[ReferenceLine_]] element,
-- [[QuadraturePoint_]] are `GaussLegendre`
-- order of integrand is 2.
-
-$$
-\int_{\Omega } N^{I} N^{J}d\Omega
-$$
-
-This type of mass matrix is useful in cases where $rho$ is a constant.
-
-## Modules and classes
-
-## Usage
-
-```fortran
-PROGRAM main
- USE easifemBase
- IMPLICIT NONE
- TYPE(elemshapedata_) :: test, trial
- TYPE(quadraturepoint_) :: quad
- TYPE(referenceline_) :: refelem
- REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
- integer( I4B ), parameter :: order = 2
-```
-
-!!! note ""
- Let us now create the physical coordinate of the line element.
-
-```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
-```
-
-!!! note ""
- Now we create an instance of [[ReferenceLine_]].
-
-```fortran
- refelem = referenceline(nsd=1)
-```
-
-!!! note ""
- Here, we create the quadrature points.
-
-```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order, &
- & quadratureType='GaussLegendre' )
-```
-
-!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]]
-
-```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refelem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set( obj=test, val=xij, N=test%N, dNdXi=test%dNdXi)
-```
-
-!!! note ""
- Let us now create the mass matrix.
-
-```fortran
- mat=MassMatrix(test=test, trial=test)
- CALL Display(mat, "mat:")
-```
-
-??? example "Results"
-
- ```bash
- mat:
- ------------------
- 0.666667 0.333333
- 0.333333 0.666667
- ```
-
-
-!!! settings "Cleanup"
-
-```fortran
-END PROGRAM main
-```
diff --git a/docs/docs-api/MassMatrix/MassMatrix_test_2.md b/docs/docs-api/MassMatrix/MassMatrix_test_2.md
deleted file mode 100644
index cdae59a6..00000000
--- a/docs/docs-api/MassMatrix/MassMatrix_test_2.md
+++ /dev/null
@@ -1,120 +0,0 @@
----
-title: MassMatrix example 2
-author: Vikas Sharma, Ph.D.
-date: 20 Nov 2021
-update: 20 Nov 2021
-tags:
- - ReferenceLine
- - ReferenceLine/Initiate
- - QuadraturePoint/Initiate
- - ElemshapeData/Initiate
- - MassMatrix
----
-
-# MassMatrix example 2
-
-!!! note ""
- This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
-
-Here, we want to DO the following.
-
-$$
-\int_{\Omega } N^{I}\rho N^{J}d\Omega
-$$
-
-!!! warning ""
- `rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
-
-In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
-
-$$
-\int_{\Omega } N^{I} N^{J}d\Omega
-$$
-
-This TYPE of mass matrix is useful in cases WHERE $rho$ is a constant.
-
-## Modules and classes
-
-## Usage
-
-```fortran
-PROGRAM main
- USE easifemBase
- IMPLICIT NONE
- TYPE(Elemshapedata_) :: test, elemsdForsimplex
- TYPE(Quadraturepoint_) :: quad
- TYPE(Referenceline_) :: simplexElem, refElem
- REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
- INTEGER( I4B ), PARAMETER :: order = 2
-```
-
-!!! note ""
- Let us now create the physical coordinate of the line element.
-
-```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
-```
-
-!!! note ""
- Now we create an instance of [[ReferenceLine_]].
-
-```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
-```
-
-!!! note ""
- Here, we create the quadrature points.
-
-```fortran
- CALL initiate( obj=quad, refelem=refelem, order=order*2, &
- & quadratureType='GaussLegendre' )
-```
-
-!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
-
-```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
-```
-
-!!! note ""
- Initiate an instance of [[ElemeshapeData_]].
-
-```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
-```
-
-!!! note ""
- Let us now create the mass matrix.
-
-```fortran
- mat=MassMatrix(test=test, trial=test)
- CALL Display(mat, "mat:")
-```
-
-??? example "Results"
-
- ```bash
- mat:
- ---------------------------
- 0.26667 -0.06667 0.13333
- -0.06667 0.26667 0.13333
- 0.13333 0.13333 1.06667
- ```
-
-!!! settings "Cleanup"
-
-```fortran
-END PROGRAM main
-```
diff --git a/docs/docs-api/MassMatrix/MassMatrix_test_3.md b/docs/docs-api/MassMatrix/MassMatrix_test_3.md
deleted file mode 100644
index 7f3ae717..00000000
--- a/docs/docs-api/MassMatrix/MassMatrix_test_3.md
+++ /dev/null
@@ -1,133 +0,0 @@
----
-title: MassMatrix example 3
-author: Vikas Sharma, Ph.D.
-date: 20 Nov 2021
-update: 20 Nov 2021
-tags:
- - ReferenceLine
- - ReferenceLine/Initiate
- - QuadraturePoint/Initiate
- - ElemshapeData/Initiate
- - MassMatrix
----
-
-# MassMatrix example 3
-
-!!! note ""
- This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
-
-Here, we want to DO the following.
-
-$$
-\int_{\Omega } N^{I}\rho N^{J}d\Omega
-$$
-
-!!! warning ""
- `rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
-
-In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
-
-$$
-\int_{\Omega } N^{I} N^{J}d\Omega
-$$
-
-This TYPE of mass matrix is useful when $rho$ is a constant.
-
-## Modules and classes
-
-## Usage
-
-```fortran
-PROGRAM main
- USE easifemBase
- IMPLICIT NONE
- TYPE(Elemshapedata_) :: test, elemsdForsimplex, trial
- TYPE(Quadraturepoint_) :: quad
- TYPE(Referenceline_) :: simplexElem, refElemFortest, refElemFortrial
- REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
- INTEGER( I4B ), PARAMETER :: orderFortest = 1, orderForTrial = 2
-```
-
-!!! note ""
- Let us now create the physical coordinate of the line element.
-
-```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
-```
-
-!!! note ""
- Now we create an instance of [[ReferenceLine_]].
-
-```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
- CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
-```
-
-!!! note ""
- Here, we create the quadrature points.
-
-```fortran
- CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
- & quadratureType='GaussLegendre' )
-```
-
-!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
-
-```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
-```
-
-!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for test function.
-
-```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElemForTest, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
-```
-
-!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for trial function.
-
-```fortran
- CALL initiate(obj=trial, &
- & quad=quad, &
- & refelem=refElemForTrial, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
-```
-
-!!! note ""
- Let us now create the mass matrix.
-
-```fortran
- mat=MassMatrix(test=test, trial=trial)
- CALL Display(mat, "mat:")
-```
-
-??? example "Results"
-
- ```bash
- mat:
- -------------------------
- 0.33333 0.00000 0.66667
- 0.00000 0.33333 0.66667
- ```
-
-!!! settings "Cleanup"
-
-```fortran
-END PROGRAM main
-```
diff --git a/docs/docs-api/MassMatrix/MassMatrix_test_4.md b/docs/docs-api/MassMatrix/MassMatrix_test_4.md
deleted file mode 100644
index dc085db5..00000000
--- a/docs/docs-api/MassMatrix/MassMatrix_test_4.md
+++ /dev/null
@@ -1,134 +0,0 @@
----
-title: MassMatrix example 4
-author: Vikas Sharma, Ph.D.
-date: 20 Nov 2021
-update: 20 Nov 2021
-tags:
- - ReferenceLine
- - ReferenceLine/Initiate
- - QuadraturePoint/Initiate
- - ElemshapeData/Initiate
- - MassMatrix
----
-
-# MassMatrix example 4
-
-!!! note ""
- This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
-
-Here, we want to DO the following.
-
-$$
-\int_{\Omega } N^{I}\rho N^{J}d\Omega
-$$
-
-!!! warning ""
- `rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
-
-In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
-
-$$
-\int_{\Omega } N^{I} N^{J}d\Omega
-$$
-
-This TYPE of mass matrix is useful when $rho$ is a constant.
-
-## Modules and classes
-
-## Usage
-
-```fortran
-PROGRAM main
- USE easifemBase
- IMPLICIT NONE
- TYPE(Elemshapedata_) :: test, elemsdForsimplex, trial
- TYPE(Quadraturepoint_) :: quad
- TYPE(Referenceline_) :: simplexElem, refElemFortest, refElemFortrial
- REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
- INTEGER( I4B ), PARAMETER :: orderFortest = 1, orderForTrial = 2
-```
-
-!!! note ""
- Let us now create the physical coordinate of the line element.
-
-```fortran
- XiJ = RESHAPE([-1, 1], [1, 2])
-```
-
-!!! note ""
- Now we create an instance of [[ReferenceLine_]].
-
-```fortran
- simplexElem = referenceline(nsd=1)
- CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
- CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
-```
-
-!!! note ""
- Here, we create the quadrature points.
-
-```fortran
- CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
- & quadratureType='GaussLegendre' )
-```
-
-!!! note ""
- Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
-
-```fortran
- CALL initiate(obj=elemsdForsimplex, &
- & quad=quad, &
- & refelem=simplexElem, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
-```
-
-!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for test function.
-
-```fortran
- CALL initiate(obj=test, &
- & quad=quad, &
- & refelem=refElemForTest, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
-```
-
-!!! note ""
- Initiate an instance of [[ElemeshapeData_]] for trial function.
-
-```fortran
- CALL initiate(obj=trial, &
- & quad=quad, &
- & refelem=refElemForTrial, &
- & ContinuityType=typeH1, &
- & InterpolType=typeLagrangeInterpolation)
- CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
- & dNdXi=elemsdForSimplex%dNdXi)
-```
-
-!!! note ""
- Let us now create the mass matrix.
-
-```fortran
- mat=MassMatrix(test=trial, trial=test)
- CALL Display(mat, "mat:")
-```
-
-??? example "Results"
-
- ```bash
- mat:
- ----------------
- 0.33333 0.00000
- 0.00000 0.33333
- 0.66667 0.66667
- ```
-
-!!! settings "Cleanup"
-
-```fortran
-END PROGRAM main
-```
diff --git a/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.F90 b/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.F90
new file mode 100644
index 00000000..d063039c
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.F90
@@ -0,0 +1,173 @@
+<<<<<<< HEAD
+---
+title: MassMatrix example 3
+author: Vikas Sharma, Ph.D.
+date: 20 Nov 2021
+update: 20 Nov 2021
+tags:
+ - ReferenceLine
+ - ReferenceLine/Initiate
+ - QuadraturePoint/Initiate
+ - ElemshapeData/Initiate
+ - MassMatrix
+---
+
+# MassMatrix example 3
+
+!!! note ""
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+!!! warning ""
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful when $rho$ is a constant.
+
+## Modules and classes
+
+## Usage
+
+```fortran
+=======
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+PROGRAM main
+USE easifemBase
+IMPLICIT NONE
+TYPE(Elemshapedata_) :: test, elemsdForsimplex, trial
+TYPE(Quadraturepoint_) :: quad
+TYPE(Referenceline_) :: simplexElem, refElemFortest, refElemFortrial
+REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
+INTEGER(I4B), PARAMETER :: orderFortest = 1, orderForTrial = 2
+
+<<<<<<< HEAD
+!!! note ""
+Let us now create the physical coordinate of the line element.
+
+```fortran
+XiJ = RESHAPE([-1, 1], [1, 2])
+```
+
+!!! note ""
+Now we create an instance of [[ReferenceLine_]].
+
+```fortran
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+```
+
+!!! note ""
+Here, we create the quadrature points.
+
+```fortran
+CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
+ & quadratureType='GaussLegendre' )
+```
+
+!!! note ""
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+
+```fortran
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+```
+
+!!! note ""
+Initiate an instance of [[ElemeshapeData_]] for test function.
+
+```fortran
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+```
+
+!!! note ""
+Initiate an instance of [[ElemeshapeData_]] for trial function.
+
+```fortran
+CALL initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+```
+
+!!! note ""
+Let us now create the mass matrix.
+
+```fortran
+mat=MassMatrix(test=test, trial=trial)
+CALL Display(mat, "mat:")
+```
+=======
+! Let us now create the physical coordinate of the line element.
+
+XiJ = RESHAPE([-1, 1], [1, 2])
+
+! Now we create an instance of [[ReferenceLine_]].
+
+simplexElem = referenceline(nsd=1)
+ CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+ CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+
+! Here, we create the quadrature points.
+ CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
+ quadratureType='GaussLegendre')
+
+! Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+
+CALL initiate(obj=elemsdForsimplex, &
+ quad=quad, &
+ refelem=simplexElem, &
+ ContinuityType=typeH1, &
+ InterpolType=typeLagrangeInterpolation)
+
+! Initiate an instance of [[ElemeshapeData_]] for test function.
+
+CALL initiate(obj=test, &
+ quad=quad, &
+ refelem=refElemForTest, &
+ ContinuityType=typeH1, &
+ InterpolType=typeLagrangeInterpolation)
+
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ dNdXi=elemsdForSimplex%dNdXi)
+
+! Initiate an instance of [[ElemeshapeData_]] for trial function.
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+
+CALL initiate(obj=trial, &
+ quad=quad, &
+ refelem=refElemForTrial, &
+ ContinuityType=typeH1, &
+ InterpolType=typeLagrangeInterpolation)
+
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ dNdXi=elemsdForSimplex%dNdXi)
+
+! Let us now create the mass matrix.
+
+mat = MassMatrix(test=test, trial=trial)
+CALL Display(mat, "mat:")
+
+END PROGRAM main
diff --git a/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.md b/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.md
new file mode 100644
index 00000000..46292e44
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/MassMatrix_test_3.md
@@ -0,0 +1,18 @@
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for ReferenceLine element, QuadraturePoint are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful when $rho$ is a constant.
+
diff --git a/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.F90 b/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.F90
new file mode 100644
index 00000000..a56bb8a6
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.F90
@@ -0,0 +1,170 @@
+<<<<<<< HEAD
+---
+title: MassMatrix example 4
+author: Vikas Sharma, Ph.D.
+date: 20 Nov 2021
+update: 20 Nov 2021
+tags:
+ - ReferenceLine
+ - ReferenceLine/Initiate
+ - QuadraturePoint/Initiate
+ - ElemshapeData/Initiate
+ - MassMatrix
+---
+
+# MassMatrix example 4
+
+!!! note ""
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+!!! warning ""
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful when $rho$ is a constant.
+
+## Modules and classes
+
+## Usage
+
+```fortran
+=======
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+PROGRAM main
+USE easifemBase
+IMPLICIT NONE
+TYPE(Elemshapedata_) :: test, elemsdForsimplex, trial
+TYPE(Quadraturepoint_) :: quad
+TYPE(Referenceline_) :: simplexElem, refElemFortest, refElemFortrial
+REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
+INTEGER(I4B), PARAMETER :: orderFortest = 1, orderForTrial = 2
+
+<<<<<<< HEAD
+!!! note ""
+Let us now create the physical coordinate of the line element.
+
+```fortran
+XiJ = RESHAPE([-1, 1], [1, 2])
+```
+
+!!! note ""
+Now we create an instance of [[ReferenceLine_]].
+
+```fortran
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+```
+
+!!! note ""
+Here, we create the quadrature points.
+
+```fortran
+CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
+ & quadratureType='GaussLegendre' )
+```
+
+!!! note ""
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+
+```fortran
+=======
+! Let us now create the physical coordinate of the line element.
+
+XiJ = RESHAPE([-1, 1], [1, 2])
+
+! Now we create an instance of [[ReferenceLine_]].
+
+simplexElem = referenceline(nsd=1)
+ CALL simplexElem%LagrangeElement(order=orderForTest, highOrderObj=refElemForTest)
+ CALL simplexElem%LagrangeElement(order=orderForTrial, highOrderObj=refElemForTrial)
+
+! Here, we create the quadrature points.
+
+ CALL initiate( obj=quad, refelem=simplexElem, order=orderForTest+orderForTrial, &
+ quadratureType='GaussLegendre')
+
+! Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+<<<<<<< HEAD
+```
+
+!!! note ""
+Initiate an instance of [[ElemeshapeData_]] for test function.
+
+```fortran
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+```
+
+!!! note ""
+Initiate an instance of [[ElemeshapeData_]] for trial function.
+
+```fortran
+CALL initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+```
+
+!!! note ""
+Let us now create the mass matrix.
+
+```fortran
+mat=MassMatrix(test=trial, trial=test)
+CALL Display(mat, "mat:")
+```
+=======
+
+! Initiate an instance of [[ElemeshapeData_]] for test function.
+
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElemForTest, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+
+! Initiate an instance of [[ElemeshapeData_]] for trial function.
+
+CALL initiate(obj=trial, &
+ & quad=quad, &
+ & refelem=refElemForTrial, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=trial, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+
+! Let us now create the mass matrix.
+
+mat = MassMatrix(test=trial, trial=test)
+CALL Display(mat, "mat:")
+
+END PROGRAM main
diff --git a/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.md b/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.md
new file mode 100644
index 00000000..f9a97f09
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/MassMatrix_test_4.md
@@ -0,0 +1,18 @@
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for ReferenceLine element, QuadraturePoint are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful when $rho$ is a constant.
+
diff --git a/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.F90 b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.F90
new file mode 100644
index 00000000..b2987532
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.F90
@@ -0,0 +1,74 @@
+PROGRAM main
+USE BaseType, ONLY: ElemShapeData_, &
+ QuadraturePoint_, &
+ elem => TypeElemNameOpt, &
+ quadType => TypeQuadratureOpt, &
+ iptype => TypeInterpolationOpt, &
+ polyType => TypePolynomialOpt
+
+USE GlobalData, ONLY: DFP, I4B
+
+USE QuadraturePoint_Method, ONLY: QuadPoint_Initiate => Initiate, &
+ Quad_Size => Size
+
+USE Display_Method, ONLY: Display
+
+USE ElemshapeData_Method, ONLY: LagrangeElemShapeData, &
+ Elemsd_Allocate => ALLOCATE, &
+ Elemsd_Set => Set, &
+ Elemsd_Display => Display
+USE MassMatrix_Method, ONLY: MassMatrix
+
+IMPLICIT NONE
+
+TYPE(ElemShapeData_) :: elemsd, linelemsd
+TYPE(QuadraturePoint_) :: quad
+REAL(DFP), ALLOCATABLE :: mat(:, :)
+INTEGER(I4B) :: nips, tsize
+
+CHARACTER(LEN=*), PARAMETER :: domainName = "B"
+INTEGER(I4B), PARAMETER :: order = 2, &
+ one_i = 1, &
+ integralOrder = 2 * order, &
+ nns = order + 1
+INTEGER(I4B), PARAMETER :: elemType = elem%line
+INTEGER(I4B), PARAMETER :: quadratureType = quadType%GaussLegendre
+INTEGER( I4B ), PARAMETER :: interpolationType = iptype%GaussLegendreLobatto
+INTEGER( I4B ), PARAMETER :: basisType = polyType%Monomial
+REAL(DFP), PARAMETER :: refElemCoord(1, 2) = RESHAPE([-1.0_DFP, 1.0_DFP], [1, 2])
+REAL(DFP), PARAMETER :: xij(1, 2) = RESHAPE([-1.0_DFP, 1.0_DFP], [1, 2])
+
+! Here, we create the quadrature points.
+CALL QuadPoint_Initiate(obj=quad, elemType=elemType, &
+ domainName=domainName, order=integralOrder, &
+ quadratureType=quadratureType)
+nips = Quad_Size(quad, 2)
+
+CALL Display(nips, "number of integration points: ")
+CALL Display(nns, "number of nodes in space: ")
+
+CALL Elemsd_Allocate(obj=elemsd, nsd=one_i, xidim=one_i, &
+ nns=nns, nips=nips)
+
+! Initiate an instance of ElemshapeData_ for linear geometry.
+CALL LagrangeElemShapeData(obj=linelemsd, quad=quad, nsd=elemsd%nsd, &
+ xidim=elemsd%xidim, elemType=elemType, &
+ refelemCoord=refelemCoord, domainName=domainName, &
+ order=one_i)
+
+CALL LagrangeElemShapeData(obj=elemsd, quad=quad, nsd=elemsd%nsd, xidim=elemsd%xidim, &
+ elemType=elemType, refelemCoord=refelemCoord, &
+ domainName=domainName, order=order, &
+ ipType=interpolationType, &
+ basisType=polyType%Monomial)
+
+CALL Elemsd_Set(obj=elemsd, val=xij, N=linelemsd%N, dNdXi=linelemsd%dNdXi)
+
+CALL Elemsd_Display(elemsd, "elemsd:")
+
+! Let us now create the mass matrix.
+mat = MassMatrix(test=elemsd, trial=elemsd)
+CALL Display(mat, "mass matrix:")
+CALL Display(SUM(mat, dim=2), "row sum of mass matrix:")
+
+END PROGRAM main
diff --git a/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.md b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.md
new file mode 100644
index 00000000..c276616f
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_1.md
@@ -0,0 +1,7 @@
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_MassMatrix_test_1.F90';
+
+{CodeSnippet}
+
diff --git a/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.F90 b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.F90
new file mode 100644
index 00000000..e176debf
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.F90
@@ -0,0 +1,158 @@
+<<<<<<< HEAD
+---
+title: MassMatrix example 2
+author: Vikas Sharma, Ph.D.
+date: 20 Nov 2021
+update: 20 Nov 2021
+tags:
+ - ReferenceLine
+ - ReferenceLine/Initiate
+ - QuadraturePoint/Initiate
+ - ElemshapeData/Initiate
+ - MassMatrix
+---
+
+# MassMatrix example 2
+
+!!! note ""
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+!!! warning ""
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for [[ReferenceLine_]] element, [[QuadraturePoint_]] are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful in cases WHERE $rho$ is a constant.
+
+## Modules and classes
+
+## Usage
+
+```fortran
+=======
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+PROGRAM main
+USE easifemBase
+
+<<<<<<< HEAD
+!!! note ""
+Let us now create the physical coordinate of the line element.
+
+```fortran
+XiJ = RESHAPE([-1, 1], [1, 2])
+```
+
+!!! note ""
+Now we create an instance of [[ReferenceLine_]].
+
+```fortran
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+```
+
+!!! note ""
+Here, we create the quadrature points.
+
+```fortran
+CALL initiate( obj=quad, refelem=refelem, order=order*2, &
+ & quadratureType='GaussLegendre' )
+```
+
+!!! note ""
+Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+
+```fortran
+CALL initiate(obj=elemsdForsimplex, &
+ & quad=quad, &
+ & refelem=simplexElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+```
+
+!!! note ""
+Initiate an instance of [[ElemeshapeData_]].
+
+```fortran
+CALL initiate(obj=test, &
+ & quad=quad, &
+ & refelem=refElem, &
+ & ContinuityType=typeH1, &
+ & InterpolType=typeLagrangeInterpolation)
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ & dNdXi=elemsdForSimplex%dNdXi)
+```
+
+!!! note ""
+Let us now create the mass matrix.
+
+```fortran
+mat=MassMatrix(test=test, trial=test)
+CALL Display(mat, "mat:")
+```
+
+??? example "Results"
+
+ ```bash
+ mat:
+ ---------------------------
+ 0.26667 -0.06667 0.13333
+ -0.06667 0.26667 0.13333
+ 0.13333 0.13333 1.06667
+ ```
+
+!!! settings "Cleanup"
+
+```fortran
+=======
+IMPLICIT NONE
+
+TYPE(Elemshapedata_) :: test, elemsdForsimplex
+TYPE(Quadraturepoint_) :: quad
+TYPE(Referenceline_) :: simplexElem, refElem
+REAL(DFP), ALLOCATABLE :: mat(:, :), XiJ(:, :)
+INTEGER(I4B), PARAMETER :: order = 2
+
+! Let us now create the physical coordinate of the line element.
+XiJ = RESHAPE([-1, 1], [1, 2])
+
+! Now we create an instance of [[ReferenceLine_]].
+simplexElem = referenceline(nsd=1)
+CALL simplexElem%LagrangeElement(order=order, highOrderObj=refelem)
+
+! Here, we create the quadrature points.
+CALL initiate(obj=quad, refelem=refelem, order=order * 2, &
+ quadratureType='GaussLegendre')
+
+! Initiate an instance of [[ElemshapeData_]]. You can learn more about it from [[ElemshapeData_test]].
+CALL initiate(obj=elemsdForsimplex, &
+ quad=quad, &
+ refelem=simplexElem, &
+ ContinuityType=typeH1, &
+ InterpolType=typeLagrangeInterpolation)
+
+! Initiate an instance of [[ElemeshapeData_]].
+CALL initiate(obj=test, &
+ quad=quad, &
+ refelem=refElem, &
+ ContinuityType=typeH1, &
+ InterpolType=typeLagrangeInterpolation)
+
+CALL Set(obj=test, val=xij, N=elemsdForSimplex%N, &
+ dNdXi=elemsdForSimplex%dNdXi)
+
+! Let us now create the mass matrix.
+mat = MassMatrix(test=test, trial=test)
+CALL Display(mat, "mat:")
+
+>>>>>>> 8a747609 (Adding documentation of mass matrix)
+END PROGRAM main
diff --git a/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.md b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.md
new file mode 100644
index 00000000..46e0d99a
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/_MassMatrix_test_2.md
@@ -0,0 +1,18 @@
+This example shows how to USE the SUBROUTINE called `MassMatrix` to create a mass matrix in space domain.
+
+Here, we want to DO the following.
+
+$$
+\int_{\Omega } N^{I}\rho N^{J}d\Omega
+$$
+
+`rho` can be a constant, or a FUNCTION of spatial coordinates, or some nonlinear FUNCTION.
+
+In this example, following mass matrix is formed for ReferenceLine element, QuadraturePoint are `GaussLegendre`.
+
+$$
+\int_{\Omega } N^{I} N^{J}d\Omega
+$$
+
+This TYPE of mass matrix is useful in cases WHERE $rho$ is a constant.
+
diff --git a/docs/docs-api/MassMatrix/examples/runner.toml b/docs/docs-api/MassMatrix/examples/runner.toml
new file mode 100644
index 00000000..caff4e92
--- /dev/null
+++ b/docs/docs-api/MassMatrix/examples/runner.toml
@@ -0,0 +1,3 @@
+BuildType="Debug"
+BuildDir="/tmp/MassMatrix/build"
+TargetLibs = ["easifemClasses"]
diff --git a/docs/docs-api/MatrixField/GetRow.md b/docs/docs-api/MatrixField/GetRow.md
index 4c699b00..0e3be7e3 100644
--- a/docs/docs-api/MatrixField/GetRow.md
+++ b/docs/docs-api/MatrixField/GetRow.md
@@ -41,7 +41,7 @@ calculated using the `globalNode` and `idof`.
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -79,7 +79,7 @@ calculated using the `globalNode`, `idof`, and `ivar`.
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -118,7 +118,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -157,7 +157,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -196,7 +196,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -235,7 +235,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -274,7 +274,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
diff --git a/docs/docs-api/MatrixField/ILUSolve.md b/docs/docs-api/MatrixField/ILUSolve.md
index 9c786308..f6d4f612 100644
--- a/docs/docs-api/MatrixField/ILUSolve.md
+++ b/docs/docs-api/MatrixField/ILUSolve.md
@@ -30,7 +30,6 @@ INTERFACE
END INTERFACE
```
-
```fortran
! If transp is not present or it is false then:
! This routine solves (LU) sol = rhs
diff --git a/docs/docs-api/MatrixField/Initiate.md b/docs/docs-api/MatrixField/Initiate.md
index d3b4556d..08e97169 100644
--- a/docs/docs-api/MatrixField/Initiate.md
+++ b/docs/docs-api/MatrixField/Initiate.md
@@ -51,9 +51,9 @@ contained inside param, which is an instance of [ParameterList_](../ParameterLis
In addition, [Domain_](../Domain/Domain_.md) `dom` is target to the pointer `obj%domain`.
- Param contains both essential and optional parameters which are used in
-constructing the matrix field
+ constructing the matrix field
- dom is a pointer to a domain, where we are interested in constructing the
-matrix
+ matrix
ESSENTIAL PARAMETERS are
@@ -99,8 +99,7 @@ In this way we try to minimize the computation effort.
If `copyFull, copyStructure, usePointer` are absent then this subroutine,
copies the value of the matrix from obj2 to obj.
-At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE.,
-usePointer=.TRUE.`, which equivalent to the default behavior.
+At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE., usePointer=.TRUE.`, which equivalent to the default behavior.
- [ ] TODO Add functionality for other options too.
diff --git a/docs/docs-api/MatrixField/Set.md b/docs/docs-api/MatrixField/Set.md
index 8dfde602..692a2029 100644
--- a/docs/docs-api/MatrixField/Set.md
+++ b/docs/docs-api/MatrixField/Set.md
@@ -108,10 +108,10 @@ IF `addContribution` and `scale` is ABSENT then:
- This subroutine sets a block of data to matrix.
- This block data is contained in `value(:,:)`
- The size of `value` should be `tdof *size( globalNode )`, where
- `tdof` is the total degrees of freedom
+ `tdof` is the total degrees of freedom
- `globalNode` contains the global node number
- `storageFMT` is the storage format of `value(:,:)`, it can be `DOF_FMT`, or
- `FMT_NODES`.
+ `FMT_NODES`.
If `addContribution` and `scale` are present then:
diff --git a/docs/docs-api/MatrixField/SetColumn.md b/docs/docs-api/MatrixField/SetColumn.md
index 11baa0cc..8aa973e0 100644
--- a/docs/docs-api/MatrixField/SetColumn.md
+++ b/docs/docs-api/MatrixField/SetColumn.md
@@ -38,9 +38,9 @@ This routine sets the column of a sparse matrix. The column index is calculated
- `globalNode` is global node number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -77,9 +77,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -118,9 +118,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -159,9 +159,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -241,9 +241,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -282,9 +282,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/MatrixField/SetRow.md b/docs/docs-api/MatrixField/SetRow.md
index 56beb09d..ccdbe996 100644
--- a/docs/docs-api/MatrixField/SetRow.md
+++ b/docs/docs-api/MatrixField/SetRow.md
@@ -38,9 +38,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `globalNode` is global node number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -77,9 +77,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -118,9 +118,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -159,9 +159,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -241,9 +241,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -282,9 +282,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_0.md b/docs/docs-api/MatrixField/_MatrixField_test_0.md
index 98f2306b..d0f21766 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_0.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_0.md
@@ -8,18 +8,18 @@ PROGRAM main
Declare variables:
```fortran
- TYPE( MSHFile_) :: mshFile
- TYPE( HDF5File_ ) :: hdf5File
+TYPE( MSHFile_) :: mshFile
+TYPE( HDF5File_ ) :: hdf5File
```
```fortran
- CALL mshFile%Initiate( "./mesh.msh", ACTION="READ", STATUS="OLD" )
- CALL mshFile%Open(); CALL mshFile%Read()
- CALL hdf5File%Initiate( "./mesh.h5", "NEW" )
- CALL hdf5File%Open()
- CALL mshFile%Export( hdf5File, "" )
- CALL mshFile%Deallocate()
- CALL hdf5File%Deallocate()
+CALL mshFile%Initiate( "./mesh.msh", ACTION="READ", STATUS="OLD" )
+CALL mshFile%Open(); CALL mshFile%Read()
+CALL hdf5File%Initiate( "./mesh.h5", "NEW" )
+CALL hdf5File%Open()
+CALL mshFile%Export( hdf5File, "" )
+CALL mshFile%Deallocate()
+CALL hdf5File%Deallocate()
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_1.md b/docs/docs-api/MatrixField/_MatrixField_test_1.md
index e7ebddc3..c1ecdaef 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_1.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_1.md
@@ -12,48 +12,48 @@ PROGRAM main
```
```fortran
- TYPE( Domain_) :: dom
- TYPE( MatrixField_ ) :: obj
- TYPE( HDF5File_) :: meshfile, hdf5file
- TYPE( ParameterList_ ) :: param
- INTEGER( I4B ) :: ierr
- character(*), parameter :: engine="NATIVE_SERIAL"
+ TYPE( Domain_) :: dom
+ TYPE( MatrixField_ ) :: obj
+ TYPE( HDF5File_) :: meshfile, hdf5file
+ TYPE( ParameterList_ ) :: param
+ INTEGER( I4B ) :: ierr
+character(*), parameter :: engine="NATIVE_SERIAL"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "" )
- CALL dom%InitiateNodeToNodes()
- CALL meshfile%Deallocate()
+CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "" )
+CALL dom%InitiateNodeToNodes()
+CALL meshfile%Deallocate()
```
```fortran
- CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
- & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL, &
- & engine=engine )
+CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
+ & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL, &
+ & engine=engine )
```
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
```fortran
- CALL hdf5file%Initiate( filename="./matrixField.h5", mode="NEW" )
- CALL hdf5file%Open()
- CALL obj%Export(hdf5=hdf5file,group='')
+CALL hdf5file%Initiate( filename="./matrixField.h5", mode="NEW" )
+CALL hdf5file%Open()
+CALL obj%Export(hdf5=hdf5file,group='')
```
```fortran
- CALL hdf5file%Deallocate()
- CALL obj%Deallocate()
- CALL dom%Deallocate()
- CALL param%Deallocate()
- CALL FPL_FINALIZE()
+CALL hdf5file%Deallocate()
+CALL obj%Deallocate()
+CALL dom%Deallocate()
+CALL param%Deallocate()
+CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_10.md b/docs/docs-api/MatrixField/_MatrixField_test_10.md
index 3cb91dd7..7bc47a4d 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_10.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_10.md
@@ -12,42 +12,42 @@ PROGRAM main
```
```fortran
- TYPE( Domain_) :: dom
- TYPE( MatrixField_ ) :: obj
- TYPE( HDF5File_) :: meshfile
- TYPE( ParameterList_ ) :: param
- INTEGER( I4B ) :: ierr
- character(*), parameter :: engine="LIS_OMP"
+ TYPE( Domain_) :: dom
+ TYPE( MatrixField_ ) :: obj
+ TYPE( HDF5File_) :: meshfile
+ TYPE( ParameterList_ ) :: param
+ INTEGER( I4B ) :: ierr
+character(*), parameter :: engine="LIS_OMP"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "" )
- CALL dom%InitiateNodeToNodes()
- CALL meshfile%Deallocate()
+CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "" )
+CALL dom%InitiateNodeToNodes()
+CALL meshfile%Deallocate()
```
```fortran
- CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
- & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL, &
- & engine=engine )
+CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
+ & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL, &
+ & engine=engine )
```
```fortran
- CALL obj%Initiate( param=param, dom=dom )
- CALL obj%Display("MatrixField = ")
+CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Display("MatrixField = ")
```
```fortran
- CALL obj%Deallocate()
- CALL dom%Deallocate()
- CALL param%Deallocate()
- CALL FPL_FINALIZE()
+CALL obj%Deallocate()
+CALL dom%Deallocate()
+CALL param%Deallocate()
+CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_2.md b/docs/docs-api/MatrixField/_MatrixField_test_2.md
index ea753e90..ee880112 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_2.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_2.md
@@ -1,4 +1,4 @@
-In this example we initiate an instance of Matrix by copying contents from other matrix. In this example we set the following methods defined in [[MatrixField_]]
+In this example we initiate an instance of Matrix by copying contents from other matrix. In this example we set the following methods defined in [[MatrixField_]]
- [SetMatrixFieldParam](SetMatrixFieldParam.md)
- [Initiate](docs-api/MatrixField/Initiate.md)
@@ -11,42 +11,40 @@ PROGRAM main
IMPLICIT NONE
```
-
```fortran
- TYPE( Domain_ ) :: dom
- TYPE( MatrixField_ ) :: obj, obj2
- TYPE( HDF5File_ ) :: meshfile, hdf5file
- TYPE( ParameterList_ ) :: param
- INTEGER( I4B ) :: ierr
+TYPE( Domain_ ) :: dom
+TYPE( MatrixField_ ) :: obj, obj2
+TYPE( HDF5File_ ) :: meshfile, hdf5file
+TYPE( ParameterList_ ) :: param
+INTEGER( I4B ) :: ierr
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "" ); CALL meshfile%Close()
- CALL dom%InitiateNodeToNodes()
- CALL meshfile%Deallocate()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "" ); CALL meshfile%Close()
+CALL dom%InitiateNodeToNodes()
+CALL meshfile%Deallocate()
```
-
```fortran
- CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
- & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
+CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
+ & spaceCompo=2, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
```
```fortran
- CALL obj%Initiate( param, dom )
+CALL obj%Initiate( param, dom )
```
```fortran
- CALL hdf5file%Initiate( filename="./matrixField.h5", mode="NEW" )
- CALL hdf5file%Open()
+CALL hdf5file%Initiate( filename="./matrixField.h5", mode="NEW" )
+CALL hdf5file%Open()
```
```fortran
- CALL obj2%Initiate( obj )
- CALL obj2%Export(hdf5=hdf5file,group='')
+CALL obj2%Initiate( obj )
+CALL obj2%Export(hdf5=hdf5file,group='')
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_3.md b/docs/docs-api/MatrixField/_MatrixField_test_3.md
index fe2b20a6..6e79533e 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_3.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_3.md
@@ -2,7 +2,6 @@ In this example we show how to set entries in MatrixField.
In this example we set the following methods defined in [[MatrixField_]]
-
- [SetMatrixFieldParam](SetMatrixFieldParam.md)
- [Initiate](docs-api/MatrixField/Initiate.md)
- [Export](Export.md)
@@ -16,58 +15,58 @@ PROGRAM main
```
```fortran
- TYPE( Domain_) :: dom
- TYPE( MatrixField_ ) :: obj
- TYPE( HDF5File_) :: meshfile, hdf5file
- TYPE( ParameterList_ ) :: param
- TYPE( RealMatrix_ ) :: realmat
- INTEGER( I4B ) :: ierr
- REAL( DFP ), ALLOCATABLE :: realVec( : )
- CHARACTER(LEN=*), parameter :: filename="./test_4.h5"
+TYPE( Domain_) :: dom
+TYPE( MatrixField_ ) :: obj
+TYPE( HDF5File_) :: meshfile, hdf5file
+TYPE( ParameterList_ ) :: param
+TYPE( RealMatrix_ ) :: realmat
+INTEGER( I4B ) :: ierr
+REAL( DFP ), ALLOCATABLE :: realVec( : )
+CHARACTER(LEN=*), parameter :: filename="./test_4.h5"
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "" ); CALL meshfile%Close()
- CALL dom%InitiateNodeToNodes()
- CALL meshfile%Deallocate()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "" ); CALL meshfile%Close()
+CALL dom%InitiateNodeToNodes()
+CALL meshfile%Deallocate()
```
```fortran
- CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
- & spaceCompo=1, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
- CALL obj%Initiate( param, dom )
+CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
+ & spaceCompo=1, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
+CALL obj%Initiate( param, dom )
```
```fortran
- CALL hdf5file%Initiate( filename=filename, mode="NEW" )
- CALL hdf5file%Open()
- CALL obj%Export(hdf5=hdf5file,group='/matrixField')
+CALL hdf5file%Initiate( filename=filename, mode="NEW" )
+CALL hdf5file%Open()
+CALL obj%Export(hdf5=hdf5file,group='/matrixField')
```
```fortran
- CALL Initiate( realmat, 3, 3 )
- CALL SET(realmat, val=[1.0_DFP, 2._DFP, 3._DFP], indx=1, &
- & extraOption=MATRIX_ROW)
- CALL SET(realmat, val=[4.0_DFP, 5._DFP, 6._DFP], indx=2, &
- & extraOption=MATRIX_ROW)
- CALL SET(realmat, val=[7.0_DFP, 8._DFP, 9._DFP], indx=3, &
- & extraOption=MATRIX_ROW)
+CALL Initiate( realmat, 3, 3 )
+CALL SET(realmat, val=[1.0_DFP, 2._DFP, 3._DFP], indx=1, &
+ & extraOption=MATRIX_ROW)
+CALL SET(realmat, val=[4.0_DFP, 5._DFP, 6._DFP], indx=2, &
+ & extraOption=MATRIX_ROW)
+CALL SET(realmat, val=[7.0_DFP, 8._DFP, 9._DFP], indx=3, &
+ & extraOption=MATRIX_ROW)
```
```fortran
- CALL obj%Set( globalNode=[1,2,5], value=realmat%val, storageFMT=FMT_NODES )
- realmat = obj%mat
- CALL hdf5file%write( '/Ans1', realmat%val )
+CALL obj%Set( globalNode=[1,2,5], value=realmat%val, storageFMT=FMT_NODES )
+realmat = obj%mat
+CALL hdf5file%write( '/Ans1', realmat%val )
```
```fortran
- CALL obj%Deallocate()
- CALL dom%Deallocate()
- CALL meshfile%Deallocate()
- CALL param%Deallocate(); CALL FPL_FINALIZE()
+CALL obj%Deallocate()
+CALL dom%Deallocate()
+CALL meshfile%Deallocate()
+CALL param%Deallocate(); CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_4.md b/docs/docs-api/MatrixField/_MatrixField_test_4.md
index 9b1cd53f..b5b6c5ec 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_4.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_4.md
@@ -15,40 +15,39 @@ PROGRAM main
```
```fortran
- TYPE( Domain_) :: dom
- TYPE( MatrixField_ ) :: obj
- TYPE( HDF5File_) :: meshfile, outfile
- TYPE( ParameterList_ ) :: param
- INTEGER( I4B ) :: ierr
- REAL( DFP ), ALLOCATABLE :: realVec( : ), amat(:, : )
+TYPE( Domain_) :: dom
+TYPE( MatrixField_ ) :: obj
+TYPE( HDF5File_) :: meshfile, outfile
+TYPE( ParameterList_ ) :: param
+INTEGER( I4B ) :: ierr
+REAL( DFP ), ALLOCATABLE :: realVec( : ), amat(:, : )
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%Open()
- CALL dom%Initiate( meshfile, "" )
- CALL dom%InitiateNodeToNodes()
- CALL meshfile%Deallocate()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL meshfile%Initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%Open()
+CALL dom%Initiate( meshfile, "" )
+CALL dom%InitiateNodeToNodes()
+CALL meshfile%Deallocate()
```
-
```fortran
- CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
- & spaceCompo=1, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
- CALL obj%Initiate( param, dom )
+CALL SetMatrixFieldParam( param=param, name="K", matrixProp="UNSYM", &
+ & spaceCompo=1, timeCompo=1, fieldType=FIELD_TYPE_NORMAL )
+CALL obj%Initiate( param, dom )
```
```fortran
- CALL obj%Set( globalNode = [5], value= 100.0_DFP )
- amat = obj%mat
- CALL Display( MdEncode(amat), "obj%mat = ")
+CALL obj%Set( globalNode = [5], value= 100.0_DFP )
+amat = obj%mat
+CALL Display( MdEncode(amat), "obj%mat = ")
```
result:
| | | | | |
-|---|---|---|---|-----|
+| - | - | - | - | --- |
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 |
@@ -56,15 +55,15 @@ result:
| 0 | 0 | 0 | 0 | 100 |
```fortran
- CALL obj%Set( value= 200.0_DFP )
- amat = obj%mat
- CALL Display( MdEncode(amat), "obj%mat = " // char_lf)
+CALL obj%Set( value= 200.0_DFP )
+amat = obj%mat
+CALL Display( MdEncode(amat), "obj%mat = " // char_lf)
```
result:
| | | | | |
-|-----|-----|-----|-----|-----|
+| --- | --- | --- | --- | --- |
| 200 | 200 | 0 | 200 | 200 |
| 200 | 200 | 200 | 0 | 200 |
| 0 | 200 | 200 | 200 | 200 |
@@ -72,15 +71,15 @@ result:
| 200 | 200 | 200 | 200 | 200 |
```fortran
- CALL obj%Set(globalNode=[1,2,5], value=0.0_DFP )
- amat = obj%mat
- CALL Display( MdEncode(amat), "obj%mat = " // char_lf)
+CALL obj%Set(globalNode=[1,2,5], value=0.0_DFP )
+amat = obj%mat
+CALL Display( MdEncode(amat), "obj%mat = " // char_lf)
```
Result:
| | | | | |
-|-----|-----|-----|-----|-----|
+| --- | --- | --- | --- | --- |
| 0 | 0 | 0 | 200 | 0 |
| 0 | 0 | 200 | 0 | 0 |
| 0 | 200 | 200 | 200 | 200 |
@@ -90,9 +89,9 @@ Result:
Cleanup:
```fortran
- CALL obj%Deallocate()
- CALL dom%Deallocate()
- CALL param%Deallocate(); CALL FPL_FINALIZE()
+CALL obj%Deallocate()
+CALL dom%Deallocate()
+CALL param%Deallocate(); CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_5.md b/docs/docs-api/MatrixField/_MatrixField_test_5.md
index dffc3b90..e6bd1a94 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_5.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_5.md
@@ -1,4 +1,3 @@
-
```fortran
! subroutine test0
! type( domain_) :: dom
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_7.md b/docs/docs-api/MatrixField/_MatrixField_test_7.md
index 5a2dc3ac..b4bcb19f 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_7.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_7.md
@@ -1,4 +1,3 @@
-
```fortran
program main
use easifemBase
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_8.md b/docs/docs-api/MatrixField/_MatrixField_test_8.md
index 2d49c782..707ec9cb 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_8.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_8.md
@@ -16,63 +16,62 @@ PROGRAM main
!!! note "Declare variables"
```fortran
- TYPE( Domain_ ), TARGET :: vel_dom, press_dom
- TYPE( DomainPointer_ ) :: domains(2)
+TYPE( Domain_ ), TARGET :: vel_dom, press_dom
+TYPE( DomainPointer_ ) :: domains(2)
```
- [Domain_](../Domain/Domain_.md) for velocity and pressure
```fortran
- TYPE( MatrixField_ ) :: obj
+TYPE( MatrixField_ ) :: obj
```
- [MatrixField_](../MatrixField/MatrixField_.md)
```fortran
- TYPE( HDF5File_ ) :: vel_dom_file
- TYPE( HDF5File_ ) :: press_dom_file
- TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: vel_dom_file
+TYPE( HDF5File_ ) :: press_dom_file
+TYPE( HDF5File_ ) :: outfile
```
- [HDF5File_](../HDF5File/HDF5File_.md) domain file for velocity, pressure, and output file.
```fortran
- CHARACTER(LEN=*), PARAMETER :: vel_dom_filename="../data/mesh1_tri6.h5"
- CHARACTER(LEN=*), PARAMETER :: press_dom_filename="../data/mesh1_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: outfilename="./test_9.h5"
+CHARACTER(LEN=*), PARAMETER :: vel_dom_filename="../data/mesh1_tri6.h5"
+CHARACTER(LEN=*), PARAMETER :: press_dom_filename="../data/mesh1_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: outfilename="./test_9.h5"
```
- velocity, pressure and output file name.
```fortran
- TYPE( ParameterList_ ) :: param
+TYPE( ParameterList_ ) :: param
```
- [ParameterList_](../ParameterList/ParameterList_.md)
```fortran
- INTEGER( I4B ) :: ierr
- REAL(DFP), ALLOCATABLE :: amat(:,:)
+INTEGER( I4B ) :: ierr
+REAL(DFP), ALLOCATABLE :: amat(:,:)
```
-
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL vel_dom_file%Initiate( filename=vel_dom_filename, mode="READ" )
- CALL vel_dom_file%Open()
- CALL vel_dom%Initiate( vel_dom_file, "" )
- CALL vel_dom%InitiateNodeToNodes()
- CALL vel_dom_file%Deallocate()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL vel_dom_file%Initiate( filename=vel_dom_filename, mode="READ" )
+CALL vel_dom_file%Open()
+CALL vel_dom%Initiate( vel_dom_file, "" )
+CALL vel_dom%InitiateNodeToNodes()
+CALL vel_dom_file%Deallocate()
```
Make domain of pressure.
```fortran
- CALL press_dom_file%Initiate( filename=press_dom_filename, mode="READ" )
- CALL press_dom_file%Open()
- CALL press_dom%Initiate( press_dom_file, "" )
- CALL press_dom%InitiateNodeToNodes()
- CALL press_dom_file%Deallocate()
+CALL press_dom_file%Initiate( filename=press_dom_filename, mode="READ" )
+CALL press_dom_file%Open()
+CALL press_dom%Initiate( press_dom_file, "" )
+CALL press_dom%InitiateNodeToNodes()
+CALL press_dom_file%Deallocate()
```
SetRectangleMatrixFieldParam
@@ -80,17 +79,17 @@ SetRectangleMatrixFieldParam
- [SetRectangleMatrixFieldParam](SetRectangleMatrixFieldParam.md)
```fortran
- CALL SetRectangleMatrixFieldParam( &
- & param=param, &
- & name="G", &
- & matrixProp="RECTANGLE", &
- & physicalVarNames=["V", "P"], &
- & spaceCompo=[2, 1], &
- & timeCompo=[1,1], &
- & fieldType=FIELD_TYPE_NORMAL )
- !!
- CALL param%Display("")
- !!
+CALL SetRectangleMatrixFieldParam( &
+ & param=param, &
+ & name="G", &
+ & matrixProp="RECTANGLE", &
+ & physicalVarNames=["V", "P"], &
+ & spaceCompo=[2, 1], &
+ & timeCompo=[1,1], &
+ & fieldType=FIELD_TYPE_NORMAL )
+!!
+CALL param%Display("")
+!!
```
Result
@@ -107,14 +106,14 @@ Result
```
```fortran
- domains(1)%ptr => vel_dom
- domains(2)%ptr => press_dom
- CALL obj%Initiate( param, domains )
+domains(1)%ptr => vel_dom
+domains(2)%ptr => press_dom
+CALL obj%Initiate( param, domains )
```
```fortran
- amat = obj%mat
- CALL Display(SHAPE(obj%mat), "shape = ")
+amat = obj%mat
+CALL Display(SHAPE(obj%mat), "shape = ")
```
```txt
@@ -125,18 +124,18 @@ shape =
```
```fortran
- CALL obj%Display("Gmat = ")
+CALL obj%Display("Gmat = ")
```
```fortran
- CALL obj%SPY(filename="./test_9", ext=".svg")
+CALL obj%SPY(filename="./test_9", ext=".svg")
```
```fortran
- CALL outfile%Initiate(filename=outfilename, mode="NEW" )
- CALL outfile%Open()
- CALL obj%export(hdf5=outfile, group="/Gmat")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(filename=outfilename, mode="NEW" )
+CALL outfile%Open()
+CALL obj%export(hdf5=outfile, group="/Gmat")
+CALL outfile%Deallocate()
```
```txt
@@ -223,7 +222,6 @@ shape =

-
```fortran
CALL obj%Deallocate()
CALL vel_dom%Deallocate()
diff --git a/docs/docs-api/MatrixField/_MatrixField_test_9.md b/docs/docs-api/MatrixField/_MatrixField_test_9.md
index 6176bb83..9c4b7d05 100644
--- a/docs/docs-api/MatrixField/_MatrixField_test_9.md
+++ b/docs/docs-api/MatrixField/_MatrixField_test_9.md
@@ -1,4 +1,4 @@
-In this example we initiate a rectangle matrix, such matrices are necessary in mixed finite element formulation, where different order interpolation is used.
+In this example we initiate a rectangle matrix, such matrices are necessary in mixed finite element formulation, where different order interpolation is used.
```fortran
PROGRAM main
@@ -8,71 +8,71 @@ PROGRAM main
```
```fortran
- TYPE( Domain_ ), TARGET :: vel_dom, press_dom
- TYPE( DomainPointer_ ) :: domains(2)
+TYPE( Domain_ ), TARGET :: vel_dom, press_dom
+TYPE( DomainPointer_ ) :: domains(2)
```
```fortran
- TYPE( MatrixField_ ) :: obj
+TYPE( MatrixField_ ) :: obj
```
```fortran
- TYPE( HDF5File_ ) :: vel_dom_file
- TYPE( HDF5File_ ) :: press_dom_file
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: importfile
+TYPE( HDF5File_ ) :: vel_dom_file
+TYPE( HDF5File_ ) :: press_dom_file
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: importfile
```
```fortran
- CHARACTER(LEN=*), PARAMETER :: vel_dom_filename="../data/mesh1_tri6.h5"
- CHARACTER(LEN=*), PARAMETER :: press_dom_filename="../data/mesh1_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: importfilename="./test_9.h5"
- CHARACTER( LEN = * ), PARAMETER :: outfilename="./test_10.h5"
+CHARACTER(LEN=*), PARAMETER :: vel_dom_filename="../data/mesh1_tri6.h5"
+CHARACTER(LEN=*), PARAMETER :: press_dom_filename="../data/mesh1_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: importfilename="./test_9.h5"
+CHARACTER( LEN = * ), PARAMETER :: outfilename="./test_10.h5"
```
```fortran
- TYPE( ParameterList_ ) :: param
+TYPE( ParameterList_ ) :: param
```
```fortran
- INTEGER( I4B ) :: ierr
- REAL(DFP), ALLOCATABLE :: amat(:,:)
+INTEGER( I4B ) :: ierr
+REAL(DFP), ALLOCATABLE :: amat(:,:)
```
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- CALL vel_dom_file%Initiate( filename=vel_dom_filename, mode="READ" )
- CALL vel_dom_file%Open()
- CALL vel_dom%Initiate( vel_dom_file, "" )
- CALL vel_dom%InitiateNodeToNodes()
- CALL vel_dom_file%Deallocate()
+CALL FPL_INIT(); CALL param%Initiate()
+CALL vel_dom_file%Initiate( filename=vel_dom_filename, mode="READ" )
+CALL vel_dom_file%Open()
+CALL vel_dom%Initiate( vel_dom_file, "" )
+CALL vel_dom%InitiateNodeToNodes()
+CALL vel_dom_file%Deallocate()
```
```fortran
- CALL press_dom_file%Initiate( filename=press_dom_filename, mode="READ" )
- CALL press_dom_file%Open()
- CALL press_dom%Initiate( press_dom_file, "" )
- CALL press_dom%InitiateNodeToNodes()
- CALL press_dom_file%Deallocate()
+CALL press_dom_file%Initiate( filename=press_dom_filename, mode="READ" )
+CALL press_dom_file%Open()
+CALL press_dom%Initiate( press_dom_file, "" )
+CALL press_dom%InitiateNodeToNodes()
+CALL press_dom_file%Deallocate()
```
```fortran
- domains(1)%ptr => vel_dom
- domains(2)%ptr => press_dom
- CALL importfile%initiate(filename=importfilename, mode="READ")
- CALL importfile%open()
- CALL obj%Import( hdf5=importfile, domains=domains, group="/Gmat" )
- CALL importfile%Deallocate()
- call display("success")
+domains(1)%ptr => vel_dom
+domains(2)%ptr => press_dom
+CALL importfile%initiate(filename=importfilename, mode="READ")
+CALL importfile%open()
+CALL obj%Import( hdf5=importfile, domains=domains, group="/Gmat" )
+CALL importfile%Deallocate()
+call display("success")
```
```fortran
- amat = obj%mat
- CALL Display(SHAPE(obj%mat), "shape = ")
+amat = obj%mat
+CALL Display(SHAPE(obj%mat), "shape = ")
```
```fortran
- CALL obj%Display("Gmat = ")
+CALL obj%Display("Gmat = ")
```
Result:
@@ -159,16 +159,16 @@ Result:
```
```fortran
- CALL obj%SPY(filename="./test_10", ext=".svg")
+CALL obj%SPY(filename="./test_10", ext=".svg")
```

```fortran
- CALL outfile%Initiate(filename=outfilename, mode="NEW" )
- CALL outfile%Open()
- CALL obj%export(hdf5=outfile, group="/Gmat")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(filename=outfilename, mode="NEW" )
+CALL outfile%Open()
+CALL obj%export(hdf5=outfile, group="/Gmat")
+CALL outfile%Deallocate()
```
```fortran
diff --git a/docs/docs-api/MatrixFieldLis/GetRow.md b/docs/docs-api/MatrixFieldLis/GetRow.md
index 4c699b00..0e3be7e3 100644
--- a/docs/docs-api/MatrixFieldLis/GetRow.md
+++ b/docs/docs-api/MatrixFieldLis/GetRow.md
@@ -41,7 +41,7 @@ calculated using the `globalNode` and `idof`.
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -79,7 +79,7 @@ calculated using the `globalNode`, `idof`, and `ivar`.
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -118,7 +118,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -157,7 +157,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -196,7 +196,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -235,7 +235,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
@@ -274,7 +274,7 @@ calculated using the (`globalNode`, `ivar`, `spacecompo`, `timecompo`).
- If `value` is present then the vector is returned inside the rank 1 vector
- If `nodeFieldVal` is present then the row is returned inside the
-node field
+ node field
diff --git a/docs/docs-api/MatrixFieldLis/ILUSolve.md b/docs/docs-api/MatrixFieldLis/ILUSolve.md
index 9c786308..f6d4f612 100644
--- a/docs/docs-api/MatrixFieldLis/ILUSolve.md
+++ b/docs/docs-api/MatrixFieldLis/ILUSolve.md
@@ -30,7 +30,6 @@ INTERFACE
END INTERFACE
```
-
```fortran
! If transp is not present or it is false then:
! This routine solves (LU) sol = rhs
diff --git a/docs/docs-api/MatrixFieldLis/Initiate.md b/docs/docs-api/MatrixFieldLis/Initiate.md
index 4234a51f..98d3f7f7 100644
--- a/docs/docs-api/MatrixFieldLis/Initiate.md
+++ b/docs/docs-api/MatrixFieldLis/Initiate.md
@@ -51,9 +51,9 @@ contained inside param, which is an instance of [ParameterList_](../ParameterLis
In addition, [Domain_](../Domain/Domain_.md) `dom` is target to the pointer `obj%domain`.
- Param contains both essential and optional parameters which are used in
-constructing the matrix field
+ constructing the matrix field
- dom is a pointer to a domain, where we are interested in constructing the
-matrix
+ matrix
ESSENTIAL PARAMETERS are
@@ -99,8 +99,7 @@ In this way we try to minimize the computation effort.
If `copyFull, copyStructure, usePointer` are absent then this subroutine,
copies the value of the matrix from obj2 to obj.
-At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE.,
-usePointer=.TRUE.`, which equivalent to the default behavior.
+At present, the routine works for `copyFull=.TRUE., copyStructure=.TRUE., usePointer=.TRUE.`, which equivalent to the default behavior.
- [ ] TODO Add functionality for other options too.
diff --git a/docs/docs-api/MatrixFieldLis/Set.md b/docs/docs-api/MatrixFieldLis/Set.md
index 76abf2ba..1440e5e7 100644
--- a/docs/docs-api/MatrixFieldLis/Set.md
+++ b/docs/docs-api/MatrixFieldLis/Set.md
@@ -108,10 +108,10 @@ IF `addContribution` and `scale` is ABSENT then:
- This subroutine sets a block of data to matrix.
- This block data is contained in `value(:,:)`
- The size of `value` should be `tdof *size( globalNode )`, where
- `tdof` is the total degrees of freedom
+ `tdof` is the total degrees of freedom
- `globalNode` contains the global node number
- `storageFMT` is the storage format of `value(:,:)`, it can be `DOF_FMT`, or
- `FMT_NODES`.
+ `FMT_NODES`.
If `addContribution` and `scale` are present then:
@@ -451,7 +451,7 @@ import EXAMPLE443 from "./_MatrixField_test_9.md";
-
+
## Interface 8
@@ -502,7 +502,7 @@ import EXAMPLE494 from "./_MatrixField_test_10.md";
-
+
## Interface 9
diff --git a/docs/docs-api/MatrixFieldLis/SetColumn.md b/docs/docs-api/MatrixFieldLis/SetColumn.md
index 11baa0cc..8aa973e0 100644
--- a/docs/docs-api/MatrixFieldLis/SetColumn.md
+++ b/docs/docs-api/MatrixFieldLis/SetColumn.md
@@ -38,9 +38,9 @@ This routine sets the column of a sparse matrix. The column index is calculated
- `globalNode` is global node number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -77,9 +77,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -118,9 +118,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -159,9 +159,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -241,9 +241,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -282,9 +282,9 @@ This routine sets the col of a sparse matrix. The col index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the col will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the col will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/MatrixFieldLis/SetRow.md b/docs/docs-api/MatrixFieldLis/SetRow.md
index 56beb09d..ccdbe996 100644
--- a/docs/docs-api/MatrixFieldLis/SetRow.md
+++ b/docs/docs-api/MatrixFieldLis/SetRow.md
@@ -38,9 +38,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `globalNode` is global node number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -77,9 +77,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `ivar` is the physical variable number.
- `idof` is the degree of freedom number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -118,9 +118,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -159,9 +159,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -200,9 +200,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -241,9 +241,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
@@ -282,9 +282,9 @@ This routine sets the row of a sparse matrix. The row index is calculated by usi
- `spacecompo` is the space component number.
- `timecompo` is the time component number.
- `scalarVal` is the scalar value, if present then the row will be Set to
-this scalar value
+ this scalar value
- `vectorVal` is the vector value, if present then the row will be Set to
-this vector value
+ this vector value
- `nodeFieldVal` is the field of nodal values.
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_10.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_10.md
index 112c42fc..b4c6a3a5 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_10.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_10.md
@@ -61,8 +61,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_11.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_11.md
index e000e1a8..98ddbd59 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_11.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_11.md
@@ -61,8 +61,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_12.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_12.md
index 65c248d1..fa1852be 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_12.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_12.md
@@ -61,8 +61,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_2.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_2.md
index 7be4683c..977746c7 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_2.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_2.md
@@ -1,4 +1,4 @@
-In this example we initiate an instance of Matrix by copying contents from other matrix.
+In this example we initiate an instance of Matrix by copying contents from other matrix.
```fortran
PROGRAM main
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_3.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_3.md
index ca384e59..782005f7 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_3.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_3.md
@@ -64,8 +64,8 @@ Results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_4.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_4.md
index 9e2b3f6b..54757806 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_4.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_4.md
@@ -54,8 +54,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_5.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_5.md
index 148c3bc1..7d0cfe08 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_5.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_5.md
@@ -57,8 +57,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_6.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_6.md
index bf4556dc..49bad44f 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_6.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_6.md
@@ -67,8 +67,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_7.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_7.md
index 85dbceb4..e8e01308 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_7.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_7.md
@@ -68,8 +68,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 1 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_8.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_8.md
index 268c0ba3..cfe81993 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_8.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_8.md
@@ -59,8 +59,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MatrixFieldLis/_MatrixField_test_9.md b/docs/docs-api/MatrixFieldLis/_MatrixField_test_9.md
index a8d9bd4b..122e7398 100644
--- a/docs/docs-api/MatrixFieldLis/_MatrixField_test_9.md
+++ b/docs/docs-api/MatrixFieldLis/_MatrixField_test_9.md
@@ -61,8 +61,8 @@ results:
obj%mat =
-| | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | - | - | - |
| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/MdEncode/MdEncode.md b/docs/docs-api/MdEncode/MdEncode.md
index b5772166..4ab3750a 100644
--- a/docs/docs-api/MdEncode/MdEncode.md
+++ b/docs/docs-api/MdEncode/MdEncode.md
@@ -18,26 +18,24 @@ tags:
This module converts Fortran intrinsic types into Markdown format.
-## Example 1
+## Example 1
import EXAMPLE23 from "./_MdEncode_test_1.md";
-
-## Example 2
+## Example 2
import EXAMPLE30 from "./_MdEncode_test_2.md";
-## Example 3
+## Example 3
import EXAMPLE36 from "./_MdEncode_test_3.md";
-
## Example 4
import EXAMPLE43 from "./_MdEncode_test_4.md";
@@ -50,8 +48,7 @@ import EXAMPLE49 from "./_MdEncode_test_5.md";
-
-## Example 6
+## Example 6
import EXAMPLE56 from "./_MdEncode_test_6.md";
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_1.md b/docs/docs-api/MdEncode/_MdEncode_test_1.md
index 5187ff9d..46f01e46 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_1.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_1.md
@@ -16,35 +16,29 @@ integer( i4b ), allocatable :: ivec( : ), i2vec(:,:)
See results:
-
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | |
+| - | - | - | - | - | - | - | - | - | -- |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
-
-
-
```fortran
- i2vec = reshape( [1,2,3,4,5,6,7,8,9,10], [2,5] )
- astr = MdEncode( i2vec )
- CALL Display( astr, "astr" // CHAR_LF )
- write( *, "(A)" ) astr%chars()
+i2vec = reshape( [1,2,3,4,5,6,7,8,9,10], [2,5] )
+astr = MdEncode( i2vec )
+CALL Display( astr, "astr" // CHAR_LF )
+write( *, "(A)" ) astr%chars()
```
-
See results
-| | | | | |
-| --- | --- | --- | --- | --- |
-| 1 | 3 | 5 | 7 | 9 |
+| | | | | |
+| - | - | - | - | -- |
+| 1 | 3 | 5 | 7 | 9 |
| 2 | 4 | 6 | 8 | 10 |
-
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_2.md b/docs/docs-api/MdEncode/_MdEncode_test_2.md
index 414625cc..adeb6b01 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_2.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_2.md
@@ -19,17 +19,17 @@ END PROGRAM main
| Col heading |
-| --- |
-| 1 |
-| 2 |
-| 3 |
-| 4 |
-| 5 |
-| 6 |
-| 7 |
-| 8 |
-| 9 |
-| 10 |
+| ----------- |
+| 1 |
+| 2 |
+| 3 |
+| 4 |
+| 5 |
+| 6 |
+| 7 |
+| 8 |
+| 9 |
+| 10 |
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_3.md b/docs/docs-api/MdEncode/_MdEncode_test_3.md
index 600f3d81..39aa4c2c 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_3.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_3.md
@@ -24,18 +24,18 @@ END PROGRAM main
See results
-| | Col heading |
-| --- | --- |
-| row-1 | 1 |
-| row-2 | 2 |
-| row-3 | 3 |
-| row-4 | 4 |
-| row-5 | 5 |
-| row-6 | 6 |
-| row-7 | 7 |
-| row-8 | 8 |
-| row-9 | 9 |
-| row-10 | 10 |
+| | Col heading |
+| ------ | ----------- |
+| row-1 | 1 |
+| row-2 | 2 |
+| row-3 | 3 |
+| row-4 | 4 |
+| row-5 | 5 |
+| row-6 | 6 |
+| row-7 | 7 |
+| row-8 | 8 |
+| row-9 | 9 |
+| row-10 | 10 |
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_4.md b/docs/docs-api/MdEncode/_MdEncode_test_4.md
index 28b0b4a9..fa191425 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_4.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_4.md
@@ -24,10 +24,9 @@ END PROGRAM main
See results
-
-| | col-1 |col-2 |col-3 |col-4 |col-5 |col-6 |col-7 |col-8 |col-9 |col-10 |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| Row heading |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |
+| | col-1 | col-2 | col-3 | col-4 | col-5 | col-6 | col-7 | col-8 | col-9 | col-10 |
+| ----------- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ------ |
+| Row heading | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_5.md b/docs/docs-api/MdEncode/_MdEncode_test_5.md
index 6c0fab2a..24143353 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_5.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_5.md
@@ -18,10 +18,9 @@ END PROGRAM main
See results
-
-| | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| Row heading |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |
+| | | | | | | | | | | |
+| ----------- | - | - | - | - | - | - | - | - | - | -- |
+| Row heading | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
diff --git a/docs/docs-api/MdEncode/_MdEncode_test_6.md b/docs/docs-api/MdEncode/_MdEncode_test_6.md
index 23defe90..c31e27dc 100644
--- a/docs/docs-api/MdEncode/_MdEncode_test_6.md
+++ b/docs/docs-api/MdEncode/_MdEncode_test_6.md
@@ -28,12 +28,11 @@ END PROGRAM main
See results
-
-| | col-1 | col-2 | col-3 | col-4 |
-| --- | --- | --- | --- | --- |
-| row-1 | 0.32706 | 0.66536 | 0.84993 | 0.11635 |
-| row-2 | 0.57136 | 0.53878 | 0.87319 | 7.87399E-02 |
-| row-3 | 0.85594 | 0.28422 | 0.46758 | 0.47219 |
+| | col-1 | col-2 | col-3 | col-4 |
+| ----- | ------- | ------- | ------- | ----------- |
+| row-1 | 0.32706 | 0.66536 | 0.84993 | 0.11635 |
+| row-2 | 0.57136 | 0.53878 | 0.87319 | 7.87399E-02 |
+| row-3 | 0.85594 | 0.28422 | 0.46758 | 0.47219 |
diff --git a/docs/docs-api/Mesh/Deallocate.md b/docs/docs-api/Mesh/Deallocate.md
index 5e98380c..88d4830f 100644
--- a/docs/docs-api/Mesh/Deallocate.md
+++ b/docs/docs-api/Mesh/Deallocate.md
@@ -2,11 +2,10 @@
Deallocate the data stored in the mesh object.
-:::info
+:::info
This method is overloaded in Mesh.
:::
-
```fortran
INTERFACE
MODULE SUBROUTINE obj_Deallocate(obj)
diff --git a/docs/docs-api/Mesh/Display.md b/docs/docs-api/Mesh/Display.md
index 3c54a420..aa55a3f4 100644
--- a/docs/docs-api/Mesh/Display.md
+++ b/docs/docs-api/Mesh/Display.md
@@ -2,7 +2,7 @@
Display the contents of the mesh object.
-:::info
+:::info
This method is overloaded in Mesh.
:::
diff --git a/docs/docs-api/Mesh/DisplayElementData.md b/docs/docs-api/Mesh/DisplayElementData.md
index 1e8fe337..aa294785 100644
--- a/docs/docs-api/Mesh/DisplayElementData.md
+++ b/docs/docs-api/Mesh/DisplayElementData.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/DisplayElementData.md";
-
diff --git a/docs/docs-api/Mesh/DisplayFacetElemSD.md b/docs/docs-api/Mesh/DisplayFacetElemSD.md
index b06bbfc6..82131050 100644
--- a/docs/docs-api/Mesh/DisplayFacetElemSD.md
+++ b/docs/docs-api/Mesh/DisplayFacetElemSD.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/DisplayFacetElemSD.md";
-
diff --git a/docs/docs-api/Mesh/GetBoundaryElementData.md b/docs/docs-api/Mesh/GetBoundaryElementData.md
index 0ad84216..c997888f 100644
--- a/docs/docs-api/Mesh/GetBoundaryElementData.md
+++ b/docs/docs-api/Mesh/GetBoundaryElementData.md
@@ -9,5 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetBoundaryElementData.md";
-
-
diff --git a/docs/docs-api/Mesh/GetBoundaryNptrs.md b/docs/docs-api/Mesh/GetBoundaryNptrs.md
index a61fa4fb..2fa35c6f 100644
--- a/docs/docs-api/Mesh/GetBoundaryNptrs.md
+++ b/docs/docs-api/Mesh/GetBoundaryNptrs.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetBoundaryNptrs.md";
-
diff --git a/docs/docs-api/Mesh/GetBoundingBox.md b/docs/docs-api/Mesh/GetBoundingBox.md
index 9e8f2081..63b2fcd9 100644
--- a/docs/docs-api/Mesh/GetBoundingBox.md
+++ b/docs/docs-api/Mesh/GetBoundingBox.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetBoundingBox.md";
-
diff --git a/docs/docs-api/Mesh/GetCellNumber.md b/docs/docs-api/Mesh/GetCellNumber.md
index 794c8b68..169df68a 100644
--- a/docs/docs-api/Mesh/GetCellNumber.md
+++ b/docs/docs-api/Mesh/GetCellNumber.md
@@ -9,5 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetCellNumber.md";
-
-
diff --git a/docs/docs-api/Mesh/GetElemNum.md b/docs/docs-api/Mesh/GetElemNum.md
index 674df0c0..04a44804 100644
--- a/docs/docs-api/Mesh/GetElemNum.md
+++ b/docs/docs-api/Mesh/GetElemNum.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetElemNum.md";
-
diff --git a/docs/docs-api/Mesh/GetElementToElements.md b/docs/docs-api/Mesh/GetElementToElements.md
index 444a3565..390b61c9 100644
--- a/docs/docs-api/Mesh/GetElementToElements.md
+++ b/docs/docs-api/Mesh/GetElementToElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetElementToElements.md";
-
diff --git a/docs/docs-api/Mesh/GetFacetConnectivity.md b/docs/docs-api/Mesh/GetFacetConnectivity.md
index fd70f6d2..cbf4e173 100644
--- a/docs/docs-api/Mesh/GetFacetConnectivity.md
+++ b/docs/docs-api/Mesh/GetFacetConnectivity.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetFacetConnectivity.md";
-
diff --git a/docs/docs-api/Mesh/GetGlobalElemNumber.md b/docs/docs-api/Mesh/GetGlobalElemNumber.md
index 8a30cfd1..c17e1a7f 100644
--- a/docs/docs-api/Mesh/GetGlobalElemNumber.md
+++ b/docs/docs-api/Mesh/GetGlobalElemNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetGlobalElemNumber.md";
-
diff --git a/docs/docs-api/Mesh/GetGlobalNodeNumber.md b/docs/docs-api/Mesh/GetGlobalNodeNumber.md
index 9c17eaad..154ca99e 100644
--- a/docs/docs-api/Mesh/GetGlobalNodeNumber.md
+++ b/docs/docs-api/Mesh/GetGlobalNodeNumber.md
@@ -9,6 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetGlobalNodeNumber.md";
-
-
-
diff --git a/docs/docs-api/Mesh/GetLocalNodeNumber.md b/docs/docs-api/Mesh/GetLocalNodeNumber.md
index ac84cfaa..f47f223f 100644
--- a/docs/docs-api/Mesh/GetLocalNodeNumber.md
+++ b/docs/docs-api/Mesh/GetLocalNodeNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetLocalNodeNumber.md";
-
diff --git a/docs/docs-api/Mesh/GetMasterCellNumber.md b/docs/docs-api/Mesh/GetMasterCellNumber.md
index c3f44384..abb349a7 100644
--- a/docs/docs-api/Mesh/GetMasterCellNumber.md
+++ b/docs/docs-api/Mesh/GetMasterCellNumber.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetMasterCellNumber.md";
-
diff --git a/docs/docs-api/Mesh/GetNodeToElements.md b/docs/docs-api/Mesh/GetNodeToElements.md
index b5bd75b6..d4a4d791 100644
--- a/docs/docs-api/Mesh/GetNodeToElements.md
+++ b/docs/docs-api/Mesh/GetNodeToElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetNodeToNodes.md";
-
diff --git a/docs/docs-api/Mesh/GetNodeToNodes.md b/docs/docs-api/Mesh/GetNodeToNodes.md
index cd87714e..553de637 100644
--- a/docs/docs-api/Mesh/GetNodeToNodes.md
+++ b/docs/docs-api/Mesh/GetNodeToNodes.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetNodeToNodes.md";
-
diff --git a/docs/docs-api/Mesh/GetNptrs.md b/docs/docs-api/Mesh/GetNptrs.md
index 7f72b9fe..517fc3ae 100644
--- a/docs/docs-api/Mesh/GetNptrs.md
+++ b/docs/docs-api/Mesh/GetNptrs.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetNptrs.md";
-
diff --git a/docs/docs-api/Mesh/GetRefElemPointer.md b/docs/docs-api/Mesh/GetRefElemPointer.md
index 0a51c7d3..05221638 100644
--- a/docs/docs-api/Mesh/GetRefElemPointer.md
+++ b/docs/docs-api/Mesh/GetRefElemPointer.md
@@ -5,8 +5,8 @@ This function returns a pointer to the reference element object associated with
## Interface
```fortran
- MODULE FUNCTION getRefElemPointer(obj) RESULT(ans)
- CLASS(Mesh_), INTENT(IN) :: obj
- CLASS(ReferenceElement_), POINTER :: ans
- END FUNCTION getRefElemPointer
+MODULE FUNCTION getRefElemPointer(obj) RESULT(ans)
+ CLASS(Mesh_), INTENT(IN) :: obj
+ CLASS(ReferenceElement_), POINTER :: ans
+END FUNCTION getRefElemPointer
```
diff --git a/docs/docs-api/Mesh/GetTotalBoundaryElements.md b/docs/docs-api/Mesh/GetTotalBoundaryElements.md
index f33f1606..e04cee49 100644
--- a/docs/docs-api/Mesh/GetTotalBoundaryElements.md
+++ b/docs/docs-api/Mesh/GetTotalBoundaryElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetTotalBoundaryElements.md";
-
diff --git a/docs/docs-api/Mesh/GetTotalFacetElements.md b/docs/docs-api/Mesh/GetTotalFacetElements.md
index 14558284..a56b6151 100644
--- a/docs/docs-api/Mesh/GetTotalFacetElements.md
+++ b/docs/docs-api/Mesh/GetTotalFacetElements.md
@@ -5,8 +5,8 @@ This function returns the total number of facet elements in the mesh.
## Interface
```fortran
- MODULE PURE FUNCTION getTotalFacetElements( obj ) RESULT( ans )
- CLASS(Mesh_), INTENT( IN ) :: obj
- INTEGER( I4B ) :: ans
- END FUNCTION getTotalFacetElements
+MODULE PURE FUNCTION getTotalFacetElements( obj ) RESULT( ans )
+ CLASS(Mesh_), INTENT( IN ) :: obj
+ INTEGER( I4B ) :: ans
+END FUNCTION getTotalFacetElements
```
diff --git a/docs/docs-api/Mesh/GetTotalInternalFacetElements.md b/docs/docs-api/Mesh/GetTotalInternalFacetElements.md
index 03c28410..34820efe 100644
--- a/docs/docs-api/Mesh/GetTotalInternalFacetElements.md
+++ b/docs/docs-api/Mesh/GetTotalInternalFacetElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/GetTotalInternalFacetElements.md";
-
diff --git a/docs/docs-api/Mesh/GetTotalInternalNodes.md b/docs/docs-api/Mesh/GetTotalInternalNodes.md
index aac6ba47..5baacd30 100644
--- a/docs/docs-api/Mesh/GetTotalInternalNodes.md
+++ b/docs/docs-api/Mesh/GetTotalInternalNodes.md
@@ -6,7 +6,6 @@ title: GetTotalInternalNodes
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
-
import EXAMPLE5 from "../AbstractMesh/GetTotalInternalNodes.md";
diff --git a/docs/docs-api/Mesh/Initiate.md b/docs/docs-api/Mesh/Initiate.md
index ad9f51fd..f6726de7 100644
--- a/docs/docs-api/Mesh/Initiate.md
+++ b/docs/docs-api/Mesh/Initiate.md
@@ -3,7 +3,6 @@ sidebar_position: 3
title: Initiate
---
-
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
@@ -11,4 +10,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE9 from "../AbstractMesh/Initiate.md";
-
diff --git a/docs/docs-api/Mesh/InitiateElementToElements.md b/docs/docs-api/Mesh/InitiateElementToElements.md
index b524ff7c..8708cca9 100644
--- a/docs/docs-api/Mesh/InitiateElementToElements.md
+++ b/docs/docs-api/Mesh/InitiateElementToElements.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/InitiateElementToElements.md";
-
diff --git a/docs/docs-api/Mesh/InitiateFacetElements.md b/docs/docs-api/Mesh/InitiateFacetElements.md
index fd1c82ec..4c844b1f 100644
--- a/docs/docs-api/Mesh/InitiateFacetElements.md
+++ b/docs/docs-api/Mesh/InitiateFacetElements.md
@@ -2,7 +2,6 @@
title: InitiateFacetElements
---
-
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
:::
diff --git a/docs/docs-api/Mesh/IsBoundaryNode.md b/docs/docs-api/Mesh/IsBoundaryNode.md
index bbde7767..cd2365b8 100644
--- a/docs/docs-api/Mesh/IsBoundaryNode.md
+++ b/docs/docs-api/Mesh/IsBoundaryNode.md
@@ -9,4 +9,3 @@ This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.m
import EXAMPLE5 from "../AbstractMesh/IsBoundaryNode.md";
-
diff --git a/docs/docs-api/Mesh/SetSparsity.md b/docs/docs-api/Mesh/SetSparsity.md
index fafa43bf..e95d840d 100644
--- a/docs/docs-api/Mesh/SetSparsity.md
+++ b/docs/docs-api/Mesh/SetSparsity.md
@@ -1,6 +1,6 @@
---
title: SetSparsity
-----
+---
:::tip Inheritence
This method is inherited from the [AbstractMesh](../AbstractMesh/AbstractMesh_.md) class.
diff --git a/docs/docs-api/Mesh/examples/_DisplayElementData_test_1.md b/docs/docs-api/Mesh/examples/_DisplayElementData_test_1.md
index b3f0417a..8af255f2 100644
--- a/docs/docs-api/Mesh/examples/_DisplayElementData_test_1.md
+++ b/docs/docs-api/Mesh/examples/_DisplayElementData_test_1.md
@@ -12,7 +12,7 @@ PROGRAM main
CHARACTER( LEN=* ), PARAMETER :: filename="./meshdata/small_mesh.h5"
```
-Initiate and open the mesh file which is in HDF5File format.
+Initiate and open the mesh file which is in HDF5File format.
Then, create an instance of mesh.
```fortran
diff --git a/docs/docs-api/Mesh/examples/_InitiateDynamicDataStructure_test_1.F90 b/docs/docs-api/Mesh/examples/_InitiateDynamicDataStructure_test_1.F90
index bc236cc3..5a133903 100644
--- a/docs/docs-api/Mesh/examples/_InitiateDynamicDataStructure_test_1.F90
+++ b/docs/docs-api/Mesh/examples/_InitiateDynamicDataStructure_test_1.F90
@@ -1,22 +1,32 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: InitiateDynamicDataStructure method is tested in this example.
PROGRAM main
- USE easifemBase
- USE easifemClasses
- IMPLICIT NONE
- TYPE( Mesh_ ) :: obj
- TYPE( HDF5File_ ) :: meshfile
- CHARACTER(*), PARAMETER :: filename="./meshdata/small_mesh.h5"
- CALL e%SetQuietMode(.TRUE.)
- CALL meshfile%Initiate( FileName=filename, MODE="READ" )
- !Open the mesh file
- CALL meshfile%Open()
- CALL obj%SetShowTime(.true.)
- !Initiate an instance of `Mesh_`
- CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
- ! Initiate dynamic data structure
- CALL obj%InitiateDynamicDataStructure()
- !Display the content of mesh.
- CALL obj%DisplayMeshInfo(filename)
- CALL obj%Deallocate()
- CALL meshfile%Deallocate()
+USE FEMesh_Class
+USE HDF5File_Class
+USE ExceptionHandler_Class, ONLY: e
+use GlobalData
+
+IMPLICIT NONE
+
+TYPE(FEMesh_) :: obj
+TYPE(HDF5File_) :: meshfile
+CHARACTER(*), PARAMETER :: filename = "./meshdata/small_mesh.h5"
+
+CALL e%SetQuietMode(.TRUE.)
+CALL meshfile%Initiate(FileName=filename, MODE="READ")
+!Open the mesh file
+
+CALL meshfile%OPEN()
+CALL obj%SetShowTime(.TRUE.)
+
+!Initiate an instance of `Mesh_`
+CALL obj%Initiate(hdf5=meshfile, group="/surfaceEntities_1")
+! Initiate dynamic data structure
+CALL obj%InitiateDynamicDataStructure()
+!Display the content of mesh.
+CALL obj%DisplayMeshInfo(filename)
+CALL obj%DEALLOCATE()
+CALL meshfile%DEALLOCATE()
END PROGRAM main
diff --git a/docs/docs-api/Mesh/index.md b/docs/docs-api/Mesh/index.md
index 86f5e388..2b84be5c 100644
--- a/docs/docs-api/Mesh/index.md
+++ b/docs/docs-api/Mesh/index.md
@@ -23,7 +23,6 @@ tags:
The support for Mesh has stopped. In future version, the Mesh and FEMesh will be merged. So please use FEMesh instead.
:::
-
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/MeshSelection/GetNodeNum.md b/docs/docs-api/MeshSelection/GetNodeNum.md
index 3cf91562..dd889a7f 100644
--- a/docs/docs-api/MeshSelection/GetNodeNum.md
+++ b/docs/docs-api/MeshSelection/GetNodeNum.md
@@ -57,5 +57,4 @@ INTERFACE
INTEGER(I4B), ALLOCATABLE :: ans(:)
END FUNCTION meshSelect_getNodeNum3
END INTERFACE
-
```
diff --git a/docs/docs-api/MeshSelection/Import.md b/docs/docs-api/MeshSelection/Import.md
index 34cbb459..1c37cb4e 100644
--- a/docs/docs-api/MeshSelection/Import.md
+++ b/docs/docs-api/MeshSelection/Import.md
@@ -17,15 +17,15 @@ END INTERFACE
The template of HDF5File is given below.
-| Variable | Data type | Value | Comment |
-| --------------------- | :-------: | :-----------: | -----------------------------------------------------------: |
-| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
-| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
+| Variable | Data type | Value | Comment |
+| --------------------- | :-------: | :-----------: | ---------------------------------------------------------------------: |
+| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
+| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
-| `PointMeshID` | | | |
-| `CurveMeshID` | | | |
-| `SurfaceMeshID` | | | |
-| `PointElemNum` | | | |
-| `CurveElemNum` | | | |
-| `SurfaceElemNum` | | | |
-| `VolumeElemNum` | | | |
+| `PointMeshID` | | | |
+| `CurveMeshID` | | | |
+| `SurfaceMeshID` | | | |
+| `PointElemNum` | | | |
+| `CurveElemNum` | | | |
+| `SurfaceElemNum` | | | |
+| `VolumeElemNum` | | | |
diff --git a/docs/docs-api/MeshSelection/examples/MeshSelection.toml b/docs/docs-api/MeshSelection/examples/MeshSelection.toml
index 9d7d4233..f41a97ac 100644
--- a/docs/docs-api/MeshSelection/examples/MeshSelection.toml
+++ b/docs/docs-api/MeshSelection/examples/MeshSelection.toml
@@ -2,43 +2,43 @@
isSelectionByMeshID = true
isSelectionByElemNum = false
isSelectionByBox = false
-isSelectionByNodeNum = false
+isSelectionByNodeNum = false
[region.meshID]
-point = [1,2,3, 4, 5, 6] # "filename.txt"
-line = [2,5,6,7] # "filename.txt"
-surface = [1,3,5,6,8] # "filename.txt"
+point = [1, 2, 3, 4, 5, 6] # "filename.txt"
+line = [2, 5, 6, 7] # "filename.txt"
+surface = [1, 3, 5, 6, 8] # "filename.txt"
volume = "./meshID_volume.txt"
[region.elemNum]
-point = [1,2,3]
-line = [1,2,3]
-surface=[1,2,3]
-volume=[1,2,3]
+point = [1, 2, 3]
+line = [1, 2, 3]
+surface = [1, 2, 3]
+volume = [1, 2, 3]
[region.nodeNum]
-point = [1,2,3]
-line = [4,5]
-surface=[6,7,8]
-volume=[9,10,11]
+point = [1, 2, 3]
+line = [4, 5]
+surface = [6, 7, 8]
+volume = [9, 10, 11]
[region.box]
point = [
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=0.0, zmax=1.0},
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=2.0, zmax=3.0}
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0 },
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 2.0, zmax = 3.0 },
]
line = [
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=0.0, zmax=1.0},
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=2.0, zmax=3.0}
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0 },
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 2.0, zmax = 3.0 },
]
surface = [
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=0.0, zmax=1.0},
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=2.0, zmax=3.0}
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0 },
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 2.0, zmax = 3.0 },
]
volume = [
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=0.0, zmax=1.0},
-{xmin=0.0, xmax=1.0, ymin=0.0, ymax=1.0, zmin=2.0, zmax=3.0}
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 0.0, zmax = 1.0 },
+ { xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 1.0, zmin = 2.0, zmax = 3.0 },
]
diff --git a/docs/docs-api/MeshSelection/examples/_ImportFromToml_test_1.md b/docs/docs-api/MeshSelection/examples/_ImportFromToml_test_1.md
index 8d7ccece..63f78866 100644
--- a/docs/docs-api/MeshSelection/examples/_ImportFromToml_test_1.md
+++ b/docs/docs-api/MeshSelection/examples/_ImportFromToml_test_1.md
@@ -1,5 +1,5 @@
! This program is a part of EASIFEM library
-! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
+! Copyright (C) 2020-2021 Vikas Sharma, Ph.D
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU General Public License as published by
@@ -8,16 +8,16 @@
!
! This program is distributed in the hope that it will be useful,
! but WITHOUT ANY WARRANTY; without even the implied warranty of
-! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! GNU General Public License for more details.
!
! You should have received a copy of the GNU General Public License
-! along with this program. If not, see
+! along with this program. If not, see
!
!> author: Vikas Sharma, Ph. D.
-! date: 2023-11-15
-! summary: SelectioByMeshID
+! date: 2023-11-15
+! summary: SelectioByMeshID
PROGRAM main
USE easifemBase
diff --git a/docs/docs-api/MeshSelection/examples/_MeshSelection_test_6.md b/docs/docs-api/MeshSelection/examples/_MeshSelection_test_6.md
index df32fd29..806c025e 100644
--- a/docs/docs-api/MeshSelection/examples/_MeshSelection_test_6.md
+++ b/docs/docs-api/MeshSelection/examples/_MeshSelection_test_6.md
@@ -6,7 +6,7 @@ The mesh used in this example is given below.
IMPORT modules and define variables
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -20,51 +20,51 @@ PROGRAM main
Initiates the [HDF5File_](../HDF5File/HDF5File_.md) and OPEN it
```fortran
- CALL meshfile%Initiate("./mesh.h5", mode="READ")
- CALL meshfile%Open()
+CALL meshfile%Initiate("./mesh.h5", mode="READ")
+CALL meshfile%Open()
```
Initiates an instance of [Domain_](../Domain/Domain_.md)
```fortran
- CALL dom%Initiate(meshfile, '')
+CALL dom%Initiate(meshfile, '')
```
Initiates an instance of [MeshSelection_](MeshSelection_.md) WITH mesh slection by mesh ID.
```fortran
- CALL obj%Initiate( isSelectionByMeshID=.TRUE. )
+CALL obj%Initiate( isSelectionByMeshID=.TRUE. )
```
Add left region of the mesh.
```fortran
- CALL obj%Add( dim=2, meshID=[1])
+CALL obj%Add( dim=2, meshID=[1])
```
Now that we have added the region, we should CALL set FUNCTION.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
The following code BLOCK shows how to USE `getNodeNum` to get the element numbers from surface mesh id (dim=2).
```fortran
- intvec = obj%getNodeNum(domain=dom, dim=2)
- CALL Display(intvec, "getNodeNum =", orient='row')
- intvec = obj%getNodeNum(domain=dom)
- CALL Display(intvec, "getNodeNum =", orient='row')
+intvec = obj%getNodeNum(domain=dom, dim=2)
+CALL Display(intvec, "getNodeNum =", orient='row')
+intvec = obj%getNodeNum(domain=dom)
+CALL Display(intvec, "getNodeNum =", orient='row')
```
Let us not clean the obj and add some new regions, we will add bottom edges, that is, dim=1, and `entityNum=[1,2]`.
```fortran
- CALL obj%Deallocate()
- CALL obj%Add(dim=1, meshID=[1,2])
- CALL obj%Set()
- intvec = obj%getNodeNum(domain=dom)
- CALL Display(intvec, "getNodeNum =", orient='row')
+CALL obj%Deallocate()
+CALL obj%Add(dim=1, meshID=[1,2])
+CALL obj%Set()
+intvec = obj%getNodeNum(domain=dom)
+CALL Display(intvec, "getNodeNum =", orient='row')
```
Cleanup.
diff --git a/docs/docs-api/Monomial1D/Monomial1D_.md b/docs/docs-api/Monomial1D/Monomial1D_.md
index 24572b36..8bb72122 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_.md
@@ -99,7 +99,7 @@ Example:
### OPERATOR(.Grad.)
-Returns the gradient of Monomial in terms of Monomial. For example, if the monomial is $x^{n}$, then `.GRAD.` operator returns monomial representing $x^{n-1}$.
+Returns the gradient of Monomial in terms of Monomial. For example, if the monomial is $x^{n}$, then `.GRAD.` operator returns monomial representing $x^{n-1}$.
Interface:
@@ -117,7 +117,7 @@ Example:
- [[Monomial1D_test_4.md]]
!!! note "Grad"
- Note that you can also use `obj%Grad()` function to get the gradient.
+Note that you can also use `obj%Grad()` function to get the gradient.
### GetStringForUID
@@ -139,7 +139,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[Monomial1D_test_6]]
+
+- [[Monomial1D_test_6]]
### GetDisplayString
@@ -156,8 +157,9 @@ Returns the coefficient of monomial, which is always 1.0.
Display the monomial on the screen.
!!! example "Examples"
- - [[Monomial1D_test_1]]
- - [[Monomial1D_test_2]]
+
+- [[Monomial1D_test_1]]
+- [[Monomial1D_test_2]]
## OperatorMethods
@@ -166,7 +168,8 @@ Display the monomial on the screen.
OPERATOR(*) multiplies two Monomial.
!!! example "Examples"
- - [[Monomial1D_test_2.md]]
+
+- [[Monomial1D_test_2.md]]
### ASSIGNMENT(=)
@@ -201,7 +204,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[Monomial1D_test_5.md]]
+
+- [[Monomial1D_test_5.md]]
## EvenMonomials1D
@@ -223,7 +227,8 @@ END INTERFACE
```
!!! example "Examples"
- - [[Monomial1D_test_5.md]]
+
+- [[Monomial1D_test_5.md]]
## OddMonomials1D
@@ -245,4 +250,5 @@ END INTERFACE
```
!!! example "Examples"
- - [[Monomial1D_test_5.md]]
+
+- [[Monomial1D_test_5.md]]
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_1.md b/docs/docs-api/Monomial1D/Monomial1D_test_1.md
index 3064102f..6f74f07b 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_1.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_1.md
@@ -28,8 +28,8 @@ Initiate the object.
$y=1$
```fortran
- obj=Monomial1D( degree=0_I4B, varname="x" )
- call obj%display( 'f(x)=' )
+obj=Monomial1D( degree=0_I4B, varname="x" )
+call obj%display( 'f(x)=' )
```
```txt
@@ -40,8 +40,8 @@ f(x)=x^0
$y=x$
```fortran
- obj=Monomial1D( degree=1_I4B, varname="x" )
- call obj%display( 'f(x)=' )
+obj=Monomial1D( degree=1_I4B, varname="x" )
+call obj%display( 'f(x)=' )
```
```txt
@@ -52,8 +52,8 @@ f(x)=x^1
$y=x^2$
```fortran
- obj=Monomial1D( degree=2_I4B, varname="x" )
- call obj%display( 'f(x)=' )
+obj=Monomial1D( degree=2_I4B, varname="x" )
+call obj%display( 'f(x)=' )
```
```txt
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_2.md b/docs/docs-api/Monomial1D/Monomial1D_test_2.md
index 0f06c4f2..f3268868 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_2.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_2.md
@@ -27,19 +27,19 @@ type(Monomial1D_) :: y0, y1, y2, y3, ans
Initiate the object.
```fortran
- y0=Monomial1D( degree=0_I4B, varname="x" )
- y1=Monomial1D( degree=1_I4B, varname="x" )
- y2=Monomial1D( degree=2_I4B, varname="x" )
+y0=Monomial1D( degree=0_I4B, varname="x" )
+y1=Monomial1D( degree=1_I4B, varname="x" )
+y2=Monomial1D( degree=2_I4B, varname="x" )
```
!!! note "Multiplication"
- We can multiply a monomial with another monomial.
+We can multiply a monomial with another monomial.
```fortran
- ans = y1 * y0
- call ans%display( "f(x) = ")
- ans = y1 * y2
- call ans%display( "f(x) = ")
+ans = y1 * y0
+call ans%display( "f(x) = ")
+ans = y1 * y2
+call ans%display( "f(x) = ")
```
```txt
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_3.md b/docs/docs-api/Monomial1D/Monomial1D_test_3.md
index 34154603..a28260c4 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_3.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_3.md
@@ -28,8 +28,8 @@ Initiate the object.
$y=1$
```fortran
- y0=Monomial1D( degree=0_I4B, varname="x" )
- CALL Display( y0%eval( 1.0_DFP ), "f(1)=" )
+y0=Monomial1D( degree=0_I4B, varname="x" )
+CALL Display( y0%eval( 1.0_DFP ), "f(1)=" )
```
```txt
@@ -40,8 +40,8 @@ f(1)=1.00000
$y=x$
```fortran
- y1=Monomial1D( degree=1_I4B, varname="x" )
- CALL Display( y1%eval(1.0_DFP), "f(1)=" )
+y1=Monomial1D( degree=1_I4B, varname="x" )
+CALL Display( y1%eval(1.0_DFP), "f(1)=" )
```
```txt
@@ -52,8 +52,8 @@ f(1)=1.00000
$y=x^{2}$
```fortran
- y2=Monomial1D( degree=2_I4B, varname="x" )
- CALL Display( y2%eval( 1.0_DFP ), "f(1)=" )
+y2=Monomial1D( degree=2_I4B, varname="x" )
+CALL Display( y2%eval( 1.0_DFP ), "f(1)=" )
```
```txt
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_4.md b/docs/docs-api/Monomial1D/Monomial1D_test_4.md
index 7d4c3612..55e67a9e 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_4.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_4.md
@@ -29,8 +29,8 @@ Initiate the object.
$y=1$
```fortran
- y0=Monomial1D( degree=0_I4B, varname="x" )
- CALL Display( y0%evalgradient( x=1.0_DFP ), "f(1)=" )
+y0=Monomial1D( degree=0_I4B, varname="x" )
+CALL Display( y0%evalgradient( x=1.0_DFP ), "f(1)=" )
```
```txt
@@ -41,8 +41,8 @@ f(1)=0.00000
$y=x$
```fortran
- y1=Monomial1D( degree=1_I4B, varname="x" )
- CALL Display( y1%EvalGradient(1.0_DFP), "f(1)=" )
+y1=Monomial1D( degree=1_I4B, varname="x" )
+CALL Display( y1%EvalGradient(1.0_DFP), "f(1)=" )
```
```txt
@@ -53,8 +53,8 @@ f(1)=1.00000
$y=x^{2}$
```fortran
- y2=Monomial1D( degree=2_I4B, varname="x" )
- CALL Display( y2%EvalGradient(1.0_DFP), "f(1)=" )
+y2=Monomial1D( degree=2_I4B, varname="x" )
+CALL Display( y2%EvalGradient(1.0_DFP), "f(1)=" )
```
```txt
@@ -65,8 +65,8 @@ f(1)=2.00000
We can also get the gradient of the monomial
```fortran
- ans = y2%Grad()
- CALL ans%display("grad of y2 f(x) = ")
+ans = y2%Grad()
+CALL ans%display("grad of y2 f(x) = ")
```
```txt
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_5.md b/docs/docs-api/Monomial1D/Monomial1D_test_5.md
index b821e118..9ef52fd5 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_5.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_5.md
@@ -31,13 +31,13 @@ integer(i4b) :: ii, n
```
!!! note "Monomials"
- `Monomials1D` returns the monomials $x^0$ to $x^{n}$.
+`Monomials1D` returns the monomials $x^0$ to $x^{n}$.
```fortran
- y1 = Monomials1D( order=5, varname="x" )
- do ii = 1, SIZE( y1 )
- call y1(ii)%display( "f(" // tostring( ii ) // ")=" )
- end do
+y1 = Monomials1D( order=5, varname="x" )
+do ii = 1, SIZE( y1 )
+ call y1(ii)%display( "f(" // tostring( ii ) // ")=" )
+end do
```
!!! example "result"
@@ -67,13 +67,13 @@ f(6)=x^5
$$
!!! note "Monomials"
- `EvenMonomials1D` returns the monomials $x^0$ to $x^{2n}$.
+`EvenMonomials1D` returns the monomials $x^0$ to $x^{2n}$.
```fortran
- y2 = EvenMonomials1D( order=5, varname="x" )
- do ii = 1, SIZE( y2 )
- call y2(ii)%display( "f(" // tostring( ii ) // ")=" )
- end do
+y2 = EvenMonomials1D( order=5, varname="x" )
+do ii = 1, SIZE( y2 )
+ call y2(ii)%display( "f(" // tostring( ii ) // ")=" )
+end do
```
!!! example "result"
@@ -90,13 +90,13 @@ f(3)=x^4
$$
!!! note "Monomials"
- `OddMonomials1D` returns the monomials $x^1$ to $x^{2n+1}$.
+`OddMonomials1D` returns the monomials $x^1$ to $x^{2n+1}$.
```fortran
- y3 = OddMonomials1D( order=5, varname="x" )
- do ii = 1, SIZE( y3 )
- call y3(ii)%display( "f(" // tostring( ii ) // ")=" )
- end do
+y3 = OddMonomials1D( order=5, varname="x" )
+do ii = 1, SIZE( y3 )
+ call y3(ii)%display( "f(" // tostring( ii ) // ")=" )
+end do
```
!!! example "result"
diff --git a/docs/docs-api/Monomial1D/Monomial1D_test_6.md b/docs/docs-api/Monomial1D/Monomial1D_test_6.md
index 08555607..18bd4ad4 100644
--- a/docs/docs-api/Monomial1D/Monomial1D_test_6.md
+++ b/docs/docs-api/Monomial1D/Monomial1D_test_6.md
@@ -28,9 +28,9 @@ integer(i4b) :: ii, n
!!! note "Create monomial"
```fortran
- m1 = Monomial1D(degree=10, varname="x")
- n = m1%GetDegree()
- CALL OK( n .EQ. 10, "" )
+m1 = Monomial1D(degree=10, varname="x")
+n = m1%GetDegree()
+CALL OK( n .EQ. 10, "" )
```
```fortran
diff --git a/docs/docs-api/Monomial2D/Monomial2D_.md b/docs/docs-api/Monomial2D/Monomial2D_.md
index 46522731..7ef9498f 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_.md
@@ -41,7 +41,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial2D_test_1]]
+
+- [[Monomial2D_test_1]]
Interface-2: Specify the two monomial in 1d, that is, [[Monomial1D_]].
@@ -59,7 +60,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial2D_test_2]]
+
+- [[Monomial2D_test_2]]
### Monomial2D_Pointer
@@ -76,7 +78,8 @@ CALL obj%Deallocate()
```
!!! example "Example"
- - [[Monomial2D_test_1]]
+
+- [[Monomial2D_test_1]]
## GetMethods
@@ -97,7 +100,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial2D_test_4]]
+
+- [[Monomial2D_test_4]]
### EvalGradient
@@ -119,10 +123,11 @@ END INTERFACE
```
!!! note "dim"
- For `dim=1,2,3` we evaluate $\frac{dm}{dx}$, $\frac{dm}{dy}$, $\frac{dm}{dz}$, respectively.
+For `dim=1,2,3` we evaluate $\frac{dm}{dx}$, $\frac{dm}{dy}$, $\frac{dm}{dz}$, respectively.
!!! example "Example"
- - [[Monomial2D_test_4]]
+
+- [[Monomial2D_test_4]]
### Grad
@@ -141,28 +146,32 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial2D_test_5]]
+
+- [[Monomial2D_test_5]]
### GetStringForUID
Returns a string for generating a unique id for the monomial.
!!! example "Example"
- - [[Monomial2D_test_6]]
+
+- [[Monomial2D_test_6]]
### GetDisplayString
Returns a string for displaying the monomial.
!!! example "Example"
- - [[Monomial2D_test_6]]
+
+- [[Monomial2D_test_6]]
### GetDegree
Returns the degree, $(n1,n2)$, of the monomial.
!!! example "Example"
- - [[Monomial2D_test_6]]
+
+- [[Monomial2D_test_6]]
## IOMethods
@@ -204,7 +213,8 @@ m3 = m1 * m2
```
!!! example "Examples"
- - [[Monomial2D_test_3]]
+
+- [[Monomial2D_test_3]]
### Assignment(=)
@@ -250,10 +260,12 @@ END INTERFACE
```
!!! note "elemType"
- elemType defines the element type. It can take following values:
- - triangle
- - quadrangle
+elemType defines the element type. It can take following values:
+
+- triangle
+- quadrangle
!!! example "Examples"
- - [[Monomial2D_test_5]] on triangle.
- - [[Monomial2D_test_6]] on quadrangle.
+
+- [[Monomial2D_test_5]] on triangle.
+- [[Monomial2D_test_6]] on quadrangle.
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_1.md b/docs/docs-api/Monomial2D/Monomial2D_test_1.md
index c3e689a5..775137ed 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_1.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_1.md
@@ -29,8 +29,8 @@ Initiate the object.
$f(x,y)=1$
```fortran
- obj=Monomial2D( n1=0, n2=0, name1="x", name2="y" )
- call obj%display( 'f(x,y)=' )
+obj=Monomial2D( n1=0, n2=0, name1="x", name2="y" )
+call obj%display( 'f(x,y)=' )
```
```txt
@@ -41,8 +41,8 @@ f(x,y)=x^0*y^0
$f(x,y)=x$
```fortran
- obj=Monomial2D( n1=1, n2=0, name1="x", name2="y" )
- call obj%display( 'f(x,y)=' )
+obj=Monomial2D( n1=1, n2=0, name1="x", name2="y" )
+call obj%display( 'f(x,y)=' )
```
```txt
@@ -53,8 +53,8 @@ f(x,y)=x^1*y^0
$f(x,y)=y$
```fortran
- obj=Monomial2D( n1=0, n2=1, name1="x", name2="y" )
- call obj%display( 'f(x,y)=' )
+obj=Monomial2D( n1=0, n2=1, name1="x", name2="y" )
+call obj%display( 'f(x,y)=' )
```
```txt
@@ -65,8 +65,8 @@ f(x,y)=x^0*y^1
$f(x,y)=xy$
```fortran
- obj=Monomial2D( n1=1, n2=1, name1="x", name2="y" )
- call obj%display( 'f(x,y)=' )
+obj=Monomial2D( n1=1, n2=1, name1="x", name2="y" )
+call obj%display( 'f(x,y)=' )
```
```txt
@@ -77,8 +77,8 @@ f(x,y)=x^1*y^1
$f(x,y)=x^2*y$
```fortran
- obj=Monomial2D( n1=2, n2=1, name1="x", name2="y" )
- call obj%display( 'f(x,y)=' )
+obj=Monomial2D( n1=2, n2=1, name1="x", name2="y" )
+call obj%display( 'f(x,y)=' )
```
```txt
@@ -86,7 +86,6 @@ $f(x,y)=x^2*y$
f(x,y)=x^2*y^1
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_2.md b/docs/docs-api/Monomial2D/Monomial2D_test_2.md
index 7f94db89..7f6c60c0 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_2.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_2.md
@@ -27,58 +27,58 @@ type(Monomial1D_) :: f1, f2
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$f(x,y)=1$
```fortran
- f1=Monomial1D( 0_I4B, "x" )
- f2=Monomial1D( 0_I4B, "y" )
- obj=Monomial2D( f1, f2 )
- call obj%display( 'f(x,y)=' )
+f1=Monomial1D( 0_I4B, "x" )
+f2=Monomial1D( 0_I4B, "y" )
+obj=Monomial2D( f1, f2 )
+call obj%display( 'f(x,y)=' )
```
!!! example "results"
- f(x,y)=x^0*y^0
+f(x,y)=x^0*y^0
!!! note ""
- $f(x,y)=x$
+$f(x,y)=x$
```fortran
- f1=Monomial1D( 1_I4B, "x" )
- f2=Monomial1D( 0_I4B, "y" )
- obj=Monomial2D( f1, f2 )
- call obj%display( 'f(x,y)=' )
+f1=Monomial1D( 1_I4B, "x" )
+f2=Monomial1D( 0_I4B, "y" )
+obj=Monomial2D( f1, f2 )
+call obj%display( 'f(x,y)=' )
```
!!! example "results"
- f(x,y)=x^1*y^0
+f(x,y)=x^1*y^0
!!! note ""
- $f(x,y)=y$
+$f(x,y)=y$
```fortran
- f1=Monomial1D( 0_I4B, "x" )
- f2=Monomial1D( 1_I4B, "y" )
- obj=Monomial2D( f1, f2 )
- call obj%display( 'f(x,y)=' )
+f1=Monomial1D( 0_I4B, "x" )
+f2=Monomial1D( 1_I4B, "y" )
+obj=Monomial2D( f1, f2 )
+call obj%display( 'f(x,y)=' )
```
!!! example "result"
- f(x,y)=x^0*y^1
+f(x,y)=x^0*y^1
!!! note ""
- $f(x,y)=xy$
+$f(x,y)=xy$
```fortran
- f1=Monomial1D( 1_I4B, "x" )
- f2=Monomial1D( 1_I4B, "y" )
- obj=Monomial2D( f1, f2 )
- call obj%display( 'f(x,y)=' )
+f1=Monomial1D( 1_I4B, "x" )
+f2=Monomial1D( 1_I4B, "y" )
+obj=Monomial2D( f1, f2 )
+call obj%display( 'f(x,y)=' )
```
!!! example "result"
- f(x,y)=x^1*y^1
+f(x,y)=x^1*y^1
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_3.md b/docs/docs-api/Monomial2D/Monomial2D_test_3.md
index 43fc5678..7d09f5a3 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_3.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_3.md
@@ -24,25 +24,25 @@ type(Monomial2D_) :: ans, f1, f2, f3
```
!!! note "Initiate"
- Initiate an instance of [[Monomial2D_]]
- $f(x,y)=x^2 y$
+Initiate an instance of [[Monomial2D_]]
+$f(x,y)=x^2 y$
```fortran
- f1=Monomial2D( n1=2, n2=1, name1="x", name2="y" )
- call f1%display( "f(x,y)=" )
+f1=Monomial2D( n1=2, n2=1, name1="x", name2="y" )
+call f1%display( "f(x,y)=" )
```
!!! note "f2=f1*f1"
- We can multiply two instance of [[Monomial2D_]] to get another
- instance.
+We can multiply two instance of [[Monomial2D_]] to get another
+instance.
```fortran
- f2 = f1 * f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 * f1
+call f2%display( 'f(x,y)=' )
```
!!! example "results"
- f(x,y)=x^4*y^2
+f(x,y)=x^4*y^2
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_4.md b/docs/docs-api/Monomial2D/Monomial2D_test_4.md
index c6ebdc2e..5a59b725 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_4.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_4.md
@@ -28,63 +28,63 @@ character(len=256) :: varname(2)
```
!!! note "Initiate"
- Initiate the object.
-
+Initiate the object.
+
$$
f(x,y)=x^2 y
$$
```fortran
- f1=Monomial2D( 2, 1, "x", "y" )
+f1=Monomial2D( 2, 1, "x", "y" )
```
!!! note "Eval"
- Evaluating values.
+Evaluating values.
```fortran
- call display( f1%eval(1.0_DFP, 1.0_DFP), "f(1,1)=" )
- call display( f1%eval(2.0_DFP, 3.0_DFP), "f(2,3)=" )
+call display( f1%eval(1.0_DFP, 1.0_DFP), "f(1,1)=" )
+call display( f1%eval(2.0_DFP, 3.0_DFP), "f(2,3)=" )
```
!!! example "result"
- f(1,1)=1.00000
- f(2,3)=12.0000
+f(1,1)=1.00000
+f(2,3)=12.0000
!!! note "EvalGradient"
- Evaluating gradient
-
+Evaluating gradient
+
$$
\frac{df}{dx} = 2xy
$$
```fortran
- call display( f1%evalGradient(1.0_DFP, 1.0_DFP, dim=1_I4B), &
- & "dfdx(1,1)=" )
- call display( f1%evalGradient(2.0_DFP, 3.0_DFP, dim=1_I4B), &
- & "dfdx(2,3)=" )
+call display( f1%evalGradient(1.0_DFP, 1.0_DFP, dim=1_I4B), &
+ & "dfdx(1,1)=" )
+call display( f1%evalGradient(2.0_DFP, 3.0_DFP, dim=1_I4B), &
+ & "dfdx(2,3)=" )
```
!!! example "result"
- dfdx(1,1)=2.00000
- dfdx(2,3)=12.0000
+dfdx(1,1)=2.00000
+dfdx(2,3)=12.0000
!!! note "EvalGradient"
- Evaluating gradient
-
+Evaluating gradient
+
$$
\frac{df}{dy} = x^2
$$
```fortran
- call display( f1%evalGradient(1.0_DFP, 1.0_DFP, dim=2_I4B), &
- & "dfdy(1,1)=" )
- call display( f1%evalGradient(2.0_DFP, 3.0_DFP, dim=2_I4B), &
- & "dfdy(2,3)=" )
+call display( f1%evalGradient(1.0_DFP, 1.0_DFP, dim=2_I4B), &
+ & "dfdy(1,1)=" )
+call display( f1%evalGradient(2.0_DFP, 3.0_DFP, dim=2_I4B), &
+ & "dfdy(2,3)=" )
```
!!! example "results"
- dfdy(1,1)=1.00000
- dfdy(2,3)=4.00000
+dfdy(1,1)=1.00000
+dfdy(2,3)=4.00000
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_5.md b/docs/docs-api/Monomial2D/Monomial2D_test_5.md
index 21e2dfd4..a847a561 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_5.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_5.md
@@ -27,47 +27,47 @@ character(len=256) :: varname(2)
```
!!! note "Initiate"
- Initiate the object.
-
+Initiate the object.
+
$$
f(x,y)=x^2 y
$$
```fortran
- f1=Monomial2D( 2, 1, "x", "y" )
+f1=Monomial2D( 2, 1, "x", "y" )
```
!!! note "Grad"
- Evaluating gradient
-
+Evaluating gradient
+
$$
\frac{df}{dx} = 2xy
$$
```fortran
- f2 = f1 .GRAD. 1
- CALL f2%Display( "f1 .GRAD. 1 = ")
+f2 = f1 .GRAD. 1
+CALL f2%Display( "f1 .GRAD. 1 = ")
```
!!! example "result"
- f1 .GRAD. 1 =x^1*y^1
- Note that [[Monomial2D_]] does not contains the coefficient.
+f1 .GRAD. 1 =x^1*y^1
+Note that [[Monomial2D_]] does not contains the coefficient.
!!! note "Grad"
- Evaluating gradient
-
+Evaluating gradient
+
$$
\frac{df}{dy} = x^2
$$
```fortran
- f3 = f1 .GRAD. 2
- CALL f3%Display( "f1 .GRAD. 2 = ")
+f3 = f1 .GRAD. 2
+CALL f3%Display( "f1 .GRAD. 2 = ")
```
!!! example "result"
- f1 .GRAD. 2 =x^2*y^0
- Note that [[Monomial2D_]] does not contains the coefficient.
+f1 .GRAD. 2 =x^2*y^0
+Note that [[Monomial2D_]] does not contains the coefficient.
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_6.md b/docs/docs-api/Monomial2D/Monomial2D_test_6.md
index 9515e4dc..8e515eea 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_6.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_6.md
@@ -27,11 +27,11 @@ integer( i4b ) :: ii, n
!!! note "Monomials2D"
```fortran
- f1 = Monomials2D( order=1, varname1="x", varname2="y", elemType=Triangle)
- n = size( f1 )
- do ii = 1, n
- call f1(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f1 = Monomials2D( order=1, varname1="x", varname2="y", elemType=Triangle)
+n = size( f1 )
+do ii = 1, n
+ call f1(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
@@ -51,11 +51,11 @@ $$
!!! note "Monomials2D"
```fortran
- f2 = Monomials2D( order=2, varname1="x", varname2="y", elemType=Triangle )
- n = size( f2 )
- do ii = 1, n
- call f2(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f2 = Monomials2D( order=2, varname1="x", varname2="y", elemType=Triangle )
+n = size( f2 )
+do ii = 1, n
+ call f2(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
@@ -87,11 +87,11 @@ $$
!!! note "Monomials2D"
```fortran
- f3 = Monomials2D( order=5, varname1="x", varname2="y", elemType=Triangle )
- n = size( f3 )
- do ii = 1, n
- call f3(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f3 = Monomials2D( order=5, varname1="x", varname2="y", elemType=Triangle )
+n = size( f3 )
+do ii = 1, n
+ call f3(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
diff --git a/docs/docs-api/Monomial2D/Monomial2D_test_7.md b/docs/docs-api/Monomial2D/Monomial2D_test_7.md
index 7e4c0746..ea8e95a5 100644
--- a/docs/docs-api/Monomial2D/Monomial2D_test_7.md
+++ b/docs/docs-api/Monomial2D/Monomial2D_test_7.md
@@ -27,11 +27,11 @@ integer( i4b ) :: ii, n
!!! note "Monomials2D"
```fortran
- f1 = Monomials2D( order=1, name1="x", name2="y", elemType=Quadrangle)
- n = size( f1 )
- do ii = 1, n
- call f1(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f1 = Monomials2D( order=1, name1="x", name2="y", elemType=Quadrangle)
+n = size( f1 )
+do ii = 1, n
+ call f1(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
@@ -55,11 +55,11 @@ $$
!!! note "Monomials2D"
```fortran
- f2 = Monomials2D( order=2, name1="x", name2="y", elemType=Quadrangle )
- n = size( f2 )
- do ii = 1, n
- call f2(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f2 = Monomials2D( order=2, name1="x", name2="y", elemType=Quadrangle )
+n = size( f2 )
+do ii = 1, n
+ call f2(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
diff --git a/docs/docs-api/Monomial3D/Monomial3D_.md b/docs/docs-api/Monomial3D/Monomial3D_.md
index d53b9c5d..5bd36e82 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_.md
@@ -46,7 +46,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial3D_test_1]]
+
+- [[Monomial3D_test_1]]
Interface-2:
@@ -68,14 +69,16 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial3D_test_1]]
+
+- [[Monomial3D_test_1]]
### Monomial3D_Pointer
This function returns the pointer to a newly created instance of [[Monomial3D_]]. There are two fortran interfaces same as the one given above.
!!! example "Example"
- - [[Monomial3D_test_2]]
+
+- [[Monomial3D_test_2]]
### Deallocate
@@ -88,7 +91,8 @@ CALL obj%Deallocate()
```
!!! example "Example"
- - [[Monomial3D_test_1]]
+
+- [[Monomial3D_test_1]]
## GetMethods
@@ -109,7 +113,8 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial3D_test_3]]
+
+- [[Monomial3D_test_3]]
### EvalGradient
@@ -132,10 +137,11 @@ END INTERFACE
```
!!! note "dim"
- For `dim=1,2,3` we evaluate $\frac{dm}{dx}$, $\frac{dm}{dy}$, $\frac{dm}{dz}$, respectively.
+For `dim=1,2,3` we evaluate $\frac{dm}{dx}$, $\frac{dm}{dy}$, $\frac{dm}{dz}$, respectively.
!!! example "Example"
- - [[Monomial3D_test_4]]
+
+- [[Monomial3D_test_4]]
### Grad
@@ -154,28 +160,32 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial3D_test_5]]
+
+- [[Monomial3D_test_5]]
### GetStringForUID
Returns a string for generating a unique id for the monomial.
!!! example "Example"
- - [[Monomial3D_test_6]]
+
+- [[Monomial3D_test_6]]
### GetDisplayString
Returns a string for displaying the monomial.
!!! example "Example"
- - [[Monomial3D_test_6]]
+
+- [[Monomial3D_test_6]]
### GetDegree
Returns the degree, $(n1,n2,n3)$, of the monomial.
!!! example "Example"
- - [[Monomial3D_test_6]]
+
+- [[Monomial3D_test_6]]
## IOMethods
@@ -196,12 +206,13 @@ END INTERFACE
```
!!! example "Example"
- - [[Monomial3D_test_1]]
- - [[Monomial3D_test_2]]
- - [[Monomial3D_test_3]]
- - [[Monomial3D_test_4]]
- - [[Monomial3D_test_5]]
- - [[Monomial3D_test_6]]
+
+- [[Monomial3D_test_1]]
+- [[Monomial3D_test_2]]
+- [[Monomial3D_test_3]]
+- [[Monomial3D_test_4]]
+- [[Monomial3D_test_5]]
+- [[Monomial3D_test_6]]
## OperatorMethods
@@ -216,7 +227,8 @@ m3 = m1 * m2
```
!!! example "Examples"
- - [[Monomial3D_test_7]]
+
+- [[Monomial3D_test_7]]
### Assignment(=)
@@ -264,11 +276,13 @@ END INTERFACE
```
!!! note "elemType"
- elemType defines the element type. It can take following values:
- - tetrahedron
- - hexahedron
- - pyramid
- - prism
+elemType defines the element type. It can take following values:
+
+- tetrahedron
+- hexahedron
+- pyramid
+- prism
!!! example "Examples"
- - [[Monomial3D_test_8]]
+
+- [[Monomial3D_test_8]]
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_1.md b/docs/docs-api/Monomial3D/Monomial3D_test_1.md
index f041532c..52feeb86 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_1.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_1.md
@@ -28,17 +28,17 @@ character(len=*), parameter :: varname1="x", varname2="y", varname3="z"
```
!!! note ""
- Initiate the object. $f(x,y,z)=1$
+Initiate the object. $f(x,y,z)=1$
```fortran
- n1=0; n2=0; n3=0
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
+n1=0; n2=0; n3=0
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
- f(x,y,z)=
+f(x,y,z)=
!!! note ""
$$
@@ -46,10 +46,10 @@ f(x,y,z)=x^1
$$
```fortran
- n1=1; n2=0; n3=0
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
+n1=1; n2=0; n3=0
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
@@ -61,14 +61,14 @@ f(x,y,z)=y^1
$$
```fortran
- n1=0; n2=1; n3=0
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
+n1=0; n2=1; n3=0
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
- f(x,y,z)=y^1
+f(x,y,z)=y^1
!!! note ""
@@ -77,14 +77,14 @@ f(x,y,z)=xyz
$$
```fortran
- n1=1; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
+n1=1; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
- f(x,y,z)=x^1 y^1 z^1
+f(x,y,z)=x^1 y^1 z^1
!!! note ""
@@ -93,14 +93,14 @@ f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
+n1=2; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
- f(x,y,z)=x^2 y^1 z^1
+f(x,y,z)=x^2 y^1 z^1
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_2.md b/docs/docs-api/Monomial3D/Monomial3D_test_2.md
index 81487d56..648e4f7a 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_2.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_2.md
@@ -29,14 +29,14 @@ character(len=*), parameter :: varname1="x", varname2="y", varname3="z"
```
!!! note ""
- Initiate the object. $f(x,y,z)=1$
+Initiate the object. $f(x,y,z)=1$
```fortran
- n1=0; n2=0; n3=0
- obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
- deallocate(obj)
+n1=0; n2=0; n3=0
+obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
+deallocate(obj)
```
!!! example "result"
@@ -47,11 +47,11 @@ f(x,y,z)=x^1
$$
```fortran
- n1=1; n2=0; n3=0
- obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
- deallocate(obj)
+n1=1; n2=0; n3=0
+obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
+deallocate(obj)
```
!!! example "result"
@@ -63,15 +63,15 @@ f(x,y,z)=y^1
$$
```fortran
- n1=0; n2=1; n3=0
- obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
- deallocate(obj)
+n1=0; n2=1; n3=0
+obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
+deallocate(obj)
```
!!! example "result"
- f(x,y,z)=y^1
+f(x,y,z)=y^1
!!! note ""
$$
@@ -79,15 +79,15 @@ f(x,y,z)=xyz
$$
```fortran
- n1=1; n2=1; n3=1
- obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
- deallocate(obj)
+n1=1; n2=1; n3=1
+obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
+deallocate(obj)
```
!!! example "result"
- f(x,y,z)=x^1 y^1 z^1
+f(x,y,z)=x^1 y^1 z^1
!!! note ""
$$
@@ -95,11 +95,11 @@ f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj%display( 'f(x,y,z)=' )
- deallocate(obj)
+n1=2; n2=1; n3=1
+obj=>Monomial3D_Pointer( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj%display( 'f(x,y,z)=' )
+deallocate(obj)
```
!!! example "result"
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_3.md b/docs/docs-api/Monomial3D/Monomial3D_test_3.md
index a0174982..41c57f4e 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_3.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_3.md
@@ -33,28 +33,28 @@ real( dfp ), parameter :: tol=1.0E-10
```
!!! note ""
- Initiate the following monomial.
+Initiate the following monomial.
$$
f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
+n1=2; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
```
!!! note "Eval"
```fortran
- x = 2.0; y = 3.0; z = 4.0
- ans = x**2 * y * z
- avar = obj%Eval(x,y,z)
- CALL OK( SOFTEQ(ans, avar, tol), "test-3(b)" )
+x = 2.0; y = 3.0; z = 4.0
+ans = x**2 * y * z
+avar = obj%Eval(x,y,z)
+CALL OK( SOFTEQ(ans, avar, tol), "test-3(b)" )
```
!!! example "result"
- ok 1 - test-3(b)
+ok 1 - test-3(b)
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_4.md b/docs/docs-api/Monomial3D/Monomial3D_test_4.md
index 4fb09e47..e152c109 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_4.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_4.md
@@ -32,32 +32,32 @@ real( dfp ), parameter :: tol=1.0E-10
```
!!! note ""
- Initiate the following monomial.
+Initiate the following monomial.
$$
f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
+n1=2; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
```
!!! note "EvalGradient"
```fortran
- x = 2.0; y = 3.0; z = 4.0
- ans = 2 * x * y * z
- avar = obj%EvalGradient(x,y,z, dim=1)
- CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
- !!
- ans = x**2 * z
- avar = obj%EvalGradient(x,y,z, dim=2)
- CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
- !!
- ans = x**2 * y
- avar = obj%EvalGradient(x,y,z, dim=3)
- CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
+x = 2.0; y = 3.0; z = 4.0
+ans = 2 * x * y * z
+avar = obj%EvalGradient(x,y,z, dim=1)
+CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
+!!
+ans = x**2 * z
+avar = obj%EvalGradient(x,y,z, dim=2)
+CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
+!!
+ans = x**2 * y
+avar = obj%EvalGradient(x,y,z, dim=3)
+CALL OK( SOFTEQ(ans, avar, tol), "test-4" )
```
```fortran
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_5.md b/docs/docs-api/Monomial3D/Monomial3D_test_5.md
index 39600ae3..559c4128 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_5.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_5.md
@@ -31,15 +31,15 @@ character(len=*), parameter :: varname1="x", varname2="y", varname3="z"
```
!!! note ""
- Initiate the following monomial.
+Initiate the following monomial.
$$
f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
+n1=2; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
```
!!! note "Grad"
@@ -56,20 +56,20 @@ $$
$$
```fortran
- ans = obj%Grad(dim=1)
- call ans%Display( "dfdx = " )
- !!
- ans = obj%Grad(dim=2)
- call ans%Display( "dfdy = " )
- !!
- ans = obj%Grad(dim=3)
- call ans%Display( "dfdz = " )
+ans = obj%Grad(dim=1)
+call ans%Display( "dfdx = " )
+!!
+ans = obj%Grad(dim=2)
+call ans%Display( "dfdy = " )
+!!
+ans = obj%Grad(dim=3)
+call ans%Display( "dfdz = " )
```
!!! example "result"
- dfdx =x^1 y^1 z^1
- dfdy =x^2 z^1
- dfdz =x^2 y^1
+dfdx =x^1 y^1 z^1
+dfdy =x^2 z^1
+dfdz =x^2 y^1
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_6.md b/docs/docs-api/Monomial3D/Monomial3D_test_6.md
index 81ec3607..c95dfb0a 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_6.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_6.md
@@ -36,34 +36,31 @@ character(len=*), parameter :: varname1="x", varname2="y", varname3="z"
```
!!! note ""
- Initiate the following monomial.
+Initiate the following monomial.
$$
f(x,y)=x^2 y z
$$
```fortran
- n1=2; n2=1; n3=1
- obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
+n1=2; n2=1; n3=1
+obj=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
```
```fortran
- astr = obj%GetStringForUID()
- call Display( astr, "GetStringForUID = " )
- astr = obj%GetDisplayString()
- call Display( astr, "GetDisplayString = " )
- degree = obj%GetDegree()
- call Display( degree, "GetDegree = " )
+astr = obj%GetStringForUID()
+call Display( astr, "GetStringForUID = " )
+astr = obj%GetDisplayString()
+call Display( astr, "GetDisplayString = " )
+degree = obj%GetDegree()
+call Display( degree, "GetDegree = " )
```
-!!! example "result"
- GetStringForUID =x^2*y^1*z^1
- GetDisplayString =x^2 y^1 z^1
- GetDegree =
- ------------
- 2
- 1
- 1
+## !!! example "result"GetStringForUID =x^2*y^1*z^1GetDisplayString =x^2 y^1 z^1GetDegree =
+
+2
+1
+1
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_7.md b/docs/docs-api/Monomial3D/Monomial3D_test_7.md
index 0361d74a..475c9d4d 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_7.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_7.md
@@ -29,25 +29,25 @@ character(len=*), parameter :: varname1="x", varname2="y", varname3="z"
```
!!! note ""
- Initiate the object. $f(x,y,z)=1$
+Initiate the object. $f(x,y,z)=1$
```fortran
- n1=1; n2=2; n3=3
- obj1=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj1%display( 'f1(x,y,z)=' )
- !!
- n1=4; n2=5; n3=6
- obj2=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
- & varname2=varname2, varname3=varname3 )
- call obj2%display( 'f2(x,y,z)=' )
- !!
- obj=obj1 * obj2
- call obj%display( 'f(x,y,z)=' )
+n1=1; n2=2; n3=3
+obj1=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj1%display( 'f1(x,y,z)=' )
+!!
+n1=4; n2=5; n3=6
+obj2=Monomial3D( n1=n1, n2=n2, n3=n3, varname1=varname1, &
+ & varname2=varname2, varname3=varname3 )
+call obj2%display( 'f2(x,y,z)=' )
+!!
+obj=obj1 * obj2
+call obj%display( 'f(x,y,z)=' )
```
!!! example "result"
- f(x,y,z)=
+f(x,y,z)=
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Monomial3D/Monomial3D_test_8.md b/docs/docs-api/Monomial3D/Monomial3D_test_8.md
index 474a9604..ff4622fd 100644
--- a/docs/docs-api/Monomial3D/Monomial3D_test_8.md
+++ b/docs/docs-api/Monomial3D/Monomial3D_test_8.md
@@ -27,12 +27,12 @@ integer( i4b ) :: ii, n
!!! note "Monomials3D"
```fortran
- f1 = Monomials3D( order=1, varname1="x", varname2="y", &
- & varname3="z", elemType=Tetrahedron)
- n = size( f1 )
- do ii = 1, n
- call f1(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f1 = Monomials3D( order=1, varname1="x", varname2="y", &
+ & varname3="z", elemType=Tetrahedron)
+n = size( f1 )
+do ii = 1, n
+ call f1(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
@@ -55,12 +55,12 @@ $$
!!! note "Monomials3D"
```fortran
- f2 = Monomials3D( order=2, varname1="x", varname2="y", varname3="z", &
- & elemType=Tetrahedron )
- n = size( f2 )
- do ii = 1, n
- call f2(ii)%display( "f(" // tostring(ii) // ")=" )
- end do
+f2 = Monomials3D( order=2, varname1="x", varname2="y", varname3="z", &
+ & elemType=Tetrahedron )
+n = size( f2 )
+do ii = 1, n
+ call f2(ii)%display( "f(" // tostring(ii) // ")=" )
+end do
```
!!! example "results"
diff --git a/docs/docs-api/MovingMesh/MovingMesh_.md b/docs/docs-api/MovingMesh/MovingMesh_.md
index 48dcd553..3117de17 100644
--- a/docs/docs-api/MovingMesh/MovingMesh_.md
+++ b/docs/docs-api/MovingMesh/MovingMesh_.md
@@ -16,18 +16,15 @@ tags:
Moving mesh kernel.
-
## TODO
- [ ] Neumann boundary condition
- - [x] isSelectionByMeshID and UseFunction
- - [ ] isSelectionByMeshID and ConstantValue
- - [ ] isSelectionByMeshID and SpaceNodalValue
- - [ ] isSelectionByElemNum and UseFunction
- - [ ] isSelectionByElemNum and ConstantValue
- - [ ] isSelectionByElemNum and SpaceNodalValue
-
-
+ - [x] isSelectionByMeshID and UseFunction
+ - [ ] isSelectionByMeshID and ConstantValue
+ - [ ] isSelectionByMeshID and SpaceNodalValue
+ - [ ] isSelectionByElemNum and UseFunction
+ - [ ] isSelectionByElemNum and ConstantValue
+ - [ ] isSelectionByElemNum and SpaceNodalValue
## Methods
diff --git a/docs/docs-api/MovingMesh/_AddDisplacementDirichletBC_test_1.md b/docs/docs-api/MovingMesh/_AddDisplacementDirichletBC_test_1.md
index 3a51054d..e2a84caf 100644
--- a/docs/docs-api/MovingMesh/_AddDisplacementDirichletBC_test_1.md
+++ b/docs/docs-api/MovingMesh/_AddDisplacementDirichletBC_test_1.md
@@ -56,65 +56,65 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- !!& materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ !!& materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add solid material.
@@ -157,102 +157,102 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, U2=0,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U2=0", &
- & idof=2, &
- & nodalValueType = Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U2=0", &
+ & idof=2, &
+ & nodalValueType = Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, U1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=U", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=U", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=U1_right )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=U1_right )
+dbc=>NULL()
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/MovingMesh/_AddSolidMaterial_test_1.md b/docs/docs-api/MovingMesh/_AddSolidMaterial_test_1.md
index 941aa860..bc40add4 100644
--- a/docs/docs-api/MovingMesh/_AddSolidMaterial_test_1.md
+++ b/docs/docs-api/MovingMesh/_AddSolidMaterial_test_1.md
@@ -56,65 +56,65 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- !!& materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ !!& materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add solid material.
@@ -149,7 +149,7 @@ Add solid material.
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/MovingMesh/_CheckEssentialParam_test_1.md b/docs/docs-api/MovingMesh/_CheckEssentialParam_test_1.md
index c1707946..4cbf0247 100644
--- a/docs/docs-api/MovingMesh/_CheckEssentialParam_test_1.md
+++ b/docs/docs-api/MovingMesh/_CheckEssentialParam_test_1.md
@@ -38,46 +38,46 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- & materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ & materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Checkessential parameter.
```fortran
- CALL obj%CheckessentialParam(param)
+CALL obj%CheckessentialParam(param)
```
Let us check the essential parameter.
```fortran
- CALL param%Deallocate(); CALL FPL_FINALIZE()
- END PROGRAM main
+CALL param%Deallocate(); CALL FPL_FINALIZE()
+END PROGRAM main
```
diff --git a/docs/docs-api/MovingMesh/_Initiate_test_1.md b/docs/docs-api/MovingMesh/_Initiate_test_1.md
index 1535e80d..c9a01f42 100644
--- a/docs/docs-api/MovingMesh/_Initiate_test_1.md
+++ b/docs/docs-api/MovingMesh/_Initiate_test_1.md
@@ -46,66 +46,66 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- !!& materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ !!& materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
- CALL obj%Display("")
+CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/MovingMesh/_Run_test_1.md b/docs/docs-api/MovingMesh/_Run_test_1.md
index 0f84a1d9..f80abfe2 100644
--- a/docs/docs-api/MovingMesh/_Run_test_1.md
+++ b/docs/docs-api/MovingMesh/_Run_test_1.md
@@ -59,65 +59,65 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- !!& materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ !!& materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add solid material.
@@ -160,124 +160,124 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, U2=0,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U2=0", &
- & idof=2, &
- & nodalValueType = Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U2=0", &
+ & idof=2, &
+ & nodalValueType = Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, U1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=U", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=U", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=U1_right )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=U1_right )
+dbc=>NULL()
```
Set
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Set Run parameters
```fortran
- ierr = param%set(key=obj%name//"/resetIteration", value=.false.)
- ierr = param%set(key=obj%name//"/resetTimeStep", value=.false.)
- ierr = param%set(key=obj%name//"/applyDirichletBC", value=.true.)
- ierr = param%set(key=obj%name//"/assembleTanmat", value=.true.)
- ierr = param%set(key=obj%name//"/assemble", value=.true.)
- ierr = param%set(key=obj%name//"/solve", value=.true.)
- ierr = param%set(key=obj%name//"/updateIteration", value=.true.)
- ierr = param%set(key=obj%name//"/update", value=.true.)
- ierr = param%set(key=obj%name//"/updateDomain", value=.true.)
+ierr = param%set(key=obj%name//"/resetIteration", value=.false.)
+ierr = param%set(key=obj%name//"/resetTimeStep", value=.false.)
+ierr = param%set(key=obj%name//"/applyDirichletBC", value=.true.)
+ierr = param%set(key=obj%name//"/assembleTanmat", value=.true.)
+ierr = param%set(key=obj%name//"/assemble", value=.true.)
+ierr = param%set(key=obj%name//"/solve", value=.true.)
+ierr = param%set(key=obj%name//"/updateIteration", value=.true.)
+ierr = param%set(key=obj%name//"/update", value=.true.)
+ierr = param%set(key=obj%name//"/updateDomain", value=.true.)
```
Run
```fortran
- CALL obj%Run(param=param)
+CALL obj%Run(param=param)
```
Write Data
diff --git a/docs/docs-api/MovingMesh/_SetMovingMeshParam_test_1.md b/docs/docs-api/MovingMesh/_SetMovingMeshParam_test_1.md
index 991c80a6..7c262f99 100644
--- a/docs/docs-api/MovingMesh/_SetMovingMeshParam_test_1.md
+++ b/docs/docs-api/MovingMesh/_SetMovingMeshParam_test_1.md
@@ -38,46 +38,46 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- & materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ & materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Let us print the parameter list.
```fortran
- CALL param%Print()
+CALL param%Print()
```
Let us check the essential parameter.
```fortran
- CALL param%Deallocate(); CALL FPL_FINALIZE()
- END PROGRAM main
+CALL param%Deallocate(); CALL FPL_FINALIZE()
+END PROGRAM main
```
diff --git a/docs/docs-api/MovingMesh/_Set_test_1.md b/docs/docs-api/MovingMesh/_Set_test_1.md
index 64640330..15072221 100644
--- a/docs/docs-api/MovingMesh/_Set_test_1.md
+++ b/docs/docs-api/MovingMesh/_Set_test_1.md
@@ -56,65 +56,65 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetMovingMeshParam( &
- & param=param, &
- & engine=engine, &
- & coordinateSystem=coordinateSystem, &
- & nsd=nsd, &
- & nnt=nnt, &
- & dt=dt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & currentTime=currentTime, &
- & currentTimeStep=currentTimeStep, &
- & totalTimeStep=totalTimeStep, &
- & gravity=gravity, &
- & domainFile=domainFileName, &
- !!& materialInterfaces=materialInterfaces, &
- & maxIter=maxIter, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & tNeumannBC=tNeumannBC, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & postProcessOpt=postProcessOpt)
+CALL SetMovingMeshParam( &
+ & param=param, &
+ & engine=engine, &
+ & coordinateSystem=coordinateSystem, &
+ & nsd=nsd, &
+ & nnt=nnt, &
+ & dt=dt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & currentTime=currentTime, &
+ & currentTimeStep=currentTimeStep, &
+ & totalTimeStep=totalTimeStep, &
+ & gravity=gravity, &
+ & domainFile=domainFileName, &
+ !!& materialInterfaces=materialInterfaces, &
+ & maxIter=maxIter, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & tNeumannBC=tNeumannBC, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & postProcessOpt=postProcessOpt)
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add solid material.
@@ -157,108 +157,108 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, U2=0,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U2=0", &
- & idof=2, &
- & nodalValueType = Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U2=0", &
+ & idof=2, &
+ & nodalValueType = Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT, RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue = 0.0_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, U1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="U1=U", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="U1=U", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[RIGHT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddDisplacementDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=U1_right )
- dbc=>NULL()
+CALL obj%AddDisplacementDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetDisplacementDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=U1_right )
+dbc=>NULL()
```
Set
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/MultiIndices/examples/MultiIndices_test_2.md b/docs/docs-api/MultiIndices/examples/MultiIndices_test_2.md
index f5b18622..f2908d94 100644
--- a/docs/docs-api/MultiIndices/examples/MultiIndices_test_2.md
+++ b/docs/docs-api/MultiIndices/examples/MultiIndices_test_2.md
@@ -9,132 +9,132 @@ integer(i4b), allocatable :: indices(:,:)
!!! note "Size"
```fortran
- n = 0; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(0,1)=")
- !!
- n = 1; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(1,1)=")
- !!
- n = 2; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(2,1)=")
- !!
- n = 3; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(3,1)=")
+n = 0; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(0,1)=")
+!!
+n = 1; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(1,1)=")
+!!
+n = 2; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(2,1)=")
+!!
+n = 3; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(3,1)=")
```
!!! example "result"
- size(0,1)=1
- size(1,1)=2
- size(2,1)=3
- size(3,1)=4
+size(0,1)=1
+size(1,1)=2
+size(2,1)=3
+size(3,1)=4
!!! note "Size"
```fortran
- n = 0; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, upto=.TRUE.), "size(0,1)=")
- !!
- n = 1; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, upto=.TRUE.), "size(1,1)=")
- !!
- n = 2; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, upto=.TRUE.), "size(2,1)=")
- !!
- n = 3; d = 1
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, upto=.TRUE.), "size(3,1)=")
+n = 0; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, upto=.TRUE.), "size(0,1)=")
+!!
+n = 1; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, upto=.TRUE.), "size(1,1)=")
+!!
+n = 2; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, upto=.TRUE.), "size(2,1)=")
+!!
+n = 3; d = 1
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, upto=.TRUE.), "size(3,1)=")
```
!!! example "result"
- size(0,1)=1
- size(1,1)=3
- size(2,1)=6
- size(3,1)=10
+size(0,1)=1
+size(1,1)=3
+size(2,1)=6
+size(3,1)=10
!!! note "Size"
```fortran
- n = 0; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(0,2)=")
- !!
- n = 1; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(1,2)=")
- !!
- n = 2; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(2,2)=")
- !!
- n = 3; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(3,2)=")
+n = 0; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(0,2)=")
+!!
+n = 1; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(1,2)=")
+!!
+n = 2; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(2,2)=")
+!!
+n = 3; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(3,2)=")
```
!!! example "result"
- size(0,2)=1
- size(1,2)=3
- size(2,2)=6
- size(3,2)=10
+size(0,2)=1
+size(1,2)=3
+size(2,2)=6
+size(3,2)=10
!!! note "Size"
```fortran
- n = 0; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, .true.), "size(0,2)=")
- !!
- n = 1; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, .true.), "size(1,2)=")
- !!
- n = 2; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, .true.), "size(2,2)=")
- !!
- n = 3; d = 2
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj, .true.), "size(3,2)=")
+n = 0; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, .true.), "size(0,2)=")
+!!
+n = 1; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, .true.), "size(1,2)=")
+!!
+n = 2; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, .true.), "size(2,2)=")
+!!
+n = 3; d = 2
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj, .true.), "size(3,2)=")
```
!!! example "result"
- size(0,2)=1
- size(1,2)=4
- size(2,2)=10
- size(3,2)=20
+size(0,2)=1
+size(1,2)=4
+size(2,2)=10
+size(3,2)=20
!!! note "Size"
```fortran
- n = 0; d = 3
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(0,3)=")
- !!
- n = 1; d = 3
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(1,3)=")
- !!
- n = 2; d = 3
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(2,3)=")
- !!
- n = 3; d = 3
- obj=MultiIndices(n=n, d=d)
- CALL Display(SIZE(obj), "size(3,3)=")
+n = 0; d = 3
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(0,3)=")
+!!
+n = 1; d = 3
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(1,3)=")
+!!
+n = 2; d = 3
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(2,3)=")
+!!
+n = 3; d = 3
+obj=MultiIndices(n=n, d=d)
+CALL Display(SIZE(obj), "size(3,3)=")
```
!!! example "result"
- size(0,3)=1
- size(1,3)=4
- size(2,3)=10
- size(3,3)=20
+size(0,3)=1
+size(1,3)=4
+size(2,3)=10
+size(3,3)=20
```fortran
END PROGRAM main
diff --git a/docs/docs-api/MultiIndices/examples/MultiIndices_test_3.md b/docs/docs-api/MultiIndices/examples/MultiIndices_test_3.md
index 6c200a3e..8cdf8c1c 100644
--- a/docs/docs-api/MultiIndices/examples/MultiIndices_test_3.md
+++ b/docs/docs-api/MultiIndices/examples/MultiIndices_test_3.md
@@ -26,100 +26,95 @@ integer(i4b), allocatable :: indices(:,:)
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
```fortran
- obj=MultiIndices(n=0, d=1)
- indices = GetMultiIndices(obj=obj, upto=.true.)
- CALL Display(indices, "indices=")
+obj=MultiIndices(n=0, d=1)
+indices = GetMultiIndices(obj=obj, upto=.true.)
+CALL Display(indices, "indices=")
```
-!!! example "result"
- indices=
- --------
- 0 0
+## !!! example "result"indices=
+
+0 0
!!! note "n=1, d=1"
```fortran
- obj=MultiIndices(n=1, d=1)
- indices = GetMultiIndices(obj, .true.)
- CALL Display(transpose(indices), "indices=")
+obj=MultiIndices(n=1, d=1)
+indices = GetMultiIndices(obj, .true.)
+CALL Display(transpose(indices), "indices=")
```
-!!! example "result"
- indices=
- --------
- 0 0
- 0 1
- 1 0
+## !!! example "result"indices=
+
+0 0
+0 1
+1 0
!!! note "n=2, d=1"
```fortran
- obj=MultiIndices(n=2, d=1)
- indices = GetMultiIndices(obj, .true.)
- CALL Display(transpose(indices), "indices=")
+obj=MultiIndices(n=2, d=1)
+indices = GetMultiIndices(obj, .true.)
+CALL Display(transpose(indices), "indices=")
```
-!!! example "result"
- indices=
- --------
- 0 0
- 0 1
- 1 0
- 0 2
- 1 1
- 2 0
+## !!! example "result"indices=
+
+0 0
+0 1
+1 0
+0 2
+1 1
+2 0
!!! note "n=2, d=2"
```fortran
- obj=MultiIndices(n=2, d=2)
- indices = GetMultiIndices(obj, .true.)
- CALL Display(transpose(indices), "indices=")
+obj=MultiIndices(n=2, d=2)
+indices = GetMultiIndices(obj, .true.)
+CALL Display(transpose(indices), "indices=")
```
-!!! example "result"
- indices=
- --------
- 0 0 0
- 0 0 1
- 0 1 0
- 1 0 0
- 0 0 2
- 0 1 1
- 0 2 0
- 1 0 1
- 1 1 0
- 2 0 0
+## !!! example "result"indices=
+
+0 0 0
+0 0 1
+0 1 0
+1 0 0
+0 0 2
+0 1 1
+0 2 0
+1 0 1
+1 1 0
+2 0 0
!!! note "n=2, d=3"
```fortran
- obj=MultiIndices(n=2, d=3)
- indices = GetMultiIndices(obj, .true.)
- CALL Display(transpose(indices), "indices=")
+obj=MultiIndices(n=2, d=3)
+indices = GetMultiIndices(obj, .true.)
+CALL Display(transpose(indices), "indices=")
```
-!!! example "result"
- indices=
- --------
- 0 0 0 0
- 0 0 0 1
- 0 0 1 0
- 0 1 0 0
- 1 0 0 0
- 0 0 0 2
- 0 0 1 1
- 0 0 2 0
- 0 1 0 1
- 0 1 1 0
- 0 2 0 0
- 1 0 0 1
- 1 0 1 0
- 1 1 0 0
- 2 0 0 0
+## !!! example "result"indices=
+
+0 0 0 0
+0 0 0 1
+0 0 1 0
+0 1 0 0
+1 0 0 0
+0 0 0 2
+0 0 1 1
+0 0 2 0
+0 1 0 1
+0 1 1 0
+0 2 0 0
+1 0 0 1
+1 0 1 0
+1 1 0 0
+2 0 0 0
```fortran
END PROGRAM main
diff --git a/docs/docs-api/NeumannBC/CheckEssentialParam.md b/docs/docs-api/NeumannBC/CheckEssentialParam.md
index 1d9c932f..136fed94 100644
--- a/docs/docs-api/NeumannBC/CheckEssentialParam.md
+++ b/docs/docs-api/NeumannBC/CheckEssentialParam.md
@@ -12,5 +12,3 @@ INTERFACE
END SUBROUTINE CheckEssentialParam
END INTERFACE
```
-
-
diff --git a/docs/docs-api/NeumannBC/Get.md b/docs/docs-api/NeumannBC/Get.md
index 25df93dd..a9bfb37d 100644
--- a/docs/docs-api/NeumannBC/Get.md
+++ b/docs/docs-api/NeumannBC/Get.md
@@ -15,4 +15,4 @@ INTERFACE
END INTERFACE
```
-This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).
\ No newline at end of file
+This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).
diff --git a/docs/docs-api/NeumannBC/GetDOFNo.md b/docs/docs-api/NeumannBC/GetDOFNo.md
index 1df4cddb..6bfbefe1 100644
--- a/docs/docs-api/NeumannBC/GetDOFNo.md
+++ b/docs/docs-api/NeumannBC/GetDOFNo.md
@@ -13,6 +13,4 @@ INTERFACE
END INTERFACE
```
-
-
-This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).
\ No newline at end of file
+This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).
diff --git a/docs/docs-api/NeumannBC/GetMeshID.md b/docs/docs-api/NeumannBC/GetMeshID.md
index 5fcc7ee7..e48afb90 100644
--- a/docs/docs-api/NeumannBC/GetMeshID.md
+++ b/docs/docs-api/NeumannBC/GetMeshID.md
@@ -14,4 +14,4 @@ INTERFACE
END INTERFACE
```
-This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).z
\ No newline at end of file
+This routine is inherited from [AbstractBC_](../AbstractBC/AbstractBC_.md).z
diff --git a/docs/docs-api/NeumannBC/Import.md b/docs/docs-api/NeumannBC/Import.md
index 404e1681..a877558d 100644
--- a/docs/docs-api/NeumannBC/Import.md
+++ b/docs/docs-api/NeumannBC/Import.md
@@ -24,4 +24,4 @@ END INTERFACE
| `nodalValueType` | String | `CONSTANT`, `SPACE`, `TIME`, `SPACETIME` | |
| `UseFunction` | BOOL | | |
| `Boundary` | Group | \ | |
-| | | | |
\ No newline at end of file
+| | | | |
diff --git a/docs/docs-api/OrthogonalPolynomialUtility/EvalallOrthopol.md b/docs/docs-api/OrthogonalPolynomialUtility/EvalallOrthopol.md
index a9682f18..7bb5ccff 100644
--- a/docs/docs-api/OrthogonalPolynomialUtility/EvalallOrthopol.md
+++ b/docs/docs-api/OrthogonalPolynomialUtility/EvalallOrthopol.md
@@ -42,7 +42,7 @@ Currently, we can specify following types of orthogonal polynomials:
- [x] Chebyshev
- [x] Lobatto
- [x] UnscaledLobatto
-:::
+ :::
:::note `alpha, beta`
alpha and beta are parameters of Jacobi Polynomials. They should be present when `orthopol` is equal to `Jacobi`
@@ -56,4 +56,4 @@ alpha and beta are parameters of Jacobi Polynomials. They should be present when
- The jth col of `ans` denotes the value of jth polynomial at all points.
- The ith row of `ans` denotes the value of all polynomials at ith point.
-:::
+ :::
diff --git a/docs/docs-api/PLPlot/PLPlot_.md b/docs/docs-api/PLPlot/PLPlot_.md
index 31159227..1ca5b8b8 100644
--- a/docs/docs-api/PLPlot/PLPlot_.md
+++ b/docs/docs-api/PLPlot/PLPlot_.md
@@ -1,6 +1,6 @@
# Structure
-PLplot is a software package for creating scientific plots . It is cross-platform ❤, which means it will work on Windows, Unix, and Linux system. The PLplot software is primarily licensed under [the LGPL](http://www.gnu.org/licenses/lgpl.html) 🔥. It is written in C language, and it has [bindings](http://plplot.sourceforge.net/index.php#bindings) 🔗 for several other language including Fortran 🖥️ .
+PLplot is a software package for creating scientific plots . It is cross-platform ❤, which means it will work on Windows, Unix, and Linux system. The PLplot software is primarily licensed under [the LGPL](http://www.gnu.org/licenses/lgpl.html) 🔥. It is written in C language, and it has [bindings](http://plplot.sourceforge.net/index.php#bindings) 🔗 for several other language including Fortran 🖥️ .
The PLplot core library can be used to create
@@ -13,7 +13,7 @@ The PLplot core library can be used to create
- bar charts
- pie charts.
-You can find more about PLPLOT [➡️🖱](http://plplot.sourceforge.net/index.php)
+You can find more about PLPLOT [➡️🖱](http://plplot.sourceforge.net/index.php)
- Installation [[PLPlot_Installation]]
- Getting-Started
diff --git a/docs/docs-api/PLPlot/PLPlot_COLOR.md b/docs/docs-api/PLPlot/PLPlot_COLOR.md
index df4a0729..93d8a93c 100644
--- a/docs/docs-api/PLPlot/PLPlot_COLOR.md
+++ b/docs/docs-api/PLPlot/PLPlot_COLOR.md
@@ -6,19 +6,19 @@ title: PLPlot Colors
Normally, color is used for all drivers and devices that support it within PLplot subject to the condition that the user has the option of globally turning off the color (and subsequently turning it on again if so desired) using [`plscolor`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscolor.html "plscolor: Used to globally turn color output on/off").
-- The PLplot color model allows the user to set the current color from a wide range of colors using two distinct color maps. Color map0 (called cmap0 and discussed in [the section called “Color Map0”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-0 "Color Map0")) has discrete colors arranged in no particular order with regard to color index and is most suited to coloring discrete elements of the plot.
-- Color map1 (called cmap1 and discussed in [the section called “Color Map1”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-1 "Color Map1")) has colors which are a continuous function of color index and is most suited to coloring continuous elements of the plot.
-- The user can change the current color (as opposed to the background color which is a special case that is discussed in [the section called “Color Map0”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-0 "Color Map0")) at any point in the PLplot commands that are used to create a given plot by selecting any of the colors from either cmap0 or cmap1 using calls to [`plcol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plcol0.html "plcol0: Set color, cmap0") or [`plcol1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plcol1.html "plcol1: Set color, cmap1").
+- The PLplot color model allows the user to set the current color from a wide range of colors using two distinct color maps. Color map0 (called cmap0 and discussed in [the section called “Color Map0”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-0 "Color Map0")) has discrete colors arranged in no particular order with regard to color index and is most suited to coloring discrete elements of the plot.
+- Color map1 (called cmap1 and discussed in [the section called “Color Map1”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-1 "Color Map1")) has colors which are a continuous function of color index and is most suited to coloring continuous elements of the plot.
+- The user can change the current color (as opposed to the background color which is a special case that is discussed in [the section called “Color Map0”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-0 "Color Map0")) at any point in the PLplot commands that are used to create a given plot by selecting any of the colors from either cmap0 or cmap1 using calls to [`plcol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plcol0.html "plcol0: Set color, cmap0") or [`plcol1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plcol1.html "plcol1: Set color, cmap1").
> When the current color is changed all subsequent drawing actions will utilize that new color until it is changed again.
### Color Map0
-- Color map0 is most suited to coloring discrete elements of the plot such as the background, axes, lines, and labels.
-- The cmap0 palette colors are stored using [RGBA](https://en.wikipedia.org/wiki/RGBA_color_space) (i.e., red, green, blue, and alpha transparency) components (although some drivers ignore the alpha transparency data and simply render opaque colors corresponding to the semitransparent ones).
+- Color map0 is most suited to coloring discrete elements of the plot such as the background, axes, lines, and labels.
+- The cmap0 palette colors are stored using [RGBA](https://en.wikipedia.org/wiki/RGBA_color_space) (i.e., red, green, blue, and alpha transparency) components (although some drivers ignore the alpha transparency data and simply render opaque colors corresponding to the semitransparent ones).
- In the discussion that follows all references to cmap0 API functions with a trailing "a" in their names (e.g., [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index")) refers to setting RGBA semitransparent colors while the equivalent function (e.g., [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index")) without the trailing "a" in the name refers to setting RGB colors with an assumed opaque alpha transparency of 1.0.
-Page 1 of [our standard example 02](http://plplot.org/examples.php?demo=02) illustrates the default 16 colors in the cmap0 palette.
+Page 1 of [our standard example 02](http://plplot.org/examples.php?demo=02) illustrates the default 16 colors in the cmap0 palette.

@@ -27,13 +27,11 @@ Here note that
- `plcol0(0)` is black
- `plcol0(1)` is red
- `plcol0(2)` is yellow
-- and so on...
-
+- and so on...

-
-> The background color is a special case to be discussed below, and the current color of discrete elements of the plot other than the background may be specified by cmap0 index (or cmap1 index, see [the section called “Color Map1”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-1 "Color Map1")).
+> The background color is a special case to be discussed below, and the current color of discrete elements of the plot other than the background may be specified by cmap0 index (or cmap1 index, see [the section called “Color Map1”](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/color.html#color-map-1 "Color Map1")).
> The cmap0 index is 1 by default (and corresponds to opaque red for the default cmap0 palette), but during the course of plotting a page, the user can change that current color as often as desired using [`plcol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plcol0.html "plcol0: Set color, cmap0") to select the desired cmap0 color index from the cmap0 color palette in existence at the time.
@@ -48,26 +46,26 @@ plscol0 ( icol0 , r , g , b );
Also see [PLSCMAP0n](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0n.html)
-- The advanced cmap0 use case includes a number of methods for changing the cmap0 color palette. It is possible to update one index of the cmap0 palette using [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") or [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index"),
-- define a complete cmap0 palette with an arbitrary number of colors using [`plscmap0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0a.html "plscmap0a: Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value") or [`plscmap0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0.html "plscmap0: Set cmap0 colors by 8-bit RGB values"),
-- or read in a complete cmap0 palette from a special cmap0 palette file with the command-line `cmap0` parameter or by calling [`plspal0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plspal0.html "plspal0: Set the cmap0 palette using the specified cmap0*.pal format file").
+- The advanced cmap0 use case includes a number of methods for changing the cmap0 color palette. It is possible to update one index of the cmap0 palette using [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") or [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index"),
+- define a complete cmap0 palette with an arbitrary number of colors using [`plscmap0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0a.html "plscmap0a: Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value") or [`plscmap0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0.html "plscmap0: Set cmap0 colors by 8-bit RGB values"),
+- or read in a complete cmap0 palette from a special cmap0 palette file with the command-line `cmap0` parameter or by calling [`plspal0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plspal0.html "plspal0: Set the cmap0 palette using the specified cmap0*.pal format file").
-- Standard examples [04](http://plplot.org/examples.php?demo=04), [19](http://plplot.org/examples.php?demo=19), [26](http://plplot.org/examples.php?demo=26), [30](http://plplot.org/examples.php?demo=30), [31](http://plplot.org/examples.php?demo=31), and [33](http://plplot.org/examples.php?demo=33) illustrate how to use [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") and [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index").
-- Standard examples [02](http://plplot.org/examples.php?demo=02), [24](http://plplot.org/examples.php?demo=24), and [30](http://plplot.org/examples.php?demo=30) illustrate how to use [`plscmap0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0a.html "plscmap0a: Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value") and [`plscmap0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0.html "plscmap0: Set cmap0 colors by 8-bit RGB values"). Although the user can define and use any cmap0 palette file they like, predefined cmap0 palette files are given in `data/cmap0*.pal` within the source tree and installed in `/share/plplot5.15.0/cmap0*.pal` in the install tree.
-- By default the cmap0 palette is set using the predefined `cmap0_default.pal` file, but [our standard example 16](http://plplot.org/examples.php?demo=16) demonstrates use of a number of our other predefined cmap0 palette files in the various pages of that example.
-- Many of the above commands indirectly set the number of cmap0 colors, but it is also possible for the user to specify that number directly with the command-line `ncol0` parameter or by calling [`plscmap0n`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0n.html "plscmap0n: Set number of colors in cmap0").
+- Standard examples [04](http://plplot.org/examples.php?demo=04), [19](http://plplot.org/examples.php?demo=19), [26](http://plplot.org/examples.php?demo=26), [30](http://plplot.org/examples.php?demo=30), [31](http://plplot.org/examples.php?demo=31), and [33](http://plplot.org/examples.php?demo=33) illustrate how to use [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") and [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index").
+- Standard examples [02](http://plplot.org/examples.php?demo=02), [24](http://plplot.org/examples.php?demo=24), and [30](http://plplot.org/examples.php?demo=30) illustrate how to use [`plscmap0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0a.html "plscmap0a: Set cmap0 colors by 8-bit RGB values and PLFLT alpha transparency value") and [`plscmap0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0.html "plscmap0: Set cmap0 colors by 8-bit RGB values"). Although the user can define and use any cmap0 palette file they like, predefined cmap0 palette files are given in `data/cmap0*.pal` within the source tree and installed in `/share/plplot5.15.0/cmap0*.pal` in the install tree.
+- By default the cmap0 palette is set using the predefined `cmap0_default.pal` file, but [our standard example 16](http://plplot.org/examples.php?demo=16) demonstrates use of a number of our other predefined cmap0 palette files in the various pages of that example.
+- Many of the above commands indirectly set the number of cmap0 colors, but it is also possible for the user to specify that number directly with the command-line `ncol0` parameter or by calling [`plscmap0n`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscmap0n.html "plscmap0n: Set number of colors in cmap0").
- For all methods of defining the cmap0 palette any number of colors are allowed in any order, but it is not guaranteed that the individual drivers will actually be able to use more than 16 colors (although most drivers do support more than 16 colors).
### Background color
-The background color (which always corresponds to index 0 of the cmap0 palette) is a special case that must be discussed separately.
+The background color (which always corresponds to index 0 of the cmap0 palette) is a special case that must be discussed separately.
-The default cmap0 palette index 0 corresponds to opaque black so by default the background is that color.
+The default cmap0 palette index 0 corresponds to opaque black so by default the background is that color.
-However, the user may set that background color to something else by using the command-line `bg` parameter, by calling [`plscolbga`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscolbga.html "plscolbga: Set the background color by 8-bit RGB value and PLFLT alpha transparency value.") or [`plscolbg`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscolbg.html "plscolbg: Set the background color by 8-bit RGB value"), or by calling [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") or [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index") with a 0 index.
+However, the user may set that background color to something else by using the command-line `bg` parameter, by calling [`plscolbga`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscolbga.html "plscolbga: Set the background color by 8-bit RGB value and PLFLT alpha transparency value.") or [`plscolbg`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscolbg.html "plscolbg: Set the background color by 8-bit RGB value"), or by calling [`plscol0a`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0a.html "plscol0a: Set 8-bit RGB values and PLFLT alpha transparency value for given cmap0 color index") or [`plscol0`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plscol0.html "plscol0: Set 8-bit RGB values for given cmap0 color index") with a 0 index.
-In addition, the background color is implicitly set when the whole cmap0 color palette (including index 0) is changed with one of the methods above.
+In addition, the background color is implicitly set when the whole cmap0 color palette (including index 0) is changed with one of the methods above.
-However, since the background is painted at the start of each page any of these methods of changing the background color must be done _before_ that page start.
+However, since the background is painted at the start of each page any of these methods of changing the background color must be done _before_ that page start.
-Note that although our long-term goal is for each device driver that honors semitransparent colors will also honor semitransparent background requests from users the current status is only a few drivers (e.g., the svg device driver) do that and the rest fall back to replacing the requested semitransparent background with the equivalent opaque background.
\ No newline at end of file
+Note that although our long-term goal is for each device driver that honors semitransparent colors will also honor semitransparent background requests from users the current status is only a few drivers (e.g., the svg device driver) do that and the rest fall back to replacing the requested semitransparent background with the equivalent opaque background.
diff --git a/docs/docs-api/PLPlot/PLPlot_Devices.md b/docs/docs-api/PLPlot/PLPlot_Devices.md
index 2962fdb1..a22b75f0 100644
--- a/docs/docs-api/PLPlot/PLPlot_Devices.md
+++ b/docs/docs-api/PLPlot/PLPlot_Devices.md
@@ -30,4 +30,4 @@ Before [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15
PLplot has the ability to write to multiple output streams. An output stream corresponds to a single logical device to which one plots independent of all other streams. The function [`plsstrm`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsstrm.html "plsstrm: Set current output stream") is used to switch between streams. For any of our supported languages [our standard example 14](http://plplot.org/examples.php?demo=14) demonstrates of how to use multiple output streams where the same device is used for both streams, but, of course, different devices can be used for different streams as well.
-At the end of a plotting program, it is important to close the plotting device by calling [`plend`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend.html "plend: End plotting session"). This flushes any internal buffers and frees any memory that may have been allocated, for all open output streams. You may call [`plend1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend1.html "plend1: End plotting session for current stream") to close the plotting device for the current output stream only. Note that if PLplot is initialized more than once during a program to change the output device, an automatic call to [`plend1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend1.html "plend1: End plotting session for current stream") is made before the new device is opened for the given stream.
\ No newline at end of file
+At the end of a plotting program, it is important to close the plotting device by calling [`plend`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend.html "plend: End plotting session"). This flushes any internal buffers and frees any memory that may have been allocated, for all open output streams. You may call [`plend1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend1.html "plend1: End plotting session for current stream") to close the plotting device for the current output stream only. Note that if PLplot is initialized more than once during a program to change the output device, an automatic call to [`plend1`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend1.html "plend1: End plotting session for current stream") is made before the new device is opened for the given stream.
diff --git a/docs/docs-api/PLPlot/PLPlot_GettingStarted.md b/docs/docs-api/PLPlot/PLPlot_GettingStarted.md
index c0ab59a0..f504c167 100644
--- a/docs/docs-api/PLPlot/PLPlot_GettingStarted.md
+++ b/docs/docs-api/PLPlot/PLPlot_GettingStarted.md
@@ -40,13 +40,15 @@ END PROGRAM main
This routine should be called before doing anything with PLPLOT. It is the main initialization routine for PLPLOT.
-There are several routines affecting the initialization that must be called _before_ [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plinit.html "plinit: Initialize PLplot"), if they are used. The function [`plsdev`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsdev.html "plsdev: Set the device (keyword) name") allows you to set the device explicitly. The function [`plsetopt`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsetopt.html "plsetopt: Set any command-line option") allows you to set any command-line option internally in your code. The function [`plssub`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plssub.html "plssub: Set the number of subpages in x and y") may be called to divide the output device plotting area into several subpages of equal size, each of which can be used separately.
+There are several routines affecting the initialization that must be called _before_ [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plinit.html "plinit: Initialize PLplot"), if they are used. The function [`plsdev`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsdev.html "plsdev: Set the device (keyword) name") allows you to set the device explicitly. The function [`plsetopt`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsetopt.html "plsetopt: Set any command-line option") allows you to set any command-line option internally in your code. The function [`plssub`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plssub.html "plssub: Set the number of subpages in x and y") may be called to divide the output device plotting area into several subpages of equal size, each of which can be used separately.
# [PLEND](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/finishing.html)
- Always call [`plend`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend.html "plend: End plotting session") to close any output plot files and to free up resources.
+
+Always call [`plend`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plend.html "plend: End plotting session") to close any output plot files and to free up resources.
## [PLSDEV](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsdev.html)
-The output device can be a terminal, disk file, window system, pipe, or socket. If the output device has not already been specified when [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plinit.html "plinit: Initialize PLplot") is called, the output device will be taken from the value of the `PLPLOT_DEV` environment variable. If this variable is not set (or is empty), a list of valid output devices is given and the user is prompted for a choice.
+
+The output device can be a terminal, disk file, window system, pipe, or socket. If the output device has not already been specified when [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plinit.html "plinit: Initialize PLplot") is called, the output device will be taken from the value of the `PLPLOT_DEV` environment variable. If this variable is not set (or is empty), a list of valid output devices is given and the user is prompted for a choice.
> The device can be specified BEFORE calling [`plinit`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plinit.html "plinit: Initialize PLplot") by:
@@ -59,40 +61,40 @@ CALL PLSDEV(STRING::devname)
Following is the list of device name.
```txt
- Plotting Options:
- < 1> xwin X-Window (Xlib)
- < 2> tk Tcl/TK Window
- < 3> ps PostScript File (monochrome)
- < 4> psc PostScript File (color)
- < 5> xfig Fig file
- < 6> null Null device
- < 7> ntk New tk driver
- < 8> tkwin New tk driver
- < 9> mem User-supplied memory device
- <10> wxwidgets wxWidgets Driver
- <11> psttf PostScript File (monochrome)
- <12> psttfc PostScript File (color)
- <13> svg Scalable Vector Graphics (SVG 1.1)
- <14> pdf Portable Document Format PDF
- <15> bmpqt Qt Windows bitmap driver
- <16> jpgqt Qt jpg driver
- <17> pngqt Qt png driver
- <18> ppmqt Qt ppm driver
- <19> tiffqt Qt tiff driver
- <20> svgqt Qt SVG driver
- <21> qtwidget Qt Widget
- <22> epsqt Qt EPS driver
- <23> pdfqt Qt PDF driver
- <24> extqt External Qt driver
- <25> memqt Memory Qt driver
- <26> xcairo Cairo X Windows Driver
- <27> pdfcairo Cairo PDF Driver
- <28> pscairo Cairo PS Driver
- <29> epscairo Cairo EPS Driver
- <30> svgcairo Cairo SVG Driver
- <31> pngcairo Cairo PNG Driver
- <32> memcairo Cairo Memory Driver
- <33> extcairo Cairo External Context Driver
+Plotting Options:
+ < 1> xwin X-Window (Xlib)
+ < 2> tk Tcl/TK Window
+ < 3> ps PostScript File (monochrome)
+ < 4> psc PostScript File (color)
+ < 5> xfig Fig file
+ < 6> null Null device
+ < 7> ntk New tk driver
+ < 8> tkwin New tk driver
+ < 9> mem User-supplied memory device
+ <10> wxwidgets wxWidgets Driver
+ <11> psttf PostScript File (monochrome)
+ <12> psttfc PostScript File (color)
+ <13> svg Scalable Vector Graphics (SVG 1.1)
+ <14> pdf Portable Document Format PDF
+ <15> bmpqt Qt Windows bitmap driver
+ <16> jpgqt Qt jpg driver
+ <17> pngqt Qt png driver
+ <18> ppmqt Qt ppm driver
+ <19> tiffqt Qt tiff driver
+ <20> svgqt Qt SVG driver
+ <21> qtwidget Qt Widget
+ <22> epsqt Qt EPS driver
+ <23> pdfqt Qt PDF driver
+ <24> extqt External Qt driver
+ <25> memqt Memory Qt driver
+ <26> xcairo Cairo X Windows Driver
+ <27> pdfcairo Cairo PDF Driver
+ <28> pscairo Cairo PS Driver
+ <29> epscairo Cairo EPS Driver
+ <30> svgcairo Cairo SVG Driver
+ <31> pngcairo Cairo PNG Driver
+ <32> memcairo Cairo Memory Driver
+ <33> extcairo Cairo External Context Driver
```
I prefer one of the following
@@ -127,7 +129,7 @@ The function [`pllab`](http://plplot.sourceforge.net/docbook-manual/plplot-html-
CALL PLPOIN(REAL::X(:),REAL::Y(:),INT::CODE)
```
- > If `0 < code < 32`, then Hershey symbols is plotted. If `32 <= code <= 127` the corresponding printable ASCII character is plotted.
+> If `0 < code < 32`, then Hershey symbols is plotted. If `32 <= code <= 127` the corresponding printable ASCII character is plotted.

@@ -137,59 +139,59 @@ CALL PLPOIN(REAL::X(:),REAL::Y(:),INT::CODE)
CALL PLSTRING(REAL::X(:),REAL::Y(:),STRING::STRING)
```
- Plot a glyph at the specified points. The glyph is specified with a PLplot user string. [`plstring`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plstring.html "plstring: Plot a glyph at the specified points") is now the preferred way of drawing points for unicode-aware devices because it gives users full access via a UTF-8 string to any unicode glyph they prefer for the symbol that is is available via system fonts.
+Plot a glyph at the specified points. The glyph is specified with a PLplot user string. [`plstring`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plstring.html "plstring: Plot a glyph at the specified points") is now the preferred way of drawing points for unicode-aware devices because it gives users full access via a UTF-8 string to any unicode glyph they prefer for the symbol that is is available via system fonts.
-See the following [example 7](http://plplot.org/examples.php?demo=07)
+See the following [example 7](http://plplot.org/examples.php?demo=07)
- ## [PLSYM](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsym.html)
+## [PLSYM](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plsym.html)
- TO BE ADDED LATER.
+TO BE ADDED LATER.
## [PLLINE](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plline.html)
[`plline`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/plline.html "plline: Draw a line") draws a line or curve. The curve consists of `n-1` line segments joining the `n` points in the input arrays. For single line segments, [`pljoin`](http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/pljoin.html "pljoin: Draw a line between two points") is used to join two points.
- ## COLORS
+## COLORS
- - PLCOL0
- - PLSCOL0
- - PLCOLBG
+- PLCOL0
+- PLSCOL0
+- PLCOLBG
- 
+
- Following example will print black on white
+Following example will print black on white
- ```fortran
- PROGRAM main
- USE easifemBase
- IMPLICIT NONE
- INTEGER, PARAMETER :: NSIZE = 101
- REAL( DFP ), DIMENSION(NSIZE) :: x, y
- REAL( DFP ) :: xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 100.0
- INTEGER :: ierr
- ! Prepare data to be plotted.
- x = arange(0, NSIZE-1) / REAL(NSIZE-1, DFP)
- y = ymax * x**2
- ! Parse and process command line arguments
- ierr = PLPARSEOPTS( PL_PARSE_FULL )
- IF(ierr .NE. 0) THEN
- CALL Display( "plparseopts error" )
- STOP
- END IF
- !> Initiate the PLPLOT enviroment
- CALL PLSDEV("qtwidget")
- CALL PLSCOLBG(255,255,255)
- CALL PLINIT
- CALL PLSCOL0(0, 0,0,0)
- CALL PLCOL0(0)
- ! COLOR
- ! Create a labelled box to hold the plot.
- ! we have specified the box dimension
- CALL PLENV( xmin, xmax, ymin, ymax, 0, 0 )
- CALL PLLAB( "x", "y=100 x#u2#d", "Simple PLplot demo of a 2D line plot" )
- ! Plot the data that was prepared above.
- CALL PLPOIN( x, y, 4 )
- ! Close PLplot library
- CALL PLEND
+```fortran
+PROGRAM main
+ USE easifemBase
+ IMPLICIT NONE
+ INTEGER, PARAMETER :: NSIZE = 101
+ REAL( DFP ), DIMENSION(NSIZE) :: x, y
+ REAL( DFP ) :: xmin = 0.0, xmax = 1.0, ymin = 0.0, ymax = 100.0
+ INTEGER :: ierr
+ ! Prepare data to be plotted.
+ x = arange(0, NSIZE-1) / REAL(NSIZE-1, DFP)
+ y = ymax * x**2
+ ! Parse and process command line arguments
+ ierr = PLPARSEOPTS( PL_PARSE_FULL )
+ IF(ierr .NE. 0) THEN
+ CALL Display( "plparseopts error" )
+ STOP
+ END IF
+ !> Initiate the PLPLOT enviroment
+ CALL PLSDEV("qtwidget")
+ CALL PLSCOLBG(255,255,255)
+ CALL PLINIT
+ CALL PLSCOL0(0, 0,0,0)
+ CALL PLCOL0(0)
+ ! COLOR
+ ! Create a labelled box to hold the plot.
+ ! we have specified the box dimension
+ CALL PLENV( xmin, xmax, ymin, ymax, 0, 0 )
+ CALL PLLAB( "x", "y=100 x#u2#d", "Simple PLplot demo of a 2D line plot" )
+ ! Plot the data that was prepared above.
+ CALL PLPOIN( x, y, 4 )
+ ! Close PLplot library
+ CALL PLEND
END PROGRAM main
- ```
+```
diff --git a/docs/docs-api/PLPlot/PLPlot_Installation.md b/docs/docs-api/PLPlot/PLPlot_Installation.md
index 32c98e79..6810710e 100644
--- a/docs/docs-api/PLPlot/PLPlot_Installation.md
+++ b/docs/docs-api/PLPlot/PLPlot_Installation.md
@@ -12,14 +12,12 @@ Ubuntu 🍻
sudo apt-get install libplplot-dev libplplotfortran0
```
-
MacOS 🍎
```bash
brew install plplot
```
-
## Building from source
### Download the source code
@@ -54,7 +52,6 @@ git checkout $(whoami)
We will use `-DCMAKE_INSTALL_PREFIX` to specify the director wherein `PLplot` will be installed.
-
```sh
cmake -S ./ -B ./build DCMAKE_INSTALL_PREFIX=~/.easifem/extpkgs -G "Unix Makefiles"
cmake --build ./build --target all
@@ -67,8 +64,8 @@ cmake --build ./build --target install
- `-DCMAKE_BUILD_TYPE:STRING=Release`, other option is `Debug`
- `-DBUILD_SHARED_LIBS:BOOL=ON`, set `OFF` if shared lib are not desired
- `-DBUILD_TEST:BOOL=ON`, set `OFF` you dont want to build the tests
-- `-DENABLE_fortran:BOOL=ON`, set `OFF`, if you dont want fortran bindings
-- `-DENABLE_lua:BOOL=ON`, set `OFF` if you do not want Lua language bindings
+- `-DENABLE_fortran:BOOL=ON`, set `OFF`, if you dont want fortran bindings
+- `-DENABLE_lua:BOOL=ON`, set `OFF` if you do not want Lua language bindings
```sh
cmake -S ./ -B ~/temp/easifem-extpkgs/plplot/build -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=${EASIFEM_EXTPKGS} -DCMAKE_BUILD_TYPE:STRING=Release -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_TEST:BOOL=ON -DENABLE_fortran:BOOL=ON -DENABLE_lua:BOOL=ON
diff --git a/docs/docs-api/PLPlot/PLPlot_LinePlot.md b/docs/docs-api/PLPlot/PLPlot_LinePlot.md
index 9977cd26..8b1ecb6b 100644
--- a/docs/docs-api/PLPlot/PLPlot_LinePlot.md
+++ b/docs/docs-api/PLPlot/PLPlot_LinePlot.md
@@ -5,4 +5,5 @@ title: PLPlot LinePlot
# PLPlot LinePlot
Line style
+
- [ ] http://plplot.sourceforge.net/docbook-manual/plplot-html-5.15.0/line-attributes.html
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_.md b/docs/docs-api/Polynomial1D/Polynomial1D_.md
index 762b69c2..48c0e3bf 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_.md
@@ -11,13 +11,13 @@ We can create an instance by calling Polynomial1D function.
Interface
```fortran
- MODULE PURE FUNCTION Polynomial1D(coeff, degree, varname) &
- & RESULT(ans)
- REAL(DFP), INTENT(IN) :: coeff(:)
- INTEGER(I4B), INTENT(IN) :: degree(:)
- CHARACTER(LEN=*), INTENT(IN) :: varname
- TYPE(Polynomial1D_) :: ans
- END FUNCTION Polynomial1D
+MODULE PURE FUNCTION Polynomial1D(coeff, degree, varname) &
+ & RESULT(ans)
+ REAL(DFP), INTENT(IN) :: coeff(:)
+ INTEGER(I4B), INTENT(IN) :: degree(:)
+ CHARACTER(LEN=*), INTENT(IN) :: varname
+ TYPE(Polynomial1D_) :: ans
+END FUNCTION Polynomial1D
```
- `coeff` coefficient of polynomial
@@ -25,7 +25,8 @@ Interface
- `varname` variable name
!!! example "Example"
- - [[Polynomial1D_test_1]]
+
+- [[Polynomial1D_test_1]]
### Polynomial1D_Pointer
@@ -48,17 +49,18 @@ Evaluate the function at a given point.
Interface:
```fortran
- MODULE PURE FUNCTION Polynomial1D(coeff, degree, &
- & varname) RESULT(ans)
- REAL(DFP), INTENT(IN) :: coeff(:)
- INTEGER(I4B), INTENT(IN) :: degree(:)
- CHARACTER(LEN=*), INTENT(IN) :: varname
- TYPE(Polynomial1D_) :: ans
- END FUNCTION Polynomial1D
+MODULE PURE FUNCTION Polynomial1D(coeff, degree, &
+ & varname) RESULT(ans)
+ REAL(DFP), INTENT(IN) :: coeff(:)
+ INTEGER(I4B), INTENT(IN) :: degree(:)
+ CHARACTER(LEN=*), INTENT(IN) :: varname
+ TYPE(Polynomial1D_) :: ans
+END FUNCTION Polynomial1D
```
!!! example "Example"
- - [[Polynomial1D_test_2]]
+
+- [[Polynomial1D_test_2]]
### EvalGradient
@@ -67,15 +69,16 @@ Evaluate first derivative of the polynomial at a given point.
Interface:
```fortran
- MODULE ELEMENTAL FUNCTION EvalGradient(obj, x) RESULT(ans)
- CLASS(Polynomial1D_), INTENT(IN) :: obj
- REAL(DFP), INTENT(IN) :: x
- REAL(DFP) :: ans
- END FUNCTION EvalGradient
+MODULE ELEMENTAL FUNCTION EvalGradient(obj, x) RESULT(ans)
+ CLASS(Polynomial1D_), INTENT(IN) :: obj
+ REAL(DFP), INTENT(IN) :: x
+ REAL(DFP) :: ans
+END FUNCTION EvalGradient
```
!!! example "Example"
- - [[Polynomial1D_test_2]]
+
+- [[Polynomial1D_test_2]]
### Grad
@@ -84,14 +87,15 @@ Returns the gradient of the polynomial as an instance of a polynomial.
Interface:
```fortran
- MODULE ELEMENTAL FUNCTION Grad(obj) RESULT(ans)
- CLASS(Polynomial1D_), INTENT(IN) :: obj
- TYPE(Polynomial1D_) :: ans
- END FUNCTION Grad
+MODULE ELEMENTAL FUNCTION Grad(obj) RESULT(ans)
+ CLASS(Polynomial1D_), INTENT(IN) :: obj
+ TYPE(Polynomial1D_) :: ans
+END FUNCTION Grad
```
!!! example "Example"
- - [[Polynomial1D_test_2]]
+
+- [[Polynomial1D_test_2]]
### GetStringForUID
@@ -102,7 +106,8 @@ Returns the string for creating the UID. This routine is for internal use only.
Returns the degrees of monomials.
!!! example "Example"
- - [[Polynomial1D_test_2]]
+
+- [[Polynomial1D_test_2]]
### GetDisplayString
@@ -133,7 +138,8 @@ Display the content of the polynomial.
- We can add an instance of [[Polynomial1D_]] and a scalar to get an instance of [[Polynomial1D_]].
!!! example "Examples"
- - [[Polynomial1D_test_5.md]]
+
+- [[Polynomial1D_test_5.md]]
### OPERATOR(*)
@@ -144,7 +150,8 @@ Display the content of the polynomial.
- We can multiply an instance of [[Polynomial1D_]] and a scalar to get an instance of [[Polynomial1D_]].
!!! example "Examples"
- - [[Polynomial1D_test_4.md]]
+
+- [[Polynomial1D_test_4.md]]
### OPERATOR(-)
@@ -155,7 +162,8 @@ Display the content of the polynomial.
- We can subtract an instance of [[Polynomial1D_]] and a scalar to get an instance of [[Polynomial1D_]].
!!! example "Examples"
- - [[Polynomial1D_test_6.md]]
+
+- [[Polynomial1D_test_6.md]]
### ASSIGNMENT(=)
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_1.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_1.md
index 0548b7f3..cf4f296f 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_1.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_1.md
@@ -31,14 +31,14 @@ Initiate the object.
$y=1+x+x^2+x^3$
```fortran
- coeff = [1,1,1,1]
- degree = [0,1,2,3]
- f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
- call f1%display( 'f(x)=' )
+coeff = [1,1,1,1]
+degree = [0,1,2,3]
+f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
+call f1%display( 'f(x)=' )
```
!!! example "result"
- f(x)=+1x^0+1x^1+1x^2+1x^3
+f(x)=+1x^0+1x^1+1x^2+1x^3
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_2.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_2.md
index fbb080ad..552f8774 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_2.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_2.md
@@ -44,10 +44,10 @@ Initiate the object.
$y=1+x+x^2+x^3$
```fortran
- coeff = [1,1,1,1]
- degree = [0,1,2,3]
- f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
- call f1%display( 'f(x)=' )
+coeff = [1,1,1,1]
+degree = [0,1,2,3]
+f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
+call f1%display( 'f(x)=' )
```
```txt
@@ -58,9 +58,9 @@ f(x)=+0.1E+1x^0+0.1E+1x^1+0.1E+1x^2+0.1E+1x^3
Getting the value.
```fortran
- CALL Display( f1%Eval( 1.0_DFP ), "f(1)=" )
- CALL Display( f1%Eval( 2.0_DFP ), "f(2)=" )
- CALL Display( f1%Eval( 3.0_DFP ), "f(3)=" )
+CALL Display( f1%Eval( 1.0_DFP ), "f(1)=" )
+CALL Display( f1%Eval( 2.0_DFP ), "f(2)=" )
+CALL Display( f1%Eval( 3.0_DFP ), "f(3)=" )
```
```txt
@@ -73,9 +73,9 @@ f(3)=40.0000
Getting the gradient
```fortran
- CALL Display( f1%EvalGradient( 1.0_DFP ), "df(1)=" )
- CALL Display( f1%EvalGradient( 2.0_DFP ), "df(2)=" )
- CALL Display( f1%EvalGradient( 3.0_DFP ), "df(3)=" )
+CALL Display( f1%EvalGradient( 1.0_DFP ), "df(1)=" )
+CALL Display( f1%EvalGradient( 2.0_DFP ), "df(2)=" )
+CALL Display( f1%EvalGradient( 3.0_DFP ), "df(3)=" )
```
```txt
@@ -94,8 +94,8 @@ Getting the gradient
Getting the coefficients and degrees.
```fortran
- call display( f1%getCoeff(), "coeff = ")
- call display( f1%getDegree(), "degree = ")
+call display( f1%getCoeff(), "coeff = ")
+call display( f1%getDegree(), "degree = ")
```
```txt
@@ -116,8 +116,8 @@ degree =
Getting the gradient in polynomial.
```fortran
- f2 = f1%Grad()
- CALL f2%Display( "f2 = " )
+f2 = f1%Grad()
+CALL f2%Display( "f2 = " )
```
```txt
@@ -126,13 +126,13 @@ f2 =+1x^0+2x^1+3x^2
```
```fortran
- f2 = .Grad. f1
- CALL f2%Display( "f2 = " )
+f2 = .Grad. f1
+CALL f2%Display( "f2 = " )
```
```fortran
- f2 = .Grad. (.Grad. (.Grad.(.Grad. f1)))
- CALL f2%Display( "f2 = " )
+f2 = .Grad. (.Grad. (.Grad.(.Grad. f1)))
+CALL f2%Display( "f2 = " )
```
```fortran
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_3.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_3.md
index 0942b6c1..47518f9b 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_3.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_3.md
@@ -38,10 +38,10 @@ Initiate the object.
$y=1+x+x^2+x^3+x^3$
```fortran
- coeff = [1,1,1,1,1]
- degree = [0,1,2,3,3]
- f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
- call f1%display( 'f(x)=' )
+coeff = [1,1,1,1,1]
+degree = [0,1,2,3,3]
+f1=Polynomial1D( coeff=coeff, degree=degree, varname="x" )
+call f1%display( 'f(x)=' )
```
Note that we have repeated degree 3 two times. But the routine takes care of it. It will store only single monomial $x^3$ and its coefficient 2.
@@ -54,8 +54,8 @@ f(x)=+1+x+x^2+0.2E+1*(x)^3
Getting the coefficients and degrees.
```fortran
- call display( f1%getCoeff(), "coeff = ", orient="ROW")
- call display( f1%getDegree(), "degree = ", orient="ROW")
+call display( f1%getCoeff(), "coeff = ", orient="ROW")
+call display( f1%getDegree(), "degree = ", orient="ROW")
```
```txt
@@ -72,8 +72,8 @@ Getting the coefficients and degrees.
Getting the gradient in polynomial.
```fortran
- f2 = f1%Grad()
- CALL f2%Display( "f2 = " )
+f2 = f1%Grad()
+CALL f2%Display( "f2 = " )
```
```txt
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_4.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_4.md
index 7d47a7a8..dd129a3f 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_4.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_4.md
@@ -31,76 +31,76 @@ integer(i4b), allocatable :: degree( : )
!!! note "Mono*Mono"
```fortran
- f1=Monomial1D(1,"x") * Monomial1D(2,"x")
- call f1%display( 'f(x)=' )
+f1=Monomial1D(1,"x") * Monomial1D(2,"x")
+call f1%display( 'f(x)=' )
```
!!! note "Mono*Scalar"
```fortran
- f1 = Monomial1D(1,"x") * 1
- call f1%display("f(x)=")
- !!
- f1 = Monomial1D(1,"x") * 1.0
- call f1%display("f(x)=")
- !!
+f1 = Monomial1D(1,"x") * 1
+call f1%display("f(x)=")
+!!
+f1 = Monomial1D(1,"x") * 1.0
+call f1%display("f(x)=")
+!!
```
!!! note "Scalar*Mono"
```fortran
- f1 = 1 * Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
- f1 = 1.0 * Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
+f1 = 1 * Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
+f1 = 1.0 * Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
```
!!! note "Poly*Mono"
```fortran
- f2 = f1 * Monomial1D(2,"x")
- call f2%display("f(x)=")
- !!
+f2 = f1 * Monomial1D(2,"x")
+call f2%display("f(x)=")
+!!
```
!!! note "Mono*Poly"
```fortran
- f2 = Monomial1D(2,"x") * f1
- call f2%display("f(x)=")
- !!
+f2 = Monomial1D(2,"x") * f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly*Poly"
```fortran
- f2 = f2 * f1
- call f2%display("f(x)=")
- !!
+f2 = f2 * f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly*Scalar"
```fortran
- f2 = f1 * 1
- call f2%display("f(x)=")
- !!
- f2 = f1 * 1.0
- call f2%display("f(x)=")
- !!
+f2 = f1 * 1
+call f2%display("f(x)=")
+!!
+f2 = f1 * 1.0
+call f2%display("f(x)=")
+!!
```
!!! note "Scalar*Poly"
```fortran
- f2 = 1 * f1
- call f2%display("f(x)=")
- !!
- f2 = 1.0 * f1
- call f2%display("f(x)=")
- !!
+f2 = 1 * f1
+call f2%display("f(x)=")
+!!
+f2 = 1.0 * f1
+call f2%display("f(x)=")
+!!
```
```fortran
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_5.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_5.md
index 0180faa2..ac9d1d06 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_5.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_5.md
@@ -31,8 +31,8 @@ integer(i4b), allocatable :: degree( : )
!!! note "Mono+Mono"
```fortran
- f1=Monomial1D(1,"x") + Monomial1D(2,"x")
- call f1%display( 'f(x)=' )
+f1=Monomial1D(1,"x") + Monomial1D(2,"x")
+call f1%display( 'f(x)=' )
```
!!! example "result"
@@ -43,69 +43,69 @@ $$
!!! note "Mono+Scalar"
```fortran
- f1 = Monomial1D(1,"x") + 1
- call f1%display("f(x)=")
- !!
- f1 = Monomial1D(1,"x") + 1.0
- call f1%display("f(x)=")
- !!
+f1 = Monomial1D(1,"x") + 1
+call f1%display("f(x)=")
+!!
+f1 = Monomial1D(1,"x") + 1.0
+call f1%display("f(x)=")
+!!
```
!!! note "Scalar+Mono"
```fortran
- f1 = 1 + Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
- f1 = 1.0 + Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
+f1 = 1 + Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
+f1 = 1.0 + Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
```
!!! note "Poly+Mono"
```fortran
- f2 = f1 + Monomial1D(2,"x")
- call f2%display("f(x)=")
- !!
+f2 = f1 + Monomial1D(2,"x")
+call f2%display("f(x)=")
+!!
```
!!! note "Mono+Poly"
```fortran
- f2 = Monomial1D(2,"x") + f1
- call f2%display("f(x)=")
- !!
+f2 = Monomial1D(2,"x") + f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly+Poly"
```fortran
- f2 = f2 + f1
- call f2%display("f(x)=")
- !!
+f2 = f2 + f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly+Scalar"
```fortran
- f2 = f1 + 1
- call f2%display("f(x)=")
- !!
- f2 = f1 + 1.0
- call f2%display("f(x)=")
- !!
+f2 = f1 + 1
+call f2%display("f(x)=")
+!!
+f2 = f1 + 1.0
+call f2%display("f(x)=")
+!!
```
!!! note "Scalar+Poly"
```fortran
- f2 = 1 + f1
- call f2%display("f(x)=")
- !!
- f2 = 1.0 + f1
- call f2%display("f(x)=")
- !!
+f2 = 1 + f1
+call f2%display("f(x)=")
+!!
+f2 = 1.0 + f1
+call f2%display("f(x)=")
+!!
```
```fortran
diff --git a/docs/docs-api/Polynomial1D/Polynomial1D_test_6.md b/docs/docs-api/Polynomial1D/Polynomial1D_test_6.md
index c5a875c7..5d6d517a 100644
--- a/docs/docs-api/Polynomial1D/Polynomial1D_test_6.md
+++ b/docs/docs-api/Polynomial1D/Polynomial1D_test_6.md
@@ -31,8 +31,8 @@ integer(i4b), allocatable :: degree( : )
!!! note "Mono- Mono"
```fortran
- f1=Monomial1D(1,"x") - Monomial1D(2,"x")
- call f1%display( 'f(x)=' )
+f1=Monomial1D(1,"x") - Monomial1D(2,"x")
+call f1%display( 'f(x)=' )
```
!!! example "result"
@@ -43,69 +43,69 @@ $$
!!! note "Mono- Scalar"
```fortran
- f1 = Monomial1D(1,"x") - 1
- call f1%display("f(x)=")
- !!
- f1 = Monomial1D(1,"x") - 1.0
- call f1%display("f(x)=")
- !!
+f1 = Monomial1D(1,"x") - 1
+call f1%display("f(x)=")
+!!
+f1 = Monomial1D(1,"x") - 1.0
+call f1%display("f(x)=")
+!!
```
!!! note "Scalar- Mono"
```fortran
- f1 = 1 - Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
- f1 = 1.0 - Monomial1D(1,"x")
- call f1%display("f(x)=")
- !!
+f1 = 1 - Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
+f1 = 1.0 - Monomial1D(1,"x")
+call f1%display("f(x)=")
+!!
```
!!! note "Poly- Mono"
```fortran
- f2 = f1 - Monomial1D(2,"x")
- call f2%display("f(x)=")
- !!
+f2 = f1 - Monomial1D(2,"x")
+call f2%display("f(x)=")
+!!
```
!!! note "Mono- Poly"
```fortran
- f2 = Monomial1D(2,"x") - f1
- call f2%display("f(x)=")
- !!
+f2 = Monomial1D(2,"x") - f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly- Poly"
```fortran
- f2 = f2 - f1
- call f2%display("f(x)=")
- !!
+f2 = f2 - f1
+call f2%display("f(x)=")
+!!
```
!!! note "Poly- Scalar"
```fortran
- f2 = f1 - 1
- call f2%display("f(x)=")
- !!
- f2 = f1 - 1.0
- call f2%display("f(x)=")
- !!
+f2 = f1 - 1
+call f2%display("f(x)=")
+!!
+f2 = f1 - 1.0
+call f2%display("f(x)=")
+!!
```
!!! note "Scalar- Poly"
```fortran
- f2 = 1 - f1
- call f2%display("f(x)=")
- !!
- f2 = 1.0 - f1
- call f2%display("f(x)=")
- !!
+f2 = 1 - f1
+call f2%display("f(x)=")
+!!
+f2 = 1.0 - f1
+call f2%display("f(x)=")
+!!
```
```fortran
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_1.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_1.md
index 236aa875..1506a230 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_1.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_1.md
@@ -27,64 +27,64 @@ integer(i4b), allocatable :: degree( :, : )
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=>Polynomial2D_Pointer( coeff=coeff, &
- & degree=degree, name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=>Polynomial2D_Pointer( coeff=coeff, &
+ & degree=degree, name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,4]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=>Polynomial2D_Pointer( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,4]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=>Polynomial2D_Pointer( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,2,2]
- call reallocate( degree, 5, 2 )
- degree(:,1) = [0,1,0,1,1]
- degree(:,2) = [0,0,1,1,1]
- f1=>Polynomial2D_Pointer( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,2,2]
+call reallocate( degree, 5, 2 )
+degree(:,1) = [0,1,0,1,1]
+degree(:,2) = [0,0,1,1,1]
+f1=>Polynomial2D_Pointer( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_2.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_2.md
index 0e570a74..eae39680 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_2.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_2.md
@@ -26,64 +26,64 @@ integer(i4b), allocatable :: degree( :, : )
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=Polynomial2D( coeff=coeff, &
- & degree=degree, name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=Polynomial2D( coeff=coeff, &
+ & degree=degree, name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,4]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=Polynomial2D( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,4]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=Polynomial2D( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,2,2]
- call reallocate( degree, 5, 2 )
- degree(:,1) = [0,1,0,1,1]
- degree(:,2) = [0,0,1,1,1]
- f1=Polynomial2D( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,2,2]
+call reallocate( degree, 5, 2 )
+degree(:,1) = [0,1,0,1,1]
+degree(:,2) = [0,0,1,1,1]
+f1=Polynomial2D( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
- f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
+f(x,y)=+1x^0*y^1+1x^0*y^0+1x^1*y^1+1x^1*y^0
```fortran
END PROGRAM main
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_3.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_3.md
index b06c030c..ba92d8f9 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_3.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_3.md
@@ -30,58 +30,58 @@ real(dfp) :: tol=1.0E-10
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "Eval"
```fortran
- x = 1.0; y=1.0
- ans = f1%Eval( x, y )
- exact = 1+x+y+x*y
- CALL ISABS( ans, exact, tol )
- !!
- x = 1.0; y=0.0
- ans = f1%Eval( x, y )
- exact = 1+x+y+x*y
- CALL ISABS( ans, exact, tol)
+x = 1.0; y=1.0
+ans = f1%Eval( x, y )
+exact = 1+x+y+x*y
+CALL ISABS( ans, exact, tol )
+!!
+x = 1.0; y=0.0
+ans = f1%Eval( x, y )
+exact = 1+x+y+x*y
+CALL ISABS( ans, exact, tol)
```
!!! note "EvalGradient"
- Getting the value $\frac{df}{dx}$.
+Getting the value $\frac{df}{dx}$.
$$
\frac{df}{dx} = 1+y
$$
```fortran
- x=1.0; y=1.0
- ans = f1%EvalGradient( x, y, dim=1_I4B )
- exact = 1+y
- CALL ISABS( ans, exact, tol)
+x=1.0; y=1.0
+ans = f1%EvalGradient( x, y, dim=1_I4B )
+exact = 1+y
+CALL ISABS( ans, exact, tol)
```
!!! note "EvalGradient"
- Getting the value $\frac{df}{dy}$.
+Getting the value $\frac{df}{dy}$.
$$
\frac{df}{dy} = 1+x
$$
```fortran
- x=1.0; y=0.0
- ans = f1%EvalGradient( x, y, dim=2_I4B )
- exact = 1+x
- CALL ISABS( ans, exact, tol)
+x=1.0; y=0.0
+ans = f1%EvalGradient( x, y, dim=2_I4B )
+exact = 1+x
+CALL ISABS( ans, exact, tol)
```
```fortran
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_4.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_4.md
index e76486ad..bcab9a34 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_4.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_4.md
@@ -30,55 +30,55 @@ integer(i4b), allocatable :: degree( :, : )
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "GetStringForUID"
```fortran
- astr = f1%GetStringForUID()
- CALL Display( astr, "astr = " )
+astr = f1%GetStringForUID()
+CALL Display( astr, "astr = " )
```
!!! example "result"
- astr =x^0*y^0x^0*y^1x^1*y^0x^1*y^1
+astr =x^0*y^0x^0*y^1x^1*y^0x^1*y^1
!!! note "GetDegree"
```fortran
- degree = f1%getDegree()
- call display( degree, "degree = " )
+degree = f1%getDegree()
+call display( degree, "degree = " )
```
!!! note "GetDisplayString"
```fortran
- astr = f1%getDisplayString()
- call display( astr, "display string = ")
+astr = f1%getDisplayString()
+call display( astr, "display string = ")
```
!!! note "GetCoeff"
```fortran
- coeff = f1%getCoeff()
- call display( coeff, "coeff = ")
+coeff = f1%getCoeff()
+call display( coeff, "coeff = ")
```
!!! note "GetOrder"
```fortran
- call display( f1%getOrder(), "order = " )
+call display( f1%getOrder(), "order = " )
```
```fortran
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_5.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_5.md
index 70bf425e..3d092c76 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_5.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_5.md
@@ -27,18 +27,18 @@ integer(i4b), allocatable :: degree( :, : )
```
!!! note "Initiate"
- Initiate the object.
+Initiate the object.
$$
y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "Grad"
@@ -47,8 +47,8 @@ $$
$$
```fortran
- f2 = f1 .GRAD. 1
- call f2%display( "dfdx=" )
+f2 = f1 .GRAD. 1
+call f2%display( "dfdx=" )
```
!!! example "result"
@@ -62,8 +62,8 @@ $$
$$
```fortran
- f2 = f1 .GRAD. 2
- call f2%display( "dfdy=" )
+f2 = f1 .GRAD. 2
+call f2%display( "dfdy=" )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_6.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_6.md
index 8c460fac..b7ed13e4 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_6.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_6.md
@@ -34,15 +34,15 @@ type(Monomial2D_) :: m1
```
!!! note "Initiate"
- Initiate the [[Monomial2D_]] object.
+Initiate the [[Monomial2D_]] object.
$$
m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -51,11 +51,11 @@ f(x,y)=+1x^1*y^1
$$
!!! note "Initiate"
- Now we assign a polynomial a scalar value.
+Now we assign a polynomial a scalar value.
```fortran
- f1 = 2
- call f1%display( 'f(x,y)=')
+f1 = 2
+call f1%display( 'f(x,y)=')
```
!!! example "result"
@@ -64,8 +64,8 @@ f(x,y)=+2x^0*y^0
$$
```fortran
- f1 = 2.0
- call f1%display( 'f(x,y)=')
+f1 = 2.0
+call f1%display( 'f(x,y)=')
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_7.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_7.md
index 1ed0cc79..2f11cc5e 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_7.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_7.md
@@ -39,15 +39,15 @@ type(Monomial2D_) :: m1, m2
```
!!! note "Monomial + integer"
- Initiate the [[Monomial2D_]] object.
+Initiate the [[Monomial2D_]] object.
$$
m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1 + 1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1 + 1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -58,8 +58,8 @@ $$
!!! note "integer+monomial"
```fortran
- f1 = 1+m1
- call f1%display( 'f(x,y)=' )
+f1 = 1+m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -70,8 +70,8 @@ $$
!!! note "monomial + real"
```fortran
- f1 = m1 + 1.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 + 1.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -82,8 +82,8 @@ $$
!!! note "real + monomial"
```fortran
- f1 = 1.0 + m1
- call f1%display( 'f(x,y)=' )
+f1 = 1.0 + m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -94,8 +94,8 @@ $$
!!! note "monomial+ monomial"
```fortran
- f1 = m1 + m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 + m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -106,9 +106,9 @@ $$
!!! note "polynomial + monomial"
```fortran
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = f1 + m2
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = f1 + m2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -119,9 +119,9 @@ $$
!!! note "monomial + polynomial"
```fortran
- m2 = Monomial2D( 0, 2, "x", "y" )
- f1 = m2 + f1
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 0, 2, "x", "y" )
+f1 = m2 + f1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -132,8 +132,8 @@ $$
!!! note "polynomial + polynomial"
```fortran
- f2 = f1 + f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 + f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -144,8 +144,8 @@ $$
!!! note "polynomial + integer"
```fortran
- f2 = f1 + 1
- call f2%display( 'f(x,y)=' )
+f2 = f1 + 1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -156,8 +156,8 @@ $$
!!! note "integer + polynomial"
```fortran
- f2 = 1 + f1
- call f2%display( 'f(x,y)=' )
+f2 = 1 + f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_8.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_8.md
index 19fcb31b..e2f12f43 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_8.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_8.md
@@ -39,15 +39,15 @@ type(Monomial2D_) :: m1, m2
```
!!! note "Monomial - integer"
- Initiate the [[Monomial2D_]] object.
+Initiate the [[Monomial2D_]] object.
$$
m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1 - 1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1 - 1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -58,8 +58,8 @@ $$
!!! note "integer-monomial"
```fortran
- f1 = 1-m1
- call f1%display( 'f(x,y)=' )
+f1 = 1-m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -70,8 +70,8 @@ $$
!!! note "monomial - real"
```fortran
- f1 = m1 - 1.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 - 1.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -82,8 +82,8 @@ $$
!!! note "real - monomial"
```fortran
- f1 = 1.0 - m1
- call f1%display( 'f(x,y)=' )
+f1 = 1.0 - m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -94,8 +94,8 @@ $$
!!! note "monomial- monomial"
```fortran
- f1 = m1 - m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 - m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -106,10 +106,10 @@ $$
!!! note "polynomial - monomial"
```fortran
- f1 = m1
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = f1 - m2
- call f1%display( 'f(x,y)=' )
+f1 = m1
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = f1 - m2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -120,9 +120,9 @@ $$
!!! note "monomial - polynomial"
```fortran
- m2 = Monomial2D( 0, 2, "x", "y" )
- f1 = m2 - f1
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 0, 2, "x", "y" )
+f1 = m2 - f1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -133,8 +133,8 @@ $$
!!! note "polynomial - polynomial"
```fortran
- f2 = f1 - f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 - f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -145,8 +145,8 @@ $$
!!! note "polynomial - integer"
```fortran
- f2 = f1 - 1
- call f2%display( 'f(x,y)=' )
+f2 = f1 - 1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -157,8 +157,8 @@ $$
!!! note "integer - polynomial"
```fortran
- f2 = 1 - f1
- call f2%display( 'f(x,y)=' )
+f2 = 1 - f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial2D/Polynomial2D_test_9.md b/docs/docs-api/Polynomial2D/Polynomial2D_test_9.md
index 59c6bebf..78413768 100644
--- a/docs/docs-api/Polynomial2D/Polynomial2D_test_9.md
+++ b/docs/docs-api/Polynomial2D/Polynomial2D_test_9.md
@@ -39,16 +39,16 @@ type(Monomial2D_) :: m1, m2
```
!!! note "Monomial * integer"
- Initiate the [[Monomial2D_]] object.
+Initiate the [[Monomial2D_]] object.
$$
m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = m1 * 2
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = m1 * 2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -59,8 +59,8 @@ $$
!!! note "integer * monomial"
```fortran
- f1 = 2*m1
- call f1%display( 'f(x,y)=' )
+f1 = 2*m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -71,8 +71,8 @@ $$
!!! note "monomial * real"
```fortran
- f1 = m1 * 2.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 * 2.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -83,8 +83,8 @@ $$
!!! note "real * monomial"
```fortran
- f1 = 2.0 * m1
- call f1%display( 'f(x,y)=' )
+f1 = 2.0 * m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -95,8 +95,8 @@ $$
!!! note "monomial * monomial"
```fortran
- f1 = m1 * m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 * m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -107,9 +107,9 @@ $$
!!! note "polynomial * monomial"
```fortran
- f1 = m1 + m2
- f2 = f1 * m2
- call f2%display( 'f(x,y)=' )
+f1 = m1 + m2
+f2 = f1 * m2
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -120,8 +120,8 @@ $$
!!! note "monomial * polynomial"
```fortran
- f2 = m2 * f1
- call f2%display( 'f(x,y)=' )
+f2 = m2 * f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -132,8 +132,8 @@ $$
!!! note "polynomial * polynomial"
```fortran
- f2 = f1 * f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 * f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -144,8 +144,8 @@ $$
!!! note "polynomial * integer"
```fortran
- f2 = f1 * 2
- call f2%display( 'f(x,y)=' )
+f2 = f1 * 2
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -156,8 +156,8 @@ $$
!!! note "integer * polynomial"
```fortran
- f2 = 2*f1
- call f2%display( 'f(x,y)=' )
+f2 = 2*f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_.md b/docs/docs-api/Polynomial3D/Polynomial3D_.md
index 86363500..4bacb9a3 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_.md
@@ -14,13 +14,13 @@ TYPE, EXTENDS( AbstractFunction1D_ ) :: Polynomial3D_
```
!!! note "degree"
- Degrees of each monomial
+Degrees of each monomial
!!! note "coeff"
- Coefficient of each monomial
+Coefficient of each monomial
!!! note "x"
- A vector of [[Monomial3D_]]
+A vector of [[Monomial3D_]]
## ConstructorMethods
@@ -136,9 +136,10 @@ END INTERFACE
```
!!! note "dim"
- - dim=1 corresponds to $\frac{df}{dx}$
- - dim=2 corresponds to $\frac{df}{dy}$
- - dim=3 corresponds to $\frac{df}{dz}$
+
+- dim=1 corresponds to $\frac{df}{dx}$
+- dim=2 corresponds to $\frac{df}{dy}$
+- dim=3 corresponds to $\frac{df}{dz}$
Example:
@@ -161,7 +162,7 @@ END INTERFACE
```
!!! note "dim"
- See the above remark on dim.
+See the above remark on dim.
Example:
@@ -214,7 +215,7 @@ c = a + b
where, a, b, c are given in following table.
| a | b | c |
-|--------|--------|--------|
+| ------ | ------ | ------ |
| Poly3D | Poly3D | Poly3D |
| Poly3D | Poly3D | Mono3D |
| Poly3D | Mono3D | Poly3D |
@@ -258,7 +259,7 @@ c = a - b
```
!!! note "a,b,c"
- a,b,c are given above.
+a,b,c are given above.
## MultiplicationMethods
@@ -269,4 +270,4 @@ c = a * b
```
!!! note "a,b,c"
- a,b,c are given above.
+a,b,c are given above.
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_1.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_1.md
index b486dad6..ad082db3 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_1.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_1.md
@@ -32,13 +32,13 @@ y=1+x+y+z
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 3 )
- degree(:,1) = [0,1,0,0]
- degree(:,2) = [0,0,1,0]
- degree(:,3) = [0,0,0,1]
- f1=Polynomial3D( coeff, degree, "x", "y", "z" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 3 )
+degree(:,1) = [0,1,0,0]
+degree(:,2) = [0,0,1,0]
+degree(:,3) = [0,0,0,1]
+f1=Polynomial3D( coeff, degree, "x", "y", "z" )
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -54,14 +54,14 @@ y=1+2x+3y+4z
$$
```fortran
- coeff = [1,2,3,4]
- call reallocate( degree, 4, 3 )
- degree(:,1) = [0,1,0,0]
- degree(:,2) = [0,0,1,0]
- degree(:,3) = [0,0,0,1]
- f1=Polynomial3D( coeff, degree, "x", "y", "z" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,4]
+call reallocate( degree, 4, 3 )
+degree(:,1) = [0,1,0,0]
+degree(:,2) = [0,0,1,0]
+degree(:,3) = [0,0,0,1]
+f1=Polynomial3D( coeff, degree, "x", "y", "z" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
@@ -78,14 +78,14 @@ y=1+2x+3y+2z+2z
$$
```fortran
- coeff = [1,2,3,2,2]
- call reallocate( degree, 5, 3 )
- degree(:,1) = [0,1,0,0,0]
- degree(:,2) = [0,0,1,0,0]
- degree(:,3) = [0,0,0,1,1]
- f1=Polynomial3D( coeff, degree, "x", "y", "z" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,2,2]
+call reallocate( degree, 5, 3 )
+degree(:,1) = [0,1,0,0,0]
+degree(:,2) = [0,0,1,0,0]
+degree(:,3) = [0,0,0,1,1]
+f1=Polynomial3D( coeff, degree, "x", "y", "z" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_2.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_2.md
index 3b756b4b..59881100 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_2.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_2.md
@@ -33,14 +33,14 @@ y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=Polynomial2D( coeff=coeff, &
- & degree=degree, name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=Polynomial2D( coeff=coeff, &
+ & degree=degree, name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
@@ -54,14 +54,14 @@ y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,4]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- f1=Polynomial2D( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,4]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+f1=Polynomial2D( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
@@ -75,14 +75,14 @@ y=1+2x+3y+4xy
$$
```fortran
- coeff = [1,2,3,2,2]
- call reallocate( degree, 5, 2 )
- degree(:,1) = [0,1,0,1,1]
- degree(:,2) = [0,0,1,1,1]
- f1=Polynomial2D( coeff=coeff, degree=degree, &
- & name1="x", name2="y" )
- call f1%display( 'f(x,y)=' )
- call f1%deallocate()
+coeff = [1,2,3,2,2]
+call reallocate( degree, 5, 2 )
+degree(:,1) = [0,1,0,1,1]
+degree(:,2) = [0,0,1,1,1]
+f1=Polynomial2D( coeff=coeff, degree=degree, &
+ & name1="x", name2="y" )
+call f1%display( 'f(x,y)=' )
+call f1%deallocate()
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_3.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_3.md
index 0b14f08e..07f4be7c 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_3.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_3.md
@@ -37,26 +37,26 @@ y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "Eval"
```fortran
- x = 1.0; y=1.0
- ans = f1%Eval( x, y )
- exact = 1+x+y+x*y
- CALL ISABS( ans, exact, tol )
- !!
- x = 1.0; y=0.0
- ans = f1%Eval( x, y )
- exact = 1+x+y+x*y
- CALL ISABS( ans, exact, tol)
+x = 1.0; y=1.0
+ans = f1%Eval( x, y )
+exact = 1+x+y+x*y
+CALL ISABS( ans, exact, tol )
+!!
+x = 1.0; y=0.0
+ans = f1%Eval( x, y )
+exact = 1+x+y+x*y
+CALL ISABS( ans, exact, tol)
```
!!! note "EvalGradient"
@@ -67,10 +67,10 @@ $$
$$
```fortran
- x=1.0; y=1.0
- ans = f1%EvalGradient( x, y, dim=1_I4B )
- exact = 1+y
- CALL ISABS( ans, exact, tol)
+x=1.0; y=1.0
+ans = f1%EvalGradient( x, y, dim=1_I4B )
+exact = 1+y
+CALL ISABS( ans, exact, tol)
```
!!! note "EvalGradient"
@@ -81,10 +81,10 @@ $$
$$
```fortran
- x=1.0; y=0.0
- ans = f1%EvalGradient( x, y, dim=2_I4B )
- exact = 1+x
- CALL ISABS( ans, exact, tol)
+x=1.0; y=0.0
+ans = f1%EvalGradient( x, y, dim=2_I4B )
+exact = 1+x
+CALL ISABS( ans, exact, tol)
```
```fortran
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_4.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_4.md
index 6cbcb930..21f88f1b 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_4.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_4.md
@@ -37,19 +37,19 @@ y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "GetStringForUID"
```fortran
- astr = f1%GetStringForUID()
- CALL Display( astr, "astr = " )
+astr = f1%GetStringForUID()
+CALL Display( astr, "astr = " )
```
!!! example "result"
@@ -58,28 +58,28 @@ astr =x^0*y^0x^0*y^1x^1*y^0x^1*y^1
!!! note "GetDegree"
```fortran
- degree = f1%getDegree()
- call display( degree, "degree = " )
+degree = f1%getDegree()
+call display( degree, "degree = " )
```
!!! note "GetDisplayString"
```fortran
- astr = f1%getDisplayString()
- call display( astr, "display string = ")
+astr = f1%getDisplayString()
+call display( astr, "display string = ")
```
!!! note "GetCoeff"
```fortran
- coeff = f1%getCoeff()
- call display( coeff, "coeff = ")
+coeff = f1%getCoeff()
+call display( coeff, "coeff = ")
```
!!! note "GetOrder"
```fortran
- call display( f1%getOrder(), "order = " )
+call display( f1%getOrder(), "order = " )
```
```fortran
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_5.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_5.md
index bff6679f..7e7600dc 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_5.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_5.md
@@ -34,12 +34,12 @@ y=1+x+y+xy
$$
```fortran
- coeff = [1,1,1,1]
- call reallocate( degree, 4, 2 )
- degree(:,1) = [0,1,0,1]
- degree(:,2) = [0,0,1,1]
- call f1%initiate( coeff, degree, "x", "y" )
- call f1%display( 'f(x,y)=' )
+coeff = [1,1,1,1]
+call reallocate( degree, 4, 2 )
+degree(:,1) = [0,1,0,1]
+degree(:,2) = [0,0,1,1]
+call f1%initiate( coeff, degree, "x", "y" )
+call f1%display( 'f(x,y)=' )
```
!!! note "Grad"
@@ -49,8 +49,8 @@ $$
$$
```fortran
- f2 = f1 .GRAD. 1
- call f2%display( "dfdx=" )
+f2 = f1 .GRAD. 1
+call f2%display( "dfdx=" )
```
!!! example "result"
@@ -66,8 +66,8 @@ $$
$$
```fortran
- f2 = f1 .GRAD. 2
- call f2%display( "dfdy=" )
+f2 = f1 .GRAD. 2
+call f2%display( "dfdy=" )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_6.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_6.md
index 7f0edb30..21d7e340 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_6.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_6.md
@@ -41,9 +41,9 @@ m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -56,8 +56,8 @@ $$
Now we assign a polynomial a scalar value.
```fortran
- f1 = 2
- call f1%display( 'f(x,y)=')
+f1 = 2
+call f1%display( 'f(x,y)=')
```
!!! example "result"
@@ -67,8 +67,8 @@ f(x,y)=+2x^0*y^0
$$
```fortran
- f1 = 2.0
- call f1%display( 'f(x,y)=')
+f1 = 2.0
+call f1%display( 'f(x,y)=')
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_7.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_7.md
index f12c3c14..c9b106d2 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_7.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_7.md
@@ -46,9 +46,9 @@ m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1 + 1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1 + 1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -60,8 +60,8 @@ $$
!!! note "integer+monomial"
```fortran
- f1 = 1+m1
- call f1%display( 'f(x,y)=' )
+f1 = 1+m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -73,8 +73,8 @@ $$
!!! note "monomial + real"
```fortran
- f1 = m1 + 1.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 + 1.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -86,8 +86,8 @@ $$
!!! note "real + monomial"
```fortran
- f1 = 1.0 + m1
- call f1%display( 'f(x,y)=' )
+f1 = 1.0 + m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -99,8 +99,8 @@ $$
!!! note "monomial+ monomial"
```fortran
- f1 = m1 + m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 + m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -112,9 +112,9 @@ $$
!!! note "polynomial + monomial"
```fortran
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = f1 + m2
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = f1 + m2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -126,9 +126,9 @@ $$
!!! note "monomial + polynomial"
```fortran
- m2 = Monomial2D( 0, 2, "x", "y" )
- f1 = m2 + f1
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 0, 2, "x", "y" )
+f1 = m2 + f1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -140,8 +140,8 @@ $$
!!! note "polynomial + polynomial"
```fortran
- f2 = f1 + f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 + f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -153,8 +153,8 @@ $$
!!! note "polynomial + integer"
```fortran
- f2 = f1 + 1
- call f2%display( 'f(x,y)=' )
+f2 = f1 + 1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -166,8 +166,8 @@ $$
!!! note "integer + polynomial"
```fortran
- f2 = 1 + f1
- call f2%display( 'f(x,y)=' )
+f2 = 1 + f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_8.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_8.md
index 8efe5eb9..2859d2dc 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_8.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_8.md
@@ -46,9 +46,9 @@ m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- f1 = m1 - 1
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+f1 = m1 - 1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -60,8 +60,8 @@ $$
!!! note "integer-monomial"
```fortran
- f1 = 1-m1
- call f1%display( 'f(x,y)=' )
+f1 = 1-m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -73,8 +73,8 @@ $$
!!! note "monomial - real"
```fortran
- f1 = m1 - 1.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 - 1.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -86,8 +86,8 @@ $$
!!! note "real - monomial"
```fortran
- f1 = 1.0 - m1
- call f1%display( 'f(x,y)=' )
+f1 = 1.0 - m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -99,8 +99,8 @@ $$
!!! note "monomial- monomial"
```fortran
- f1 = m1 - m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 - m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -112,10 +112,10 @@ $$
!!! note "polynomial - monomial"
```fortran
- f1 = m1
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = f1 - m2
- call f1%display( 'f(x,y)=' )
+f1 = m1
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = f1 - m2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -127,9 +127,9 @@ $$
!!! note "monomial - polynomial"
```fortran
- m2 = Monomial2D( 0, 2, "x", "y" )
- f1 = m2 - f1
- call f1%display( 'f(x,y)=' )
+m2 = Monomial2D( 0, 2, "x", "y" )
+f1 = m2 - f1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -141,8 +141,8 @@ $$
!!! note "polynomial - polynomial"
```fortran
- f2 = f1 - f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 - f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -154,8 +154,8 @@ $$
!!! note "polynomial - integer"
```fortran
- f2 = f1 - 1
- call f2%display( 'f(x,y)=' )
+f2 = f1 - 1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -167,8 +167,8 @@ $$
!!! note "integer - polynomial"
```fortran
- f2 = 1 - f1
- call f2%display( 'f(x,y)=' )
+f2 = 1 - f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/Polynomial3D/Polynomial3D_test_9.md b/docs/docs-api/Polynomial3D/Polynomial3D_test_9.md
index d9b0611a..c3876fcc 100644
--- a/docs/docs-api/Polynomial3D/Polynomial3D_test_9.md
+++ b/docs/docs-api/Polynomial3D/Polynomial3D_test_9.md
@@ -46,10 +46,10 @@ m=xy
$$
```fortran
- m1 = Monomial2D( 1,1,"x","y" )
- m2 = Monomial2D( 2, 0, "x", "y" )
- f1 = m1 * 2
- call f1%display( 'f(x,y)=' )
+m1 = Monomial2D( 1,1,"x","y" )
+m2 = Monomial2D( 2, 0, "x", "y" )
+f1 = m1 * 2
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -61,8 +61,8 @@ $$
!!! note "integer \* monomial"
```fortran
- f1 = 2*m1
- call f1%display( 'f(x,y)=' )
+f1 = 2*m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -74,8 +74,8 @@ $$
!!! note "monomial \* real"
```fortran
- f1 = m1 * 2.0
- call f1%display( 'f(x,y)=' )
+f1 = m1 * 2.0
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -87,8 +87,8 @@ $$
!!! note "real \* monomial"
```fortran
- f1 = 2.0 * m1
- call f1%display( 'f(x,y)=' )
+f1 = 2.0 * m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -100,8 +100,8 @@ $$
!!! note "monomial \* monomial"
```fortran
- f1 = m1 * m1
- call f1%display( 'f(x,y)=' )
+f1 = m1 * m1
+call f1%display( 'f(x,y)=' )
```
!!! example "result"
@@ -113,9 +113,9 @@ $$
!!! note "polynomial \* monomial"
```fortran
- f1 = m1 + m2
- f2 = f1 * m2
- call f2%display( 'f(x,y)=' )
+f1 = m1 + m2
+f2 = f1 * m2
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -127,8 +127,8 @@ $$
!!! note "monomial \* polynomial"
```fortran
- f2 = m2 * f1
- call f2%display( 'f(x,y)=' )
+f2 = m2 * f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -140,8 +140,8 @@ $$
!!! note "polynomial \* polynomial"
```fortran
- f2 = f1 * f1
- call f2%display( 'f(x,y)=' )
+f2 = f1 * f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -153,8 +153,8 @@ $$
!!! note "polynomial \* integer"
```fortran
- f2 = f1 * 2
- call f2%display( 'f(x,y)=' )
+f2 = f1 * 2
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
@@ -166,8 +166,8 @@ $$
!!! note "integer \* polynomial"
```fortran
- f2 = 2*f1
- call f2%display( 'f(x,y)=' )
+f2 = 2*f1
+call f2%display( 'f(x,y)=' )
```
!!! example "result"
diff --git a/docs/docs-api/PolynomialFactory/PolynomialFactory.md b/docs/docs-api/PolynomialFactory/PolynomialFactory.md
index f99912f0..c062d04e 100644
--- a/docs/docs-api/PolynomialFactory/PolynomialFactory.md
+++ b/docs/docs-api/PolynomialFactory/PolynomialFactory.md
@@ -42,4 +42,3 @@ Currently is contains
- Change name of LagrangePolynomial1D to [[Lagrange1D_]]
- Create [[LagrangeSpace1D_]]
-
diff --git a/docs/docs-api/PrismInterpolationUtility/Methods.md b/docs/docs-api/PrismInterpolationUtility/Methods.md
index 1e337255..9c33bfd2 100644
--- a/docs/docs-api/PrismInterpolationUtility/Methods.md
+++ b/docs/docs-api/PrismInterpolationUtility/Methods.md
@@ -11,7 +11,7 @@ Example:
## LagrangeDOF_Prism
It returns the total number of dof for constructing the Lagrange polynomial on
- Prism.
+Prism.
Example:
diff --git a/docs/docs-api/PushPopUtility/_Pop_test_1.md b/docs/docs-api/PushPopUtility/_Pop_test_1.md
index a0da78ef..cabb4df1 100644
--- a/docs/docs-api/PushPopUtility/_Pop_test_1.md
+++ b/docs/docs-api/PushPopUtility/_Pop_test_1.md
@@ -5,46 +5,43 @@ PROGRAM main
```
```fortran
- indx = [1,2,3,4,5]
- ans = Pop(indx, 1)
- call Display( ans, "ans= " )
+indx = [1,2,3,4,5]
+ans = Pop(indx, 1)
+call Display( ans, "ans= " )
```
-:::note results
- ans=
- -----
- 2
- 3
- 4
- 5
+## :::note resultsans=
+
+2
+3
+4
+5
:::
```fortran
- ans = Pop(indx, 5)
- call Display( ans, "ans= " )
+ans = Pop(indx, 5)
+call Display( ans, "ans= " )
```
-:::note results
- ans=
- -----
- 1
- 2
- 3
- 4
+## :::note resultsans=
+
+1
+2
+3
+4
:::
```fortran
- ans = Pop(indx, 2)
- call Display( ans, "ans= " )
+ans = Pop(indx, 2)
+call Display( ans, "ans= " )
```
-:::note results
- ans=
- -----
- 1
- 3
- 4
- 5
+## :::note resultsans=
+
+1
+3
+4
+5
:::
```fortran
diff --git a/docs/docs-api/PushPopUtility/_Push_test_1.md b/docs/docs-api/PushPopUtility/_Push_test_1.md
index 6ac0ed00..d918412b 100644
--- a/docs/docs-api/PushPopUtility/_Push_test_1.md
+++ b/docs/docs-api/PushPopUtility/_Push_test_1.md
@@ -5,52 +5,49 @@ PROGRAM main
```
```fortran
- indx = [1,2,3,4,5]
- ans = Push(indx, 1, 0)
- call Display( ans, "ans= " )
+indx = [1,2,3,4,5]
+ans = Push(indx, 1, 0)
+call Display( ans, "ans= " )
```
-:::note result
- ans=
- -----
- 0
- 1
- 2
- 3
- 4
- 5
+## :::note resultans=
+
+0
+1
+2
+3
+4
+5
:::
```fortran
- ans = Push(indx, 5, 0)
- call Display( ans, "ans= " )
+ans = Push(indx, 5, 0)
+call Display( ans, "ans= " )
```
-:::note result
- ans=
- -----
- 1
- 2
- 3
- 4
- 0
- 5
+## :::note resultans=
+
+1
+2
+3
+4
+0
+5
:::
```fortran
- ans = Push(indx, 2, 0)
- call Display( ans, "ans= " )
+ans = Push(indx, 2, 0)
+call Display( ans, "ans= " )
```
-:::note result
- ans=
- -----
- 1
- 0
- 2
- 3
- 4
- 5
+## :::note resultans=
+
+1
+0
+2
+3
+4
+5
:::
```fortran
diff --git a/docs/docs-api/PyramidInterpolationUtility/Methods.md b/docs/docs-api/PyramidInterpolationUtility/Methods.md
index a3924f08..74e6ebfe 100644
--- a/docs/docs-api/PyramidInterpolationUtility/Methods.md
+++ b/docs/docs-api/PyramidInterpolationUtility/Methods.md
@@ -11,7 +11,7 @@ Example:
## LagrangeDOF_Pyramid
It returns the total number of dof for constructing the Lagrange polynomial on
- Pyramid.
+Pyramid.
Example:
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/Dubiner_Quadrangle.md b/docs/docs-api/QuadrangleInterpolationUtility/Dubiner_Quadrangle.md
index b4bc00ea..13c4c505 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/Dubiner_Quadrangle.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/Dubiner_Quadrangle.md
@@ -26,25 +26,25 @@ END INTERFACE
The shape of `ans` is (M,N), where M=SIZE(xij,2) (number of points) N = 0.5*(order+1)*(order+2).
- In this way, ans(j,:) denotes the values of all polynomial at jth point
+In this way, ans(j,:) denotes the values of all polynomial at jth point
- Polynomials are returned in following way:
+Polynomials are returned in following way:
$$
- P_{0,0}, P_{0,1}, \cdots , P_{0,order} \\
- P_{1,0}, P_{1,1}, \cdots , P_{1,order-1} \\
- P_{2,0}, P_{2,1}, \cdots , P_{2,order-2} \\
- \cdots
- P_{order,0}
+P_{0,0}, P_{0,1}, \cdots , P_{0,order} \\
+P_{1,0}, P_{1,1}, \cdots , P_{1,order-1} \\
+P_{2,0}, P_{2,1}, \cdots , P_{2,order-2} \\
+\cdots
+P_{order,0}
$$
- For example for order=3, the polynomials are arranged as:
+For example for order=3, the polynomials are arranged as:
$$
- P_{0,0}, P_{0,1}, P_{0,2}, P_{0,3} \\
- P_{1,0}, P_{1,1}, P_{1,2} \\
- P_{2,0}, P_{2,1} \\
- P_{3,0}
+P_{0,0}, P_{0,1}, P_{0,2}, P_{0,3} \\
+P_{1,0}, P_{1,1}, P_{1,2} \\
+P_{2,0}, P_{2,1} \\
+P_{3,0}
$$
## Interface 2
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/InterpolationPoint_Quadrangle.md b/docs/docs-api/QuadrangleInterpolationUtility/InterpolationPoint_Quadrangle.md
index f836f1c0..f592c595 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/InterpolationPoint_Quadrangle.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/InterpolationPoint_Quadrangle.md
@@ -34,7 +34,7 @@ END INTERFACE InterpolationPoint_Quadrangle
- The number of rows in xij can be 2 or 3 (for 2D or 3D)
- The number of columns in xij is 4
- If xij is absent then biunit quadrangle is assumed.
-:::
+ :::
:::info ipType
@@ -45,7 +45,7 @@ END INTERFACE InterpolationPoint_Quadrangle
- [x] `GaussChebyshev1Lobatto`
- [x] `GaussJacobiLobatto`
- [x] `GaussUltrasphericalLobatto`
-:::
+ :::
:::info layout
`layout` specifies the arrangement of interpolation points.
@@ -56,7 +56,7 @@ It has two options:
In "VEFC" format (vertex, edge, face, cell), the first four entries denote the vertex points, then we have edges, and then internal nodes.
-The internal nodes also follow the same convention. Please read Gmsh manual on this topic.
+The internal nodes also follow the same convention. Please read Gmsh manual on this topic.
**INCREASING**
@@ -67,17 +67,17 @@ For example for order = 3:
**VEFC**
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
-| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | - | -- | -------- | ------- | -------- | ------- | ------- | -------- | ------- | -------- | -------- | -------- | -------- | -------- |
+| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
+| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
**INCREASING**
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
-| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | -------- | ------- | -------- | -------- | -------- | -------- | ------- | ------- | -------- | ------- | - | -- | -------- | ------- |
+| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
+| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/LagrangeCoeff_Quadrangle.md b/docs/docs-api/QuadrangleInterpolationUtility/LagrangeCoeff_Quadrangle.md
index d8e5c76d..02d12cdb 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/LagrangeCoeff_Quadrangle.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/LagrangeCoeff_Quadrangle.md
@@ -14,17 +14,17 @@ For example, for Lagrange polynomial of order 2, on equidistance grid, we have f
coeff:
-| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
-| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
-| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
-| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
-| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
-| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
-| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
-| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
-| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
+| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
+| --------- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- |
+| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
+| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
+| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
+| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
+| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
+| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
+| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
+| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
## Interface 1
@@ -195,7 +195,7 @@ The number of columns of xij should be equal to the total number of degrees of f
- Chebyshev
- Ultraspherical
- Heirarchical
-:::
+ :::
:::info `refQuadrangle`
Reference Quadrangle can be `UNIT` or `BIUNIT`.
@@ -205,7 +205,7 @@ Reference Quadrangle can be `UNIT` or `BIUNIT`.
- `alpha` and `beta` are needed when basisType is Jacobi
- `lambda` is needed when basisType is Ultraspherical
-:::
+ :::
@@ -309,7 +309,7 @@ Basis type in x and y direction. They can take following values:
- Chebyshev
- Ultraspherical
- Heirarchical
-:::
+ :::
:::info `refQuadrangle`
Reference Quadrangle can be `UNIT` or `BIUNIT`.
@@ -319,10 +319,10 @@ Reference Quadrangle can be `UNIT` or `BIUNIT`.
- `alpha1` and `beta1` are needed when `basisType1` is Jacobi
- `lambda1` is needed when `basisType1` is Ultraspherical
-:::
+ :::
:::info `alpha2, beta2, lambda2`
- `alpha2` and `beta2` are needed when `basisType2` is Jacobi
- `lambda2` is needed when `basisType2` is Ultraspherical
-:::
+ :::
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/LagrangeDegree_Quadrangle.md b/docs/docs-api/QuadrangleInterpolationUtility/LagrangeDegree_Quadrangle.md
index 9e2c3491..cf584d84 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/LagrangeDegree_Quadrangle.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/LagrangeDegree_Quadrangle.md
@@ -21,17 +21,17 @@ $$
which is representd by:
-| a | b |
-|----|----|
-| 0 | 0 |
-| 1 | 0 |
-| 2 | 0 |
-| 0 | 1 |
-| 1 | 1 |
-| 2 | 1 |
-| 0 | 2 |
-| 1 | 2 |
-| 2 | 2 |
+| a | b |
+| - | - |
+| 0 | 0 |
+| 1 | 0 |
+| 2 | 0 |
+| 0 | 1 |
+| 1 | 1 |
+| 2 | 1 |
+| 0 | 2 |
+| 1 | 2 |
+| 2 | 2 |
## Interface
@@ -58,7 +58,7 @@ Order of Lagrange polynomial
- The first col of `ans` denotes the exponent of `x`
- The second col of `ans` denotes the exponent of `y`
-:::
+ :::
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/QuadrangleInterpolationUtility.md b/docs/docs-api/QuadrangleInterpolationUtility/QuadrangleInterpolationUtility.md
index 5604db85..d6685fd0 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/QuadrangleInterpolationUtility.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/QuadrangleInterpolationUtility.md
@@ -16,7 +16,7 @@ tags:
# Quadrangle
-This module contains useful routines for creating polynomials on triangles.
+This module contains useful routines for creating polynomials on triangles.
## Methods
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_1.md
index 1821f1e0..f3f49263 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_1.md
@@ -28,47 +28,47 @@ end program main
xij (order=1)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
xij (order=2)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| 0 | -1 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| -1 | 0 | 0 |
-| 0 | 0 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| 0 | -1 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| -1 | 0 | 0 |
+| 0 | 0 | 0 |
xij (order=3)=
-| | | |
-| --- | --- | --- |
-| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| -0.33333 | -1 | 0 |
-| 0.33333 | -1 | 0 |
-| 1 | -0.33333 | 0 |
-| 1 | 0.33333 | 0 |
-| 0.33333 | 1 | 0 |
-| -0.33333 | 1 | 0 |
-| -1 | 0.33333 | 0 |
-| -1 | -0.33333 | 0 |
+| | | |
+| -------- | -------- | - |
+| -1 | -1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| -0.33333 | -1 | 0 |
+| 0.33333 | -1 | 0 |
+| 1 | -0.33333 | 0 |
+| 1 | 0.33333 | 0 |
+| 0.33333 | 1 | 0 |
+| -0.33333 | 1 | 0 |
+| -1 | 0.33333 | 0 |
+| -1 | -0.33333 | 0 |
| -0.33333 | -0.33333 | 0 |
-| 0.33333 | -0.33333 | 0 |
-| 0.33333 | 0.33333 | 0 |
-| -0.33333 | 0.33333 | 0 |
+| 0.33333 | -0.33333 | 0 |
+| 0.33333 | 0.33333 | 0 |
+| -0.33333 | 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_2.md
index 76f6d731..9fae45ef 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_2.md
@@ -28,47 +28,47 @@ end program main
xij (order=1)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
xij (order=2)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| 0 | -1 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| -1 | 0 | 0 |
-| 0 | 0 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| 0 | -1 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| -1 | 0 | 0 |
+| 0 | 0 | 0 |
xij (order=3)=
-| | | |
-| --- | --- | --- |
-| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| -0.33333 | -1 | 0 |
-| 0.33333 | -1 | 0 |
-| 1 | -0.33333 | 0 |
-| 1 | 0.33333 | 0 |
-| 0.33333 | 1 | 0 |
-| -0.33333 | 1 | 0 |
-| -1 | 0.33333 | 0 |
-| -1 | -0.33333 | 0 |
+| | | |
+| -------- | -------- | - |
+| -1 | -1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| -0.33333 | -1 | 0 |
+| 0.33333 | -1 | 0 |
+| 1 | -0.33333 | 0 |
+| 1 | 0.33333 | 0 |
+| 0.33333 | 1 | 0 |
+| -0.33333 | 1 | 0 |
+| -1 | 0.33333 | 0 |
+| -1 | -0.33333 | 0 |
| -0.33333 | -0.33333 | 0 |
-| 0.33333 | -0.33333 | 0 |
-| 0.33333 | 0.33333 | 0 |
-| -0.33333 | 0.33333 | 0 |
+| 0.33333 | -0.33333 | 0 |
+| 0.33333 | 0.33333 | 0 |
+| -0.33333 | 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_3.md
index faee94e3..8970bdea 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_3.md
@@ -29,46 +29,46 @@ end program main
See results
-xij (order=2, 1) =
+xij (order=2, 1) =
-| | |
-| --- | --- |
+| | |
+| -- | -- |
| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| 0 | -1 |
-| 0 | 1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| 0 | -1 |
+| 0 | 1 |
xij (order=3, 1)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
+| | |
+| -------- | -- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
| -0.33333 | -1 |
-| 0.33333 | -1 |
-| 0.33333 | 1 |
-| -0.33333 | 1 |
+| 0.33333 | -1 |
+| 0.33333 | 1 |
+| -0.33333 | 1 |
xij (order=3, 2)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
+| | |
+| -------- | -- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
| -0.33333 | -1 |
-| 0.33333 | -1 |
-| 1 | 0 |
-| 0.33333 | 1 |
-| -0.33333 | 1 |
-| -1 | 0 |
-| -0.33333 | 0 |
-| 0.33333 | 0 |
+| 0.33333 | -1 |
+| 1 | 0 |
+| 0.33333 | 1 |
+| -0.33333 | 1 |
+| -1 | 0 |
+| -0.33333 | 0 |
+| 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_4.md
index 9d57c54b..e24e9295 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_EquidistancePoint_Quadrangle_test_4.md
@@ -17,16 +17,16 @@ end program main
See results
-xij (order=2, 1) =
+xij (order=2, 1) =
-| | |
-| --- | --- |
+| | |
+| -- | -- |
| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| 0 | -1 |
-| 0 | 1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| 0 | -1 |
+| 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_1.md
index 1bf00642..a8deb80c 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_1.md
@@ -42,17 +42,17 @@ end program main
xij (order=3), VEFC:
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
-| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | - | -- | -------- | ------- | -------- | ------- | ------- | -------- | ------- | -------- | -------- | -------- | -------- | -------- |
+| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
+| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
xij (order=3)=, INCREASING
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
-| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | -------- | ------- | -------- | -------- | -------- | -------- | ------- | ------- | -------- | ------- | - | -- | -------- | ------- |
+| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
+| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_2.md
index 40e7b73f..ad0fdba1 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_2.md
@@ -28,24 +28,24 @@ end program main
xij (order=5)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_3.md
index 4c780715..2cc608a6 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_3.md
@@ -28,29 +28,29 @@ end program main
xij (order=3) =
-| | |
-| --- | --- |
-| 0 | 0 |
-| 1 | 0 |
-| 0 | 1 |
-| 0.11747 | 0 |
-| 0.35738 | 0 |
-| 0.64262 | 0 |
-| 0.88253 | 0 |
+| | |
+| ------- | ------- |
+| 0 | 0 |
+| 1 | 0 |
+| 0 | 1 |
+| 0.11747 | 0 |
+| 0.35738 | 0 |
+| 0.64262 | 0 |
+| 0.88253 | 0 |
| 0.88253 | 0.11747 |
| 0.64262 | 0.35738 |
| 0.35738 | 0.64262 |
| 0.11747 | 0.88253 |
-| 0 | 0.88253 |
-| 0 | 0.64262 |
-| 0 | 0.35738 |
-| 0 | 0.11747 |
+| 0 | 0.88253 |
+| 0 | 0.64262 |
+| 0 | 0.35738 |
+| 0 | 0.11747 |
| 0.15829 | 0.15829 |
| 0.68343 | 0.15829 |
| 0.15829 | 0.68343 |
-| 0.4133 | 0.17339 |
-| 0.4133 | 0.4133 |
-| 0.17339 | 0.4133 |
+| 0.4133 | 0.17339 |
+| 0.4133 | 0.4133 |
+| 0.17339 | 0.4133 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_4.md
index e322730c..0948fa12 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_4.md
@@ -33,24 +33,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_5.md
index 0273f2bb..ea043817 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_InterpolationPoint_Quadrangle_test_5.md
@@ -30,24 +30,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_1.md
index bb94e500..79301167 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_1.md
@@ -31,8 +31,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -40,9 +40,9 @@ degree:
coeff:
-| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ |
-| --- | --- | --- | --- | --- |
-| $1$ | 0.25 | 0.25 | 0.25 | 0.25 |
-| $x$ | -0.25 | 0.25 | 0.25 | -0.25 |
-| $y$ | -0.25 | -0.25 | 0.25 | 0.25 |
-| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 |
+| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ |
+| ----- | ----- | ----- | ----- | ----- |
+| $1$ | 0.25 | 0.25 | 0.25 | 0.25 |
+| $x$ | -0.25 | 0.25 | 0.25 | -0.25 |
+| $y$ | -0.25 | -0.25 | 0.25 | 0.25 |
+| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_2.md
index 108e6623..b27d105d 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_2.md
@@ -31,8 +31,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -45,14 +45,14 @@ degree:
coeff
-| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
-| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
-| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
-| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
-| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
-| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
-| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
-| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
-| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
+| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
+| --------- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- |
+| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
+| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
+| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
+| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
+| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
+| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
+| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
+| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_3.md
index bf56424a..930e5316 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_3.md
@@ -35,8 +35,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -44,32 +44,32 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
This means:
$$
-L_{1}(x,y) = \frac{1}{4} - \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
+L_{1}(x,y) = \frac{1}{4} - \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
$$
$$
-L_{2}(x,y) = \frac{1}{4} + \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 - \frac{1}{4} xy
+L_{2}(x,y) = \frac{1}{4} + \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 - \frac{1}{4} xy
$$
$$
-L_{3}(x,y) = \frac{1}{4}+ \frac{1}{4} \cdot x^1 + \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
+L_{3}(x,y) = \frac{1}{4}+ \frac{1}{4} \cdot x^1 + \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
$$
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_4.md
index 35f32cd5..97a756f3 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_4.md
@@ -36,8 +36,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -45,18 +45,18 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_5.md
index 7490d950..e7437c1c 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeCoeff_Quadrangle_test_5.md
@@ -38,8 +38,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -47,18 +47,18 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeDegree_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeDegree_Quadrangle_test_1.md
index 2e76665b..4395faee 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeDegree_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeDegree_Quadrangle_test_1.md
@@ -28,8 +28,8 @@ end program main
ans (order=1)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -37,8 +37,8 @@ ans (order=1)=
ans (order=2)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -51,8 +51,8 @@ ans (order=2)=
ans (order=3)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_1.md
index ad0c0555..dc17a293 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_1.md
@@ -56,9 +56,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ |
-| --- | --- | --- | --- |
-| 0.25 | 0.25 | 0.25 | 0.25 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ |
+| ----- | ----- | ----- | ----- |
+| 0.25 | 0.25 | 0.25 | 0.25 |
@@ -69,9 +69,9 @@ ans =
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_2.md
index 57888ed1..6ff77e00 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_2.md
@@ -36,9 +36,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_3.md
index 3ca5892d..4f1a358f 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_3.md
@@ -36,9 +36,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_4.md
index 658a6703..7338a178 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_4.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_5.md
index 38b03dbc..faf39df1 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_5.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_6.md b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_6.md
index 91cd9a38..7ead0d24 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_6.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_LagrangeEvalAll_Quadrangle_test_6.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_1.md
index 1ee63531..0790f80e 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_1.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | |
-|--- | --- | --- | --- | --- |
-| $\xi$ | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| $\eta$ | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 1 | 1 | 1 | 1 |
+| | | | | |
+| ------ | -------- | -------- | -------- | ------- |
+| $\xi$ | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| $\eta$ | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_2.md
index e20e366e..ba94f42b 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_2.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_3.md
index 1eaa7efd..20520489 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_3.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_4.md
index 1f0f12f5..e07f9297 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_4.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_5.md
index 0273f2bb..ea043817 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/_QuadraturePoint_Quadrangle_test_5.md
@@ -30,24 +30,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_1.md
index 1821f1e0..f3f49263 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_1.md
@@ -28,47 +28,47 @@ end program main
xij (order=1)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
xij (order=2)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| 0 | -1 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| -1 | 0 | 0 |
-| 0 | 0 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| 0 | -1 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| -1 | 0 | 0 |
+| 0 | 0 | 0 |
xij (order=3)=
-| | | |
-| --- | --- | --- |
-| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| -0.33333 | -1 | 0 |
-| 0.33333 | -1 | 0 |
-| 1 | -0.33333 | 0 |
-| 1 | 0.33333 | 0 |
-| 0.33333 | 1 | 0 |
-| -0.33333 | 1 | 0 |
-| -1 | 0.33333 | 0 |
-| -1 | -0.33333 | 0 |
+| | | |
+| -------- | -------- | - |
+| -1 | -1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| -0.33333 | -1 | 0 |
+| 0.33333 | -1 | 0 |
+| 1 | -0.33333 | 0 |
+| 1 | 0.33333 | 0 |
+| 0.33333 | 1 | 0 |
+| -0.33333 | 1 | 0 |
+| -1 | 0.33333 | 0 |
+| -1 | -0.33333 | 0 |
| -0.33333 | -0.33333 | 0 |
-| 0.33333 | -0.33333 | 0 |
-| 0.33333 | 0.33333 | 0 |
-| -0.33333 | 0.33333 | 0 |
+| 0.33333 | -0.33333 | 0 |
+| 0.33333 | 0.33333 | 0 |
+| -0.33333 | 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_2.md
index 76f6d731..9fae45ef 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_2.md
@@ -28,47 +28,47 @@ end program main
xij (order=1)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
xij (order=2)=
-| | | |
-| --- | --- | --- |
+| | | |
+| -- | -- | - |
| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| 0 | -1 | 0 |
-| 1 | 0 | 0 |
-| 0 | 1 | 0 |
-| -1 | 0 | 0 |
-| 0 | 0 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| 0 | -1 | 0 |
+| 1 | 0 | 0 |
+| 0 | 1 | 0 |
+| -1 | 0 | 0 |
+| 0 | 0 | 0 |
xij (order=3)=
-| | | |
-| --- | --- | --- |
-| -1 | -1 | 0 |
-| 1 | -1 | 0 |
-| 1 | 1 | 0 |
-| -1 | 1 | 0 |
-| -0.33333 | -1 | 0 |
-| 0.33333 | -1 | 0 |
-| 1 | -0.33333 | 0 |
-| 1 | 0.33333 | 0 |
-| 0.33333 | 1 | 0 |
-| -0.33333 | 1 | 0 |
-| -1 | 0.33333 | 0 |
-| -1 | -0.33333 | 0 |
+| | | |
+| -------- | -------- | - |
+| -1 | -1 | 0 |
+| 1 | -1 | 0 |
+| 1 | 1 | 0 |
+| -1 | 1 | 0 |
+| -0.33333 | -1 | 0 |
+| 0.33333 | -1 | 0 |
+| 1 | -0.33333 | 0 |
+| 1 | 0.33333 | 0 |
+| 0.33333 | 1 | 0 |
+| -0.33333 | 1 | 0 |
+| -1 | 0.33333 | 0 |
+| -1 | -0.33333 | 0 |
| -0.33333 | -0.33333 | 0 |
-| 0.33333 | -0.33333 | 0 |
-| 0.33333 | 0.33333 | 0 |
-| -0.33333 | 0.33333 | 0 |
+| 0.33333 | -0.33333 | 0 |
+| 0.33333 | 0.33333 | 0 |
+| -0.33333 | 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_3.md
index faee94e3..8970bdea 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_3.md
@@ -29,46 +29,46 @@ end program main
See results
-xij (order=2, 1) =
+xij (order=2, 1) =
-| | |
-| --- | --- |
+| | |
+| -- | -- |
| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| 0 | -1 |
-| 0 | 1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| 0 | -1 |
+| 0 | 1 |
xij (order=3, 1)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
+| | |
+| -------- | -- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
| -0.33333 | -1 |
-| 0.33333 | -1 |
-| 0.33333 | 1 |
-| -0.33333 | 1 |
+| 0.33333 | -1 |
+| 0.33333 | 1 |
+| -0.33333 | 1 |
xij (order=3, 2)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
+| | |
+| -------- | -- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
| -0.33333 | -1 |
-| 0.33333 | -1 |
-| 1 | 0 |
-| 0.33333 | 1 |
-| -0.33333 | 1 |
-| -1 | 0 |
-| -0.33333 | 0 |
-| 0.33333 | 0 |
+| 0.33333 | -1 |
+| 1 | 0 |
+| 0.33333 | 1 |
+| -0.33333 | 1 |
+| -1 | 0 |
+| -0.33333 | 0 |
+| 0.33333 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_4.md
index 9d57c54b..e24e9295 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_EquidistancePoint_Quadrangle_test_4.md
@@ -17,16 +17,16 @@ end program main
See results
-xij (order=2, 1) =
+xij (order=2, 1) =
-| | |
-| --- | --- |
+| | |
+| -- | -- |
| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| 0 | -1 |
-| 0 | 1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| 0 | -1 |
+| 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_1.md
index 1bf00642..a8deb80c 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_1.md
@@ -42,17 +42,17 @@ end program main
xij (order=3), VEFC:
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
-| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | - | -- | -------- | ------- | -------- | ------- | ------- | -------- | ------- | -------- | -------- | -------- | -------- | -------- |
+| $x$ | -1 | 1 | 1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -1 | -1 | -0.33333 | -0.33333 | 0.333 33 | 0.33333 |
+| $y$ | -1 | -1 | 1 | 1 | -1 | -1 | -0.33333 | 0.33333 | 1 | 1 | 0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.3333 3 | -0.33333 |
xij (order=3)=, INCREASING
-| | | | | | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
-| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 |
+| | | | | | | | | | | | | | | | | |
+| --- | -- | -- | -------- | ------- | -------- | -------- | -------- | -------- | ------- | ------- | -------- | ------- | - | -- | -------- | ------- |
+| $x$ | -1 | -1 | -1 | -1 | -0.33333 | -0.33333 | -0.33333 | -0.33333 | 0.33333 | 0.33333 | 0.33333 | 0.33333 | 1 | 1 | 1 | 1 |
+| $y$ | | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 | 1 | -1 | -0.33333 | 0.33333 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_2.md
index 40e7b73f..ad0fdba1 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_2.md
@@ -28,24 +28,24 @@ end program main
xij (order=5)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_3.md
index 4c780715..2cc608a6 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_3.md
@@ -28,29 +28,29 @@ end program main
xij (order=3) =
-| | |
-| --- | --- |
-| 0 | 0 |
-| 1 | 0 |
-| 0 | 1 |
-| 0.11747 | 0 |
-| 0.35738 | 0 |
-| 0.64262 | 0 |
-| 0.88253 | 0 |
+| | |
+| ------- | ------- |
+| 0 | 0 |
+| 1 | 0 |
+| 0 | 1 |
+| 0.11747 | 0 |
+| 0.35738 | 0 |
+| 0.64262 | 0 |
+| 0.88253 | 0 |
| 0.88253 | 0.11747 |
| 0.64262 | 0.35738 |
| 0.35738 | 0.64262 |
| 0.11747 | 0.88253 |
-| 0 | 0.88253 |
-| 0 | 0.64262 |
-| 0 | 0.35738 |
-| 0 | 0.11747 |
+| 0 | 0.88253 |
+| 0 | 0.64262 |
+| 0 | 0.35738 |
+| 0 | 0.11747 |
| 0.15829 | 0.15829 |
| 0.68343 | 0.15829 |
| 0.15829 | 0.68343 |
-| 0.4133 | 0.17339 |
-| 0.4133 | 0.4133 |
-| 0.17339 | 0.4133 |
+| 0.4133 | 0.17339 |
+| 0.4133 | 0.4133 |
+| 0.17339 | 0.4133 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_4.md
index e322730c..0948fa12 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_4.md
@@ -33,24 +33,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_5.md
index 0273f2bb..ea043817 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_InterpolationPoint_Quadrangle_test_5.md
@@ -30,24 +30,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_1.md
index bb94e500..79301167 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_1.md
@@ -31,8 +31,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -40,9 +40,9 @@ degree:
coeff:
-| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ |
-| --- | --- | --- | --- | --- |
-| $1$ | 0.25 | 0.25 | 0.25 | 0.25 |
-| $x$ | -0.25 | 0.25 | 0.25 | -0.25 |
-| $y$ | -0.25 | -0.25 | 0.25 | 0.25 |
-| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 |
+| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ |
+| ----- | ----- | ----- | ----- | ----- |
+| $1$ | 0.25 | 0.25 | 0.25 | 0.25 |
+| $x$ | -0.25 | 0.25 | 0.25 | -0.25 |
+| $y$ | -0.25 | -0.25 | 0.25 | 0.25 |
+| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_2.md
index 108e6623..b27d105d 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_2.md
@@ -31,8 +31,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -45,14 +45,14 @@ degree:
coeff
-| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
-| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
-| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
-| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
-| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
-| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
-| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
-| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
-| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
+| Basis | $l_1$ | $l_2$ | $l_3$ | $l_4$ | $l_5$ | $l_6$ | $l_7$ | $l_8$ | $l_9$ |
+| --------- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- | ----- |
+| $1$ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $x$ | 0 | 0 | 0 | 0 | 0 | 0.5 | 0 | -0.5 | -0 |
+| $x^2$ | 0 | 0 | -0 | 0 | 0 | 0.5 | 0 | 0.5 | -1 |
+| $y$ | 0 | 0 | 0 | 0 | -0.5 | 0 | 0.5 | 0 | -0 |
+| $xy$ | 0.25 | -0.25 | 0.25 | -0.25 | 0 | 0 | 0 | 0 | -0 |
+| $x^2 y$ | -0.25 | -0.25 | 0.25 | 0.25 | 0.5 | -0 | -0.5 | 0 | -0 |
+| $y^2$ | 0 | 0 | 0 | 0 | 0.5 | 0 | 0.5 | 0 | -1 |
+| $xy^2$ | -0.25 | 0.25 | 0.25 | -0.25 | 0 | -0.5 | 0 | 0.5 | -0 |
+| $x^2 y^2$ | 0.25 | 0.25 | 0.25 | 0.25 | -0.5 | -0.5 | -0.5 | -0.5 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_3.md
index bf56424a..930e5316 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_3.md
@@ -35,8 +35,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -44,32 +44,32 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
This means:
$$
-L_{1}(x,y) = \frac{1}{4} - \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
+L_{1}(x,y) = \frac{1}{4} - \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
$$
$$
-L_{2}(x,y) = \frac{1}{4} + \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 - \frac{1}{4} xy
+L_{2}(x,y) = \frac{1}{4} + \frac{1}{4} \cdot x^1 - \frac{1}{4} \cdot y^1 - \frac{1}{4} xy
$$
$$
-L_{3}(x,y) = \frac{1}{4}+ \frac{1}{4} \cdot x^1 + \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
+L_{3}(x,y) = \frac{1}{4}+ \frac{1}{4} \cdot x^1 + \frac{1}{4} \cdot y^1 + \frac{1}{4} xy
$$
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_4.md
index 35f32cd5..97a756f3 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_4.md
@@ -36,8 +36,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -45,18 +45,18 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_5.md
index 7490d950..e7437c1c 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeCoeff_Quadrangle_test_5.md
@@ -38,8 +38,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -47,18 +47,18 @@ degree:
coeff(1):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ----- | ----- | ---- |
| 0.25 | -0.25 | -0.25 | 0.25 |
coeff(2):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ----- | ----- |
| 0.25 | 0.25 | -0.25 | -0.25 |
coeff(3):
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ---- | ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 | 0.25 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeDegree_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeDegree_Quadrangle_test_1.md
index 2e76665b..4395faee 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeDegree_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeDegree_Quadrangle_test_1.md
@@ -28,8 +28,8 @@ end program main
ans (order=1)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -37,8 +37,8 @@ ans (order=1)=
ans (order=2)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -51,8 +51,8 @@ ans (order=2)=
ans (order=3)=
-| a | b |
-| --- | --- |
+| a | b |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_1.md
index ad0c0555..dc17a293 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_1.md
@@ -56,9 +56,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ |
-| --- | --- | --- | --- |
-| 0.25 | 0.25 | 0.25 | 0.25 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ |
+| ----- | ----- | ----- | ----- |
+| 0.25 | 0.25 | 0.25 | 0.25 |
@@ -69,9 +69,9 @@ ans =
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_2.md
index 57888ed1..6ff77e00 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_2.md
@@ -36,9 +36,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_3.md
index 3ca5892d..4f1a358f 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_3.md
@@ -36,9 +36,9 @@ end program main
ans =
-| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| $l_1$ | $l_2$ | $l_3$ | $l_4$ | | | | | $l_9$ |
+| ----- | ----- | ----- | ----- | - | - | - | - | ----- |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_4.md
index 658a6703..7338a178 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_4.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_5.md
index 38b03dbc..faf39df1 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_5.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_6.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_6.md
index 91cd9a38..7ead0d24 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_6.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_LagrangeEvalAll_Quadrangle_test_6.md
@@ -36,17 +36,17 @@ end program main
ans =
- | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
+| | | | | | | | | |
+| - | - | - | - | - | - | - | - | - |
+| 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_1.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_1.md
index 1ee63531..0790f80e 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_1.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_1.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | |
-|--- | --- | --- | --- | --- |
-| $\xi$ | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| $\eta$ | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 1 | 1 | 1 | 1 |
+| | | | | |
+| ------ | -------- | -------- | -------- | ------- |
+| $\xi$ | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| $\eta$ | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_2.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_2.md
index e20e366e..ba94f42b 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_2.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_2.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_3.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_3.md
index 1eaa7efd..20520489 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_3.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_3.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_4.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_4.md
index 1f0f12f5..e07f9297 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_4.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_4.md
@@ -24,11 +24,11 @@ end program main
xij (order=2)=
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
-| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
-| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
+| | | | | | | | | |
+| ------- | ------------ | ------- | ------------ | ------------ | ------------ | ------- | ------------ | ------- |
+| -1 | -1 | -1 | -2.66578E-17 | -2.66578E-17 | -2.66578E-17 | 1 | 1 | 1 |
+| -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 | -1 | -2.66578E-17 | 1 |
+| 0.11111 | 0.44444 | 0.11111 | 0.44444 | 1.7778 | 0.44444 | 0.11111 | 0.44444 | 0.11111 |
diff --git a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_5.md b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_5.md
index 0273f2bb..ea043817 100644
--- a/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_5.md
+++ b/docs/docs-api/QuadrangleInterpolationUtility/examples/_QuadraturePoint_Quadrangle_test_5.md
@@ -30,24 +30,24 @@ end program main
xij (order=3)=
-| | |
-| --- | --- |
-| -1 | -1 |
-| 1 | -1 |
-| 1 | 1 |
-| -1 | 1 |
-| -0.44721 | -1 |
-| 0.44721 | -1 |
-| 1 | -0.44721 |
-| 1 | 0.44721 |
-| 0.44721 | 1 |
-| -0.44721 | 1 |
-| -1 | 0.44721 |
-| -1 | -0.44721 |
+| | |
+| -------- | -------- |
+| -1 | -1 |
+| 1 | -1 |
+| 1 | 1 |
+| -1 | 1 |
+| -0.44721 | -1 |
+| 0.44721 | -1 |
+| 1 | -0.44721 |
+| 1 | 0.44721 |
+| 0.44721 | 1 |
+| -0.44721 | 1 |
+| -1 | 0.44721 |
+| -1 | -0.44721 |
| -0.44721 | -0.44721 |
-| -0.44721 | 0.44721 |
-| 0.44721 | 0.44721 |
-| 0.44721 | -0.44721 |
+| -0.44721 | 0.44721 |
+| 0.44721 | 0.44721 |
+| 0.44721 | -0.44721 |
diff --git a/docs/docs-api/QuadraturePoint/GaussLegendreLobattoQuadrature.md b/docs/docs-api/QuadraturePoint/GaussLegendreLobattoQuadrature.md
index eafb8f3c..7a1cc214 100644
--- a/docs/docs-api/QuadraturePoint/GaussLegendreLobattoQuadrature.md
+++ b/docs/docs-api/QuadraturePoint/GaussLegendreLobattoQuadrature.md
@@ -10,7 +10,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
:::note
-For line-element n point Gauss Lobatto rule has $2n-3$ degree of accuracy.
+For line-element n point Gauss Lobatto rule has $2n-3$ degree of accuracy.\
:::
## Interface 1
@@ -65,4 +65,3 @@ INTERFACE
END FUNCTION GaussLegendreLobattoQuadrature
END INTERFACE
```
-
diff --git a/docs/docs-api/QuadraturePoint/GaussLegendreQuadrature.md b/docs/docs-api/QuadraturePoint/GaussLegendreQuadrature.md
index e313f19d..c70c98b9 100644
--- a/docs/docs-api/QuadraturePoint/GaussLegendreQuadrature.md
+++ b/docs/docs-api/QuadraturePoint/GaussLegendreQuadrature.md
@@ -2,7 +2,7 @@
This function returns GaussLegendre quadrature points of a given order.
- Generic name: GaussLegendreQuadrature
+ Generic name: GaussLegendreQuadrature
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
@@ -55,4 +55,3 @@ INTERFACE
END FUNCTION GaussLegendreQuadrature
END INTERFACE
```
-
diff --git a/docs/docs-api/QuadraturePoint/GaussLegendreRadauLeftQuadrature.md b/docs/docs-api/QuadraturePoint/GaussLegendreRadauLeftQuadrature.md
index 4927f366..20fbd665 100644
--- a/docs/docs-api/QuadraturePoint/GaussLegendreRadauLeftQuadrature.md
+++ b/docs/docs-api/QuadraturePoint/GaussLegendreRadauLeftQuadrature.md
@@ -2,13 +2,13 @@
This function returns Gauss Legendre Radau quadrature points of a given order.
- Generic name: GaussLegendreRadauLeftQuadrature
+ Generic name: GaussLegendreRadauLeftQuadrature
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
:::note
-For line-element n point Gauss Legendre Radau rule has $2n-2$ degree of accuracy.
+For line-element n point Gauss Legendre Radau rule has $2n-2$ degree of accuracy.\
:::
## Interface 1
@@ -63,4 +63,3 @@ INTERFACE
END FUNCTION GaussLegendreRadauLeftQuadrature
END INTERFACE
```
-
diff --git a/docs/docs-api/QuadraturePoint/GaussLegendreRadauRightQuadrature.md b/docs/docs-api/QuadraturePoint/GaussLegendreRadauRightQuadrature.md
index b5766279..8d0d5c61 100644
--- a/docs/docs-api/QuadraturePoint/GaussLegendreRadauRightQuadrature.md
+++ b/docs/docs-api/QuadraturePoint/GaussLegendreRadauRightQuadrature.md
@@ -8,7 +8,7 @@ import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
:::note
-For line-element n point Gauss Legendre Radau rule has $2n-2$ degree of accuracy.
+For line-element n point Gauss Legendre Radau rule has $2n-2$ degree of accuracy.\
:::
## Interface 1
@@ -63,4 +63,3 @@ INTERFACE
END FUNCTION GaussLegendreRadauRightQuadrature
END INTERFACE
```
-
diff --git a/docs/docs-api/QuadraturePoint/GetQuadraturePoints.md b/docs/docs-api/QuadraturePoint/GetQuadraturePoints.md
index 2df316ff..1fba72bc 100644
--- a/docs/docs-api/QuadraturePoint/GetQuadraturePoints.md
+++ b/docs/docs-api/QuadraturePoint/GetQuadraturePoints.md
@@ -37,4 +37,4 @@ END SUBROUTINE GetQuadraturePoints
- Point denotes the quadrature points.
- Point always has three rows. The first row corresponds to the first local coordinate, $\xi$, the second to second local coordiante, $\eta$, and the third to the third local coordinate, $\zeta$.
- The number of col of Point equals to the total number of quadrature points.
-:::
+ :::
diff --git a/docs/docs-api/QuadraturePoint/Initiate.md b/docs/docs-api/QuadraturePoint/Initiate.md
index dc392403..7b06f753 100644
--- a/docs/docs-api/QuadraturePoint/Initiate.md
+++ b/docs/docs-api/QuadraturePoint/Initiate.md
@@ -353,7 +353,7 @@ This routine is for developers only, normal user should not worry about this int
- for example, `Points( :, ipoint )` contains quadrature points and weights of `ipoint` quadrature point.
- The last row always contains the weight.
- The rest of the rows contains the coordinates of quadrature.
-:::
+ :::
## Interface 8
diff --git a/docs/docs-api/QuadraturePoint/Size.md b/docs/docs-api/QuadraturePoint/Size.md
index d143e545..aedb68ed 100644
--- a/docs/docs-api/QuadraturePoint/Size.md
+++ b/docs/docs-api/QuadraturePoint/Size.md
@@ -13,7 +13,7 @@ b = SIZE(obj,2)
- Total number of quadrature points are give by `SIZE(quad, 2)`
- The weights are kept in the last row, that is `SIZE(quad,1)`
-:::
+ :::
## Interface
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_2b.md b/docs/docs-api/QuadraturePoint/_Initiate_test_2b.md
index 9d5df097..fbc32a0a 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_2b.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_2b.md
@@ -20,11 +20,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
-| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
-| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
+| | | | | | | |
+| -- | -------- | -------- | -------- | -------- | ------- | -------- |
+| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
+| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
+| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_3a.md b/docs/docs-api/QuadraturePoint/_Initiate_test_3a.md
index a27508e4..cd4a0d01 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_3a.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_3a.md
@@ -19,11 +19,11 @@ END PROGRAM main
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | 4.3715E-16 | 3.88578E-16 | 4.44089E-16 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.7746 | 4.44089E-16 | 0.7746 | -0.7746 | 3.88578E-16 | 0.7746 | -0.7746 | 4.16334E-16 | 0.7746 |
-| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
+| | | | | | | | | | |
+| -- | ------- | ----------- | ------- | ---------- | ----------- | ----------- | ------- | ----------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | 4.3715E-16 | 3.88578E-16 | 4.44089E-16 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.7746 | 4.44089E-16 | 0.7746 | -0.7746 | 3.88578E-16 | 0.7746 | -0.7746 | 4.16334E-16 | 0.7746 |
+| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_3b.md b/docs/docs-api/QuadraturePoint/_Initiate_test_3b.md
index 97f61c55..f658f713 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_3b.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_3b.md
@@ -15,19 +15,17 @@ CALL initiate(obj=obj, &
CALL display(mdencode(obj), "")
END PROGRAM main
-
-
```
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
-| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
-| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
+| | | | | | | | | | |
+| -- | ----------- | ------- | ----------- | ------- | ------- | ------- | ----------- | ------- | ----------- |
+| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
+| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
+| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_3c.md b/docs/docs-api/QuadraturePoint/_Initiate_test_3c.md
index f695559b..3cbd5026 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_3c.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_3c.md
@@ -23,11 +23,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
+| | | | | | | |
+| -- | -------- | ------- | ----------- | ----------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_4a.md b/docs/docs-api/QuadraturePoint/_Initiate_test_4a.md
index 1bc6acac..5b9431cd 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_4a.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_4a.md
@@ -15,9 +15,9 @@ CALL display(mdencode(obj), "ans: ")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
+| | | | | | | | | |
+| -- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | ------- |
+| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_4b.md b/docs/docs-api/QuadraturePoint/_Initiate_test_4b.md
index d26a2d30..5c230b4b 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_4b.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_4b.md
@@ -15,9 +15,9 @@ CALL display(mdencode(obj) , "")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | |
+| -- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- |
| x1 | 0.21132 | 0.21132 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.78868 | 0.78868 |
| x2 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.21132 | 0.21132 | 0.78868 | 0.78868 |
| x3 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 |
-| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
+| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
diff --git a/docs/docs-api/QuadraturePoint/_Initiate_test_4c.md b/docs/docs-api/QuadraturePoint/_Initiate_test_4c.md
index bf9b1869..3cb7fecf 100644
--- a/docs/docs-api/QuadraturePoint/_Initiate_test_4c.md
+++ b/docs/docs-api/QuadraturePoint/_Initiate_test_4c.md
@@ -19,9 +19,9 @@ CALL display(mdencode(obj) , "")
END PROGRAM main
```
-| | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
+| | | | | | | | | | | | | |
+| -- | -------- | -------- | -------- | ------- | ----------- | ----------- | ----------- | ----------- | -------- | -------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
diff --git a/docs/docs-api/QuadraturePoint/_MdEncode_test_1.md b/docs/docs-api/QuadraturePoint/_MdEncode_test_1.md
index 630c1396..35452a19 100644
--- a/docs/docs-api/QuadraturePoint/_MdEncode_test_1.md
+++ b/docs/docs-api/QuadraturePoint/_MdEncode_test_1.md
@@ -15,7 +15,7 @@ CALL display(MdEncode(obj) , "ans: " // char_lf // char_lf)
END PROGRAM main
```
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| -- | ------- | ----------- | ------- |
| x1 | -0.7746 | 1.59632E-16 | 0.7746 |
-| w | 0.55556 | 0.88889 | 0.55556 |
+| w | 0.55556 | 0.88889 | 0.55556 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_2b.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_2b.md
index 9d5df097..fbc32a0a 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_2b.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_2b.md
@@ -20,11 +20,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
-| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
-| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
+| | | | | | | |
+| -- | -------- | -------- | -------- | -------- | ------- | -------- |
+| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
+| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
+| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3a.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3a.md
index a27508e4..cd4a0d01 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3a.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3a.md
@@ -19,11 +19,11 @@ END PROGRAM main
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | 4.3715E-16 | 3.88578E-16 | 4.44089E-16 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.7746 | 4.44089E-16 | 0.7746 | -0.7746 | 3.88578E-16 | 0.7746 | -0.7746 | 4.16334E-16 | 0.7746 |
-| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
+| | | | | | | | | | |
+| -- | ------- | ----------- | ------- | ---------- | ----------- | ----------- | ------- | ----------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | 4.3715E-16 | 3.88578E-16 | 4.44089E-16 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.7746 | 4.44089E-16 | 0.7746 | -0.7746 | 3.88578E-16 | 0.7746 | -0.7746 | 4.16334E-16 | 0.7746 |
+| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3b.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3b.md
index 97f61c55..f658f713 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3b.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3b.md
@@ -15,19 +15,17 @@ CALL initiate(obj=obj, &
CALL display(mdencode(obj), "")
END PROGRAM main
-
-
```
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
-| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
-| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
+| | | | | | | | | | |
+| -- | ----------- | ------- | ----------- | ------- | ------- | ------- | ----------- | ------- | ----------- |
+| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
+| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
+| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3c.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3c.md
index f695559b..3cbd5026 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3c.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_3c.md
@@ -23,11 +23,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
+| | | | | | | |
+| -- | -------- | ------- | ----------- | ----------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4a.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4a.md
index 1bc6acac..5b9431cd 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4a.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4a.md
@@ -15,9 +15,9 @@ CALL display(mdencode(obj), "ans: ")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
+| | | | | | | | | |
+| -- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | ------- |
+| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4b.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4b.md
index d26a2d30..5c230b4b 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4b.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4b.md
@@ -15,9 +15,9 @@ CALL display(mdencode(obj) , "")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | |
+| -- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- |
| x1 | 0.21132 | 0.21132 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.78868 | 0.78868 |
| x2 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.21132 | 0.21132 | 0.78868 | 0.78868 |
| x3 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 |
-| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
+| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4c.md b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4c.md
index bf9b1869..3cb7fecf 100644
--- a/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4c.md
+++ b/docs/docs-api/QuadraturePoint/examples/_Initiate_test_4c.md
@@ -19,9 +19,9 @@ CALL display(mdencode(obj) , "")
END PROGRAM main
```
-| | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
+| | | | | | | | | | | | | |
+| -- | -------- | -------- | -------- | ------- | ----------- | ----------- | ----------- | ----------- | -------- | -------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
diff --git a/docs/docs-api/QuadraturePoint/examples/_MdEncode_test_1.md b/docs/docs-api/QuadraturePoint/examples/_MdEncode_test_1.md
index 630c1396..35452a19 100644
--- a/docs/docs-api/QuadraturePoint/examples/_MdEncode_test_1.md
+++ b/docs/docs-api/QuadraturePoint/examples/_MdEncode_test_1.md
@@ -15,7 +15,7 @@ CALL display(MdEncode(obj) , "ans: " // char_lf // char_lf)
END PROGRAM main
```
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| -- | ------- | ----------- | ------- |
| x1 | -0.7746 | 1.59632E-16 | 0.7746 |
-| w | 0.55556 | 0.88889 | 0.55556 |
+| w | 0.55556 | 0.88889 | 0.55556 |
diff --git a/docs/docs-api/Rank2Tensor/Rank2Tensor_.md b/docs/docs-api/Rank2Tensor/Rank2Tensor_.md
index 2f955356..f0e43d0a 100755
--- a/docs/docs-api/Rank2Tensor/Rank2Tensor_.md
+++ b/docs/docs-api/Rank2Tensor/Rank2Tensor_.md
@@ -23,9 +23,9 @@ On 13-July-2018, when I tried to compile this module using ifort then there was
## Structure
```fortran
- TYPE, PUBLIC :: Tensor_
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: T
- INTEGER( I4B ) :: NSD
+TYPE, PUBLIC :: Tensor_
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ) :: T
+ INTEGER( I4B ) :: NSD
```
## Description
@@ -366,7 +366,7 @@ R = RotationPart( obj )
**VectorProduct**
-We have defined `VectorProduct()` function for computing the cross product( also known as vector product ), It returns a length 3 vector. `VectorProduct(u,v)` is $u \times v$. `VectorProduct(u,v,w)` is equivalent to $u \times ( v \times w )$
+We have defined `VectorProduct()` function for computing the cross product( also known as vector product ), It returns a length 3 vector. `VectorProduct(u,v)` is $u \times v$. `VectorProduct(u,v,w)` is equivalent to $u \times ( v \times w )$
```fortran
Vec = VectorProduct( u, v )
@@ -478,13 +478,13 @@ obj = Rank2Tensor( obj2 )
Interface
```fortran
- SUBROUTINE Initiate1( obj )
- CLASS( Tensor_ ), INTENT( INOUT ) :: obj
- IF( ALLOCATED( obj%T ) ) DEALLOCATE( obj%T )
- ALLOCATE( obj%T( 3, 3 ) )
- obj%NSD = 3
- obj%T = 0.0_DFP
- END SUBROUTINE Initiate1
+SUBROUTINE Initiate1( obj )
+ CLASS( Tensor_ ), INTENT( INOUT ) :: obj
+ IF( ALLOCATED( obj%T ) ) DEALLOCATE( obj%T )
+ ALLOCATE( obj%T( 3, 3 ) )
+ obj%NSD = 3
+ obj%T = 0.0_DFP
+END SUBROUTINE Initiate1
```
Description
@@ -496,9 +496,9 @@ See the above code.
Interface
```fortran
- SUBROUTINE Initiate2( obj, A )
- CLASS( Tensor_ ), INTENT( INOUT ) :: obj
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
+SUBROUTINE Initiate2( obj, A )
+ CLASS( Tensor_ ), INTENT( INOUT ) :: obj
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
```
Description
@@ -529,11 +529,11 @@ See the code above
Interface
```fortran
- SUBROUTINE Initiate4( obj, A, VoigtType )
- USE Voigt
- CLASS( Tensor_ ), INTENT( INOUT ) :: obj
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: A
- CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType
+SUBROUTINE Initiate4( obj, A, VoigtType )
+ USE Voigt
+ CLASS( Tensor_ ), INTENT( INOUT ) :: obj
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: A
+ CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType
```
Description
@@ -545,9 +545,9 @@ Coverts a Voigt vector into a tensor.
Interface
```fortran
- SUBROUTINE Initiate5( obj, obj2 )
- CLASS( Tensor_ ), INTENT( INOUT ) :: obj
- CLASS( Tensor_ ), INTENT( IN ) :: obj2
+SUBROUTINE Initiate5( obj, obj2 )
+ CLASS( Tensor_ ), INTENT( INOUT ) :: obj
+ CLASS( Tensor_ ), INTENT( IN ) :: obj2
```
Description
@@ -576,13 +576,13 @@ Description
Interface
```fortran
- FUNCTION Constructor2( A )
- CLASS( Tensor_ ), POINTER :: Constructor2
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
- Error_Flag = .FALSE.
- ALLOCATE( Tensor_ :: Constructor2 )
- CALL Constructor2%Initiate( A )
- END FUNCTION Constructor2
+FUNCTION Constructor2( A )
+ CLASS( Tensor_ ), POINTER :: Constructor2
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
+ Error_Flag = .FALSE.
+ ALLOCATE( Tensor_ :: Constructor2 )
+ CALL Constructor2%Initiate( A )
+END FUNCTION Constructor2
```
Description
@@ -733,10 +733,10 @@ Description
Interface
```fortran
- INTEGER( I4B ) FUNCTION getNSD( obj )
- CLASS( Tensor_ ), INTENT( IN ) :: obj
- getNSD = obj%NSD
- END FUNCTION getNSD
+INTEGER( I4B ) FUNCTION getNSD( obj )
+ CLASS( Tensor_ ), INTENT( IN ) :: obj
+ getNSD = obj%NSD
+END FUNCTION getNSD
```
### getTensor
@@ -770,11 +770,11 @@ END SUBROUTINE getTensor_1
Type-2
```fortran
- SUBROUTINE getTensor_2( obj, Vec, VoigtType )
- USE Voigt
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), ALLOCATABLE, DIMENSION( : ), INTENT( INOUT ) :: Vec
- CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType
+SUBROUTINE getTensor_2( obj, Vec, VoigtType )
+ USE Voigt
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), ALLOCATABLE, DIMENSION( : ), INTENT( INOUT ) :: Vec
+ CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType
```
Description
@@ -784,9 +784,9 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-3
```fortran
- SUBROUTINE getTensor_3( T, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ), INTENT( OUT ) :: T
+SUBROUTINE getTensor_3( T, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), ALLOCATABLE, DIMENSION( :, : ), INTENT( OUT ) :: T
```
> This subroutine is used for overloading the assignment operator. Now we can obtain the value using `Mat = obj`.
@@ -796,10 +796,10 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-1
```fortran
- FUNCTION TensorTimesScalar_1( obj, Scalar )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), INTENT( IN ) :: Scalar
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_1
+FUNCTION TensorTimesScalar_1( obj, Scalar )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), INTENT( IN ) :: Scalar
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_1
```
`obj * 2.0_DFP` returns a (3,3) matrix.
@@ -807,10 +807,10 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-2
```fortran
- FUNCTION TensorTimesScalar_2( Scalar, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), INTENT( IN ) :: Scalar
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_2
+FUNCTION TensorTimesScalar_2( Scalar, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), INTENT( IN ) :: Scalar
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_2
```
`2.0_DFP * obj` returns a (3,3) matrix.
@@ -818,10 +818,10 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-3
```fortran
- FUNCTION TensorTimesScalar_3( obj, Scalar )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: Scalar
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_3
+FUNCTION TensorTimesScalar_3( obj, Scalar )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ INTEGER( I4B ), INTENT( IN ) :: Scalar
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_3
```
`obj * 2` returns a (3,3) matrix.
@@ -829,10 +829,10 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-4
```fortran
- FUNCTION TensorTimesScalar_4( Scalar, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- INTEGER( I4B ), INTENT( IN ) :: Scalar
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_4
+FUNCTION TensorTimesScalar_4( Scalar, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ INTEGER( I4B ), INTENT( IN ) :: Scalar
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesScalar_4
```
`2 * obj` returns a (3,3) matrix.
@@ -840,9 +840,9 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-5
```fortran
- FUNCTION TensorTimesTensor( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesTensor
+FUNCTION TensorTimesTensor( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesTensor
```
`obj1 * obj2` perfoms element wise multiplication
@@ -850,10 +850,10 @@ If `obj%NSD` is 2 then `Vec` has length 4. Note that `Vec` is reallocated by the
Type-6
```fortran
- FUNCTION TensorTimesVector( obj, Vec )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( 3 ) :: TensorTimesVector
+FUNCTION TensorTimesVector( obj, Vec )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( 3 ) :: TensorTimesVector
```
`obj * Vec` returns array of length-3 after performing matrix vector multiplication. Symbolically, $w = T \cdot v$
@@ -888,10 +888,10 @@ Vec2 = T * [1.d0]
Type-7
```fortran
- FUNCTION VectorTimesTensor( Vec, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( 3 ) :: VectorTimesTensor
+FUNCTION VectorTimesTensor( Vec, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( 3 ) :: VectorTimesTensor
```
`Vec * obj` returns array of length-3 after performing matrix vector multiplication. Symbolically $w = v \cdot T$
@@ -926,19 +926,19 @@ Vec2 = [1.d0] * T
Type-8
```fortran
- FUNCTION TensorTimesMat( obj, Mat )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesMat
+FUNCTION TensorTimesMat( obj, Mat )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: TensorTimesMat
```
Type-9
```fortran
- FUNCTION MatTimesTensor( Mat, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: MatTimesTensor
+FUNCTION MatTimesTensor( Mat, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: MatTimesTensor
```
### MatMul
@@ -946,46 +946,45 @@ Vec2 = [1.d0] * T
Type-1
```fortran
- FUNCTION MatMul_1( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_1
+FUNCTION MatMul_1( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_1
```
Type-2
```fortran
- FUNCTION MatMul_2( obj, Mat2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat2
- REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_2
-
+FUNCTION MatMul_2( obj, Mat2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_2
```
Type-3
```fortran
- FUNCTION MatMul_3( Mat2, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat2
- REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_3
+FUNCTION MatMul_3( Mat2, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: MatMul_3
```
Type-4
```fortran
- FUNCTION VectorTimesTensor( Vec, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( 3 ) :: VectorTimesTensor
+FUNCTION VectorTimesTensor( Vec, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( 3 ) :: VectorTimesTensor
```
Type-5
```fortran
- FUNCTION TensorTimesVector( obj, Vec )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( 3 ) :: TensorTimesVector
+FUNCTION TensorTimesVector( obj, Vec )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( 3 ) :: TensorTimesVector
```
### Dyadic Product/Otimes
@@ -993,27 +992,27 @@ Vec2 = [1.d0] * T
Type-1
```fortran
- FUNCTION Tensor_Dyadic_Tensor( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- REAL( DFP ), DIMENSION( 6, 6 ) :: Tensor_Dyadic_Tensor
+FUNCTION Tensor_Dyadic_Tensor( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ REAL( DFP ), DIMENSION( 6, 6 ) :: Tensor_Dyadic_Tensor
```
Type-2
```fortran
- FUNCTION Tensor_Dyadic_Mat( obj, Mat )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 6, 6 ) :: Tensor_Dyadic_Mat
+FUNCTION Tensor_Dyadic_Mat( obj, Mat )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 6, 6 ) :: Tensor_Dyadic_Mat
```
Type-3
```fortran
- FUNCTION Mat_Dyadic_Tensor( Mat, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 6, 6 ) :: Mat_Dyadic_Tensor
+FUNCTION Mat_Dyadic_Tensor( Mat, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 6, 6 ) :: Mat_Dyadic_Tensor
```
> Note that .Otimes. always return a (6,6) matrix. If you want to use (4,4) or (3,3) matrix then use `Mat4_From_Mat6`, and `Mat3_From_Mat6` function.
@@ -1103,8 +1102,8 @@ DummyMat .Otimes. T=
Example of getting (4,4) array from (6,6) array
```fortran
- DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T )
- CALL Display_Array( DummyMat, "DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T ) ")
+DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T )
+CALL Display_Array( DummyMat, "DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T ) ")
```
Result
@@ -1121,9 +1120,9 @@ DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T )=
### Transpose
```fortran
- FUNCTION Transpose_1( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ) :: Transpose_1
+FUNCTION Transpose_1( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ) :: Transpose_1
```
> Returns a (3,3) matrix.
@@ -1133,11 +1132,11 @@ DummyMat = Mat4_From_Mat6( DummyMat .Otimes. T )=
Type-1
```fortran
- FUNCTION obj_Add_obj( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Add_obj
- obj_Add_obj = obj%T + obj2%T
- END FUNCTION obj_Add_obj
+FUNCTION obj_Add_obj( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Add_obj
+ obj_Add_obj = obj%T + obj2%T
+END FUNCTION obj_Add_obj
```
Example : `obj + obj2`
@@ -1145,12 +1144,12 @@ Example : `obj + obj2`
Type-2
```fortran
- FUNCTION obj_Add_Mat( obj, Mat )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Add_Mat
- obj_Add_Mat = obj%T + Mat
- END FUNCTION obj_Add_Mat
+FUNCTION obj_Add_Mat( obj, Mat )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Add_Mat
+ obj_Add_Mat = obj%T + Mat
+END FUNCTION obj_Add_Mat
```
Example: `obj + Mat`
@@ -1158,12 +1157,12 @@ Example: `obj + Mat`
Type-3
```fortran
- FUNCTION Mat_Add_obj( Mat, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: Mat_Add_obj
- Mat_Add_obj = obj%T + Mat
- END FUNCTION Mat_Add_obj
+FUNCTION Mat_Add_obj( Mat, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: Mat_Add_obj
+ Mat_Add_obj = obj%T + Mat
+END FUNCTION Mat_Add_obj
```
Example: `Mat + obj`
@@ -1173,11 +1172,11 @@ Example: `Mat + obj`
Type-1
```fortran
- FUNCTION obj_Minus_obj( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Minus_obj
- obj_Minus_obj = obj%T - obj2%T
- END FUNCTION obj_Minus_obj
+FUNCTION obj_Minus_obj( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Minus_obj
+ obj_Minus_obj = obj%T - obj2%T
+END FUNCTION obj_Minus_obj
```
Example : `obj - obj2`
@@ -1185,12 +1184,12 @@ Example : `obj - obj2`
Type-2
```fortran
- FUNCTION obj_Minus_Mat( obj, Mat )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Minus_Mat
- obj_Minus_Mat = obj%T - Mat
- END FUNCTION obj_Minus_Mat
+FUNCTION obj_Minus_Mat( obj, Mat )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: obj_Minus_Mat
+ obj_Minus_Mat = obj%T - Mat
+END FUNCTION obj_Minus_Mat
```
Example: `obj - Mat`
@@ -1198,12 +1197,12 @@ Example: `obj - Mat`
Type-3
```fortran
- FUNCTION Mat_Minus_obj( Mat, obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: Mat_Minus_obj
- Mat_Minus_obj = obj%T - Mat
- END FUNCTION Mat_Minus_obj
+FUNCTION Mat_Minus_obj( Mat, obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: Mat_Minus_obj
+ Mat_Minus_obj = obj%T - Mat
+END FUNCTION Mat_Minus_obj
```
Example: `Mat - obj`
@@ -1215,9 +1214,9 @@ Example: `Mat - obj`
Type-1
```fortran
- FUNCTION VectorProduct2( u, v )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
- REAL( DFP ), DIMENSION( 3 ) :: VectorProduct2
+FUNCTION VectorProduct2( u, v )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
+ REAL( DFP ), DIMENSION( 3 ) :: VectorProduct2
```
Description
@@ -1227,9 +1226,9 @@ Computes $u \times v$
Type-2
```fortran
- FUNCTION VectorProduct3( u, v, w )
- REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v, w
- REAL( DFP ), DIMENSION( 3 ) :: VectorProduct3
+FUNCTION VectorProduct3( u, v, w )
+ REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v, w
+ REAL( DFP ), DIMENSION( 3 ) :: VectorProduct3
```
Description
@@ -1239,9 +1238,9 @@ Computes $u \times ( v \times w )$
### BoxProduct
```fortran
- REAL( DFP ) FUNCTION BoxProduct( u, v, w )
- USE Utility, ONLY: Det
- REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v, w
+REAL( DFP ) FUNCTION BoxProduct( u, v, w )
+ USE Utility, ONLY: Det
+ REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v, w
```
Description
@@ -1270,8 +1269,8 @@ Example
### getAngle
```Fortran
- REAL( DFP ) FUNCTION getAngle( u, v )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
+REAL( DFP ) FUNCTION getAngle( u, v )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
```
Returns angle between two vectors
@@ -1288,9 +1287,9 @@ Example
### getProjection
```fortran
- FUNCTION getProjection( u, v )
- REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v
- REAL( DFP ), DIMENSION( 3 ) :: getProjection
+FUNCTION getProjection( u, v )
+ REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v
+ REAL( DFP ), DIMENSION( 3 ) :: getProjection
```
Project u on v. New Operator is defined `u .ProjectOn. v`.
@@ -1317,9 +1316,9 @@ Example
### UnitVector
```fortran
- FUNCTION UnitVector( u )
- REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u
- REAL( DFP ), DIMENSION( 3 ) :: UnitVector
+FUNCTION UnitVector( u )
+ REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u
+ REAL( DFP ), DIMENSION( 3 ) :: UnitVector
```
Returns the unit vector.
@@ -1327,11 +1326,11 @@ Returns the unit vector.
### DotProduct
```fortran
- FUNCTION DotProduct( u, v )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
- REAL( DFP ) :: DotProduct
- DotProduct = DOT_PRODUCT( u, v )
- END FUNCTION DotProduct
+FUNCTION DotProduct( u, v )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u, v
+ REAL( DFP ) :: DotProduct
+ DotProduct = DOT_PRODUCT( u, v )
+END FUNCTION DotProduct
```
Returns the dot product, used for defining the operator `u .dot. v`
@@ -1339,19 +1338,19 @@ Returns the dot product, used for defining the operator `u .dot. v`
Example
```fortran
- Vec1 = [1.d0, -1.d0, 0.d0]
- Vec2 = [-1.d0, 1.d0, 0.d0]
- dp = Vec1 .dot. Vec2
+Vec1 = [1.d0, -1.d0, 0.d0]
+Vec2 = [-1.d0, 1.d0, 0.d0]
+dp = Vec1 .dot. Vec2
```
### getNormalComponent
```fortran
- FUNCTION getNormalComponent( u, v )
- REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v
- REAL( DFP ), DIMENSION( 3 ) :: getNormalComponent
- getNormalComponent = u - ( u .ProjectOn. v )
- END FUNCTION getNormalComponent
+FUNCTION getNormalComponent( u, v )
+ REAL( DFP ), DIMENSION( 3 ), INTENT( IN ) :: u, v
+ REAL( DFP ), DIMENSION( 3 ) :: getNormalComponent
+ getNormalComponent = u - ( u .ProjectOn. v )
+END FUNCTION getNormalComponent
```
Returns component of `u` that is normal to `v`. New operator is defined `u .ComponentNormalTo. v`
@@ -1402,27 +1401,27 @@ Example
### Vector2D
```fortran
- FUNCTION Vector2D( u )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u
- REAL( DFP ), DIMENSION( 2 ) :: Vector2D
- Vector2D = 0.0_DFP
- SELECT CASE( SIZE( U ) )
- CASE( 1 )
- Vector2D( 1 ) = U( 1 )
- CASE DEFAULT
- Vector2D( 1: 2 ) = U( 1: 2 )
- END SELECT
- END FUNCTION Vector2D
+FUNCTION Vector2D( u )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u
+ REAL( DFP ), DIMENSION( 2 ) :: Vector2D
+ Vector2D = 0.0_DFP
+ SELECT CASE( SIZE( U ) )
+ CASE( 1 )
+ Vector2D( 1 ) = U( 1 )
+ CASE DEFAULT
+ Vector2D( 1: 2 ) = U( 1: 2 )
+ END SELECT
+END FUNCTION Vector2D
```
### Vector1D
```fortran
- FUNCTION Vector1D( u )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u
- REAL( DFP ), DIMENSION( 1 ) :: Vector1D
- Vector1D( 1 ) = u( 1 )
- END FUNCTION Vector1D
+FUNCTION Vector1D( u )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: u
+ REAL( DFP ), DIMENSION( 1 ) :: Vector1D
+ Vector1D( 1 ) = u( 1 )
+END FUNCTION Vector1D
```
> We have made BoxProduct, VectorProduct, Box, getAngle, getProjection, UnitVector, getParallelComponent, getNormalComponent, Vector2D, Vector3D, Vector1D public. These functions can be used as vector functions.
@@ -1435,13 +1434,11 @@ Example
Method
```fortran
-
```
Function
```fortran
-
```
### Symmetric Part
@@ -1449,21 +1446,21 @@ Function
Method
```fortran
- FUNCTION m_SymmetricPart( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ) :: m_SymmetricPart
- m_SymmetricPart = 0.5_DFP * ( obj%T + TRANSPOSE( obj%T ) )
- END FUNCTION m_SymmetricPart
+FUNCTION m_SymmetricPart( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ) :: m_SymmetricPart
+ m_SymmetricPart = 0.5_DFP * ( obj%T + TRANSPOSE( obj%T ) )
+END FUNCTION m_SymmetricPart
```
Function
```fortran
- FUNCTION f_SymmetricPart( Mat )
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: f_SymmetricPart
- f_SymmetricPart = 0.5_DFP * ( Mat + TRANSPOSE( Mat ) )
- END FUNCTION f_SymmetricPart
+FUNCTION f_SymmetricPart( Mat )
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: f_SymmetricPart
+ f_SymmetricPart = 0.5_DFP * ( Mat + TRANSPOSE( Mat ) )
+END FUNCTION f_SymmetricPart
```
### AntiSymmetric Part
@@ -1471,22 +1468,22 @@ Function
Method
```fortran
- FUNCTION m_AntiSymmetricPart( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ) :: m_AntiSymmetricPart
- m_AntiSymmetricPart = 0.5_DFP * ( obj%T - TRANSPOSE( obj%T ) )
- END FUNCTION m_AntiSymmetricPart
+FUNCTION m_AntiSymmetricPart( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ) :: m_AntiSymmetricPart
+ m_AntiSymmetricPart = 0.5_DFP * ( obj%T - TRANSPOSE( obj%T ) )
+END FUNCTION m_AntiSymmetricPart
```
Function
```fortran
- FUNCTION f_AntiSymmetricPart( Mat )
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: &
- f_AntiSymmetricPart
- f_AntiSymmetricPart = 0.5_DFP * ( Mat - TRANSPOSE( Mat ) )
- END FUNCTION f_AntiSymmetricPart
+FUNCTION f_AntiSymmetricPart( Mat )
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: &
+ f_AntiSymmetricPart
+ f_AntiSymmetricPart = 0.5_DFP * ( Mat - TRANSPOSE( Mat ) )
+END FUNCTION f_AntiSymmetricPart
```
### Hydrostatic Part
@@ -1494,23 +1491,23 @@ Function
Method
```fortran
- FUNCTION m_HydrostaticPart( obj )
- USE Utility, ONLY : Eye
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ) :: m_HydrostaticPart
- m_HydrostaticPart = Trace( obj ) * Eye( 3 ) / 3
- END FUNCTION m_HydrostaticPart
+FUNCTION m_HydrostaticPart( obj )
+ USE Utility, ONLY : Eye
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ) :: m_HydrostaticPart
+ m_HydrostaticPart = Trace( obj ) * Eye( 3 ) / 3
+END FUNCTION m_HydrostaticPart
```
Function
```fortran
- FUNCTION f_HydrostaticPart( Mat )
- USE Utility, ONLY : Eye
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: f_HydrostaticPart
- f_HydrostaticPart = Trace( Mat ) * Eye( 3 ) / 3
- END FUNCTION f_HydrostaticPart
+FUNCTION f_HydrostaticPart( Mat )
+ USE Utility, ONLY : Eye
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: f_HydrostaticPart
+ f_HydrostaticPart = Trace( Mat ) * Eye( 3 ) / 3
+END FUNCTION f_HydrostaticPart
```
### Deviatoric Part
@@ -1528,11 +1525,11 @@ Method
Function
```fortran
- FUNCTION f_DeviatoricPart( Mat )
- REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( 3, 3 ) :: f_DeviatoricPart
- f_DeviatoricPart = Mat - HydrostaticPart( Mat )
- END FUNCTION f_DeviatoricPart
+FUNCTION f_DeviatoricPart( Mat )
+ REAL( DFP ), DIMENSION( 3, 3 ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( 3, 3 ) :: f_DeviatoricPart
+ f_DeviatoricPart = Mat - HydrostaticPart( Mat )
+END FUNCTION f_DeviatoricPart
```
## Invariants
@@ -1562,29 +1559,29 @@ There is a generic method _Double\_DotProduct_ and module-function called _Doubl
Type-1
```fortran
- REAL( DFP ) FUNCTION DoubleDot_Product1( obj, obj2 )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
- DoubleDot_Product1 = SUM( obj * obj2 )
- END FUNCTION DoubleDot_Product1
+REAL( DFP ) FUNCTION DoubleDot_Product1( obj, obj2 )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj, obj2
+ DoubleDot_Product1 = SUM( obj * obj2 )
+END FUNCTION DoubleDot_Product1
```
Type-2
```fortran
- REAL( DFP ) FUNCTION DoubleDot_Product2( obj, A )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
- DoubleDot_Product2 = SUM( obj * A )
- END FUNCTION DoubleDot_Product2
+REAL( DFP ) FUNCTION DoubleDot_Product2( obj, A )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A
+ DoubleDot_Product2 = SUM( obj * A )
+END FUNCTION DoubleDot_Product2
```
Type-3
```fortran
- REAL( DFP ) FUNCTION DoubleDot_Product3( A, B )
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A, B
- DoubleDot_Product3 = SUM( A * B )
- END FUNCTION DoubleDot_Product3
+REAL( DFP ) FUNCTION DoubleDot_Product3( A, B )
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: A, B
+ DoubleDot_Product3 = SUM( A * B )
+END FUNCTION DoubleDot_Product3
```
Type-4
@@ -1622,16 +1619,16 @@ Type-5
Type-6
```fortran
- REAL( DFP ) FUNCTION DoubleDot_Product6( A, VoigtType_A, B, VoigtType_B )
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: A, B
- CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType_A, VoigtType_B
- TYPE( Rank2Tensor_ ) :: T1, T2
- T1 = Rank2Tensor( A, VoigtType_A )
- T2 = Rank2Tensor( B, VoigtType_B )
- DoubleDot_Product6 = SUM( T1 * T2 )
- CALL T1%Deallocate( )
- CALL T2%Deallocate( )
- END FUNCTION DoubleDot_Product6
+REAL( DFP ) FUNCTION DoubleDot_Product6( A, VoigtType_A, B, VoigtType_B )
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: A, B
+ CHARACTER( LEN = * ), INTENT( IN ) :: VoigtType_A, VoigtType_B
+ TYPE( Rank2Tensor_ ) :: T1, T2
+ T1 = Rank2Tensor( A, VoigtType_A )
+ T2 = Rank2Tensor( B, VoigtType_B )
+ DoubleDot_Product6 = SUM( T1 * T2 )
+ CALL T1%Deallocate( )
+ CALL T2%Deallocate( )
+END FUNCTION DoubleDot_Product6
```
We have also defined two operators called `.DoubleDot.` and `.Contraction.`
@@ -1726,33 +1723,33 @@ $$
Method
```fortran
- REAL( DFP ) FUNCTION m_Invariant_J2( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), ALLOCATABLE :: S( :, : )
- IF( isDeviatoric( obj ) ) THEN
- m_Invariant_J2 = 0.5_DFP * ( obj .Contraction. obj )
- ELSE
- S = DeviatoricPart( obj )
- m_Invariant_J2 = 0.5_DFP * ( S .Contraction. S )
- END IF
- IF( ALLOCATED( S ) ) DEALLOCATE( S )
- END FUNCTION m_Invariant_J2
+REAL( DFP ) FUNCTION m_Invariant_J2( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), ALLOCATABLE :: S( :, : )
+ IF( isDeviatoric( obj ) ) THEN
+ m_Invariant_J2 = 0.5_DFP * ( obj .Contraction. obj )
+ ELSE
+ S = DeviatoricPart( obj )
+ m_Invariant_J2 = 0.5_DFP * ( S .Contraction. S )
+ END IF
+ IF( ALLOCATED( S ) ) DEALLOCATE( S )
+END FUNCTION m_Invariant_J2
```
Module Function
```fortran
- REAL( DFP ) FUNCTION f_Invariant_J2( Mat )
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
- REAL( DFP ), ALLOCATABLE :: S( :, : )
- IF( isDeviatoric( Mat ) ) THEN
- f_Invariant_J2 = 0.5_DFP * ( Mat .Contraction. Mat )
- ELSE
- S = DeviatoricPart( Mat )
- f_Invariant_J2 = 0.5_DFP * ( S .Contraction. S )
- END IF
- IF( ALLOCATED( S ) ) DEALLOCATE( S )
- END FUNCTION f_Invariant_J2
+REAL( DFP ) FUNCTION f_Invariant_J2( Mat )
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
+ REAL( DFP ), ALLOCATABLE :: S( :, : )
+ IF( isDeviatoric( Mat ) ) THEN
+ f_Invariant_J2 = 0.5_DFP * ( Mat .Contraction. Mat )
+ ELSE
+ S = DeviatoricPart( Mat )
+ f_Invariant_J2 = 0.5_DFP * ( S .Contraction. S )
+ END IF
+ IF( ALLOCATED( S ) ) DEALLOCATE( S )
+END FUNCTION f_Invariant_J2
```
### Invariant J3
@@ -1764,33 +1761,33 @@ $$
Method
```fortran
- REAL( DFP ) FUNCTION m_Invariant_J3( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), ALLOCATABLE :: S( :, : )
- IF( isDeviatoric( obj ) ) THEN
- m_Invariant_J3 = Invariant_I3( obj )
- ELSE
- S = DeviatoricPart( obj )
- m_Invariant_J3 = Invariant_I3( S )
- END IF
- IF( ALLOCATED( S ) ) DEALLOCATE( S )
- END FUNCTION m_Invariant_J3
+REAL( DFP ) FUNCTION m_Invariant_J3( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), ALLOCATABLE :: S( :, : )
+ IF( isDeviatoric( obj ) ) THEN
+ m_Invariant_J3 = Invariant_I3( obj )
+ ELSE
+ S = DeviatoricPart( obj )
+ m_Invariant_J3 = Invariant_I3( S )
+ END IF
+ IF( ALLOCATED( S ) ) DEALLOCATE( S )
+END FUNCTION m_Invariant_J3
```
Module Function
```fortran
- REAL( DFP ) FUNCTION f_Invariant_J3( Mat )
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
- REAL( DFP ), ALLOCATABLE :: S( :, : )
- IF( isDeviatoric( Mat ) ) THEN
- f_Invariant_J3 = Invariant_I3( Mat )
- ELSE
- S = DeviatoricPart( Mat )
- f_Invariant_J3 = Invariant_I3( S )
- END IF
- IF( ALLOCATED( S ) ) DEALLOCATE( S )
- END FUNCTION f_Invariant_J3
+REAL( DFP ) FUNCTION f_Invariant_J3( Mat )
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
+ REAL( DFP ), ALLOCATABLE :: S( :, : )
+ IF( isDeviatoric( Mat ) ) THEN
+ f_Invariant_J3 = Invariant_I3( Mat )
+ ELSE
+ S = DeviatoricPart( Mat )
+ f_Invariant_J3 = Invariant_I3( S )
+ END IF
+ IF( ALLOCATED( S ) ) DEALLOCATE( S )
+END FUNCTION f_Invariant_J3
```
### LodeAngle
@@ -1820,7 +1817,6 @@ Type-1
f_LodeAngle_1 = ACOS( Dummy ) / 3.0_DFP
END SELECT
END FUNCTION f_LodeAngle_1
-
```
Type-2
@@ -1856,11 +1852,11 @@ Type-3
Type-1
```fortran
- FUNCTION f_Rank2PullBack_1( T, F, indx1, indx2 )
- USE Utility, ONLY: det, INV
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: T, F
- REAL( DFP ), DIMENSION( SIZE( T, 1 ), SIZE( T, 2 ) ) :: f_Rank2PullBack_1
- CHARACTER( LEN = * ), INTENT( IN ) :: indx1, indx2
+FUNCTION f_Rank2PullBack_1( T, F, indx1, indx2 )
+ USE Utility, ONLY: det, INV
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: T, F
+ REAL( DFP ), DIMENSION( SIZE( T, 1 ), SIZE( T, 2 ) ) :: f_Rank2PullBack_1
+ CHARACTER( LEN = * ), INTENT( IN ) :: indx1, indx2
```
Description
@@ -1928,12 +1924,12 @@ To be added later. See page-123 of Hashiguchi and Yamakawa, 2014.
Type-5
```fortran
- FUNCTION f_VecPullBack_1( Vec, F, indx1 )
- USE Utility, ONLY: det, INV
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: F
- REAL( DFP ), DIMENSION( SIZE( Vec ) ) :: f_VecPullBack_1
- CHARACTER( LEN = * ), INTENT( IN ) :: indx1
+FUNCTION f_VecPullBack_1( Vec, F, indx1 )
+ USE Utility, ONLY: det, INV
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: F
+ REAL( DFP ), DIMENSION( SIZE( Vec ) ) :: f_VecPullBack_1
+ CHARACTER( LEN = * ), INTENT( IN ) :: indx1
```
Type-6
@@ -1959,11 +1955,11 @@ Type-6
Type-1
```fortran
- FUNCTION f_Rank2PushForward_1( T, F, indx1, indx2 )
- USE Utility, ONLY: det, INV
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: T, F
- REAL( DFP ), DIMENSION( SIZE( T, 1 ), SIZE( T, 2 ) ) :: f_Rank2PushForward_1
- CHARACTER( LEN = * ), INTENT( IN ) :: indx1, indx2
+FUNCTION f_Rank2PushForward_1( T, F, indx1, indx2 )
+ USE Utility, ONLY: det, INV
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: T, F
+ REAL( DFP ), DIMENSION( SIZE( T, 1 ), SIZE( T, 2 ) ) :: f_Rank2PushForward_1
+ CHARACTER( LEN = * ), INTENT( IN ) :: indx1, indx2
```
Description
@@ -2031,12 +2027,12 @@ To be added later. See page-123 of Hashiguchi and Yamakawa, 2014.
Type-5
```fortran
- FUNCTION f_VecPushForward_1( Vec, F, indx1 )
- USE Utility, ONLY: det, INV
- REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: F
- REAL( DFP ), DIMENSION( SIZE( Vec ) ) :: f_VecPushForward_1
- CHARACTER( LEN = * ), INTENT( IN ) :: indx1
+FUNCTION f_VecPushForward_1( Vec, F, indx1 )
+ USE Utility, ONLY: det, INV
+ REAL( DFP ), DIMENSION( : ), INTENT( IN ) :: Vec
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: F
+ REAL( DFP ), DIMENSION( SIZE( Vec ) ) :: f_VecPushForward_1
+ CHARACTER( LEN = * ), INTENT( IN ) :: indx1
```
Type-6
@@ -2241,22 +2237,22 @@ Type-2
Type-1
```fortran
- FUNCTION f_getRotationPart( Mat )
- USE LinearAlgebra, ONLY: JacobiMethod
- USE Utility, ONLY: IMAXLOC, INV
- REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
- REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: f_getRotationPart
+FUNCTION f_getRotationPart( Mat )
+ USE LinearAlgebra, ONLY: JacobiMethod
+ USE Utility, ONLY: IMAXLOC, INV
+ REAL( DFP ), DIMENSION( :, : ), INTENT( IN ) :: Mat
+ REAL( DFP ), DIMENSION( SIZE( Mat, 1 ), SIZE( Mat, 2 ) ) :: f_getRotationPart
```
Type-2
```fortran
- FUNCTION m_getRotationPart( obj )
- CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
- REAL( DFP ), DIMENSION( 3, 3 ) :: m_getRotationPart
- REAL( DFP ), ALLOCATABLE :: Mat( :, : )
- Mat = obj
- m_getRotationPart = f_getRotationPart( Mat )
- DEALLOCATE( Mat )
- END FUNCTION m_getRotationPart
+FUNCTION m_getRotationPart( obj )
+ CLASS( Rank2Tensor_ ), INTENT( IN ) :: obj
+ REAL( DFP ), DIMENSION( 3, 3 ) :: m_getRotationPart
+REAL( DFP ), ALLOCATABLE :: Mat( :, : )
+Mat = obj
+m_getRotationPart = f_getRotationPart( Mat )
+DEALLOCATE( Mat )
+END FUNCTION m_getRotationPart
```
diff --git a/docs/docs-api/RealMatrix/RealMatrix_test_71.md b/docs/docs-api/RealMatrix/RealMatrix_test_71.md
index a2ad3503..8fb490f9 100644
--- a/docs/docs-api/RealMatrix/RealMatrix_test_71.md
+++ b/docs/docs-api/RealMatrix/RealMatrix_test_71.md
@@ -10,7 +10,7 @@ tags:
# RealVector example 71
!!! note ""
- This example show how to USE `CG` method to solve `Ax=b`
+This example show how to USE `CG` method to solve `Ax=b`
## Use association
@@ -29,37 +29,36 @@ PROGRAM main
!!! note "Declare variables"
```fortran
- REAL(DFP), ALLOCATABLE :: mat(:,:)
- REAL(DFP), ALLOCATABLE :: rhs(:), sol(:), ans(:)
- INTEGER(I4B) :: ii, n
- REAL(DFP), PARAMETER :: tol=1.0E-6
+REAL(DFP), ALLOCATABLE :: mat(:,:)
+REAL(DFP), ALLOCATABLE :: rhs(:), sol(:), ans(:)
+INTEGER(I4B) :: ii, n
+REAL(DFP), PARAMETER :: tol=1.0E-6
```
!!! note "Make mat, and rhs"
```fortran
- n = 4
- CALL Reallocate( mat, n, n )
- DO ii = 1, n
- mat(ii,ii)=1.0_DFP+sqrt(REAL(ii))
- END DO
- CALL display( mat, 'mat: ', advance='NO' )
- CALL Reallocate( sol, n, rhs, n, ans, n )
- CALL random_NUMBER( ans )
- ans = ans*10.0_DFP
- rhs = MATMUL(mat, ans)
- CALL display( rhs, 'rhs: ', advance='NO' )
- CALL display( ans, 'ans: ', advance='YES' )
+n = 4
+CALL Reallocate( mat, n, n )
+DO ii = 1, n
+ mat(ii,ii)=1.0_DFP+sqrt(REAL(ii))
+END DO
+CALL display( mat, 'mat: ', advance='NO' )
+CALL Reallocate( sol, n, rhs, n, ans, n )
+CALL random_NUMBER( ans )
+ans = ans*10.0_DFP
+rhs = MATMUL(mat, ans)
+CALL display( rhs, 'rhs: ', advance='NO' )
+CALL display( ans, 'ans: ', advance='YES' )
```
!!! note "LinearSolver_CG"
```fortran
- CALL LinearSolver_CG( mat=mat, sol=sol, rhs=rhs )
- CALL OK( ALL( ABS(sol-ans) .LE. tol ) , 'CG: ' )
+CALL LinearSolver_CG( mat=mat, sol=sol, rhs=rhs )
+CALL OK( ALL( ABS(sol-ans) .LE. tol ) , 'CG: ' )
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/RealMatrix/ex-1.md b/docs/docs-api/RealMatrix/ex-1.md
index 004f3c70..83b213c9 100644
--- a/docs/docs-api/RealMatrix/ex-1.md
+++ b/docs/docs-api/RealMatrix/ex-1.md
@@ -3,16 +3,14 @@
! This program shows how to construct `realmatrix_`
program main
- use easifem
- implicit none
+use easifem
+implicit none
- type( realmatrix_ ) :: obj1, obj2
+type( realmatrix_ ) :: obj1, obj2
- call RANDOM_NUMBER( obj1, 12, 12)
- call display( obj1, "obj1= ")
- call convert( from=obj1, to=obj2, conversion=nodesToDOF, nns=3, tdof=4)
- call display( obj2, "obj2")
+call RANDOM_NUMBER( obj1, 12, 12)
+call display( obj1, "obj1= ")
+call convert( from=obj1, to=obj2, conversion=nodesToDOF, nns=3, tdof=4)
+call display( obj2, "obj2")
-
-
-end program main
\ No newline at end of file
+end program main
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_1.md b/docs/docs-api/RealVector/examples/_Set_Get_test_1.md
index 5dace216..c9c60a84 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_1.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md) and [Set](Set.md) Method.
+This example shows the usage of [Get](Get.md) and [Set](Set.md) Method.
```fortran
!! Get(obj, dofobj, nodenum, ivar, idof)
@@ -16,73 +16,73 @@ PROGRAM main
Initiate an instance of [DOF_](../DOF/DOF_.md)
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4, 2], &
- & names=["V", "P"], &
- & spaceCompo=[2,1], &
- & timeCompo=[2,2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4, 2], &
+ & names=["V", "P"], &
+ & spaceCompo=[2,1], &
+ & timeCompo=[2,2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [[RealVector_]]
```fortran
- CALL Initiate(obj, dofobj)
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
- !!
- !! CALL Display( obj, dofobj, 'obj:' )
+CALL Initiate(obj, dofobj)
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
+!!
+!! CALL Display( obj, dofobj, 'obj:' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=1)
- ans = 2
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=1)
+ans = 2
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=2)
- ans = 12
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=2)
+ans = 12
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=3)
- ans = 22
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=3)
+ans = 22
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=4)
- ans = 32
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=4)
+ans = 32
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=2, idof=1)
- ans = 42
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=2, idof=1)
+ans = 42
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=2, idof=2)
- ans = 52
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=2, idof=2)
+ans = 52
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_10.md b/docs/docs-api/RealVector/examples/_Set_Get_test_10.md
index 7e3e0846..d96e54da 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_10.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_10.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
```fortran
!!
@@ -18,83 +18,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=NODES_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=3)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=3)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=4)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=4)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_11.md b/docs/docs-api/RealVector/examples/_Set_Get_test_11.md
index 78bd0a6e..54c5c602 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_11.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_11.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_12.md b/docs/docs-api/RealVector/examples/_Set_Get_test_12.md
index 302271ea..00bf1bfa 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_12.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_12.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=1, timecompo=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, spacecompo=2, timecompo=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_13.md b/docs/docs-api/RealVector/examples/_Set_Get_test_13.md
index 4a998ec1..33356c82 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_13.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_13.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
```fortran
!!
@@ -18,83 +18,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector](RealVector.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_14.md b/docs/docs-api/RealVector/examples/_Set_Get_test_14.md
index 940ce600..110973c0 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_14.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_14.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_15.md b/docs/docs-api/RealVector/examples/_Set_Get_test_15.md
index 767f725d..9e9cb3c2 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_15.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_15.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_16.md b/docs/docs-api/RealVector/examples/_Set_Get_test_16.md
index 5596317d..0e8fc8ce 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_16.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_16.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=1, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=2, value=value, dofvalue=dofvalue, idofvalue=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=3, value=value, dofvalue=dofvalue, idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=4, value=value, dofvalue=dofvalue, idofvalue=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_17.md b/docs/docs-api/RealVector/examples/_Set_Get_test_17.md
index 8853bf5f..2677182d 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_17.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_17.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,73 +20,72 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[1,2], value=value, dofvalue=dofvalue, idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[1,2], value=value, dofvalue=dofvalue, idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[3,4], value=value, dofvalue=dofvalue, idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[3,4], value=value, dofvalue=dofvalue, idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_18.md b/docs/docs-api/RealVector/examples/_Set_Get_test_18.md
index c9d1e6ad..e574ce7b 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_18.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_18.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,73 +20,72 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[1,2], value=value, dofvalue=dofvalue, idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[1,2], value=value, dofvalue=dofvalue, idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[3,4], value=value, dofvalue=dofvalue, idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, idofobj=[3,4], value=value, dofvalue=dofvalue, idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_19.md b/docs/docs-api/RealVector/examples/_Set_Get_test_19.md
index 3ae60159..2234b113 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_19.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_19.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,115 +20,114 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=2, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=2 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=2, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=2 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=3, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=3, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=4, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=2 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=4, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=2 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_2.md b/docs/docs-api/RealVector/examples/_Set_Get_test_2.md
index 29ebab71..bb9892ad 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_2.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_2.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
+This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
```fortran
!!
@@ -15,76 +15,76 @@ PROGRAM main
REAL( DFP ), ALLOCATABLE :: ans( : ), value(:)
```
-Initiate an instance of [DOF_](../DOF/DOF_.md)
+Initiate an instance of [DOF_](../DOF/DOF_.md)
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4, 2], &
- & names=["V", "P"], &
- & spaceCompo=[2,1], &
- & timeCompo=[2,2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4, 2], &
+ & names=["V", "P"], &
+ & spaceCompo=[2,1], &
+ & timeCompo=[2,2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [[RealVector_]]
```fortran
- CALL Initiate(obj, dofobj)
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
- !!
- !! CALL Display( obj, dofobj, 'obj:' )
+CALL Initiate(obj, dofobj)
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
+!!
+!! CALL Display( obj, dofobj, 'obj:' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=1)
- ans = [1.0,2.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=1)
+ans = [1.0,2.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=2)
- ans = [11.0,12.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=2)
+ans = [11.0,12.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=3)
- ans = [21.0,22.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=3)
+ans = [21.0,22.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=4)
- ans = [31.0,32.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=4)
+ans = [31.0,32.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=2, idof=1)
- ans = [41.0,42.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=2, idof=1)
+ans = [41.0,42.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=2, idof=2)
- ans = [51.0,52.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=2, idof=2)
+ans = [51.0,52.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_20.md b/docs/docs-api/RealVector/examples/_Set_Get_test_20.md
index be2c3166..694c68f0 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_20.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_20.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,115 +20,114 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & idofvalue=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & idofvalue=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=2, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=2 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=2, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=2 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=3, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=3, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=4, &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=2 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=4, &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=2 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_21.md b/docs/docs-api/RealVector/examples/_Set_Get_test_21.md
index 883b899b..d287a5d1 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_21.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_21.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -8,7 +8,6 @@ Storage FMT is `DOF_FMT`
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -21,89 +20,88 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=[3,4], &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=[3,4], &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_22.md b/docs/docs-api/RealVector/examples/_Set_Get_test_22.md
index 606657ff..44bbc5a3 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_22.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_22.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -8,7 +8,6 @@ Storage FMT is `Nodes_FMT`
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -21,89 +20,88 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector](RealVector.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & idofvalue=[1,2])
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & idofvalue=[1,2])
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & idofobj=[3,4], &
- & value=value, &
- & dofvalue=dofvalue, &
- & ivarvalue=1, &
- & idofvalue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & idofobj=[3,4], &
+ & value=value, &
+ & dofvalue=dofvalue, &
+ & ivarvalue=1, &
+ & idofvalue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_23.md b/docs/docs-api/RealVector/examples/_Set_Get_test_23.md
index cfeab569..add55f44 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_23.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_23.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,123 +20,122 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector](RealVector.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=2, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=2, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=2, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=2, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_24.md b/docs/docs-api/RealVector/examples/_Set_Get_test_24.md
index 6abbb7ab..e9f280a6 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_24.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_24.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -8,7 +8,6 @@ Storage FMT is `Nodes_FMT`
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -21,126 +20,122 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
-
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
-
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
-
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=2, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=2, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=2, &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=2, &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_25.md b/docs/docs-api/RealVector/examples/_Set_Get_test_25.md
index f6f049a9..630a9999 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_25.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_25.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -8,7 +8,6 @@ Storage FMT is `DOF_FMT`
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -21,96 +20,94 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[2], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[2], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_26.md b/docs/docs-api/RealVector/examples/_Set_Get_test_26.md
index 9e7cd4de..a6e2fb46 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_26.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_26.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `Nodes_FMT`
@@ -20,96 +20,94 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=1, &
- & timeCompoObj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=1, &
+ & timeCompoObj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=2, &
- & timeCompoObj=[1,2], &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=1, &
- & timeCompoValue=[1,2] )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=2, &
+ & timeCompoObj=[1,2], &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=1, &
+ & timeCompoValue=[1,2] )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
-
```fortran
END PROGRAM main
```
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_27.md b/docs/docs-api/RealVector/examples/_Set_Get_test_27.md
index ca058955..9403f419 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_27.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_27.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,93 +20,92 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=[1,2], &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=[1,2], &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=[1,2], &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=[1,2], &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=[1,2], &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=[1,2], &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=[1,2], &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=[1,2], &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_28.md b/docs/docs-api/RealVector/examples/_Set_Get_test_28.md
index 43505421..ea226327 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_28.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_28.md
@@ -1,5 +1,5 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
-
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+
Storage FMT is `Nodes_FMT`
```fortran
@@ -8,7 +8,6 @@ Storage FMT is `Nodes_FMT`
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -21,93 +20,92 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=Nodes_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=[1,2], &
- & timeCompoObj=1, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=[1,2], &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=[1,2], &
+ & timeCompoObj=1, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=[1,2], &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue( &
- & obj=obj, &
- & dofobj=dofobj, &
- & ivarobj=1, &
- & spaceCompoObj=[1,2], &
- & timeCompoObj=2, &
- & value=value, &
- & ivarvalue=1, &
- & dofvalue=dofvalue, &
- & spaceCompoValue=[1,2], &
- & timeCompoValue=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue( &
+ & obj=obj, &
+ & dofobj=dofobj, &
+ & ivarobj=1, &
+ & spaceCompoObj=[1,2], &
+ & timeCompoObj=2, &
+ & value=value, &
+ & ivarvalue=1, &
+ & dofvalue=dofvalue, &
+ & spaceCompoValue=[1,2], &
+ & timeCompoValue=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=2 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_3.md b/docs/docs-api/RealVector/examples/_Set_Get_test_3.md
index e5d8bfbb..45beab34 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_3.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_3.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
+This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
```fortran
!!
@@ -18,49 +18,49 @@ PROGRAM main
Initiate an instance [DOF_](../DOF/DOF_.md).
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4, 2], &
- & names=["V", "P"], &
- & spaceCompo=[2,1], &
- & timeCompo=[2,2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4, 2], &
+ & names=["V", "P"], &
+ & spaceCompo=[2,1], &
+ & timeCompo=[2,2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
- & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
- !!
- !! CALL Display( obj, dofobj, 'obj:' )
+CALL Initiate(obj, dofobj)
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=4 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(41.0_DFP, 42.0_DFP), ivar=2, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2], &
+ & value=arange(51.0_DFP, 52.0_DFP), ivar=2, idof=2 )
+!!
+!! CALL Display( obj, dofobj, 'obj:' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1)
- ans = [1,2,11,12,21,22,31,32]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1)
+ans = [1,2,11,12,21,22,31,32]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=2)
- ans = [41,42,51,52]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=2)
+ans = [41,42,51,52]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_4.md b/docs/docs-api/RealVector/examples/_Set_Get_test_4.md
index e9ea9cdd..a0f67f5e 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_4.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_4.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
+This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
```fortran
!!
@@ -18,36 +18,36 @@ PROGRAM main
Initiate an instance of [DOF_](../DOF/DOF_.md).
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
-Initiate an instance of [RealVector_](RealVector_.md)
+Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- CALL Display( obj, dofobj, 'obj:' )
+CALL Initiate(obj, dofobj)
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+CALL Display( obj, dofobj, 'obj:' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=1)
- ans = 2
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=1)
+ans = 2
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
- value = Get(obj, dofobj, 2, ivar=1, idof=2)
- ans = 12
- CALL OK( value .APPROXEQ. ans , 'Get' )
+value = Get(obj, dofobj, 2, ivar=1, idof=2)
+ans = 12
+CALL OK( value .APPROXEQ. ans , 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_5.md b/docs/docs-api/RealVector/examples/_Set_Get_test_5.md
index f5c5148f..9ece3b50 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_5.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_5.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
+This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
```fortran
!!
@@ -6,7 +6,6 @@ This example shows the usage of [Set](Set.md) and [Get](Get.md) Method.
!!
```
-
```fortran
PROGRAM main
USE easifemBase
@@ -16,38 +15,37 @@ PROGRAM main
REAL( DFP ), ALLOCATABLE :: ans( : ), value(:)
```
-
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=Nodes_FMT)
```
```fortran
- CALL Initiate(obj, dofobj)
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Initiate(obj, dofobj)
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=1)
- ans = [1.0,2.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=1)
+ans = [1.0,2.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1, idof=2)
- ans = [11.0,12.0]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1, idof=2)
+ans = [11.0,12.0]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_6.md b/docs/docs-api/RealVector/examples/_Set_Get_test_6.md
index e75ca0dc..d0758223 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_6.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_6.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md) and [Set](Set.md) Method.
+This example shows the usage of [Get](Get.md) and [Set](Set.md) Method.
```fortran
!!
@@ -16,30 +16,30 @@ PROGRAM main
```
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[1], &
- & StorageFMT=Nodes_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[1], &
+ & StorageFMT=Nodes_FMT)
```
```fortran
- CALL Initiate(obj, dofobj)
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
- CALL Display( obj, dofobj, 'obj:' )
- !!
+CALL Initiate(obj, dofobj)
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(1.0_DFP, 4.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=2 )
+CALL Display( obj, dofobj, 'obj:' )
+!!
```
```fortran
- value = Get(obj, dofobj, [1,2], ivar=1)
- ans = [1,11,2,12]
- CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
+value = Get(obj, dofobj, [1,2], ivar=1)
+ans = [1,11,2,12]
+CALL OK( ALL( value .APPROXEQ. ans ), 'Get' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_7.md b/docs/docs-api/RealVector/examples/_Set_Get_test_7.md
index a9053b5c..33747f19 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_7.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_7.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
Storage FMT is `DOF_FMT`
@@ -20,83 +20,82 @@ PROGRAM main
Make an instance of [[DOF_]] object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [[RealVector_]]
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [[DOF_]] object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=3)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=3)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=4)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=4)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_8.md b/docs/docs-api/RealVector/examples/_Set_Get_test_8.md
index cfcf5bf3..fae793ab 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_8.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_8.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
```fortran
!!
@@ -18,83 +18,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=NODES_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=3)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=3)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=4)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, idof=4)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RealVector/examples/_Set_Get_test_9.md b/docs/docs-api/RealVector/examples/_Set_Get_test_9.md
index 925591de..b827bfc5 100644
--- a/docs/docs-api/RealVector/examples/_Set_Get_test_9.md
+++ b/docs/docs-api/RealVector/examples/_Set_Get_test_9.md
@@ -1,4 +1,4 @@
-This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
+This example shows the usage of [Get](Get.md), [Set](Set.md), and [GetValue](GetValue.md) Methods.
```fortran
!!
@@ -18,83 +18,82 @@ PROGRAM main
Make an instance of [DOF_](../DOF/DOF_.md) object.
```fortran
- CALL Initiate( obj=dofobj, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[2], &
- & timeCompo=[2], &
- & StorageFMT=DOF_FMT)
+CALL Initiate( obj=dofobj, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[2], &
+ & timeCompo=[2], &
+ & StorageFMT=DOF_FMT)
```
Initiate an instance of [RealVector_](RealVector_.md)
```fortran
- CALL Initiate(obj, dofobj)
+CALL Initiate(obj, dofobj)
```
-
Setting values in `obj`
```fortran
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
- !!
- CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
- !!
- CALL Display( obj, dofobj, 'obj:' )
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=2 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=3 )
+!!
+CALL Set( obj=obj, dofobj=dofobj, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=4 )
+!!
+CALL Display( obj, dofobj, 'obj:' )
```
Make an instance of [[DOF_]] object.
```fortran
- CALL Initiate( obj=dofvalue, &
- & tNodes=[4], &
- & names=["V"], &
- & spaceCompo=[1], &
- & timeCompo=[1], &
- & StorageFMT=NODES_FMT)
+CALL Initiate( obj=dofvalue, &
+ & tNodes=[4], &
+ & names=["V"], &
+ & spaceCompo=[1], &
+ & timeCompo=[1], &
+ & StorageFMT=NODES_FMT)
```
Allocate value, it is important that value is initiated before calling GetValue method.
```fortran
- CALL Initiate( value, dofvalue )
- CALL Initiate( ans, dofvalue )
+CALL Initiate( value, dofvalue )
+CALL Initiate( ans, dofvalue )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=1)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=1)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(11.0_DFP, 14.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=2)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=2)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(21.0_DFP, 24.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=3)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=3)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(31.0_DFP, 34.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
- CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=4)
- CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
- & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
- CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
+CALL GetValue(obj=obj, dofobj=dofobj, value=value, ivar=1, idof=4)
+CALL Set( obj=ans, dofobj=dofvalue, nodenum=[1,2,3,4], &
+ & value=arange(41.0_DFP, 44.0_DFP), ivar=1, idof=1 )
+CALL OK( ALL(value%val .APPROXEQ. ans%val) , 'Getvalue' )
```
```fortran
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_1.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_1.md
index e41772bf..d8bacfb0 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_1.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_1.md
@@ -18,7 +18,7 @@ Order 0
b =
| |
-|-----|
+| --- |
| 0.5 |
| 0.5 |
@@ -27,7 +27,7 @@ Order 1
b =
| | |
-|---|---|
+| - | - |
| 0 | 1 |
| 1 | 0 |
@@ -36,7 +36,7 @@ Order 2
b =
| | | |
-|---|-----|---|
+| - | --- | - |
| 0 | 0.5 | 1 |
| 1 | 0.5 | 0 |
@@ -45,6 +45,6 @@ Order 3
b =
| | | | |
-|---|---------|---------|---|
+| - | ------- | ------- | - |
| 0 | 0.33333 | 0.66667 | 1 |
| 1 | 0.66667 | 0.33333 | 0 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_3.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_3.md
index 89175598..710746bf 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_3.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_3.md
@@ -1,4 +1,3 @@
-
- In this example `ipType=GaussLegendreLobatto`
```fortran
@@ -9,52 +8,52 @@ integer(i4b), parameter :: ipType=GaussLegendreLobatto
```
```fortran
- b = RecursiveNode1D(order=0, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=0, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| |
-|-----|
+| --- |
| 0.5 |
| 0.5 |
```fortran
- b = RecursiveNode1D(order=1, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=1, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | |
-|---|---|
+| - | - |
| 0 | 1 |
| 1 | 0 |
```fortran
- b = RecursiveNode1D(order=2, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=2, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | |
-|-------------|-----|-------------|
+| ----------- | --- | ----------- |
| 1.11022E-16 | 0.5 | 1 |
| 1 | 0.5 | 1.11022E-16 |
```fortran
- b = RecursiveNode1D(order=4, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=4, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | | | |
-|--------------|---------|-----|---------|--------------|
+| ------------ | ------- | --- | ------- | ------------ |
| -1.11022E-16 | 0.17267 | 0.5 | 0.82733 | 1 |
-| 1 | 0.82733 | 0.5 | 0.17267 | -1.11022E-16 |
+| 1 | 0.82733 | 0.5 | 0.17267 | -1.11022E-16 |
```fortran
END PROGRAM main
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_4.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_4.md
index 0e3b2a73..8c8e0253 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_4.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode1D_test_4.md
@@ -8,50 +8,50 @@ integer(i4b), parameter :: ipType=GaussChebyshevLobatto
```
```fortran
- b = RecursiveNode1D(order=0, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=0, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| |
-|-----|
+| --- |
| 0.5 |
| 0.5 |
```fortran
- b = RecursiveNode1D(order=1, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=1, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | |
-|---|---|
+| - | - |
| 0 | 1 |
| 1 | 0 |
```fortran
- b = RecursiveNode1D(order=2, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=2, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | |
-|-------------|-----|-------------|
+| ----------- | --- | ----------- |
| 1.11022E-16 | 0.5 | 1 |
| 1 | 0.5 | 1.11022E-16 |
```fortran
- b = RecursiveNode1D(order=4, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode1D(order=4, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | | | |
-|---|---------|-----|---------|---|
+| - | ------- | --- | ------- | - |
| 0 | 0.14645 | 0.5 | 0.85355 | 1 |
| 1 | 0.85355 | 0.5 | 0.14645 | 0 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_1.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_1.md
index 21385a2e..cb18951a 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_1.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_1.md
@@ -13,46 +13,46 @@ integer(i4b) :: iptype = Equidistance
b=
| |
-|---------|
+| ------- |
| 0.33333 |
| 0.33333 |
| 0.33333 |
```fortran
- b = RecursiveNode2D(order=1, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode2D(order=1, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
```fortran
- b = RecursiveNode2D(order=2, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode2D(order=2, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | | | | |
-|---|-----|---|-----|-----|---|
+| - | --- | - | --- | --- | - |
| 0 | 0 | 0 | 0.5 | 0.5 | 1 |
| 0 | 0.5 | 1 | 0 | 0.5 | 0 |
| 1 | 0.5 | 0 | 0.5 | 0 | 0 |
```fortran
- b = RecursiveNode2D(order=3, ipType=ipType)
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode2D(order=3, ipType=ipType)
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| | | |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0 | 0 | 1 |
| 0 | 0.33333 | 0.66667 |
| 0 | 0.66667 | 0.33333 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_2.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_2.md
index 3b83fc66..42c63d67 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_2.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_2.md
@@ -11,7 +11,7 @@ real( DFP ), allocatable :: b( :, : )
b=
| x1 | x2 |
-|---------|---------|
+| ------- | ------- |
| 0 | 0 |
| 0 | 0.33333 |
| 0 | 0.66667 |
@@ -24,14 +24,14 @@ b=
| 1 | 0 |
```fortran
- b = RecursiveNode2D(order=3, ipType=Equidistance, domain="biunit")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode2D(order=3, ipType=Equidistance, domain="biunit")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| x1 | x2 |
-|----------|----------|
+| -------- | -------- |
| -1 | -1 |
| -1 | -0.33333 |
| -1 | 0.33333 |
@@ -44,14 +44,14 @@ b=
| 1 | -1 |
```fortran
- b = RecursiveNode2D(order=3, ipType=Equidistance, domain="barycentric")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode2D(order=3, ipType=Equidistance, domain="barycentric")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| b0 | b1 | b2 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0 | 0 | 1 |
| 0 | 0.33333 | 0.66667 |
| 0 | 0.66667 | 0.33333 |
@@ -64,14 +64,14 @@ b=
| 1 | 0 | 0 |
```fortran
- b = RecursiveNode2D(order=3, ipType=Equidistance, domain="Equilateral")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode2D(order=3, ipType=Equidistance, domain="Equilateral")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
-| x1 | x2 |
-|-------------|-------------|
+| x1 | x2 |
+| ----------- | ----------- |
| -1 | -0.57735 |
| -0.66667 | 9.61481E-17 |
| -0.33333 | 0.57735 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_3.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_3.md
index 01d49e69..80eb721a 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_3.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode2D_test_3.md
@@ -8,53 +8,53 @@ integer(i4b) :: iptype = GaussLegendreLobatto
```
```fortran
- b = RecursiveNode2D(order=0, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode2D(order=0, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| |
-|---------|
+| ------- |
| 0.33333 |
| 0.33333 |
| 0.33333 |
```fortran
- b = RecursiveNode2D(order=1, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode2D(order=1, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 1 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
```fortran
- b = RecursiveNode2D(order=2, ipType=ipType)
- call Display(MdEncode(b), "b="//char_lf)
+b = RecursiveNode2D(order=2, ipType=ipType)
+call Display(MdEncode(b), "b="//char_lf)
```
b=
| | | | | | |
-|-------------|-----|-------------|-----|-----|-------------|
+| ----------- | --- | ----------- | --- | --- | ----------- |
| 8.32667E-17 | 0 | 8.32667E-17 | 0.5 | 0.5 | 1 |
| 8.32667E-17 | 0.5 | 1 | 0 | 0.5 | 8.32667E-17 |
| 1 | 0.5 | 8.32667E-17 | 0.5 | 0 | 8.32667E-17 |
```fortran
- b = RecursiveNode2D(order=3, ipType=ipType)
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode2D(order=3, ipType=ipType)
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| | | |
-|--------------|--------------|--------------|
+| ------------ | ------------ | ------------ |
| -8.32667E-17 | -8.32667E-17 | 1 |
| 4.01682E-17 | 0.27639 | 0.72361 |
| 4.01682E-17 | 0.72361 | 0.27639 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_1.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_1.md
index 8b0d7e5b..234f6cb7 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_1.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_1.md
@@ -13,35 +13,35 @@ real( DFP ), allocatable :: b( :, : )
b=
| | | | |
-|---|---|---|---|
+| - | - | - | - |
| 0 | 0 | 0 | 1 |
| 0 | 0 | 1 | 0 |
| 0 | 1 | 0 | 0 |
| 1 | 0 | 0 | 0 |
```fortran
- b = RecursiveNode3D(order=2, ipType=Equidistance)
- call Display(MdEncode(b), "b=")
+b = RecursiveNode3D(order=2, ipType=Equidistance)
+call Display(MdEncode(b), "b=")
```
b=
| | | | | | | | | | |
-|---|-----|---|-----|-----|---|-----|-----|-----|---|
+| - | --- | - | --- | --- | - | --- | --- | --- | - |
| 0 | 0 | 0 | 0 | 0 | 0 | 0.5 | 0.5 | 0.5 | 1 |
| 0 | 0 | 0 | 0.5 | 0.5 | 1 | 0 | 0 | 0.5 | 0 |
| 0 | 0.5 | 1 | 0 | 0.5 | 0 | 0 | 0.5 | 0 | 0 |
| 1 | 0.5 | 0 | 0.5 | 0 | 0 | 0.5 | 0 | 0 | 0 |
```fortran
- b = RecursiveNode3D(order=3, ipType=Equidistance)
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode3D(order=3, ipType=Equidistance)
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| | | | |
-|---------|---------|---------|---------|
+| ------- | ------- | ------- | ------- |
| 0 | 0 | 0 | 1 |
| 0 | 0 | 0.33333 | 0.66667 |
| 0 | 0 | 0.66667 | 0.33333 |
diff --git a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_2.md b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_2.md
index ef77810f..63a480fa 100644
--- a/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_2.md
+++ b/docs/docs-api/RecursiveNodeUtility/examples/_RecursiveNode3D_test_2.md
@@ -7,15 +7,15 @@ real( DFP ), allocatable :: b( :, : )
```
```fortran
- b = RecursiveNode3D(order=2, ipType=Equidistance, &
- & domain="unit")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode3D(order=2, ipType=Equidistance, &
+ & domain="unit")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| x1 | x2 | x3 |
-|-----|-----|-----|
+| --- | --- | --- |
| 0 | 0 | 0 |
| 0 | 0 | 0.5 |
| 0 | 0 | 1 |
@@ -28,15 +28,15 @@ b=
| 1 | 0 | 0 |
```fortran
- b = RecursiveNode3D(order=2, ipType=Equidistance, &
- & domain="biunit")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode3D(order=2, ipType=Equidistance, &
+ & domain="biunit")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| x1 | x2 | x3 |
-|----|----|----|
+| -- | -- | -- |
| -1 | -1 | -1 |
| -1 | -1 | 0 |
| -1 | -1 | 1 |
@@ -49,15 +49,15 @@ b=
| 1 | -1 | -1 |
```fortran
- b = RecursiveNode3D(order=2, ipType=Equidistance, &
- & domain="barycentric")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode3D(order=2, ipType=Equidistance, &
+ & domain="barycentric")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| b0 | b1 | b2 | b3 |
-|-----|-----|-----|-----|
+| --- | --- | --- | --- |
| 0 | 0 | 0 | 1 |
| 0 | 0 | 0.5 | 0.5 |
| 0 | 0 | 1 | 0 |
@@ -72,15 +72,15 @@ b=
!!! note "Equilateral"
```fortran
- b = RecursiveNode3D(order=2, ipType=Equidistance, &
- & domain="Equilateral")
- call Display(MdEncode(transpose(b)), "b=")
+b = RecursiveNode3D(order=2, ipType=Equidistance, &
+ & domain="Equilateral")
+call Display(MdEncode(transpose(b)), "b=")
```
b=
| x1 | x2 | x3 |
-|--------------|----------|----------|
+| ------------ | -------- | -------- |
| -1 | -0.57735 | -0.40825 |
| -0.5 | -0.28868 | 0.40825 |
| 0 | 0 | 1.2247 |
diff --git a/docs/docs-api/RefHexahedron/RefCoord.md b/docs/docs-api/RefHexahedron/RefCoord.md
index 01496dd9..f5a7e12b 100644
--- a/docs/docs-api/RefHexahedron/RefCoord.md
+++ b/docs/docs-api/RefHexahedron/RefCoord.md
@@ -19,4 +19,3 @@ INTERFACE
END FUNCTION RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/RefLine/GetFacetElements.md b/docs/docs-api/RefLine/GetFacetElements.md
index 4f4a3209..e2d453a5 100644
--- a/docs/docs-api/RefLine/GetFacetElements.md
+++ b/docs/docs-api/RefLine/GetFacetElements.md
@@ -35,4 +35,3 @@ import EXAMPLE12 from "./_GetFacetElements_test_1.md";
-
diff --git a/docs/docs-api/RefLine/GetName.md b/docs/docs-api/RefLine/GetName.md
index dbf8ac19..ad31435f 100644
--- a/docs/docs-api/RefLine/GetName.md
+++ b/docs/docs-api/RefLine/GetName.md
@@ -1,6 +1,6 @@
# GetName
-Return the name of reference element.
+Return the name of reference element.
The returned name is an integer code.
@@ -9,7 +9,6 @@ The returned name is an integer code.
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-
@@ -21,6 +20,7 @@ INTERFACE
END FUNCTION refelem_GetName
END INTERFACE
```
+
@@ -35,6 +35,3 @@ import EXAMPLE10 from "./_GetName_test_1.md";
-
-
-
diff --git a/docs/docs-api/RefLine/Initiate.md b/docs/docs-api/RefLine/Initiate.md
index b9fbd290..8f547e2e 100644
--- a/docs/docs-api/RefLine/Initiate.md
+++ b/docs/docs-api/RefLine/Initiate.md
@@ -50,14 +50,13 @@ It represents the basis function family used for interpolation. Following values
- `HierarchyInterpolation`
- `HierarchyPolynomial`
- `Hierarchy`
-- `OrthogonalInterpolation `
+- `OrthogonalInterpolation`
- `OrthogonalPolynomial`
- `Orthogonal`
-- `HermitInterpolation `
+- `HermitInterpolation`
- `HermitPolynomial`
- `Hermit`
-
diff --git a/docs/docs-api/RefLine/RefCoord.md b/docs/docs-api/RefLine/RefCoord.md
index 01496dd9..f5a7e12b 100644
--- a/docs/docs-api/RefLine/RefCoord.md
+++ b/docs/docs-api/RefLine/RefCoord.md
@@ -19,4 +19,3 @@ INTERFACE
END FUNCTION RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/RefLine/RefLine_.md b/docs/docs-api/RefLine/RefLine_.md
index 3876709f..9d57cc42 100644
--- a/docs/docs-api/RefLine/RefLine_.md
+++ b/docs/docs-api/RefLine/RefLine_.md
@@ -9,5 +9,3 @@ sidebar_position: 3
```fortran
TYPE, EXTENDS(AbstractRefElement_) :: RefLine_
```
-
-
diff --git a/docs/docs-api/RefLine/_GetFacetElements_test_1.md b/docs/docs-api/RefLine/_GetFacetElements_test_1.md
index 72225705..8d2f345c 100644
--- a/docs/docs-api/RefLine/_GetFacetElements_test_1.md
+++ b/docs/docs-api/RefLine/_GetFacetElements_test_1.md
@@ -26,64 +26,59 @@ END PROGRAM main
**Facet Element 1**
-| | |
-| --- | --- |
-| Element type | Point1 |
-| Xidimension | 0 |
-| NSD | 1 |
-| tPoints | 1 |
-| tLines | 0 |
-| tSurfaces | 0 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Point1 |
+| Xidimension | 0 |
+| NSD | 1 |
+| tPoints | 1 |
+| tLines | 0 |
+| tSurfaces | 0 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | |
-| --- | --- |
+| | |
+| - | -- |
| x | -1 |
+PointTopology( 1 ) :
-PointTopology( 1 ) :
-
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
**Facet Element 2**
-| | |
-| --- | --- |
-| Element type | Point1 |
-| Xidimension | 0 |
-| NSD | 1 |
-| tPoints | 1 |
-| tLines | 0 |
-| tSurfaces | 0 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Point1 |
+| Xidimension | 0 |
+| NSD | 1 |
+| tPoints | 1 |
+| tLines | 0 |
+| tSurfaces | 0 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | |
-| --- | --- |
+| | |
+| - | - |
| x | 1 |
+PointTopology( 1 ) :
-PointTopology( 1 ) :
-
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
+| Xidimension | 0 |
+| Nptrs | 1 |
diff --git a/docs/docs-api/RefLine/_GetName_test_1.md b/docs/docs-api/RefLine/_GetName_test_1.md
index fdd09133..5d674431 100644
--- a/docs/docs-api/RefLine/_GetName_test_1.md
+++ b/docs/docs-api/RefLine/_GetName_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -9,4 +9,3 @@ PROGRAM main
CALL OK(obj%GetName() .EQ. Line2, "GetName:")
END PROGRAM main
```
-
diff --git a/docs/docs-api/RefLine/_Initiate_test_1.md b/docs/docs-api/RefLine/_Initiate_test_1.md
index 42030a97..77b4b2ee 100644
--- a/docs/docs-api/RefLine/_Initiate_test_1.md
+++ b/docs/docs-api/RefLine/_Initiate_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -14,55 +14,49 @@ END PROGRAM main
See results
-`Line2` :
-
-| | |
-| :--- | ---: |
-| Element type | Line2 |
-| Xidimension | 1 |
-| NSD | 1 |
-| tPoints | 2 |
-| tLines | 1 |
-| tSurfaces | 0 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+`Line2` :
+
+| | |
+| :---------------- | --------------------: |
+| Element type | Line2 |
+| Xidimension | 1 |
+| NSD | 1 |
+| tPoints | 2 |
+| tLines | 1 |
+| tSurfaces | 0 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| x |-1 |1 |
+| | | |
+| - | -- | - |
+| x | -1 | 1 |
-`PointTopology`( 1 ) :
+`PointTopology`( 1 ) :
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-`PointTopology`( 2 ) :
+`PointTopology`( 2 ) :
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
-
-
-`EdgeTopology`( 1 ) :
-
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
+| Xidimension | 0 |
+| Nptrs | 2 |
+`EdgeTopology`( 1 ) :
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-
diff --git a/docs/docs-api/RefLine/overview.md b/docs/docs-api/RefLine/overview.md
index 9ceaae2c..391294d6 100644
--- a/docs/docs-api/RefLine/overview.md
+++ b/docs/docs-api/RefLine/overview.md
@@ -8,10 +8,9 @@ sidebar_position: 2
- To see the full structure of this class go to [RefLine_](./RefLine_.md).
-
### Initiate
-Use [Initiate](./Initiate.md) to construct an instance . An example is shows below:
+Use [Initiate](./Initiate.md) to construct an instance . An example is shows below:
import EXAMPLE13 from "./_Initiate_test_1.md";
@@ -31,18 +30,4 @@ import EXAMPLE28 from "./_GetFacetElements_test_1.md";
### Getting nodal coordinates
-To get nodal coordinates of element use [GetNodeCoord](./GetNodeCoord.md).
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+To get nodal coordinates of element use [GetNodeCoord](./GetNodeCoord.md).
diff --git a/docs/docs-api/RefQuadrangle/RefCoord.md b/docs/docs-api/RefQuadrangle/RefCoord.md
index 01496dd9..f5a7e12b 100644
--- a/docs/docs-api/RefQuadrangle/RefCoord.md
+++ b/docs/docs-api/RefQuadrangle/RefCoord.md
@@ -19,4 +19,3 @@ INTERFACE
END FUNCTION RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/RefQuadrangle/_GetFacetElements_test_1.md b/docs/docs-api/RefQuadrangle/_GetFacetElements_test_1.md
index e01771e6..4f425056 100644
--- a/docs/docs-api/RefQuadrangle/_GetFacetElements_test_1.md
+++ b/docs/docs-api/RefQuadrangle/_GetFacetElements_test_1.md
@@ -22,7 +22,6 @@ END PROGRAM main
See results
-
```bash title="results"
FacetElement(1):
element type : Line2
diff --git a/docs/docs-api/RefQuadrangle/_GetFacetElements_test_2.md b/docs/docs-api/RefQuadrangle/_GetFacetElements_test_2.md
index e1160ec4..502f9ea2 100644
--- a/docs/docs-api/RefQuadrangle/_GetFacetElements_test_2.md
+++ b/docs/docs-api/RefQuadrangle/_GetFacetElements_test_2.md
@@ -23,7 +23,6 @@ END PROGRAM main
```bash title="results"
-
FacetElement(1):
element type : Line2
xidimension :: 1
@@ -171,7 +170,6 @@ nptrs :
1 2
baseContinuity: H1
baseInterpol: LagrangeInterpolation
-
```
diff --git a/docs/docs-api/RefQuadrangle/_Initiate_test_1.md b/docs/docs-api/RefQuadrangle/_Initiate_test_1.md
index 581676e7..88ab7041 100644
--- a/docs/docs-api/RefQuadrangle/_Initiate_test_1.md
+++ b/docs/docs-api/RefQuadrangle/_Initiate_test_1.md
@@ -9,7 +9,6 @@ CALL obj%display('RefQuadrangle : ')
END PROGRAM main
```
-
See results
@@ -99,4 +98,3 @@ baseInterpol: LagrangeInterpolation
-
diff --git a/docs/docs-api/RefQuadrangle/_Initiate_test_2.md b/docs/docs-api/RefQuadrangle/_Initiate_test_2.md
index 9b45b46f..68d79438 100644
--- a/docs/docs-api/RefQuadrangle/_Initiate_test_2.md
+++ b/docs/docs-api/RefQuadrangle/_Initiate_test_2.md
@@ -9,7 +9,6 @@ CALL obj%display('RefQuadrangle : ')
END PROGRAM main
```
-
See results
@@ -99,4 +98,3 @@ baseInterpol: HierarchyInterpolation
-
diff --git a/docs/docs-api/RefTetrahedron/GetFacetElements.md b/docs/docs-api/RefTetrahedron/GetFacetElements.md
index 4f4a3209..e2d453a5 100644
--- a/docs/docs-api/RefTetrahedron/GetFacetElements.md
+++ b/docs/docs-api/RefTetrahedron/GetFacetElements.md
@@ -35,4 +35,3 @@ import EXAMPLE12 from "./_GetFacetElements_test_1.md";
-
diff --git a/docs/docs-api/RefTetrahedron/Initiate.md b/docs/docs-api/RefTetrahedron/Initiate.md
index b9fbd290..8f547e2e 100644
--- a/docs/docs-api/RefTetrahedron/Initiate.md
+++ b/docs/docs-api/RefTetrahedron/Initiate.md
@@ -50,14 +50,13 @@ It represents the basis function family used for interpolation. Following values
- `HierarchyInterpolation`
- `HierarchyPolynomial`
- `Hierarchy`
-- `OrthogonalInterpolation `
+- `OrthogonalInterpolation`
- `OrthogonalPolynomial`
- `Orthogonal`
-- `HermitInterpolation `
+- `HermitInterpolation`
- `HermitPolynomial`
- `Hermit`
-
diff --git a/docs/docs-api/RefTetrahedron/RefCoord.md b/docs/docs-api/RefTetrahedron/RefCoord.md
index 01496dd9..f5a7e12b 100644
--- a/docs/docs-api/RefTetrahedron/RefCoord.md
+++ b/docs/docs-api/RefTetrahedron/RefCoord.md
@@ -19,4 +19,3 @@ INTERFACE
END FUNCTION RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/RefTetrahedron/RefTetrahedron_.md b/docs/docs-api/RefTetrahedron/RefTetrahedron_.md
index 0a686087..0b87ba8a 100644
--- a/docs/docs-api/RefTetrahedron/RefTetrahedron_.md
+++ b/docs/docs-api/RefTetrahedron/RefTetrahedron_.md
@@ -1,10 +1,9 @@
# Structure
-Reference element for tetrahedron element.
+Reference element for tetrahedron element.
It is a child of [AbstractRefElement_](../AbstractRefElement/index.md).
```fortran
TYPE, EXTENDS(AbstractRefElement_) :: RefTetrahedron_
```
-
diff --git a/docs/docs-api/RefTetrahedron/_GetFacetElements_test_1.md b/docs/docs-api/RefTetrahedron/_GetFacetElements_test_1.md
index e901b3a2..cc12c1fe 100644
--- a/docs/docs-api/RefTetrahedron/_GetFacetElements_test_1.md
+++ b/docs/docs-api/RefTetrahedron/_GetFacetElements_test_1.md
@@ -32,64 +32,59 @@ import TabItem from '@theme/TabItem';
See results
-
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 3 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 3 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 0 | 0 | 1 |
-| y | 0 | 1 | 0 |
-| z | 0 | 0 | 0 |
+| | | | |
+| - | - | - | - |
+| x | 0 | 0 | 1 |
+| y | 0 | 1 | 0 |
+| z | 0 | 0 | 0 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -98,34 +93,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -134,12 +126,11 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
@@ -148,59 +139,55 @@ Nodal Coordinates:
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 3 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 3 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 0 | 1 | 0 |
-| y | 0 | 0 | 0 |
-| z | 0 | 0 | 1 |
+| | | | |
+| - | - | - | - |
+| x | 0 | 1 | 0 |
+| y | 0 | 0 | 0 |
+| z | 0 | 0 | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -209,34 +196,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -245,12 +229,11 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
@@ -259,59 +242,55 @@ Nodal Coordinates:
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 3 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 3 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 0 | 0 | 0 |
-| y | 0 | 0 | 1 |
-| z | 0 | 1 | 0 |
+| | | | |
+| - | - | - | - |
+| x | 0 | 0 | 0 |
+| y | 0 | 0 | 1 |
+| z | 0 | 1 | 0 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -320,34 +299,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -356,12 +332,11 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
@@ -370,59 +345,55 @@ Nodal Coordinates:
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 3 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 3 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 1 | 0 | 0 |
-| y | 0 | 1 | 0 |
-| z | 0 | 0 | 1 |
+| | | | |
+| - | - | - | - |
+| x | 1 | 0 | 0 |
+| y | 0 | 1 | 0 |
+| z | 0 | 0 | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -431,34 +402,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -467,12 +435,11 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
diff --git a/docs/docs-api/RefTetrahedron/_Initiate_test_1.md b/docs/docs-api/RefTetrahedron/_Initiate_test_1.md
index 99c295a2..c3dbd4b0 100644
--- a/docs/docs-api/RefTetrahedron/_Initiate_test_1.md
+++ b/docs/docs-api/RefTetrahedron/_Initiate_test_1.md
@@ -13,161 +13,145 @@ END PROGRAM main
See results
-| | |
-| --- | --- |
-| Element type | Tetrahedron4 |
-| Xidimension | 3 |
-| NSD | 3 |
-| tPoints | 4 |
-| tLines | 6 |
-| tSurfaces | 4 |
-| tVolumes | 1 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Tetrahedron4 |
+| Xidimension | 3 |
+| NSD | 3 |
+| tPoints | 4 |
+| tLines | 6 |
+| tSurfaces | 4 |
+| tVolumes | 1 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | | |
-| --- | --- | --- | --- | --- |
-| x | 0 | 1 | 0 | 0 |
-| y | 0 | 0 | 1 | 0 |
-| z | 0 | 0 | 0 | 1 |
-
+| | | | | |
+| - | - | - | - | - |
+| x | 0 | 1 | 0 | 0 |
+| y | 0 | 0 | 1 | 0 |
+| z | 0 | 0 | 0 | 1 |
-PointTopology( 1 ) :
+PointTopology( 1 ) :
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
+| Xidimension | 0 |
+| Nptrs | 1 |
+PointTopology( 2 ) :
-PointTopology( 2 ) :
-
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-PointTopology( 3 ) :
+PointTopology( 3 ) :
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
+| Xidimension | 0 |
+| Nptrs | 3 |
+PointTopology( 4 ) :
-PointTopology( 4 ) :
-
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 4 |
-
-
-EdgeTopology( 1 ) :
-
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
-
-EdgeTopology( 2 ) :
-
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 3 |
-
-
-EdgeTopology( 3 ) :
-
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 4 |
-
-
-EdgeTopology( 4 ) :
+| Xidimension | 0 |
+| Nptrs | 4 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
+EdgeTopology( 1 ) :
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-EdgeTopology( 5 ) :
+EdgeTopology( 2 ) :
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 4 |
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 3 |
+EdgeTopology( 3 ) :
-EdgeTopology( 6 ) :
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 4 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 4 |
+EdgeTopology( 4 ) :
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-FaceTopology( 1 ) :
+EdgeTopology( 5 ) :
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 3 | 2 |
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 4 |
+EdgeTopology( 6 ) :
-FaceTopology( 2 ) :
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 4 |
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 4 |
+FaceTopology( 1 ) :
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 3 | 2 |
-FaceTopology( 3 ) :
+FaceTopology( 2 ) :
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 4 | 3 |
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 4 |
+FaceTopology( 3 ) :
-FaceTopology( 4 ) :
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 4 | 3 |
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 2 | 3 | 4 |
+FaceTopology( 4 ) :
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 2 | 3 | 4 |
-CellTopology( 1 ) :
+CellTopology( 1 ) :
-| | | | | |
-| --- | --- | --- | --- | --- |
-| Element type | Tetrahedron4 | | | |
-| Xidimension | 3 | | | |
-| Nptrs | 1 | 2 | 3 | 4 |
+| | | | | |
+| ------------ | ------------ | - | - | - |
+| Element type | Tetrahedron4 | | | |
+| Xidimension | 3 | | | |
+| Nptrs | 1 | 2 | 3 | 4 |
diff --git a/docs/docs-api/RefTriangle/GetFacetElements.md b/docs/docs-api/RefTriangle/GetFacetElements.md
index 4f4a3209..e2d453a5 100644
--- a/docs/docs-api/RefTriangle/GetFacetElements.md
+++ b/docs/docs-api/RefTriangle/GetFacetElements.md
@@ -35,4 +35,3 @@ import EXAMPLE12 from "./_GetFacetElements_test_1.md";
-
diff --git a/docs/docs-api/RefTriangle/GetName.md b/docs/docs-api/RefTriangle/GetName.md
index dbf8ac19..ad31435f 100644
--- a/docs/docs-api/RefTriangle/GetName.md
+++ b/docs/docs-api/RefTriangle/GetName.md
@@ -1,6 +1,6 @@
# GetName
-Return the name of reference element.
+Return the name of reference element.
The returned name is an integer code.
@@ -9,7 +9,6 @@ The returned name is an integer code.
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-
@@ -21,6 +20,7 @@ INTERFACE
END FUNCTION refelem_GetName
END INTERFACE
```
+
@@ -35,6 +35,3 @@ import EXAMPLE10 from "./_GetName_test_1.md";
-
-
-
diff --git a/docs/docs-api/RefTriangle/Initiate.md b/docs/docs-api/RefTriangle/Initiate.md
index b9fbd290..8f547e2e 100644
--- a/docs/docs-api/RefTriangle/Initiate.md
+++ b/docs/docs-api/RefTriangle/Initiate.md
@@ -50,14 +50,13 @@ It represents the basis function family used for interpolation. Following values
- `HierarchyInterpolation`
- `HierarchyPolynomial`
- `Hierarchy`
-- `OrthogonalInterpolation `
+- `OrthogonalInterpolation`
- `OrthogonalPolynomial`
- `Orthogonal`
-- `HermitInterpolation `
+- `HermitInterpolation`
- `HermitPolynomial`
- `Hermit`
-
diff --git a/docs/docs-api/RefTriangle/ReactEncode.md b/docs/docs-api/RefTriangle/ReactEncode.md
index 6d61ba83..a8d3196f 100644
--- a/docs/docs-api/RefTriangle/ReactEncode.md
+++ b/docs/docs-api/RefTriangle/ReactEncode.md
@@ -2,7 +2,7 @@
This method converts the data into an react element.
-## Interface
+## Interface
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
diff --git a/docs/docs-api/RefTriangle/RefCoord.md b/docs/docs-api/RefTriangle/RefCoord.md
index 01496dd9..f5a7e12b 100644
--- a/docs/docs-api/RefTriangle/RefCoord.md
+++ b/docs/docs-api/RefTriangle/RefCoord.md
@@ -19,4 +19,3 @@ INTERFACE
END FUNCTION RefCoord
END INTERFACE
```
-
diff --git a/docs/docs-api/RefTriangle/RefTriangle_.md b/docs/docs-api/RefTriangle/RefTriangle_.md
index ac3a98bd..bb17b7a3 100644
--- a/docs/docs-api/RefTriangle/RefTriangle_.md
+++ b/docs/docs-api/RefTriangle/RefTriangle_.md
@@ -1,10 +1,9 @@
# Structure
-This class defines a reference element for triangle element.
+This class defines a reference element for triangle element.
It is a child of [AbstractRefElement](../AbstractRefElement/index.md).
```fortran
TYPE, EXTENDS(AbstractRefElement_) :: RefTriangle_
```
-
diff --git a/docs/docs-api/RefTriangle/_GetFacetElements_test_1.md b/docs/docs-api/RefTriangle/_GetFacetElements_test_1.md
index df57543e..38154c54 100644
--- a/docs/docs-api/RefTriangle/_GetFacetElements_test_1.md
+++ b/docs/docs-api/RefTriangle/_GetFacetElements_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -19,4 +19,3 @@ END DO
END PROGRAM main
```
-
diff --git a/docs/docs-api/RefTriangle/_GetName_test_1.md b/docs/docs-api/RefTriangle/_GetName_test_1.md
index fdd09133..5d674431 100644
--- a/docs/docs-api/RefTriangle/_GetName_test_1.md
+++ b/docs/docs-api/RefTriangle/_GetName_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -9,4 +9,3 @@ PROGRAM main
CALL OK(obj%GetName() .EQ. Line2, "GetName:")
END PROGRAM main
```
-
diff --git a/docs/docs-api/RefTriangle/_Initiate_test_1.md b/docs/docs-api/RefTriangle/_Initiate_test_1.md
index 02af1e45..899cccac 100644
--- a/docs/docs-api/RefTriangle/_Initiate_test_1.md
+++ b/docs/docs-api/RefTriangle/_Initiate_test_1.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -14,59 +14,54 @@ END PROGRAM main
See results
-
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 2 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 2 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 0 | 1 | 0 |
-| y | 0 | 0 | 1 |
+| | | | |
+| - | - | - | - |
+| x | 0 | 1 | 0 |
+| y | 0 | 0 | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -75,34 +70,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -111,16 +103,15 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
-| |
+| |
diff --git a/docs/docs-api/RefTriangle/_Initiate_test_2.md b/docs/docs-api/RefTriangle/_Initiate_test_2.md
index ab85d6eb..52a097de 100644
--- a/docs/docs-api/RefTriangle/_Initiate_test_2.md
+++ b/docs/docs-api/RefTriangle/_Initiate_test_2.md
@@ -1,6 +1,6 @@
In this example we create a reference triangle for Hierarchy polynomials.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,7 +13,6 @@ CALL obj%display('Triangle : ')
END PROGRAM main
```
-
See results
diff --git a/docs/docs-api/RefTriangle/_Initiate_test_3.md b/docs/docs-api/RefTriangle/_Initiate_test_3.md
index 0bb3b1f9..31b9cc1f 100644
--- a/docs/docs-api/RefTriangle/_Initiate_test_3.md
+++ b/docs/docs-api/RefTriangle/_Initiate_test_3.md
@@ -1,6 +1,6 @@
In this example we create a reference triangle for orthogonal polynomials.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,13 +13,11 @@ CALL obj%display('Triangle : ')
END PROGRAM main
```
-
See results
```bash title="results"
-
Triangle :
element type : Triangle3
xidimension :: 2
@@ -84,7 +82,7 @@ nptrs :
1 2 3
baseContinuity: H1
baseInterpol: OrthogonalInterpolation
-```
+```
diff --git a/docs/docs-api/RefTriangle/_ReactEncode_test_1.md b/docs/docs-api/RefTriangle/_ReactEncode_test_1.md
index 7417d78f..6dacdd91 100644
--- a/docs/docs-api/RefTriangle/_ReactEncode_test_1.md
+++ b/docs/docs-api/RefTriangle/_ReactEncode_test_1.md
@@ -17,59 +17,54 @@ END PROGRAM main
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-
-| | |
-| --- | --- |
-| Element type | Triangle3 |
-| Xidimension | 2 |
-| NSD | 1 |
-| tPoints | 3 |
-| tLines | 3 |
-| tSurfaces | 1 |
-| tVolumes | 0 |
-| BaseContinuity | H1 |
+| | |
+| ----------------- | --------------------- |
+| Element type | Triangle3 |
+| Xidimension | 2 |
+| NSD | 1 |
+| tPoints | 3 |
+| tLines | 3 |
+| tSurfaces | 1 |
+| tVolumes | 0 |
+| BaseContinuity | H1 |
| BaseInterpolation | LagrangeInterpolation |
-
Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| x | 0 | 1 | 0 |
-| y | 0 | 0 | 1 |
+| | | | |
+| - | - | - | - |
+| x | 0 | 1 | 0 |
+| y | 0 | 0 | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 1 |
-
+| Xidimension | 0 |
+| Nptrs | 1 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 2 |
-
+| Xidimension | 0 |
+| Nptrs | 2 |
-| | |
-| --- | --- |
+| | |
+| ------------ | ------ |
| Element type | Point1 |
-| Xidimension | 0 |
-| Nptrs | 3 |
-
+| Xidimension | 0 |
+| Nptrs | 3 |
@@ -78,34 +73,31 @@ Nodal Coordinates:
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 1 | 2 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 1 | 2 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 2 | 3 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 2 | 3 |
-| | | |
-| --- | --- | --- |
-| Element type | Line2 | |
-| Xidimension | 1 | |
-| Nptrs | 3 | 1 |
-
+| | | |
+| ------------ | ----- | - |
+| Element type | Line2 | |
+| Xidimension | 1 | |
+| Nptrs | 3 | 1 |
@@ -114,19 +106,15 @@ Nodal Coordinates:
-| | | | |
-| --- | --- | --- | --- |
-| Element type | Triangle3 | | |
-| Xidimension | 2 | | |
-| Nptrs | 1 | 2 | 3 |
-
+| | | | |
+| ------------ | --------- | - | - |
+| Element type | Triangle3 | | |
+| Xidimension | 2 | | |
+| Nptrs | 1 | 2 | 3 |
-
-
-
diff --git a/docs/docs-api/ReferenceElement/ContainsPoint.md b/docs/docs-api/ReferenceElement/ContainsPoint.md
index eac79bb8..5c6f409e 100644
--- a/docs/docs-api/ReferenceElement/ContainsPoint.md
+++ b/docs/docs-api/ReferenceElement/ContainsPoint.md
@@ -3,10 +3,10 @@
Returns true if the given point is inside the element
```fortran
- MODULE FUNCTION contains_point(refelem, xij, x) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: refelem
- REAL(DFP), INTENT(IN) :: xij(:, :)
- REAL(DFP), INTENT(IN) :: x(:)
- LOGICAL(LGT) :: Ans
- END FUNCTION contains_point
+MODULE FUNCTION contains_point(refelem, xij, x) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: refelem
+ REAL(DFP), INTENT(IN) :: xij(:, :)
+ REAL(DFP), INTENT(IN) :: x(:)
+ LOGICAL(LGT) :: Ans
+END FUNCTION contains_point
```
diff --git a/docs/docs-api/ReferenceElement/Deallocate.md b/docs/docs-api/ReferenceElement/Deallocate.md
index 49ea6d9d..6454f3dd 100644
--- a/docs/docs-api/ReferenceElement/Deallocate.md
+++ b/docs/docs-api/ReferenceElement/Deallocate.md
@@ -1,13 +1,13 @@
# Deallocate
```fortran
- MODULE PURE SUBROUTINE Deallocate(obj)
- CLASS(ReferenceTopology_), INTENT(INOUT) :: obj
- END SUBROUTINE Deallocate
+MODULE PURE SUBROUTINE Deallocate(obj)
+ CLASS(ReferenceTopology_), INTENT(INOUT) :: obj
+END SUBROUTINE Deallocate
```
```fortran
- MODULE PURE SUBROUTINE Deallocate(obj)
- CLASS(ReferenceElement_), INTENT(INOUT) :: obj
- END SUBROUTINE Deallocate
+MODULE PURE SUBROUTINE Deallocate(obj)
+ CLASS(ReferenceElement_), INTENT(INOUT) :: obj
+END SUBROUTINE Deallocate
```
diff --git a/docs/docs-api/ReferenceElement/Display.md b/docs/docs-api/ReferenceElement/Display.md
index 93ffe48c..af89113f 100644
--- a/docs/docs-api/ReferenceElement/Display.md
+++ b/docs/docs-api/ReferenceElement/Display.md
@@ -3,19 +3,19 @@
Display reference element.
```fortran
- MODULE SUBROUTINE Display(obj, msg, unitno)
- CLASS(ReferenceElement_), INTENT(IN) :: obj
- CHARACTER(LEN=*), INTENT(IN) :: msg
- INTEGER(I4B), INTENT(IN), OPTIONAL :: unitno
- END SUBROUTINE Display
+MODULE SUBROUTINE Display(obj, msg, unitno)
+ CLASS(ReferenceElement_), INTENT(IN) :: obj
+ CHARACTER(LEN=*), INTENT(IN) :: msg
+ INTEGER(I4B), INTENT(IN), OPTIONAL :: unitno
+END SUBROUTINE Display
```
Display reference topology
```fortran
- MODULE SUBROUTINE Display(obj, msg, unitno)
- CLASS(ReferenceTopology_), INTENT(IN) :: obj
- CHARACTER(LEN=*), INTENT(IN) :: msg
- INTEGER(I4B), INTENT(IN), OPTIONAL :: unitno
- END SUBROUTINE Display
+MODULE SUBROUTINE Display(obj, msg, unitno)
+ CLASS(ReferenceTopology_), INTENT(IN) :: obj
+ CHARACTER(LEN=*), INTENT(IN) :: msg
+ INTEGER(I4B), INTENT(IN), OPTIONAL :: unitno
+END SUBROUTINE Display
```
diff --git a/docs/docs-api/ReferenceElement/ElementName.md b/docs/docs-api/ReferenceElement/ElementName.md
index 44dad89f..3ab8f383 100644
--- a/docs/docs-api/ReferenceElement/ElementName.md
+++ b/docs/docs-api/ReferenceElement/ElementName.md
@@ -3,8 +3,8 @@
Returns element name in character from element number/type
```fortran
- MODULE PURE FUNCTION Element_Name(ElemType) RESULT(Ans)
- INTEGER(I4B), INTENT(IN) :: ElemType
- CHARACTER(LEN=50) :: Ans
- END FUNCTION Element_Name
+MODULE PURE FUNCTION Element_Name(ElemType) RESULT(Ans)
+ INTEGER(I4B), INTENT(IN) :: ElemType
+ CHARACTER(LEN=50) :: Ans
+END FUNCTION Element_Name
```
diff --git a/docs/docs-api/ReferenceElement/ElementOrder.md b/docs/docs-api/ReferenceElement/ElementOrder.md
index 8d09c74f..cb3d6e41 100644
--- a/docs/docs-api/ReferenceElement/ElementOrder.md
+++ b/docs/docs-api/ReferenceElement/ElementOrder.md
@@ -3,17 +3,17 @@
Returns the order of an element
```fortran
- MODULE PURE FUNCTION Element_Order(ElemType) RESULT(Ans)
- INTEGER(I4B) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION Element_Order
+MODULE PURE FUNCTION Element_Order(ElemType) RESULT(Ans)
+ INTEGER(I4B) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION Element_Order
```
```fortran
- MODULE PURE FUNCTION Element_Order_RefElem(RefElem) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: RefElem
- INTEGER(I4B) :: Ans
- END FUNCTION Element_Order_RefElem
+MODULE PURE FUNCTION Element_Order_RefElem(RefElem) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: RefElem
+ INTEGER(I4B) :: Ans
+END FUNCTION Element_Order_RefElem
```
:::note
diff --git a/docs/docs-api/ReferenceElement/ElementQuality.md b/docs/docs-api/ReferenceElement/ElementQuality.md
index da319ed0..abf84dc1 100644
--- a/docs/docs-api/ReferenceElement/ElementQuality.md
+++ b/docs/docs-api/ReferenceElement/ElementQuality.md
@@ -3,10 +3,10 @@
Measure the quality of the element
```fortran
- MODULE FUNCTION Element_Quality(refelem, xij, measure) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: refelem
- REAL(DFP), INTENT(IN) :: xij(:, :)
- INTEGER(I4B), INTENT(IN) :: measure
- REAL(DFP) :: Ans
- END FUNCTION Element_Quality
+MODULE FUNCTION Element_Quality(refelem, xij, measure) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: refelem
+ REAL(DFP), INTENT(IN) :: xij(:, :)
+ INTEGER(I4B), INTENT(IN) :: measure
+ REAL(DFP) :: Ans
+END FUNCTION Element_Quality
```
diff --git a/docs/docs-api/ReferenceElement/ElementType.md b/docs/docs-api/ReferenceElement/ElementType.md
index b722c72e..3d64b0c2 100644
--- a/docs/docs-api/ReferenceElement/ElementType.md
+++ b/docs/docs-api/ReferenceElement/ElementType.md
@@ -3,8 +3,8 @@
Returns element name in integer from element name
```fortran
- MODULE PURE FUNCTION Element_Type(ElemName) RESULT(Ans)
- CHARACTER(LEN=*), INTENT(IN) :: ElemName
- INTEGER(I4B) :: Ans
- END FUNCTION Element_Type
+MODULE PURE FUNCTION Element_Type(ElemName) RESULT(Ans)
+ CHARACTER(LEN=*), INTENT(IN) :: ElemName
+ INTEGER(I4B) :: Ans
+END FUNCTION Element_Type
```
diff --git a/docs/docs-api/ReferenceElement/FacetMatrix.md b/docs/docs-api/ReferenceElement/FacetMatrix.md
index 8064657c..f334fe76 100644
--- a/docs/docs-api/ReferenceElement/FacetMatrix.md
+++ b/docs/docs-api/ReferenceElement/FacetMatrix.md
@@ -10,8 +10,8 @@ Returns the facet matrix of a reference element.
- 4 to NNS + 3 denotes the Local Nptrs
```fortran
- MODULE PURE FUNCTION Facet_Matrix_RefElem(RefElem) RESULT(FM)
- INTEGER(I4B), ALLOCATABLE :: FM(:, :)
- CLASS(ReferenceElement_), INTENT(IN) :: RefElem
- END FUNCTION Facet_Matrix_RefElem
+MODULE PURE FUNCTION Facet_Matrix_RefElem(RefElem) RESULT(FM)
+ INTEGER(I4B), ALLOCATABLE :: FM(:, :)
+ CLASS(ReferenceElement_), INTENT(IN) :: RefElem
+END FUNCTION Facet_Matrix_RefElem
```
diff --git a/docs/docs-api/ReferenceElement/FacetTopology.md b/docs/docs-api/ReferenceElement/FacetTopology.md
index 24b9e2b1..5003dbdd 100644
--- a/docs/docs-api/ReferenceElement/FacetTopology.md
+++ b/docs/docs-api/ReferenceElement/FacetTopology.md
@@ -3,9 +3,9 @@
Returns the facet topology of the given element type
```fortran
- MODULE PURE FUNCTION RefElem_FacetTopology(ElemType, Nptrs) RESULT(Ans)
- INTEGER(I4B), INTENT(IN) :: ElemType
- INTEGER(I4B), INTENT(IN) :: Nptrs(:)
- TYPE(ReferenceTopology_), ALLOCATABLE :: ans(:)
- END FUNCTION RefElem_FacetTopology
+MODULE PURE FUNCTION RefElem_FacetTopology(ElemType, Nptrs) RESULT(Ans)
+ INTEGER(I4B), INTENT(IN) :: ElemType
+ INTEGER(I4B), INTENT(IN) :: Nptrs(:)
+ TYPE(ReferenceTopology_), ALLOCATABLE :: ans(:)
+END FUNCTION RefElem_FacetTopology
```
diff --git a/docs/docs-api/ReferenceElement/GetConnectivity.md b/docs/docs-api/ReferenceElement/GetConnectivity.md
index 761cc788..710492a8 100644
--- a/docs/docs-api/ReferenceElement/GetConnectivity.md
+++ b/docs/docs-api/ReferenceElement/GetConnectivity.md
@@ -1,8 +1,8 @@
# GetConnectivity
```fortran
- MODULE PURE FUNCTION getConnectivity(obj) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: obj
- INTEGER(I4B), ALLOCATABLE :: ans(:)
- END FUNCTION getConnectivity
+MODULE PURE FUNCTION getConnectivity(obj) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: obj
+ INTEGER(I4B), ALLOCATABLE :: ans(:)
+END FUNCTION getConnectivity
```
diff --git a/docs/docs-api/ReferenceElement/GetVTKElementType.md b/docs/docs-api/ReferenceElement/GetVTKElementType.md
index 090599b9..e030a617 100644
--- a/docs/docs-api/ReferenceElement/GetVTKElementType.md
+++ b/docs/docs-api/ReferenceElement/GetVTKElementType.md
@@ -1,9 +1,9 @@
# GetVTKElementType
```fortran
- MODULE PURE SUBROUTINE get_vtk_elemType(ElemType, vtk_type, nptrs)
- INTEGER(I4B), INTENT(IN) :: ElemType
- INTEGER(Int8), INTENT(OUT) :: vtk_type
- INTEGER(I4B), ALLOCATABLE, INTENT(INOUT) :: nptrs(:)
- END SUBROUTINE get_vtk_elemType
+MODULE PURE SUBROUTINE get_vtk_elemType(ElemType, vtk_type, nptrs)
+ INTEGER(I4B), INTENT(IN) :: ElemType
+ INTEGER(Int8), INTENT(OUT) :: vtk_type
+ INTEGER(I4B), ALLOCATABLE, INTENT(INOUT) :: nptrs(:)
+END SUBROUTINE get_vtk_elemType
```
diff --git a/docs/docs-api/ReferenceElement/Initiate.md b/docs/docs-api/ReferenceElement/Initiate.md
index e35b92ac..24751671 100644
--- a/docs/docs-api/ReferenceElement/Initiate.md
+++ b/docs/docs-api/ReferenceElement/Initiate.md
@@ -5,10 +5,10 @@ Initiates an instance of ReferenceElement.
## Interface
```fortran
- MODULE PURE SUBROUTINE Initiate(obj, Anotherobj)
- CLASS(ReferenceElement_), INTENT(INOUT) :: obj
- CLASS(ReferenceElement_), INTENT(IN) :: Anotherobj
- END SUBROUTINE Initiate
+MODULE PURE SUBROUTINE Initiate(obj, Anotherobj)
+ CLASS(ReferenceElement_), INTENT(INOUT) :: obj
+ CLASS(ReferenceElement_), INTENT(IN) :: Anotherobj
+END SUBROUTINE Initiate
```
Copy one reference element into another reference element.
@@ -18,24 +18,24 @@ Copy one reference element into another reference element.
Copy one reference element into another reference element.
```fortran
- MODULE PURE SUBROUTINE Initiate(obj, Anotherobj)
- CLASS(ReferenceElement_), INTENT(INOUT) :: obj
- CLASS(ReferenceElement_), INTENT(IN) :: Anotherobj
- END SUBROUTINE Initiate
+MODULE PURE SUBROUTINE Initiate(obj, Anotherobj)
+ CLASS(ReferenceElement_), INTENT(INOUT) :: obj
+ CLASS(ReferenceElement_), INTENT(IN) :: Anotherobj
+END SUBROUTINE Initiate
```
## ReferenceElement_Pointer
```fortran
- MODULE FUNCTION refelem_Constructor_1(xidim, nsd, elemType) RESULT(Ans)
- INTEGER(I4B), INTENT(IN) :: xidim, nsd, elemType
- CLASS(ReferenceElement_), POINTER :: ans
- END FUNCTION refelem_Constructor_1
+MODULE FUNCTION refelem_Constructor_1(xidim, nsd, elemType) RESULT(Ans)
+ INTEGER(I4B), INTENT(IN) :: xidim, nsd, elemType
+ CLASS(ReferenceElement_), POINTER :: ans
+END FUNCTION refelem_Constructor_1
```
```fortran
- MODULE FUNCTION refelem_Constructor_2( refelem ) RESULT( ans )
- CLASS( ReferenceElement_ ), INTENT( IN ) :: refelem
- CLASS( ReferenceElement_ ), POINTER :: ans
- END FUNCTION refelem_Constructor_2
+MODULE FUNCTION refelem_Constructor_2( refelem ) RESULT( ans )
+ CLASS( ReferenceElement_ ), INTENT( IN ) :: refelem
+ CLASS( ReferenceElement_ ), POINTER :: ans
+END FUNCTION refelem_Constructor_2
```
diff --git a/docs/docs-api/ReferenceElement/IsHexahedron.md b/docs/docs-api/ReferenceElement/IsHexahedron.md
index 287e9c9d..00424102 100644
--- a/docs/docs-api/ReferenceElement/IsHexahedron.md
+++ b/docs/docs-api/ReferenceElement/IsHexahedron.md
@@ -3,8 +3,8 @@
Returns true if element is a Hexahedron element
```fortran
- MODULE PURE FUNCTION isHexahedron(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isHexahedron
+MODULE PURE FUNCTION isHexahedron(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isHexahedron
```
diff --git a/docs/docs-api/ReferenceElement/IsLine.md b/docs/docs-api/ReferenceElement/IsLine.md
index 3a814772..c96ca9f9 100644
--- a/docs/docs-api/ReferenceElement/IsLine.md
+++ b/docs/docs-api/ReferenceElement/IsLine.md
@@ -3,8 +3,8 @@
Returns true if element is a Line element
```fortran
- MODULE PURE FUNCTION isLine(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isLine
+MODULE PURE FUNCTION isLine(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isLine
```
diff --git a/docs/docs-api/ReferenceElement/IsPoint.md b/docs/docs-api/ReferenceElement/IsPoint.md
index d071da5b..bd2729b0 100644
--- a/docs/docs-api/ReferenceElement/IsPoint.md
+++ b/docs/docs-api/ReferenceElement/IsPoint.md
@@ -3,8 +3,8 @@
Returns true if element is a Point element
```fortran
- MODULE PURE FUNCTION isPoint(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isPoint
+MODULE PURE FUNCTION isPoint(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isPoint
```
diff --git a/docs/docs-api/ReferenceElement/IsPrism.md b/docs/docs-api/ReferenceElement/IsPrism.md
index e4077079..03e27acf 100644
--- a/docs/docs-api/ReferenceElement/IsPrism.md
+++ b/docs/docs-api/ReferenceElement/IsPrism.md
@@ -3,8 +3,8 @@
Returns true if element is a Prism element
```fortran
- MODULE PURE FUNCTION isPrism(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isPrism
+MODULE PURE FUNCTION isPrism(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isPrism
```
diff --git a/docs/docs-api/ReferenceElement/IsPyramid.md b/docs/docs-api/ReferenceElement/IsPyramid.md
index affcd8cb..e9424616 100644
--- a/docs/docs-api/ReferenceElement/IsPyramid.md
+++ b/docs/docs-api/ReferenceElement/IsPyramid.md
@@ -3,8 +3,8 @@
Returns true if element is a Pyramid element
```fortran
- MODULE PURE FUNCTION isPyramid(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isPyramid
+MODULE PURE FUNCTION isPyramid(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isPyramid
```
diff --git a/docs/docs-api/ReferenceElement/IsQuadrangle.md b/docs/docs-api/ReferenceElement/IsQuadrangle.md
index cb886dd9..8cb055f0 100644
--- a/docs/docs-api/ReferenceElement/IsQuadrangle.md
+++ b/docs/docs-api/ReferenceElement/IsQuadrangle.md
@@ -3,8 +3,8 @@
Returns true if element is a Quadrangle element
```fortran
- MODULE PURE FUNCTION isQuadrangle(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isQuadrangle
+MODULE PURE FUNCTION isQuadrangle(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isQuadrangle
```
diff --git a/docs/docs-api/ReferenceElement/IsSerendipityElement.md b/docs/docs-api/ReferenceElement/IsSerendipityElement.md
index cc4d5b8d..291a9ac5 100644
--- a/docs/docs-api/ReferenceElement/IsSerendipityElement.md
+++ b/docs/docs-api/ReferenceElement/IsSerendipityElement.md
@@ -3,8 +3,8 @@
Returns true if element is a SerendipityElement element
```fortran
- MODULE PURE FUNCTION isSerendipityElement(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isSerendipityElement
+MODULE PURE FUNCTION isSerendipityElement(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isSerendipityElement
```
diff --git a/docs/docs-api/ReferenceElement/IsSurface.md b/docs/docs-api/ReferenceElement/IsSurface.md
index cc695bda..f57127a7 100644
--- a/docs/docs-api/ReferenceElement/IsSurface.md
+++ b/docs/docs-api/ReferenceElement/IsSurface.md
@@ -3,8 +3,8 @@
Returns true if element is a Surface element
```fortran
- MODULE PURE FUNCTION isSurface(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isSurface
+MODULE PURE FUNCTION isSurface(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isSurface
```
diff --git a/docs/docs-api/ReferenceElement/IsTetrahedron.md b/docs/docs-api/ReferenceElement/IsTetrahedron.md
index 084017a7..5dbd9d26 100644
--- a/docs/docs-api/ReferenceElement/IsTetrahedron.md
+++ b/docs/docs-api/ReferenceElement/IsTetrahedron.md
@@ -3,8 +3,8 @@
Returns true if element is a Tetrahedron element
```fortran
- MODULE PURE FUNCTION isTetrahedron(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isTetrahedron
+MODULE PURE FUNCTION isTetrahedron(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isTetrahedron
```
diff --git a/docs/docs-api/ReferenceElement/IsTriangle.md b/docs/docs-api/ReferenceElement/IsTriangle.md
index a4eec2d9..5dd5d316 100644
--- a/docs/docs-api/ReferenceElement/IsTriangle.md
+++ b/docs/docs-api/ReferenceElement/IsTriangle.md
@@ -3,8 +3,8 @@
Returns true if element is a Triangle element
```fortran
- MODULE PURE FUNCTION isTriangle(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isTriangle
+MODULE PURE FUNCTION isTriangle(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isTriangle
```
diff --git a/docs/docs-api/ReferenceElement/IsVolume.md b/docs/docs-api/ReferenceElement/IsVolume.md
index 456a6f49..1baba68d 100644
--- a/docs/docs-api/ReferenceElement/IsVolume.md
+++ b/docs/docs-api/ReferenceElement/IsVolume.md
@@ -3,8 +3,8 @@
Returns true if element is a volume element
```fortran
- MODULE PURE FUNCTION isVolume(ElemType) RESULT(Ans)
- LOGICAL(LGT) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION isVolume
+MODULE PURE FUNCTION isVolume(ElemType) RESULT(Ans)
+ LOGICAL(LGT) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION isVolume
```
diff --git a/docs/docs-api/ReferenceElement/LocalNodeCoord.md b/docs/docs-api/ReferenceElement/LocalNodeCoord.md
index 6a0908a6..ad86c919 100644
--- a/docs/docs-api/ReferenceElement/LocalNodeCoord.md
+++ b/docs/docs-api/ReferenceElement/LocalNodeCoord.md
@@ -5,16 +5,16 @@ Returns the local NodeCoord of an element
This routine will be removed in near future. This routine is not included in generic LocalNodeCoord routine
```fortran
- MODULE PURE SUBROUTINE Local_NodeCoord(NodeCoord, ElemType)
- ! Define intent of dummy variables
- REAL(DFP), ALLOCATABLE, INTENT(INOUT) :: NodeCoord(:, :)
- INTEGER(I4B), INTENT(IN) :: ElemType
- END SUBROUTINE Local_NodeCoord
+MODULE PURE SUBROUTINE Local_NodeCoord(NodeCoord, ElemType)
+ ! Define intent of dummy variables
+ REAL(DFP), ALLOCATABLE, INTENT(INOUT) :: NodeCoord(:, :)
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END SUBROUTINE Local_NodeCoord
```
```fortran
- MODULE PURE FUNCTION Local_NodeCoord_RefElem(RefElem) RESULT(NodeCoord)
- CLASS(ReferenceElement_), INTENT(IN) :: RefElem
- REAL(DFP), ALLOCATABLE :: NodeCoord(:, :)
- END FUNCTION Local_NodeCoord_RefElem
+MODULE PURE FUNCTION Local_NodeCoord_RefElem(RefElem) RESULT(NodeCoord)
+ CLASS(ReferenceElement_), INTENT(IN) :: RefElem
+ REAL(DFP), ALLOCATABLE :: NodeCoord(:, :)
+END FUNCTION Local_NodeCoord_RefElem
```
diff --git a/docs/docs-api/ReferenceElement/MeasureSimplex.md b/docs/docs-api/ReferenceElement/MeasureSimplex.md
index 05b57a51..84472579 100644
--- a/docs/docs-api/ReferenceElement/MeasureSimplex.md
+++ b/docs/docs-api/ReferenceElement/MeasureSimplex.md
@@ -3,9 +3,9 @@
Returns the measures of a simplex.
```fortran
- MODULE PURE FUNCTION Measure_Simplex(RefElem, XiJ) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: RefElem
- REAL(DFP), INTENT(IN) :: XiJ(:, :)
- REAL(DFP) :: Ans
- END FUNCTION Measure_Simplex
+MODULE PURE FUNCTION Measure_Simplex(RefElem, XiJ) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: RefElem
+ REAL(DFP), INTENT(IN) :: XiJ(:, :)
+ REAL(DFP) :: Ans
+END FUNCTION Measure_Simplex
```
diff --git a/docs/docs-api/ReferenceElement/NNE.md b/docs/docs-api/ReferenceElement/NNE.md
index 3ee01fc0..1e9e3a86 100644
--- a/docs/docs-api/ReferenceElement/NNE.md
+++ b/docs/docs-api/ReferenceElement/NNE.md
@@ -7,15 +7,15 @@ This method defines `Operator( .NNE. )`.
:::
```fortran
- MODULE PURE FUNCTION NNE(obj) RESULT(Ans)
- CLASS(ReferenceTopology_), INTENT(IN) :: obj
- INTEGER(I4B) :: Ans
- END FUNCTION NNE
+MODULE PURE FUNCTION NNE(obj) RESULT(Ans)
+ CLASS(ReferenceTopology_), INTENT(IN) :: obj
+ INTEGER(I4B) :: Ans
+END FUNCTION NNE
```
```fortran
- MODULE PURE FUNCTION NNE(obj) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: obj
- INTEGER(I4B) :: Ans
- END FUNCTION NNE
+MODULE PURE FUNCTION NNE(obj) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: obj
+ INTEGER(I4B) :: Ans
+END FUNCTION NNE
```
diff --git a/docs/docs-api/ReferenceElement/ReferenceElement_.md b/docs/docs-api/ReferenceElement/ReferenceElement_.md
index 399a0f67..f5eb4e9e 100644
--- a/docs/docs-api/ReferenceElement/ReferenceElement_.md
+++ b/docs/docs-api/ReferenceElement/ReferenceElement_.md
@@ -44,7 +44,7 @@ END TYPE ReferenceElement_
Codimension of element.
| xidim | |
-|:-----:|:---------------:|
+| :---: | :-------------: |
| 0 | point |
| 1 | curve (or line) |
| 2 | surface |
diff --git a/docs/docs-api/ReferenceElement/ReferenceElement_test_1.md b/docs/docs-api/ReferenceElement/ReferenceElement_test_1.md
index 31f6a23a..6bf530de 100644
--- a/docs/docs-api/ReferenceElement/ReferenceElement_test_1.md
+++ b/docs/docs-api/ReferenceElement/ReferenceElement_test_1.md
@@ -10,7 +10,7 @@ title: ReferenceElement example 1
## Usage
-``` fortran
+```fortran
PROGRAM main
TYPE( ReferenceTopology_ ) :: obj
obj = ReferenceTopology( nptrs = [1,2,3], name=Triangle3 )
diff --git a/docs/docs-api/ReferenceElement/ReferenceElement_test_2.md b/docs/docs-api/ReferenceElement/ReferenceElement_test_2.md
index e2ce172a..f53384ea 100644
--- a/docs/docs-api/ReferenceElement/ReferenceElement_test_2.md
+++ b/docs/docs-api/ReferenceElement/ReferenceElement_test_2.md
@@ -12,7 +12,7 @@ title: ReferenceElement example 2
## Usage
-``` fortran
+```fortran
PROGRAM main
TYPE( ReferenceTriangle_ ) :: obj
TYPE( ReferenceElement_ ), ALLOCATABLE :: facetElems( : )
diff --git a/docs/docs-api/ReferenceElement/TotalEntities.md b/docs/docs-api/ReferenceElement/TotalEntities.md
index 39469bd6..a3e6889b 100644
--- a/docs/docs-api/ReferenceElement/TotalEntities.md
+++ b/docs/docs-api/ReferenceElement/TotalEntities.md
@@ -3,8 +3,8 @@
Total entities present in an element
```fortran
- MODULE PURE FUNCTION RefElem_TotalEntities(ElemType) RESULT(Ans)
- INTEGER(I4B), INTENT(IN) :: ElemType
- INTEGER(I4B) :: ans(4)
- END FUNCTION RefElem_TotalEntities
+MODULE PURE FUNCTION RefElem_TotalEntities(ElemType) RESULT(Ans)
+ INTEGER(I4B), INTENT(IN) :: ElemType
+ INTEGER(I4B) :: ans(4)
+END FUNCTION RefElem_TotalEntities
```
diff --git a/docs/docs-api/ReferenceElement/TotalNodesInElement.md b/docs/docs-api/ReferenceElement/TotalNodesInElement.md
index 348572c9..c1a23559 100644
--- a/docs/docs-api/ReferenceElement/TotalNodesInElement.md
+++ b/docs/docs-api/ReferenceElement/TotalNodesInElement.md
@@ -3,8 +3,8 @@
Returns total numbers of nodes present in a given element
```fortran
- MODULE PURE FUNCTION Total_Nodes_In_Element(ElemType) RESULT(Ans)
- INTEGER(I4B) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION Total_Nodes_In_Element
+MODULE PURE FUNCTION Total_Nodes_In_Element(ElemType) RESULT(Ans)
+ INTEGER(I4B) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION Total_Nodes_In_Element
```
diff --git a/docs/docs-api/ReferenceElement/XiDimension.md b/docs/docs-api/ReferenceElement/XiDimension.md
index bc39a605..9c659d55 100644
--- a/docs/docs-api/ReferenceElement/XiDimension.md
+++ b/docs/docs-api/ReferenceElement/XiDimension.md
@@ -3,15 +3,15 @@
Returns the xidimension of an element
```fortran
- MODULE PURE FUNCTION Elem_XiDimension1(ElemType) RESULT(Ans)
- INTEGER(I4B) :: Ans
- INTEGER(I4B), INTENT(IN) :: ElemType
- END FUNCTION Elem_XiDimension1
+MODULE PURE FUNCTION Elem_XiDimension1(ElemType) RESULT(Ans)
+ INTEGER(I4B) :: Ans
+ INTEGER(I4B), INTENT(IN) :: ElemType
+END FUNCTION Elem_XiDimension1
```
```fortran
- MODULE PURE FUNCTION Elem_Xidimension2(obj) RESULT(Ans)
- CLASS(ReferenceElement_), INTENT(IN) :: obj
- INTEGER(I4B) :: ans
- END FUNCTION Elem_Xidimension2
+MODULE PURE FUNCTION Elem_Xidimension2(obj) RESULT(Ans)
+ CLASS(ReferenceElement_), INTENT(IN) :: obj
+ INTEGER(I4B) :: ans
+END FUNCTION Elem_Xidimension2
```
diff --git a/docs/docs-api/ReferenceHexahedron/Hexahedron_Quality.md b/docs/docs-api/ReferenceHexahedron/Hexahedron_Quality.md
index 500a0547..1be03a10 100644
--- a/docs/docs-api/ReferenceHexahedron/Hexahedron_Quality.md
+++ b/docs/docs-api/ReferenceHexahedron/Hexahedron_Quality.md
@@ -4,7 +4,6 @@ This function returns the quality of hexahedron element.
## Interface
-
```fortran
INTERFACE
MODULE FUNCTION Hexahedron_quality(refelem, xij, measure) RESULT(Ans)
diff --git a/docs/docs-api/ReferencePoint/Initiate.md b/docs/docs-api/ReferencePoint/Initiate.md
index 95a73c20..7ab49db5 100644
--- a/docs/docs-api/ReferencePoint/Initiate.md
+++ b/docs/docs-api/ReferencePoint/Initiate.md
@@ -28,11 +28,11 @@ The `SIZE(XiJ,1)` should be equal to 3, i.e., x,y,z coord. Also note that this r
### Example
```fortran
- type( ReferencePoint_ ) :: obj1
- real( dfp ) :: xij( 3, 1 )
- call random_number( xij )
- call initiate( obj=obj1, NSD=3, xij )
- call display( obj1, "obj1 : " )
+type( ReferencePoint_ ) :: obj1
+real( dfp ) :: xij( 3, 1 )
+call random_number( xij )
+call initiate( obj=obj1, NSD=3, xij )
+call display( obj1, "obj1 : " )
```
## ReferencePoint (Constructor)
@@ -42,9 +42,9 @@ This routine constructs an instance of [[ReferencePoint_]] element
### Example
```fortran
- type( ReferencePoint_ ) :: obj
- obj = ReferencePoint(nsd=3)
- call display( obj, 'obj : ' )
+type( ReferencePoint_ ) :: obj
+obj = ReferencePoint(nsd=3)
+call display( obj, 'obj : ' )
```
## ReferencePoint_Pointer
diff --git a/docs/docs-api/ReferencePoint/Measure_Simplex_Point.md b/docs/docs-api/ReferencePoint/Measure_Simplex_Point.md
index 151e2248..97fc33ee 100644
--- a/docs/docs-api/ReferencePoint/Measure_Simplex_Point.md
+++ b/docs/docs-api/ReferencePoint/Measure_Simplex_Point.md
@@ -15,9 +15,9 @@ END FUNCTION Measure_Simplex_Point
## Example
```fortran
- type( ReferencePoint_ ) :: obj
- real( dfp ) :: xij( 3, 1 )
- call random_number( xij )
- call initiate( obj=obj, NSD=3, XiJ=xij )
- call display( MeasureSimplex(obj, obj%xij), "Measure :: ")
+type( ReferencePoint_ ) :: obj
+real( dfp ) :: xij( 3, 1 )
+call random_number( xij )
+call initiate( obj=obj, NSD=3, XiJ=xij )
+call display( MeasureSimplex(obj, obj%xij), "Measure :: ")
```
diff --git a/docs/docs-api/ReferencePrism/ReferencePrism_test_1.md b/docs/docs-api/ReferencePrism/ReferencePrism_test_1.md
index dc13e764..980e07c1 100644
--- a/docs/docs-api/ReferencePrism/ReferencePrism_test_1.md
+++ b/docs/docs-api/ReferencePrism/ReferencePrism_test_1.md
@@ -15,7 +15,7 @@ tags:
## Usage
-``` fortran
+```fortran
program main
use easifembase
use easifemclasses
@@ -26,11 +26,11 @@ program main
```
!!! note "Initiate"
- Initiate an instance of [[ReferencePrism_]]
+Initiate an instance of [[ReferencePrism_]]
```fortran
- CALL obj%Initiate(nsd=nsd)
- CALL obj%display( 'Obj : ' )
+CALL obj%Initiate(nsd=nsd)
+CALL obj%display( 'Obj : ' )
```
```fortran
diff --git a/docs/docs-api/ReferencePyramid/ReferencePyramid_test_1.md b/docs/docs-api/ReferencePyramid/ReferencePyramid_test_1.md
index 983473d5..5c8f6733 100644
--- a/docs/docs-api/ReferencePyramid/ReferencePyramid_test_1.md
+++ b/docs/docs-api/ReferencePyramid/ReferencePyramid_test_1.md
@@ -15,7 +15,7 @@ tags:
## Usage
-``` fortran
+```fortran
program main
use easifembase
use easifemclasses
@@ -26,11 +26,11 @@ program main
```
!!! note "Initiate"
- Initiate an instance of [[ReferencePyramid_]]
+Initiate an instance of [[ReferencePyramid_]]
```fortran
- CALL obj%Initiate(nsd=nsd)
- CALL obj%display( 'Obj : ' )
+CALL obj%Initiate(nsd=nsd)
+CALL obj%display( 'Obj : ' )
```
```fortran
diff --git a/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_2.md b/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_2.md
index 2a138e0f..0b0815a8 100644
--- a/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_2.md
+++ b/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_2.md
@@ -102,7 +102,7 @@ ans:
1
2
3
- 4
+ 4
```
diff --git a/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_3.md b/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_3.md
index 2fbab9cd..7a03181b 100644
--- a/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_3.md
+++ b/docs/docs-api/ReferenceQuadrangle/examples/_Initiate_test_3.md
@@ -102,7 +102,7 @@ ans:
1
2
3
- 4
+ 4
```
diff --git a/docs/docs-api/ReferenceTriangle/Initiate.md b/docs/docs-api/ReferenceTriangle/Initiate.md
index 4a68cb5a..b8ef87ef 100644
--- a/docs/docs-api/ReferenceTriangle/Initiate.md
+++ b/docs/docs-api/ReferenceTriangle/Initiate.md
@@ -12,7 +12,7 @@ MODULE PURE SUBROUTINE Initiate( obj, NSD, XiJ )
CLASS( ReferenceTriangle_ ), INTENT( INOUT ) :: obj
INTEGER( I4B ), INTENT( IN ) :: NSD
REAL( DFP ), INTENT( IN ), OPTIONAL :: XiJ( :, : )
-END SUBROUTINE Initiate
+END SUBROUTINE Initiate
```
:::info `xij`
@@ -20,11 +20,11 @@ END SUBROUTINE Initiate
- The shape of xij is `[3,3]`
- If xij is not present, then we use the following coordinates:
-| | | |
-| --- | --- | --- |
-| 0 | 1 | 0 |
-| 0 | 0 | 1 |
-| 0 | 0 | 0 |
+| | | |
+| - | - | - |
+| 0 | 1 | 0 |
+| 0 | 0 | 1 |
+| 0 | 0 | 0 |
:::
diff --git a/docs/docs-api/ReferenceTriangle/TriangleArea2D.md b/docs/docs-api/ReferenceTriangle/TriangleArea2D.md
index 8db07716..c4086606 100644
--- a/docs/docs-api/ReferenceTriangle/TriangleArea2D.md
+++ b/docs/docs-api/ReferenceTriangle/TriangleArea2D.md
@@ -2,7 +2,7 @@
This subroutine computes the area of a triangle in two dimensions.
-- If the triangle's vertices are given in counterclockwise order, the area will be positive.
+- If the triangle's vertices are given in counterclockwise order, the area will be positive.
- If the triangle's vertices are given in clockwise order, the area will be negative.
## Interface
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_.md
index 5929ba4e..a9c7f891 100755
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_.md
@@ -33,14 +33,14 @@ $$
\frac{\partial \textbf{U}}{\partial t} + \frac{\partial \textbf{f(U)}}{\partial x} + \frac{\partial \textbf{g(U)}}{\partial y} + \frac{\partial \textbf{h(U)}}{\partial z} + \cdots
$$
-where $\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m$. In this case we wish to compute the following matrices.
+where $\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m$. In this case we wish to compute the following matrices.
$$
{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} N^I T_a \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{iJ}
$$
$$
-{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{iJ}
+{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{iJ}
$$
$$
@@ -48,7 +48,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}g_{iJ}
+{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}g_{iJ}
$$
$$
@@ -56,7 +56,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}h_{iJ}
+{}^{4}M(I,J,a,b) = \delta {}^{a} U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}h_{iJ}
$$
Now we want to compute the space-time convective finite element matrix for following PDE.
@@ -81,14 +81,14 @@ $$
\frac{\partial \textbf{U}}{\partial t} + \frac{\partial \textbf{f(U)}}{\partial x} + \frac{\partial \textbf{g(U)}}{\partial y} + \frac{\partial \textbf{h(U)}}{\partial z} + \cdots
$$
-where $\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m$. In this case we wish to compute the following matrices.
+where $\textbf{U}, \textbf{f}, \textbf{g}, \textbf{h} \in R^m$. In this case we wish to compute the following matrices.
$$
{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} \frac{\partial N^J T_b}{\partial x} {dQ} \quad {}^{b}f_{iJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{iJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{iJ}
$$
$$
@@ -96,7 +96,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{iJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{iJ}
$$
$$
@@ -104,7 +104,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{iJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{iJ}
$$
Now we want to compute the space-time convective finite element matrix for following PDE.
@@ -120,7 +120,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} N^J T_b {dQ} \quad {}^{b}f_{jJ}
$$
$$
@@ -128,7 +128,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} N^J T_b {dQ} \quad {}^{b}g_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} N^J T_b {dQ} \quad {}^{b}g_{jJ}
$$
$$
@@ -136,7 +136,7 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} N^J T_b {dQ} \quad {}^{b}h_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} N^J T_b {dQ} \quad {}^{b}h_{jJ}
$$
The shape of each ${}^{4}M(:,:,a,b)$ is $(N_{NS} \times m, N_{NS} \times m)$. In this case there will be coupling between different components of $\mathbf{U}$. This coupling is due to $\mathbf{A_i}$. The structure of any of the above ${}^{4}\mathbf{M}$ is given as
@@ -145,7 +145,7 @@ $$
{}^{4}\mathbf{M}(:,:,a,b) =
\begin{bmatrix}
\mathbf{M_{11}} & \cdots & \mathbf{M_{1m}} \\
-\vdots & \ddots & \vdots \\
+\vdots & \ddots & \vdots \\
\mathbf{M_{m1}} & \cdots & \mathbf{M_{mm}} \\
\end{bmatrix}
$$
@@ -165,23 +165,23 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ji} \frac{\partial N^I T_a}{\partial x} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{ij} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{ij} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ji} \frac{\partial N^I T_a}{\partial y} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{ij} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} \frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{ij} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ji} \frac{\partial N^I T_a}{\partial z} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}
$$
The shape of each ${}^{4}M(:,:,a,b)$ is $(N_{NS} \times m, N_{NS} \times m)$. In this case there will be coupling between different components of $\mathbf{U}$. This coupling is due to $\mathbf{A_i}$. The structure of any of the above ${}^{4}\mathbf{M}$ is given as
@@ -190,7 +190,7 @@ $$
{}^{4}\mathbf{M}(:,:,a,b) =
\begin{bmatrix}
\mathbf{M_{11}} & \cdots & \mathbf{M_{1m}} \\
-\vdots & \ddots & \vdots \\
+\vdots & \ddots & \vdots \\
\mathbf{M_{m1}} & \cdots & \mathbf{M_{mm}} \\
\end{bmatrix}
$$
@@ -208,23 +208,23 @@ $$
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ki} \frac{\partial N^I T_a}{\partial x} [\mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_1} ]_{ki} \frac{\partial N^I T_a}{\partial x} [\mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}f_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{kj} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_2}]_{kj} \frac{\partial N^J T_b}{\partial y} {dQ} \quad {}^{b}g_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ki} \frac{\partial N^I T_a}{\partial y} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_2}]_{ki} \frac{\partial N^I T_a}{\partial y} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}g_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{kj} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [ \mathbf{A_0}]_{ki}\frac{\partial N^I T_a}{\partial t} [\mathbf{A_3}]_{kj} \frac{\partial N^J T_b}{\partial z} {dQ} \quad {}^{b}h_{jJ}
$$
$$
-{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ki} \frac{\partial N^I T_a}{\partial z} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}
+{}^{4}M(I,J,a,b) = {}^{a}\delta U_{iI} \quad \int_{Q_n} [\mathbf{A_3}]_{ki} \frac{\partial N^I T_a}{\partial z} [ \mathbf{A_0}]_{kj} \frac{\partial N^J T_b}{\partial t} {dQ} \quad {}^{b}h_{jJ}
$$
## Methods
@@ -275,7 +275,7 @@ You can learn more about this method from following pages
Implementation: `STCM_2` and `STCM_3`
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -285,7 +285,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_none, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -295,7 +295,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_none, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -305,7 +305,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_none, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -315,7 +315,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -325,7 +325,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_y, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -335,7 +335,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_z, c )
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x_{i}}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x_{i}}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
This matrix can be computed by setting dim=-1 as shown in the following command.
@@ -345,7 +345,7 @@ mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_none,c)
```
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x_{i}}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x_{i}}}d\Omega dt} } }
$$
This matrix can be computed using the following command.
@@ -522,13 +522,13 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial t}\frac{
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, c)
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, c)
```
$$
@@ -536,14 +536,14 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, c)
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, c)
- !! or
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, c)
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, c)
+!! or
```
You can learn how to use these methods from following pages.
@@ -556,23 +556,23 @@ You can learn how to use these methods from following pages.
Implementation: `STCM_1b`
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{}
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{}
\rho {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot
{N^J}{T_b}d\Omega dt} } }
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_none, &
- & c=c, rho=rho, projectionOn='test' )
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_none, &
- & c=c, rho=rho, projectionOn='test' )
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_none, &
- & c=c, rho=rho, projectionOn='test' )
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_none, &
- & c=c, rho=rho, projectionOn='test' )
+mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_none, &
+ & c=c, rho=rho, projectionOn='test' )
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_none, &
+ & c=c, rho=rho, projectionOn='test' )
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_none, &
+ & c=c, rho=rho, projectionOn='test' )
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_none, &
+ & c=c, rho=rho, projectionOn='test' )
```
$$
@@ -581,17 +581,17 @@ N^{J}T_{b}}{\partial x_{j}}d\Omega dt
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x_all, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_y, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_z, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x_all, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_x, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_y, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_none, term2=del_z, &
+ & c=c, rho=rho, projectionOn='trial')
```
You can learn more about this method from following pages
@@ -607,8 +607,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\parti
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
- & c=c, rho=rho, projectionOn='test')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
+ & c=c, rho=rho, projectionOn='test')
```
$$
@@ -616,8 +616,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\parti
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
- & c=c, rho=rho, projectionOn='test')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
+ & c=c, rho=rho, projectionOn='test')
```
$$
@@ -625,8 +625,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}{\parti
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
- & c=c, rho=rho, projectionOn='test')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
+ & c=c, rho=rho, projectionOn='test')
```
$$
@@ -634,8 +634,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial x}
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x, &
+ & c=c, rho=rho, projectionOn='trial')
```
$$
@@ -643,8 +643,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial y}
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_y, &
+ & c=c, rho=rho, projectionOn='trial')
```
$$
@@ -652,8 +652,8 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}{\partial z}
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_z, &
+ & c=c, rho=rho, projectionOn='trial')
```
You can learn more about this method from following pages.
@@ -665,8 +665,8 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho\frac{\partial N^{I}T_{a}}{\p
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_x, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_x, &
+ & c=c, rho=rho, projectionOn='trial')
```
$$
@@ -674,8 +674,8 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho c_{p}\frac{\partial N^{I}T_{
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x_all, &
- & c=c, rho=rho, projectionOn='test')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_x_all, &
+ & c=c, rho=rho, projectionOn='test')
```
You can learn more about this method from following pages
@@ -691,17 +691,17 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho c_{p}\frac{\partial N^{I}T_{
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, &
- & c=c, rho=rho, projectionOn='test')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, &
- & c=c, rho=rho, projectionOn='test')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, &
- & c=c, rho=rho, projectionOn='test')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, &
- & c=c, rho=rho, projectionOn='test')
+mat2=ConvectiveMatrix( test, trial, term1=del_x, term2=del_t, &
+ & c=c, rho=rho, projectionOn='test')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_y, term2=del_t, &
+ & c=c, rho=rho, projectionOn='test')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_z, term2=del_t, &
+ & c=c, rho=rho, projectionOn='test')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_x_all, term2=del_t, &
+ & c=c, rho=rho, projectionOn='test')
```
$$
@@ -709,17 +709,17 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho\frac{\partial N^{I}T_{a}}{\p
$$
```fortran
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, &
- & c=c, rho=rho, projectionOn='trial')
- !! or
- mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, &
- & c=c, rho=rho, projectionOn='trial')
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_y, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_z, &
+ & c=c, rho=rho, projectionOn='trial')
+!! or
+mat2=ConvectiveMatrix( test, trial, term1=del_t, term2=del_x_all, &
+ & c=c, rho=rho, projectionOn='trial')
```
You can learn more about this method from following pages
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_1.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_1.md
index 10bd8861..f25fda16 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_1.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_1.md
@@ -16,12 +16,12 @@ tags:
# STConvectiveMatrix example 1
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
@@ -29,11 +29,11 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}N^{I}T_{a}c_{j}\frac{\partial N^{
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Constant velocity
@@ -67,78 +67,78 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=DEL_NONE, term2=DEL_x, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=DEL_NONE, term2=DEL_x, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -153,8 +153,8 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=DEL_x, term2=DEL_NONE, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=DEL_x, term2=DEL_NONE, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_2.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_2.md
index 81e54e11..390a743a 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_2.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_2.md
@@ -16,12 +16,12 @@ tags:
# STConvectiveMatrix example 2
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
@@ -29,11 +29,11 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}N^{I}T_{a}c_{j}\frac{\partial N^{
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- nodal velocity, constant in time
@@ -67,79 +67,79 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpace)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=del_none, &
- & term2=del_x, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=del_none, &
+ & term2=del_x, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -154,9 +154,9 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=del_x, &
- & term2=del_none, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=del_x, &
+ & term2=del_none, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_21.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_21.md
index bfdea4b4..ab294216 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_21.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_21.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 21
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` or `STConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` or `STConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Constant velocity
@@ -83,79 +83,79 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -170,10 +170,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar )
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_22.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_22.md
index c18a5102..e2509639 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_22.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_22.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 22
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- spatial nodal values of c
@@ -83,80 +83,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -171,10 +171,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar )
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_23.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_23.md
index 9708ea16..61eafadb 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_23.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_23.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 23
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- space-time nodal values of c
@@ -83,80 +83,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -171,10 +171,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_24.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_24.md
index 405f6e09..389863a4 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_24.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_24.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 24
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Constant $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -177,10 +177,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_25.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_25.md
index fb0b5cda..af110c13 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_25.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_25.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 25
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Spatial nodal values $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpace)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -177,10 +177,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_26.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_26.md
index 883763f7..ed75c067 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_26.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_26.md
@@ -16,40 +16,40 @@ tags:
# STConvectiveMatrix example 26
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial y}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial z}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial y}}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial z}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Space-time nodal values $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -177,10 +177,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_y, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_y, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -197,10 +197,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -217,10 +217,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_27.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_27.md
index af23cef0..0af77c55 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_27.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_27.md
@@ -16,24 +16,24 @@ tags:
# STConvectiveMatrix example 26
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x_{i}}} c \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {\frac{{\partial {N^I}{T_a}}}{{\partial x_{i}}} c \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x_{i}}}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{N^J}{T_b} c \cdot \frac{{\partial {N^J}{T_b}}}{{\partial x_{i}}}d\Omega dt} } }
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Space-time nodal values $c$
@@ -71,80 +71,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x_all, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x_all, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -161,10 +161,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_none, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_none, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_3.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_3.md
index c1a11e1c..e80bfc79 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_3.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_3.md
@@ -16,12 +16,12 @@ tags:
# STConvectiveMatrix example 3
!!! note ""
- This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
-
+This example shows how to USE the SUBROUTINE called `ConvectiveMatrix` to create a space-time convective matrix. Line2 in space and time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{} {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot {N^J}{T_b}d\Omega dt} } }
$$
$$
@@ -29,11 +29,11 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}N^{I}T_{a}c_{j}\frac{\partial N^{
$$
!!! warning ""
- $c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is convective velocity, which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceLine_]] Line2 element for space
+- [[ReferenceLine_]] Line2 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- space-time nodal velocity
@@ -67,79 +67,79 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceLine(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceLine(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=del_none, &
- & term2=del_x, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=del_none, &
+ & term2=del_x, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -154,9 +154,9 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, term1=del_x, &
- & term2=del_none, c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, term1=del_x, &
+ & term2=del_none, c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_31.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_31.md
index cf013493..7ed8d2e1 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_31.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_31.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 31
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -45,11 +45,11 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- Space-time nodal values $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -177,10 +177,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_y, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_y, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -197,10 +197,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_t, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_t, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -217,10 +217,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_t, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_t, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
```bash
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_32.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_32.md
index fa0abee0..f7fdaafe 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_32.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_32.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 32
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -29,9 +29,9 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
@@ -71,80 +71,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
+cvar = NodalVariable(c, typeFEVariableScalar, typeFEVariableSpaceTime)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x_all, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x_all, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -158,12 +158,11 @@ PROGRAM main
-8.33333E-2 8.33333E-2 0.00000E+0 -8.33333E-2 0.00000E+0 8.33333E-2 -8.33333E-2 8.33333E-2 0.00000E+0 -8.33333E-2 0.00000E+0 8.33333E-2
```
-
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_t, &
- & c=cvar)
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_t, &
+ & c=cvar)
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_41.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_41.md
index 865ddd7b..65552c5d 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_41.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_41.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 42
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -45,11 +45,11 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -177,10 +177,10 @@ PROGRAM main
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_x, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_x, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -197,10 +197,10 @@ PROGRAM main
```
```fortran
- mat=convectivematrix(test=test, trial=test, &
- & term1=del_x, term2=del_x, &
- & c=cvar, projecton='test' )
- CALL Display(mat, "mat:")
+mat=convectivematrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x, &
+ & c=cvar, projecton='test' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -217,10 +217,10 @@ PROGRAM main
```
```fortran
- mat=convectivematrix(test=test, trial=test, &
- & term1=del_x, term2=del_y, &
- & c=cvar, projecton='test' )
- CALL Display(mat, "mat:")
+mat=convectivematrix(test=test, trial=test, &
+ & term1=del_x, term2=del_y, &
+ & c=cvar, projecton='test' )
+CALL Display(mat, "mat:")
```
```bash
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_42.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_42.md
index e80906e4..21cc0d2b 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_42.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_42.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 26
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -45,11 +45,11 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}c\frac{\partial N^{I}T_{a}}{\partial t}\frac
$$
!!! warning ""
- $c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
+$c$ is scalar [[FEVariable_]], which can be a constant, or a FUNCTION of space-time, or some nonlinear FUNCTION.
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -87,80 +87,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_x, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_x, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -182,12 +182,11 @@ PROGRAM main
-0.333333 0.166667 0.166667 -0.666667 0.333333 0.333333
```
-
```fortran
- mat=convectivematrix(test=test, trial=test, &
- & term1=del_x, term2=del_x_all, &
- & c=cvar, projecton='test' )
- CALL Display(mat, "mat:")
+mat=convectivematrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x_all, &
+ & c=cvar, projecton='test' )
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_51.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_51.md
index e297e0d3..43e80310 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_51.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_51.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 51
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -28,9 +28,9 @@ $$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -68,80 +68,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -160,38 +160,28 @@ PROGRAM main
we can also use `term2=del_y, del_z, del_x_all` as shown below to get the same results as above.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_y, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x_all, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_y, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x_all, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
-
!!! note "STConvectiveMatrix"
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_t, &
- & c=cvar, projectOn='test' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_t, &
+ & c=cvar, projectOn='test' )
+CALL Display(mat, "mat:")
```
??? example "Results"
- ```bash
- mat:
- ----------------------------------------------------------------
- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- ```
+`bash mat: ---------------------------------------------------------------- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333`
!!! settings "Cleanup"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_52.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_52.md
index f8fbe6d4..03f5b02c 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_52.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_52.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 52
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -28,9 +28,9 @@ $$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega}\frac{\partial N^{I}T_{a}}{\partial x_{p}}c_{p}\frac{\partial N^{J}T_{b}}{\partial t}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -68,80 +68,80 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -160,38 +160,28 @@ PROGRAM main
we can also use `term2=del_y, del_z, del_x_all` as shown below to get the same results as above.
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_y, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x_all, &
- & c=cvar, projectOn='trial' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_y, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x_all, &
+ & c=cvar, projectOn='trial' )
+CALL Display(mat, "mat:")
```
-
!!! note "STConvectiveMatrix"
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_t, &
- & c=cvar, projectOn='test' )
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_t, &
+ & c=cvar, projectOn='test' )
+CALL Display(mat, "mat:")
```
??? example "Results"
- ```bash
- mat:
- ----------------------------------------------------------------
- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
- ```
+`bash mat: ---------------------------------------------------------------- 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 0.166667 0.166667 0.166667 -0.166667 -0.166667 -0.166667 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333 -0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333`
!!! settings "Cleanup"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_61.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_61.md
index c7824447..44ad0396 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_61.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_61.md
@@ -16,12 +16,12 @@ tags:
# STConvectiveMatrix example 61
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
-M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{}
+M\left( {I,J,a,b} \right) = {\int_{{I_n}}^{} {\int_\Omega ^{}
\rho {{c_j}\frac{{\partial {N^I}{T_a}}}{{\partial {x_j}}} \cdot
{N^J}{T_b}d\Omega dt} } }
$$
@@ -31,9 +31,9 @@ M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega} \rho N^{I}T_{a}c_{j}\frac{\parti
N^{J}T_{b}}{\partial x_{j}}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -73,81 +73,81 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
- rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_none, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_none, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -165,40 +165,39 @@ PROGRAM main
we can also use `term2=del_y, del_z, del_x_all` as shown below to get the same results as above.
-
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_none, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_none, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_none, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_none, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
```
!!! note "STConvectiveMatrix"
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_y, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_y, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_none, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_none, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_71.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_71.md
index 7b34c0d9..af78a3c4 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_71.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_71.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 71
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -30,19 +30,16 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}
{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial y}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}
{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial z}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial x}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial y}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
@@ -53,9 +50,9 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial z}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -95,91 +92,91 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
- rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -195,22 +192,21 @@ PROGRAM main
we can also use `term1=del_y, del_z, del_x_all` as shown below to get the same results as above.
-
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_y, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_y, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -227,17 +223,17 @@ we can also use `term1=del_y, del_z, del_x_all` as shown below to get the same r
!!! note "STConvectiveMatrix"
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_y, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_y, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_72.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_72.md
index e0fbbba6..a5047569 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_72.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_72.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 71
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -30,19 +30,16 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}
{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial y}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho c_{p}\frac{\partial N^{I}T_{a}}
{\partial x_{p}}\frac{\partial N^{J}T_{b}}{\partial z}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial x}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
$$
-
$$
M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial y}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
@@ -53,9 +50,9 @@ M(I,J,a,b)=\int_{I_{n}}\int_{\Omega} \rho \frac{\partial N^{I}T_{a}}
{\partial z}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -95,91 +92,91 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
- rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -196,20 +193,20 @@ PROGRAM main
!!! note "STConvectiveMatrix"
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_y, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_y, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_81.md b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_81.md
index 94dc02fe..ddfb64b4 100644
--- a/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_81.md
+++ b/docs/docs-api/STConvectiveMatrix/STConvectiveMatrix_test_81.md
@@ -16,8 +16,8 @@ tags:
# STConvectiveMatrix example 81
!!! note ""
- This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
-
+This example shows how to USE the SUBROUTINE called `STConvectiveMatrix` to create a space-time convective matrix. Triangle3 in space and Line2 in time.
+
Here, we want to DO the following.
$$
@@ -28,9 +28,9 @@ $$
M\left(I,J,a,b\right)=\int_{I_{n}}\int_{\Omega}\rho\frac{\partial N^{I}T_{a}}{\partial t}c_{p}\frac{\partial N^{J}T_{b}}{\partial x_{p}}d\Omega dt
$$
-In this example, convective matrix is formed for
+In this example, convective matrix is formed for
-- [[ReferenceTriangle_]] Triangle3 element for space
+- [[ReferenceTriangle_]] Triangle3 element for space
- [[ReferenceLine_]] Line2 element for time
- [[QuadraturePoint_]] `GaussLegendre`
- constant value of $c$
@@ -70,91 +70,91 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain. Generate the quadrature points, and initiates an instance of [[ElemshapeData_]].
```fortran
- refelemForTime= ReferenceLine(nsd=1)
- CALL Initiate(obj=quadFortime, &
- & refelem=refelemForTime,&
- & order=orderForTime, &
- & quadratureType="GaussLegendre" )
- CALL Initiate( &
- & obj=time_elemsd, &
- & quad=quadForTime, &
- & refelem=refelemForTime, &
- & ContinuityType=typeH1,&
- & InterpolType=TypeLagrangeInterpolation)
- CALL Set(obj=time_elemsd, &
- & val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
+ refelemForTime= ReferenceLine(nsd=1)
+ CALL Initiate(obj=quadFortime, &
+& refelem=refelemForTime,&
+& order=orderForTime, &
+ & quadratureType="GaussLegendre" )
+ CALL Initiate( &
+ & obj=time_elemsd, &
+ & quad=quadForTime, &
+& refelem=refelemForTime, &
+ & ContinuityType=typeH1,&
+& InterpolType=TypeLagrangeInterpolation)
+ CALL Set(obj=time_elemsd, &
+& val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
```
!!! note ""
- Initiate [[STElemshapeData_]].
+Initiate [[STElemshapeData_]].
```fortran
- CALL Initiate(obj=test, elemsd=time_elemsd)
+CALL Initiate(obj=test, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- refelemForSpace = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quadForSpace, &
- & refelem=refelemForSpace, &
- & order=orderForSpace, &
- & quadratureType='GaussLegendre')
+ refelemForSpace = ReferenceTriangle(nsd=nsd)
+ CALL Initiate(obj=quadForSpace, &
+& refelem=refelemForSpace, &
+& order=orderForSpace, &
+& quadratureType='GaussLegendre')
```
```fortran
- DO ii = 1, SIZE(test)
- CALL Initiate( obj=test(ii), &
- & quad=quadForSpace, &
- & refelem=refelemForSpace, &
- & ContinuityType=typeH1, &
- & InterpolType=TypeLagrangeInterpolation)
- END DO
+ DO ii = 1, SIZE(test)
+ CALL Initiate( obj=test(ii), &
+ & quad=quadForSpace, &
+& refelem=refelemForSpace, &
+ & ContinuityType=typeH1, &
+& InterpolType=TypeLagrangeInterpolation)
+ END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xija` are the space-time nodal coordinates.
```fortran
- CALL Reallocate(xija, nsd, nns, nnt)
- DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
- DO ii = 1, SIZE(test)
- CALL Set(obj=test(ii), &
- & val=xija, &
- & N=test(ii)%N, &
- & dNdXi=test(ii)%dNdXi, &
- & T=test(ii)%T)
- END DO
+CALL Reallocate(xija, nsd, nns, nnt)
+ DO ii = 1, nnt; xija(:, :, ii) = xij; END DO
+ DO ii = 1, SIZE(test)
+ CALL Set(obj=test(ii), &
+ & val=xija, &
+ & N=test(ii)%N, &
+ & dNdXi=test(ii)%dNdXi, &
+ & T=test(ii)%T)
+ END DO
```
!!! note ""
- Let us now create the space-time convective matrix.
+Let us now create the space-time convective matrix.
```fortran
- cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
- rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
+cvar = NodalVariable(c, typeFEVariableVector, typeFEVariableConstant)
+rhovar = NodalVariable(rho, typeFEVariableScalar, typeFEVariableConstant)
```
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x, term2=del_t, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_y, term2=del_t, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_x_all, term2=del_t, &
- & c=cvar, rho=rhovar, projectOn='test')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x, term2=del_t, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_y, term2=del_t, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_x_all, term2=del_t, &
+ & c=cvar, rho=rhovar, projectOn='test')
+CALL Display(mat, "mat:")
```
??? example "Results"
@@ -168,22 +168,21 @@ PROGRAM main
-0.083333 -0.083333 -0.083333 0.083333 0.083333 0.083333
```
-
```fortran
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_y, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
- !! or
- mat=ConvectiveMatrix(test=test, trial=test, &
- & term1=del_t, term2=del_x_all, &
- & c=cvar, rho=rhovar, projectOn='trial')
- CALL Display(mat, "mat:")
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_y, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
+!! or
+mat=ConvectiveMatrix(test=test, trial=test, &
+ & term1=del_t, term2=del_x_all, &
+ & c=cvar, rho=rhovar, projectOn='trial')
+CALL Display(mat, "mat:")
```
??? example "Results"
diff --git a/docs/docs-api/STDiffusionMatrix/STDiffusionMatrix_.md b/docs/docs-api/STDiffusionMatrix/STDiffusionMatrix_.md
index bb269e4b..50cec93f 100644
--- a/docs/docs-api/STDiffusionMatrix/STDiffusionMatrix_.md
+++ b/docs/docs-api/STDiffusionMatrix/STDiffusionMatrix_.md
@@ -33,8 +33,8 @@ $$
General interface is given below.
```fortran
- mat4 = STDiffusionMatrix(test, trial)
- mat2 = DiffusionMatrix(test, trial)
+mat4 = STDiffusionMatrix(test, trial)
+mat2 = DiffusionMatrix(test, trial)
```
$$
@@ -46,8 +46,8 @@ $$
General interface is given below.
```fortran
- mat4 = STDiffusionMatrix(test, trial, k)
- mat2 = DiffusionMatrix(test, trial, k)
+mat4 = STDiffusionMatrix(test, trial, k)
+mat2 = DiffusionMatrix(test, trial, k)
```
!!! example ""
@@ -59,8 +59,8 @@ $$
Here, $\rho$ is a scalar [[FEVariable_]], therefore, we can obtain this matrix by following call.
```fortran
- mat4 = STDiffusionMatrix(test, trial, k=rho)
- mat2 = DiffusionMatrix(test, trial, k=rho)
+mat4 = STDiffusionMatrix(test, trial, k=rho)
+mat2 = DiffusionMatrix(test, trial, k=rho)
```
!!! example ""
@@ -72,8 +72,8 @@ $$
Here, $k_{ij}$ is a diffusion tensor [[FEVariable_]], therefore, we can obtain this matrix by following call.
```fortran
- mat4 = STDiffusionMatrix(test, trial, k=k)
- mat2 = DiffusionMatrix(test, trial, k=k)
+mat4 = STDiffusionMatrix(test, trial, k=k)
+mat2 = DiffusionMatrix(test, trial, k=k)
```
### STDiffusionMatrix 3
@@ -81,18 +81,18 @@ Here, $k_{ij}$ is a diffusion tensor [[FEVariable_]], therefore, we can obtain t
The general interface in this category is given below.
```fortran
- mat4 = STDiffusionMatrix(test, trial, c1, c2)
- mat2 = DiffusionMatrix(test, trial, c1, c2)
+mat4 = STDiffusionMatrix(test, trial, c1, c2)
+mat2 = DiffusionMatrix(test, trial, c1, c2)
```
!!! note "c1"
- c1 is a [[FEVariable_]], which can be a scalar, vector, or a matrix.
+c1 is a [[FEVariable_]], which can be a scalar, vector, or a matrix.
!!! note "c2"
- c2 is a [[FEVariable_]], which can be a scalar, vector, or a matrix.
+c2 is a [[FEVariable_]], which can be a scalar, vector, or a matrix.
!!! note ""
- 9 types of matrices can be formed from this routine.
+9 types of matrices can be formed from this routine.
!!! example "scalar-scalar"
@@ -107,8 +107,8 @@ $$
Here $\rho$ is a scalar and $k$ is a matrix (rank-2 tensor) [[FEVariable_]]. This matrix can be obtained by following expression.
```fortran
- mat4 = STDiffusionMatrix(test, trial, c1=rho, c2=k)
- mat2 = DiffusionMatrix(test, trial, c1=rho, c2=k)
+mat4 = STDiffusionMatrix(test, trial, c1=rho, c2=k)
+mat2 = DiffusionMatrix(test, trial, c1=rho, c2=k)
```
### STDiffusionMatrix 4
@@ -116,8 +116,8 @@ Here $\rho$ is a scalar and $k$ is a matrix (rank-2 tensor) [[FEVariable_]]. Thi
Generic interface is given below.
```fortran
- mat4 = STDiffusionMatrix(test, trial, c1, c2, c3)
- mat2 = DiffusionMatrix(test, trial, c1, c2, c3)
+mat4 = STDiffusionMatrix(test, trial, c1, c2, c3)
+mat2 = DiffusionMatrix(test, trial, c1, c2, c3)
```
$$
diff --git a/docs/docs-api/STElemshapeData/STElemshapeData_test_1.md b/docs/docs-api/STElemshapeData/STElemshapeData_test_1.md
index a5292651..afbc7072 100644
--- a/docs/docs-api/STElemshapeData/STElemshapeData_test_1.md
+++ b/docs/docs-api/STElemshapeData/STElemshapeData_test_1.md
@@ -19,9 +19,9 @@ tags:
## Usage
!!! note ""
- IMPORT modules and declare variables.
+IMPORT modules and declare variables.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
IMPLICIT NONE
@@ -40,12 +40,12 @@ PROGRAM main
```
!!! note ""
- First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain.
+First, we initiate a [[ReferenceLine_]] element for time domain. Note that `nsd` should be 1 when making reference element for time domain.
```fortran
- ALLOCATE (ReferenceLine_ :: refelem)
- refelem = ReferenceLine(nsd=1)
- CALL Display(refelem, "ReferenceElement :: ")
+ALLOCATE (ReferenceLine_ :: refelem)
+refelem = ReferenceLine(nsd=1)
+CALL Display(refelem, "ReferenceElement :: ")
```
??? example "Results"
@@ -92,22 +92,22 @@ PROGRAM main
```
!!! note ""
- Higher order Lagrange element can be obtained, `NNT` denotes number of nodes in time element. For line-element order will be equal to `NNT-1`.
+Higher order Lagrange element can be obtained, `NNT` denotes number of nodes in time element. For line-element order will be equal to `NNT-1`.
```fortran
- NNT = 2
- ALLOCATE (ReferenceLine_ :: highOrderElem)
- CALL refelem%LagrangeElement(order=NNT - 1, &
- & HighOrderObj=highOrderElem)
+NNT = 2
+ALLOCATE (ReferenceLine_ :: highOrderElem)
+CALL refelem%LagrangeElement(order=NNT - 1, &
+ & HighOrderObj=highOrderElem)
```
!!! note ""
- Generate Gauss-Legendre quadrature points on time element.
+Generate Gauss-Legendre quadrature points on time element.
```fortran
- CALL Initiate(obj=quad, refelem=refelem, order=refelem%order, &
- & quadratureType="GaussLegendre" )
- CALL display(quad, 'quad for time element :: ')
+CALL Initiate(obj=quad, refelem=refelem, order=refelem%order, &
+ & quadratureType="GaussLegendre" )
+CALL display(quad, 'quad for time element :: ')
```
??? example "Results"
@@ -122,7 +122,7 @@ PROGRAM main
```
!!! note ""
- Setting shape FUNCTION for time. This will setup following quantities.
+Setting shape FUNCTION for time. This will setup following quantities.
- $T$
- $\frac{dT}{d\theta}$
@@ -132,14 +132,14 @@ PROGRAM main
- `tiJ` it denotes the nodal values of time element.
```fortran
- tiJ(1, :) = [-1.0, 1.0]
- CALL initiate( &
- & obj=time_elemsd, quad=quad, refelem=refelem, &
- & ContinuityType=typeH1, InterpolType=TypeLagrangeInterpolation)
- CALL Deallocate(quad)
- CALL Set(obj=time_elemsd, val=tiJ, N=time_elemsd%N, &
- & dNdXi=time_elemsd%dNdXi)
- CALL Display(time_elemsd, "time_elemsd :")
+tiJ(1, :) = [-1.0, 1.0]
+CALL initiate( &
+ & obj=time_elemsd, quad=quad, refelem=refelem, &
+ & ContinuityType=typeH1, InterpolType=TypeLagrangeInterpolation)
+CALL Deallocate(quad)
+CALL Set(obj=time_elemsd, val=tiJ, N=time_elemsd%N, &
+ & dNdXi=time_elemsd%dNdXi)
+CALL Display(time_elemsd, "time_elemsd :")
```
??? example "Results"
@@ -195,7 +195,7 @@ PROGRAM main
```
!!! note ""
- Now we initiate an instance for storing space-time shape FUNCTION DATA, that is [[STElemshapeData_]] object. This will extract time-shape DATA info from `elemsd` and put it inside
+Now we initiate an instance for storing space-time shape FUNCTION DATA, that is [[STElemshapeData_]] object. This will extract time-shape DATA info from `elemsd` and put it inside
- `obj(i)%T`
- `obj(i)%dTdTheta`
@@ -204,17 +204,17 @@ PROGRAM main
- `obj(i)%Theta`
```fortran
- CALL Initiate(obj=obj, elemsd=time_elemsd)
+CALL Initiate(obj=obj, elemsd=time_elemsd)
```
!!! note ""
- Generating shape functions for space-elements. Here, we are selecting a triangular element
+Generating shape functions for space-elements. Here, we are selecting a triangular element
```fortran
- ALLOCATE (ReferenceTriangle_ :: refelem)
- refelem = ReferenceTriangle(nsd=nsd)
- CALL Initiate(obj=quad, refelem=refelem, order=1, quadratureType='GaussLegendre' )
- CALL Display(quad, "quad in triangle: ")
+ALLOCATE (ReferenceTriangle_ :: refelem)
+refelem = ReferenceTriangle(nsd=nsd)
+CALL Initiate(obj=quad, refelem=refelem, order=1, quadratureType='GaussLegendre' )
+CALL Display(quad, "quad in triangle: ")
```
??? example "Results"
@@ -228,9 +228,8 @@ PROGRAM main
-----------------------------------------
```
-
!!! note ""
- Setting local DATA of shape FUNCTION in space. This will set
+Setting local DATA of shape FUNCTION in space. This will set
- N
- dNdXi
@@ -238,25 +237,25 @@ PROGRAM main
- Quad
```fortran
- DO ii = 1, SIZE(obj)
- CALL initiate( &
- & obj=obj(ii), quad=quad, refelem=refelem, &
- & ContinuityType=typeH1, InterpolType=TypeLagrangeInterpolation)
- END DO
+DO ii = 1, SIZE(obj)
+ CALL initiate( &
+ & obj=obj(ii), quad=quad, refelem=refelem, &
+ & ContinuityType=typeH1, InterpolType=TypeLagrangeInterpolation)
+END DO
```
!!! note ""
- Setting the remaining DATA in obj. Here, `xiJa` are the space-time nodal coordinates.
+Setting the remaining DATA in obj. Here, `xiJa` are the space-time nodal coordinates.
```fortran
- ALLOCATE (xiJ(nsd, nns), xiJa(nsd, nns, nnt))
- xiJ = RESHAPE([0, 0, 1, 0, 0, 1], [nsd, nns])
- DO ii = 1, nnt; xiJa(:, :, ii) = xiJ; END DO
- DO ii = 1, SIZE(obj)
- CALL set(obj=obj(ii), val=xiJa, N=obj(ii)%N, &
- & dNdXi=obj(ii)%dNdXi, T=obj(ii)%T )
- CALL Display(obj(ii), "obj("//tostring(ii)//')=' )
- END DO
+ALLOCATE (xiJ(nsd, nns), xiJa(nsd, nns, nnt))
+xiJ = RESHAPE([0, 0, 1, 0, 0, 1], [nsd, nns])
+DO ii = 1, nnt; xiJa(:, :, ii) = xiJ; END DO
+DO ii = 1, SIZE(obj)
+ CALL set(obj=obj(ii), val=xiJa, N=obj(ii)%N, &
+ & dNdXi=obj(ii)%dNdXi, T=obj(ii)%T )
+ CALL Display(obj(ii), "obj("//tostring(ii)//')=' )
+END DO
```
??? example "Results"
diff --git a/docs/docs-api/STElemshapeData/STElemshapeData_test_2.md b/docs/docs-api/STElemshapeData/STElemshapeData_test_2.md
index 8ad0d56e..3310e4cc 100644
--- a/docs/docs-api/STElemshapeData/STElemshapeData_test_2.md
+++ b/docs/docs-api/STElemshapeData/STElemshapeData_test_2.md
@@ -1,72 +1,72 @@
program main
- !! This program shows how to set local data in
- !! space-time element shape data
+!! This program shows how to set local data in
+!! space-time element shape data
use easifem
implicit none
- !line order 1
- type( stelemshapedata_ ), allocatable :: obj( : )
- type( elemshapedata_ ) :: elemsd
- type( quadraturepoint_ ) :: quad
- class( referenceElement_ ), pointer :: refelem
- integer( i4b ) :: ii, NNT, nsd, nns
- real( dfp ) :: tiJ( 1, 2 )
- real( dfp ), allocatable :: xiJ(:,:), xiJa(:,:,:)
+!line order 1
+type( stelemshapedata_ ), allocatable :: obj( : )
+type( elemshapedata_ ) :: elemsd
+type( quadraturepoint_ ) :: quad
+class( referenceElement_ ), pointer :: refelem
+integer( i4b ) :: ii, NNT, nsd, nns
+real( dfp ) :: tiJ( 1, 2 )
+real( dfp ), allocatable :: xiJ(:,:), xiJa(:,:,:)
- ALLOCATE( ReferenceLine_ :: refelem )
- refelem = ReferenceLine( nsd = 1 )
- !! Note nsd should be 1 when making reference element for time domain
+ALLOCATE( ReferenceLine_ :: refelem )
+refelem = ReferenceLine( nsd = 1 )
+!! Note nsd should be 1 when making reference element for time domain
- !> higher order lagrange element can be obtained, however it works on
- ! static type only, therefore, we need to use select type statment.
- ! NNT denotes number of nodes in time
- NNT = 2
- SELECT TYPE( refelem )
- TYPE IS ( ReferenceLine_ )
- refelem = LagrangeElement( refelem = refelem, order = NNT-1 )
- END SELECT
+!> higher order lagrange element can be obtained, however it works on
+! static type only, therefore, we need to use select type statment.
+! NNT denotes number of nodes in time
+NNT = 2
+SELECT TYPE( refelem )
+TYPE IS ( ReferenceLine_ )
+refelem = LagrangeElement( refelem = refelem, order = NNT-1 )
+END SELECT
- quad = GaussLegendreQuadrature(refelem=refelem,order=1 )
- call display(quad, 'quadrature points :: ')
+quad = GaussLegendreQuadrature(refelem=refelem,order=1 )
+call display(quad, 'quadrature points :: ')
- !> Setting shape function for time
- ! This sets up T, dTdTheta, Jt, Wt, Theta
- ! tiJ denotes the nodal values of time
- tiJ(1,:) = [-1.0,1.0]
- call initiate( &
- & obj = elemsd, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation, &
- & XiJ = tiJ )
+!> Setting shape function for time
+! This sets up T, dTdTheta, Jt, Wt, Theta
+! tiJ denotes the nodal values of time
+tiJ(1,:) = [-1.0,1.0]
+call initiate( &
+& obj = elemsd, quad = quad, refelem = refelem, &
+& ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation, &
+& XiJ = tiJ )
- !> allocating stelemshape data
- ! This will extract time shape data info from elemsd and put it inside
- ! obj(i)%T, obj(i)%dTdTheta, obj(i)%Jt, obj(i)%Wt, obj(i)%Theta
- call initiate( obj = obj, elemsd = elemsd )
+!> allocating stelemshape data
+! This will extract time shape data info from elemsd and put it inside
+! obj(i)%T, obj(i)%dTdTheta, obj(i)%Jt, obj(i)%Wt, obj(i)%Theta
+call initiate( obj = obj, elemsd = elemsd )
- !> Generating shape functions on space element
- ! Here we are selecting a triangular element
- nsd = 2; nns = 3
- ALLOCATE( ReferenceTriangle_ :: refelem )
- refelem = ReferenceTriangle( nsd = nsd )
- quad = GaussLegendreQuadrature( refelem=refelem, order = 1 )
+!> Generating shape functions on space element
+! Here we are selecting a triangular element
+nsd = 2; nns = 3
+ALLOCATE( ReferenceTriangle_ :: refelem )
+refelem = ReferenceTriangle( nsd = nsd )
+quad = GaussLegendreQuadrature( refelem=refelem, order = 1 )
- !> Setting local data of shape function in space
- ! This will set N, dNdXi, Ws, Quad
- do ii = 1, size( obj )
- call initiate( &
- & obj = obj( ii ), quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
- end do
+!> Setting local data of shape function in space
+! This will set N, dNdXi, Ws, Quad
+do ii = 1, size( obj )
+call initiate( &
+& obj = obj( ii ), quad = quad, refelem = refelem, &
+& ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+end do
- !> Setting the remaining data in obj, before data we need to construct
- ! space time element.
- allocate( xiJ( nsd, nns ), xiJa( nsd, nns, nnt ) )
- xiJ = reshape( [0,0,1,0,0,1], [nsd,nns] )
- do ii=1,nnt; xiJa(:,:,ii)=xiJ; end do
- do ii = 1, size(obj)
- call setValue(obj(ii), xiJa )
- call display( obj( ii ), "ii :: "// str( ii ) )
- end do
+!> Setting the remaining data in obj, before data we need to construct
+! space time element.
+allocate( xiJ( nsd, nns ), xiJa( nsd, nns, nnt ) )
+xiJ = reshape( [0,0,1,0,0,1], [nsd,nns] )
+do ii=1,nnt; xiJa(:,:,ii)=xiJ; end do
+do ii = 1, size(obj)
+call setValue(obj(ii), xiJa )
+call display( obj( ii ), "ii :: "// str( ii ) )
+end do
end program
diff --git a/docs/docs-api/STElemshapeData/setMethod.md b/docs/docs-api/STElemshapeData/setMethod.md
index 7d0bb344..8503cd0e 100644
--- a/docs/docs-api/STElemshapeData/setMethod.md
+++ b/docs/docs-api/STElemshapeData/setMethod.md
@@ -13,32 +13,32 @@ nsd = 2; order = 1; refelem = ReferenceTriangle( nsd = nsd )
quad = GaussLegendreQuadrature( refelem = refelem, order = order )
call initiate( obj = obj, quad = quad, refelem = refelem, &
- & ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
+& ContinuityType= typeH1, InterpolType = TypeLagrangeInterpolation )
! ! set thickness
! block
-! real( dfp ) :: thickness( 3 )
-! thickness = 2; call display( thickness, 'thickness' )
-! call setThickness( obj, thickness )
-! call display( obj, 'obj' )
+! real( dfp ) :: thickness( 3 )
+! thickness = 2; call display( thickness, 'thickness' )
+! call setThickness( obj, thickness )
+! call display( obj, 'obj' )
! end block
! ! test
! block
-! real( dfp ) :: xiJ( nsd, 3 )
-! xiJ = reshape( [1, 0, 0, 1, 1, 1], [nsd,3] )
-! call display( 'setBarycentricCoord()')
-! call setBarycentricCoord( obj, xiJ )
-! call display( obj, 'obj' )
+! real( dfp ) :: xiJ( nsd, 3 )
+! xiJ = reshape( [1, 0, 0, 1, 1, 1], [nsd,3] )
+! call display( 'setBarycentricCoord()')
+! call setBarycentricCoord( obj, xiJ )
+! call display( obj, 'obj' )
! end block
! ! test
! block
-! real( dfp ) :: xiJ( nsd, 3 )
-! xiJ = reshape( [1, 0, 0, 1, 1, 1], [nsd,3] )
-! call display( 'setJacobian()')
-! call setJacobian( obj, xiJ )
-! call setJs( obj )
-! call display( obj, 'obj' )
+! real( dfp ) :: xiJ( nsd, 3 )
+! xiJ = reshape( [1, 0, 0, 1, 1, 1], [nsd,3] )
+! call display( 'setJacobian()')
+! call setJacobian( obj, xiJ )
+! call setJs( obj )
+! call display( obj, 'obj' )
! end block
-end program main
\ No newline at end of file
+end program main
diff --git a/docs/docs-api/STMassMatrix/index.md b/docs/docs-api/STMassMatrix/index.md
index 5f223ab2..0e8aaa23 100644
--- a/docs/docs-api/STMassMatrix/index.md
+++ b/docs/docs-api/STMassMatrix/index.md
@@ -15,4 +15,3 @@ tags:
---
# STMassMatrix
-
diff --git a/docs/docs-api/STScalarField/Import.md b/docs/docs-api/STScalarField/Import.md
index ad0b8d6a..9b7313bd 100644
--- a/docs/docs-api/STScalarField/Import.md
+++ b/docs/docs-api/STScalarField/Import.md
@@ -17,10 +17,10 @@ END INTERFACE
## Template
-| Variable | Data type | Value | Comment |
-| ----------- | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
+| Variable | Data type | Value | Comment |
+| ----------- | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------: |
| `restart`* | Char | `T` or `F` | The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `timeCompo` | Integer | | Number of time components |
-| | | | |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `timeCompo` | Integer | | Number of time components |
+| | | | |
diff --git a/docs/docs-api/STScalarField/Set.md b/docs/docs-api/STScalarField/Set.md
index 03198a73..26e29f8d 100644
--- a/docs/docs-api/STScalarField/Set.md
+++ b/docs/docs-api/STScalarField/Set.md
@@ -7,143 +7,143 @@ Calling example:
Set single entry
```fortran
- CLASS(STScalarField_), INTENT(INOUT) :: obj
- INTEGER(I4B):: globalNode
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_), INTENT(INOUT) :: obj
+INTEGER(I4B):: globalNode
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all enties of timecompo
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries
```fortran
- REAL(DFP):: VALUE(:, :)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+REAL(DFP):: VALUE(:, :)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries of timeCompo
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE(:)
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE(:)
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set single entries of timeCompo
```fortran
- CLASS(STScalarField_):: obj
- TYPE(ScalarField_):: VALUE
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+TYPE(ScalarField_):: VALUE
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set the multiple entries
```fortran
- CLASS(STScalarField_):: obj
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries
```fortran
- CLASS(STScalarField_):: obj
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: VALUE(:, :)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: VALUE(:, :)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries of timeCompo
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE(:)
- INTEGER(I4B):: globalNode(:)
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE(:)
+INTEGER(I4B):: globalNode(:)
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set single entry of a timeCompo
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE
- INTEGER(I4B):: globalNode
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE
+INTEGER(I4B):: globalNode
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using triplets
```fortran
- CLASS(STScalarField_):: obj
- INTEGER(I4B):: istart
- INTEGER(I4B):: iend
- INTEGER(I4B):: stride
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+INTEGER(I4B):: istart
+INTEGER(I4B):: iend
+INTEGER(I4B):: stride
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using triplets
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE(:, :)
- INTEGER(I4B):: istart
- INTEGER(I4B):: iend
- INTEGER(I4B):: stride
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE(:, :)
+INTEGER(I4B):: istart
+INTEGER(I4B):: iend
+INTEGER(I4B):: stride
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using FEVariable
```fortran
- CLASS(STScalarField_):: obj
- TYPE(FEVariable_):: VALUE
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+TYPE(FEVariable_):: VALUE
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all values
```fortran
- CLASS(STScalarField_):: obj
- REAL(DFP):: VALUE
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarField_):: obj
+REAL(DFP):: VALUE
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
import Tabs from '@theme/Tabs';
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_1.md b/docs/docs-api/STScalarField/_STScalarField_test_1.md
index 512394be..18c92286 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_1.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_1.md
@@ -85,5 +85,5 @@ end program main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_10.md b/docs/docs-api/STScalarField/_STScalarField_test_10.md
index b0a55f09..94118bba 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_10.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_10.md
@@ -51,7 +51,6 @@ end program main
```
```txt title="results"
-
value(:, 1:10) =
------------------
0.342982 0.188825
@@ -98,5 +97,5 @@ end program main
0.00000, 0.00000,
0.09937, 0.35371,
0.00000, 0.00000,
-0.24898, 0.88070,
+0.24898, 0.88070,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_11.md b/docs/docs-api/STScalarField/_STScalarField_test_11.md
index 7c2a2225..86ab3324 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_11.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_11.md
@@ -98,5 +98,5 @@ end program main
0.00000, 0.00000,
0.22539, 0.90930,
0.00000, 0.00000,
-0.24995, 0.34753,
+0.24995, 0.34753,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_12.md b/docs/docs-api/STScalarField/_STScalarField_test_12.md
index 3477f10c..f6e09619 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_12.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_12.md
@@ -55,7 +55,6 @@ end program main
```
```txt title="results"
-
fevar =
# RANK :: 0 (SCALAR)
# VarType: SPACE & TIME
@@ -102,5 +101,5 @@ fevar =
0.00000, 0.00000,
0.87583, 0.91986,
0.00000, 0.00000,
-0.82736, 0.94632,
+0.82736, 0.94632,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_13.md b/docs/docs-api/STScalarField/_STScalarField_test_13.md
index a8202fb9..3e6c23c6 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_13.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_13.md
@@ -79,5 +79,5 @@ end program main
2.00000, 2.00000,
2.00000, 2.00000,
2.00000, 2.00000,
-2.00000, 2.00000,
+2.00000, 2.00000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_14.md b/docs/docs-api/STScalarField/_STScalarField_test_14.md
index 66d6dc06..2857be69 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_14.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_14.md
@@ -66,5 +66,5 @@ val2 node 1 =
val2 node 5 =
--------------
0.490376
- 0.450990
+ 0.450990
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_17.md b/docs/docs-api/STScalarField/_STScalarField_test_17.md
index 1fe34741..cccd584c 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_17.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_17.md
@@ -58,5 +58,4 @@ end program main
------------------------------------------------
0.450271 0.195486 0.123940 0.445466 0.178457
0.779424 0.951806 0.209786 0.867207 0.345955
-
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_2.md b/docs/docs-api/STScalarField/_STScalarField_test_2.md
index 0d40588d..ec66e9f7 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_2.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_2.md
@@ -77,5 +77,5 @@ end program main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_3.md b/docs/docs-api/STScalarField/_STScalarField_test_3.md
index 91010ff3..54965e8a 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_3.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_3.md
@@ -85,5 +85,5 @@ end program main
-------, -------,
1.0000, 10.0000,
0.0000, 0.0000,
-10.0000, 20.0000,
+10.0000, 20.0000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_4.md b/docs/docs-api/STScalarField/_STScalarField_test_4.md
index 9250547a..f5e7131b 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_4.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_4.md
@@ -82,5 +82,5 @@ end program main
1.00000, 10.0000,
1.00000, 10.0000,
1.00000, 10.0000,
-1.00000, 10.0000,
+1.00000, 10.0000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_5.md b/docs/docs-api/STScalarField/_STScalarField_test_5.md
index 039062f7..0c50c660 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_5.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_5.md
@@ -83,5 +83,5 @@ end program main
1.00000, 2.00000,
1.00000, 2.00000,
1.00000, 2.00000,
-1.00000, 2.00000,
+1.00000, 2.00000,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_6.md b/docs/docs-api/STScalarField/_STScalarField_test_6.md
index ffb53c6e..d263d3c8 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_6.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_6.md
@@ -92,5 +92,5 @@ end program main
0.727974, 0.360218,
0.267881, 0.996750,
0.823990, 0.639337,
-0.764518, 0.011806,
+0.764518, 0.011806,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_7.md b/docs/docs-api/STScalarField/_STScalarField_test_7.md
index 749cd33a..ae185735 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_7.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_7.md
@@ -53,7 +53,6 @@ end program main
```
```txt title="results"
-
value(:, 1:5) =
------------------------------------------------
0.092312 0.463958 0.375566 0.521316 0.103649
@@ -94,5 +93,5 @@ end program main
0.463958, 0.507362,
0.375566, 0.215718,
0.521316, 0.664761,
-0.103649, 0.815387,
+0.103649, 0.815387,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_8.md b/docs/docs-api/STScalarField/_STScalarField_test_8.md
index 8d7e3975..d4cfcb17 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_8.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_8.md
@@ -64,7 +64,6 @@ end program main
```
```txt title="results"
-
value(:, 1:5) =
------------------------------------------------
0.040207 0.491438 0.943856 0.172155 0.719283
@@ -104,5 +103,5 @@ end program main
0.491438, 0.697048,
0.943856, 0.376879,
0.172155, 0.552362,
-0.719283, 0.539996,
+0.719283, 0.539996,
```
diff --git a/docs/docs-api/STScalarField/_STScalarField_test_9.md b/docs/docs-api/STScalarField/_STScalarField_test_9.md
index 78bcb650..da8a53e9 100644
--- a/docs/docs-api/STScalarField/_STScalarField_test_9.md
+++ b/docs/docs-api/STScalarField/_STScalarField_test_9.md
@@ -94,6 +94,5 @@ value(:, 1) =
0.00000, 0.00000,
0.66286, 0.51217,
0.00000, 0.00000,
-0.66286, 0.51217,
-
+0.66286, 0.51217,
```
diff --git a/docs/docs-api/STScalarFieldLis/Import.md b/docs/docs-api/STScalarFieldLis/Import.md
index ad0b8d6a..9b7313bd 100644
--- a/docs/docs-api/STScalarFieldLis/Import.md
+++ b/docs/docs-api/STScalarFieldLis/Import.md
@@ -17,10 +17,10 @@ END INTERFACE
## Template
-| Variable | Data type | Value | Comment |
-| ----------- | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
+| Variable | Data type | Value | Comment |
+| ----------- | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------: |
| `restart`* | Char | `T` or `F` | The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `timeCompo` | Integer | | Number of time components |
-| | | | |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `timeCompo` | Integer | | Number of time components |
+| | | | |
diff --git a/docs/docs-api/STScalarFieldLis/Set.md b/docs/docs-api/STScalarFieldLis/Set.md
index b741c7e0..281602a7 100644
--- a/docs/docs-api/STScalarFieldLis/Set.md
+++ b/docs/docs-api/STScalarFieldLis/Set.md
@@ -7,143 +7,143 @@ Calling example:
Set single entry
```fortran
- CLASS(STScalarFieldLis_), INTENT(INOUT) :: obj
- INTEGER(I4B):: globalNode
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_), INTENT(INOUT) :: obj
+INTEGER(I4B):: globalNode
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all enties of timecompo
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries
```fortran
- REAL(DFP):: VALUE(:, :)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+REAL(DFP):: VALUE(:, :)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all entries of timeCompo
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE(:)
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE(:)
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set single entries of timeCompo
```fortran
- CLASS(STScalarFieldLis_):: obj
- TYPE(ScalarField_):: VALUE
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+TYPE(ScalarField_):: VALUE
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set the multiple entries
```fortran
- CLASS(STScalarFieldLis_):: obj
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries
```fortran
- CLASS(STScalarFieldLis_):: obj
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: VALUE(:, :)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: VALUE(:, :)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries of timeCompo
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE(:)
- INTEGER(I4B):: globalNode(:)
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE(:)
+INTEGER(I4B):: globalNode(:)
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set single entry of a timeCompo
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE
- INTEGER(I4B):: globalNode
- INTEGER(I4B):: timeCompo
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE
+INTEGER(I4B):: globalNode
+INTEGER(I4B):: timeCompo
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using triplets
```fortran
- CLASS(STScalarFieldLis_):: obj
- INTEGER(I4B):: istart
- INTEGER(I4B):: iend
- INTEGER(I4B):: stride
- REAL(DFP):: VALUE(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+INTEGER(I4B):: istart
+INTEGER(I4B):: iend
+INTEGER(I4B):: stride
+REAL(DFP):: VALUE(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using triplets
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE(:, :)
- INTEGER(I4B):: istart
- INTEGER(I4B):: iend
- INTEGER(I4B):: stride
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE(:, :)
+INTEGER(I4B):: istart
+INTEGER(I4B):: iend
+INTEGER(I4B):: stride
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set multiple entries using FEVariable
```fortran
- CLASS(STScalarFieldLis_):: obj
- TYPE(FEVariable_):: VALUE
- INTEGER(I4B):: globalNode(:)
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+TYPE(FEVariable_):: VALUE
+INTEGER(I4B):: globalNode(:)
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
Set all values
```fortran
- CLASS(STScalarFieldLis_):: obj
- REAL(DFP):: VALUE
- REAL(DFP):: scale
- LOGICAL(LGT):: addContribution
+CLASS(STScalarFieldLis_):: obj
+REAL(DFP):: VALUE
+REAL(DFP):: scale
+LOGICAL(LGT):: addContribution
```
import Tabs from '@theme/Tabs';
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_1.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_1.md
index 512394be..18c92286 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_1.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_1.md
@@ -85,5 +85,5 @@ end program main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_10.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_10.md
index b0a55f09..94118bba 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_10.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_10.md
@@ -51,7 +51,6 @@ end program main
```
```txt title="results"
-
value(:, 1:10) =
------------------
0.342982 0.188825
@@ -98,5 +97,5 @@ end program main
0.00000, 0.00000,
0.09937, 0.35371,
0.00000, 0.00000,
-0.24898, 0.88070,
+0.24898, 0.88070,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_11.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_11.md
index 7c2a2225..86ab3324 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_11.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_11.md
@@ -98,5 +98,5 @@ end program main
0.00000, 0.00000,
0.22539, 0.90930,
0.00000, 0.00000,
-0.24995, 0.34753,
+0.24995, 0.34753,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_12.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_12.md
index 3477f10c..f6e09619 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_12.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_12.md
@@ -55,7 +55,6 @@ end program main
```
```txt title="results"
-
fevar =
# RANK :: 0 (SCALAR)
# VarType: SPACE & TIME
@@ -102,5 +101,5 @@ fevar =
0.00000, 0.00000,
0.87583, 0.91986,
0.00000, 0.00000,
-0.82736, 0.94632,
+0.82736, 0.94632,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_13.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_13.md
index a8202fb9..3e6c23c6 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_13.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_13.md
@@ -79,5 +79,5 @@ end program main
2.00000, 2.00000,
2.00000, 2.00000,
2.00000, 2.00000,
-2.00000, 2.00000,
+2.00000, 2.00000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_14.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_14.md
index 66d6dc06..2857be69 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_14.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_14.md
@@ -66,5 +66,5 @@ val2 node 1 =
val2 node 5 =
--------------
0.490376
- 0.450990
+ 0.450990
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_17.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_17.md
index 1fe34741..cccd584c 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_17.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_17.md
@@ -58,5 +58,4 @@ end program main
------------------------------------------------
0.450271 0.195486 0.123940 0.445466 0.178457
0.779424 0.951806 0.209786 0.867207 0.345955
-
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_2.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_2.md
index 0d40588d..ec66e9f7 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_2.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_2.md
@@ -77,5 +77,5 @@ end program main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_3.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_3.md
index 91010ff3..54965e8a 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_3.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_3.md
@@ -85,5 +85,5 @@ end program main
-------, -------,
1.0000, 10.0000,
0.0000, 0.0000,
-10.0000, 20.0000,
+10.0000, 20.0000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_4.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_4.md
index 9250547a..f5e7131b 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_4.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_4.md
@@ -82,5 +82,5 @@ end program main
1.00000, 10.0000,
1.00000, 10.0000,
1.00000, 10.0000,
-1.00000, 10.0000,
+1.00000, 10.0000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_5.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_5.md
index 039062f7..0c50c660 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_5.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_5.md
@@ -83,5 +83,5 @@ end program main
1.00000, 2.00000,
1.00000, 2.00000,
1.00000, 2.00000,
-1.00000, 2.00000,
+1.00000, 2.00000,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_6.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_6.md
index ffb53c6e..d263d3c8 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_6.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_6.md
@@ -92,5 +92,5 @@ end program main
0.727974, 0.360218,
0.267881, 0.996750,
0.823990, 0.639337,
-0.764518, 0.011806,
+0.764518, 0.011806,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_7.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_7.md
index 749cd33a..ae185735 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_7.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_7.md
@@ -53,7 +53,6 @@ end program main
```
```txt title="results"
-
value(:, 1:5) =
------------------------------------------------
0.092312 0.463958 0.375566 0.521316 0.103649
@@ -94,5 +93,5 @@ end program main
0.463958, 0.507362,
0.375566, 0.215718,
0.521316, 0.664761,
-0.103649, 0.815387,
+0.103649, 0.815387,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_8.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_8.md
index 8d7e3975..d4cfcb17 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_8.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_8.md
@@ -64,7 +64,6 @@ end program main
```
```txt title="results"
-
value(:, 1:5) =
------------------------------------------------
0.040207 0.491438 0.943856 0.172155 0.719283
@@ -104,5 +103,5 @@ end program main
0.491438, 0.697048,
0.943856, 0.376879,
0.172155, 0.552362,
-0.719283, 0.539996,
+0.719283, 0.539996,
```
diff --git a/docs/docs-api/STScalarFieldLis/_STScalarField_test_9.md b/docs/docs-api/STScalarFieldLis/_STScalarField_test_9.md
index 78bcb650..da8a53e9 100644
--- a/docs/docs-api/STScalarFieldLis/_STScalarField_test_9.md
+++ b/docs/docs-api/STScalarFieldLis/_STScalarField_test_9.md
@@ -94,6 +94,5 @@ value(:, 1) =
0.00000, 0.00000,
0.66286, 0.51217,
0.00000, 0.00000,
-0.66286, 0.51217,
-
+0.66286, 0.51217,
```
diff --git a/docs/docs-api/STVectorField/Get.md b/docs/docs-api/STVectorField/Get.md
index c100849a..50c75823 100644
--- a/docs/docs-api/STVectorField/Get.md
+++ b/docs/docs-api/STVectorField/Get.md
@@ -27,11 +27,11 @@ END INTERFACE
- If `globalnode` is present then this routine returns the space-time values at the `globalnode`. Note that the returned values are stored in `value` in `NODES_FMT` format. You can get the space-time nodal values by reshaping `value`, that is, `reshape(value, [spaceCompo, timeCompo])`.
-- If `spaceCompo` and `timeCompo` are present, then this routine returns all the nodal values of specified space-time component. The size of `value` will be `tNodes`.
+- If `spaceCompo` and `timeCompo` are present, then this routine returns all the nodal values of specified space-time component. The size of `value` will be `tNodes`.
- If `spaceCompo` is present and `timeCompo` is not present, then this routine returns nodal values of all time components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [timeCompo, tNodes])` you can retrive data.
-- If `timeCompo` is present and `spaceCompo` is not present, then this routine returns nodal values of all space components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [spaceCompo, tNodes])` you can retrive data.
+- If `timeCompo` is present and `spaceCompo` is not present, then this routine returns nodal values of all space components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [spaceCompo, tNodes])` you can retrive data.
diff --git a/docs/docs-api/STVectorField/Import.md b/docs/docs-api/STVectorField/Import.md
index bd708348..9a300a9b 100644
--- a/docs/docs-api/STVectorField/Import.md
+++ b/docs/docs-api/STVectorField/Import.md
@@ -18,10 +18,10 @@ END INTERFACE
## Template
-| Variable | Data type | Value | Comment |
-| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
+| Variable | Data type | Value | Comment |
+| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------: |
| `restart`* | Char | `T` or `F` | The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `timeCompo` | Integer | | Number of time components |
-| `spaceCompo` | Integer | | Number of spatial components |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `timeCompo` | Integer | | Number of time components |
+| `spaceCompo` | Integer | | Number of spatial components |
diff --git a/docs/docs-api/STVectorField/Norm1.md b/docs/docs-api/STVectorField/Norm1.md
index 372ba6b0..d5d1d754 100644
--- a/docs/docs-api/STVectorField/Norm1.md
+++ b/docs/docs-api/STVectorField/Norm1.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm1
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorField/Norm2.md b/docs/docs-api/STVectorField/Norm2.md
index 40bc681c..ed9187a6 100644
--- a/docs/docs-api/STVectorField/Norm2.md
+++ b/docs/docs-api/STVectorField/Norm2.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorField/Normi.md b/docs/docs-api/STVectorField/Normi.md
index 878295db..b5f12254 100644
--- a/docs/docs-api/STVectorField/Normi.md
+++ b/docs/docs-api/STVectorField/Normi.md
@@ -1,6 +1,6 @@
# Normi
-L$\infty$ Norm of space-time vector field.
+L$\infty$ Norm of space-time vector field.
## Interface
diff --git a/docs/docs-api/STVectorField/Set.md b/docs/docs-api/STVectorField/Set.md
index 6ac076bd..1ed99f51 100644
--- a/docs/docs-api/STVectorField/Set.md
+++ b/docs/docs-api/STVectorField/Set.md
@@ -26,7 +26,7 @@ END INTERFACE
```
- This routine sets the single entry of the vector field.
-- Here, `value` represents the space-time values at a node.
+- Here, `value` represents the space-time values at a node.
- The shape of `value` should be same as (`obj%spaceCompo`, `obj%timeCompo`).
@@ -61,7 +61,7 @@ END INTERFACE
```
- This method sets all the nodal values to `value`
-- Here, `value` represents the space-time values at a node.
+- Here, `value` represents the space-time values at a node.
- The shape of `value` should be same as (`obj%spaceCompo`, `obj%timeCompo`).
@@ -92,11 +92,11 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set3
-END INTERFACE
+END INTERFACE
```
- This method sets all the nodal values to `value`
-- Here, `value` represents the value of space-time component.
+- Here, `value` represents the value of space-time component.
## Interface 4
@@ -150,7 +150,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set5
-END INTERFACE
+END INTERFACE
```
- This routine sets all entries
@@ -316,7 +316,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set9
-END INTERFACE
+END INTERFACE
```
- This routine sets the multiple values of a space-time component.
@@ -354,7 +354,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set10
-END INTERFACE
+END INTERFACE
```
- This routine sets a single entry of space-time component
@@ -391,7 +391,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set11
-END INTERFACE
+END INTERFACE
```
- Sets multiple values using triplets.
@@ -502,7 +502,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set14
-END INTERFACE
+END INTERFACE
```
- Sets all values to a given scalar value.
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_1.md b/docs/docs-api/STVectorField/_STVectorField_test_1.md
index 4d9b3f8d..033c136e 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_1.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_1.md
@@ -90,5 +90,4 @@ END PROGRAM main
.
0.00000, 0.00000,
# spaceCompo = 2
-
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_10.md b/docs/docs-api/STVectorField/_STVectorField_test_10.md
index 2b3204a0..6f2f43cf 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_10.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_10.md
@@ -70,6 +70,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.071824 0.155473
- 0.960612 0.894463
-
+ 0.960612 0.894463
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_11.md b/docs/docs-api/STVectorField/_STVectorField_test_11.md
index 74248b94..98cc4db9 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_11.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_11.md
@@ -73,5 +73,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.013282 0.602673
- 0.989292 0.968863
+ 0.989292 0.968863
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_14.md b/docs/docs-api/STVectorField/_STVectorField_test_14.md
index 3056c33f..f482526a 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_14.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_14.md
@@ -72,5 +72,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.286623 0.191233
- 0.202942 0.154461
+ 0.202942 0.154461
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_15.md b/docs/docs-api/STVectorField/_STVectorField_test_15.md
index de0c0895..f1a115da 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_15.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_15.md
@@ -72,5 +72,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.820733 0.090183
- 0.799077 0.523587
+ 0.799077 0.523587
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_19.md b/docs/docs-api/STVectorField/_STVectorField_test_19.md
index fd70cae6..5f77b638 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_19.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_19.md
@@ -75,5 +75,5 @@ get value =( :, :, 2 ) =
get value =( :, :, 3 ) =
-------------------------
0.661545 0.874983
- 0.684608 0.628923
+ 0.684608 0.628923
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_20.md b/docs/docs-api/STVectorField/_STVectorField_test_20.md
index b6d22e53..5c33a1a4 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_20.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_20.md
@@ -63,5 +63,5 @@ get value =
------------
0.360376
0.515725
- 0.139868
+ 0.139868
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_21.md b/docs/docs-api/STVectorField/_STVectorField_test_21.md
index 8137d435..3c35d1df 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_21.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_21.md
@@ -63,5 +63,5 @@ get value =
------------
0.360376
0.515725
- 0.139868
+ 0.139868
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_22.md b/docs/docs-api/STVectorField/_STVectorField_test_22.md
index 14f24777..fd06efe4 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_22.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_22.md
@@ -75,5 +75,5 @@ get value =( :, :, 2 ) =
get value =( :, :, 3 ) =
-------------------------
0.026450 0.434365
- 0.303477 0.002217
+ 0.303477 0.002217
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_23.md b/docs/docs-api/STVectorField/_STVectorField_test_23.md
index e27b0b52..d85f0132 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_23.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_23.md
@@ -63,5 +63,5 @@ get value =
------------
0.826815
0.325986
- 0.024318
+ 0.024318
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_24.md b/docs/docs-api/STVectorField/_STVectorField_test_24.md
index 0fc421ed..5e1ade8b 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_24.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_24.md
@@ -60,5 +60,4 @@ set value(:,:,3) =
------------------
0.129860 0.440831
0.624638 0.761094
-
```
diff --git a/docs/docs-api/STVectorField/_STVectorField_test_6.md b/docs/docs-api/STVectorField/_STVectorField_test_6.md
index c21ca520..acc4d1ad 100644
--- a/docs/docs-api/STVectorField/_STVectorField_test_6.md
+++ b/docs/docs-api/STVectorField/_STVectorField_test_6.md
@@ -69,6 +69,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.544904 0.914453
- 0.097415 0.895436
-
+ 0.097415 0.895436
```
diff --git a/docs/docs-api/STVectorField/index.md b/docs/docs-api/STVectorField/index.md
index 92dc97f0..a95720ce 100644
--- a/docs/docs-api/STVectorField/index.md
+++ b/docs/docs-api/STVectorField/index.md
@@ -19,7 +19,6 @@ tags:
- linearAlgebra
---
-
# STVectorField
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/STVectorFieldLis/Get.md b/docs/docs-api/STVectorFieldLis/Get.md
index b406e050..5a3ac643 100644
--- a/docs/docs-api/STVectorFieldLis/Get.md
+++ b/docs/docs-api/STVectorFieldLis/Get.md
@@ -27,11 +27,11 @@ END INTERFACE
- If `globalnode` is present then this routine returns the space-time values at the `globalnode`. Note that the returned values are stored in `value` in `NODES_FMT` format. You can get the space-time nodal values by reshaping `value`, that is, `reshape(value, [spaceCompo, timeCompo])`.
-- If `spaceCompo` and `timeCompo` are present, then this routine returns all the nodal values of specified space-time component. The size of `value` will be `tNodes`.
+- If `spaceCompo` and `timeCompo` are present, then this routine returns all the nodal values of specified space-time component. The size of `value` will be `tNodes`.
- If `spaceCompo` is present and `timeCompo` is not present, then this routine returns nodal values of all time components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [timeCompo, tNodes])` you can retrive data.
-- If `timeCompo` is present and `spaceCompo` is not present, then this routine returns nodal values of all space components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [spaceCompo, tNodes])` you can retrive data.
+- If `timeCompo` is present and `spaceCompo` is not present, then this routine returns nodal values of all space components in `value`. The data is stored in `NODES_FMT`. Therefore, by reshaping `value` as `reshape(value, [spaceCompo, tNodes])` you can retrive data.
diff --git a/docs/docs-api/STVectorFieldLis/GetPointerOfComponent.md b/docs/docs-api/STVectorFieldLis/GetPointerOfComponent.md
index 318f842a..8424da1e 100644
--- a/docs/docs-api/STVectorFieldLis/GetPointerOfComponent.md
+++ b/docs/docs-api/STVectorFieldLis/GetPointerOfComponent.md
@@ -18,4 +18,4 @@ INTERFACE
REAL(DFP), POINTER :: ans(:)
END FUNCTION GetPointerOfComponent
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorFieldLis/Import.md b/docs/docs-api/STVectorFieldLis/Import.md
index c3384e85..49713ab2 100644
--- a/docs/docs-api/STVectorFieldLis/Import.md
+++ b/docs/docs-api/STVectorFieldLis/Import.md
@@ -18,13 +18,10 @@ END INTERFACE
## Template
-
-| Variable | Data type | Value | Comment |
-| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
+| Variable | Data type | Value | Comment |
+| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------: |
| `restart`* | Char | `T` or `F` | The default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `timeCompo` | Integer | | Number of time components |
-| `spaceCompo` | Integer | | Number of spatial components |
-
-
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `timeCompo` | Integer | | Number of time components |
+| `spaceCompo` | Integer | | Number of spatial components |
diff --git a/docs/docs-api/STVectorFieldLis/Norm1.md b/docs/docs-api/STVectorFieldLis/Norm1.md
index 372ba6b0..d5d1d754 100644
--- a/docs/docs-api/STVectorFieldLis/Norm1.md
+++ b/docs/docs-api/STVectorFieldLis/Norm1.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm1
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorFieldLis/Norm2.md b/docs/docs-api/STVectorFieldLis/Norm2.md
index 40bc681c..ed9187a6 100644
--- a/docs/docs-api/STVectorFieldLis/Norm2.md
+++ b/docs/docs-api/STVectorFieldLis/Norm2.md
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorFieldLis/Normi.md b/docs/docs-api/STVectorFieldLis/Normi.md
index e526fbec..b5f12254 100644
--- a/docs/docs-api/STVectorFieldLis/Normi.md
+++ b/docs/docs-api/STVectorFieldLis/Normi.md
@@ -1,6 +1,6 @@
# Normi
-L$\infty$ Norm of space-time vector field.
+L$\infty$ Norm of space-time vector field.
## Interface
@@ -11,4 +11,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Normi
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/STVectorFieldLis/Set.md b/docs/docs-api/STVectorFieldLis/Set.md
index b81c82ed..d8e7bdf9 100644
--- a/docs/docs-api/STVectorFieldLis/Set.md
+++ b/docs/docs-api/STVectorFieldLis/Set.md
@@ -26,7 +26,7 @@ END INTERFACE
```
- This routine sets the single entry of the vector field.
-- Here, `value` represents the space-time values at a node.
+- Here, `value` represents the space-time values at a node.
- The shape of `value` should be same as (`obj%spaceCompo`, `obj%timeCompo`).
@@ -61,7 +61,7 @@ END INTERFACE
```
- This method sets all the nodal values to `value`
-- Here, `value` represents the space-time values at a node.
+- Here, `value` represents the space-time values at a node.
- The shape of `value` should be same as (`obj%spaceCompo`, `obj%timeCompo`).
@@ -92,11 +92,11 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set3
-END INTERFACE
+END INTERFACE
```
- This method sets all the nodal values to `value`
-- Here, `value` represents the value of space-time component.
+- Here, `value` represents the value of space-time component.
## Interface 4
@@ -150,7 +150,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set5
-END INTERFACE
+END INTERFACE
```
- This routine sets all entries
@@ -304,7 +304,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set9
-END INTERFACE
+END INTERFACE
```
- This routine sets the multiple values of a space-time component.
@@ -342,7 +342,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set10
-END INTERFACE
+END INTERFACE
```
- This routine sets a single entry of space-time component
@@ -379,7 +379,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set11
-END INTERFACE
+END INTERFACE
```
- Sets multiple values using triplets.
@@ -490,7 +490,7 @@ INTERFACE
REAL(DFP), OPTIONAL, INTENT(IN) :: scale
LOGICAL(LGT), OPTIONAL, INTENT(IN) :: addContribution
END SUBROUTINE Set14
-END INTERFACE
+END INTERFACE
```
- Sets all values to a given scalar value.
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_1.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_1.md
index a14196ed..08c553ab 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_1.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_1.md
@@ -90,5 +90,4 @@ END PROGRAM main
.
0.00000, 0.00000,
# spaceCompo = 2
-
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_10.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_10.md
index 19cf2119..daf0f65e 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_10.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_10.md
@@ -70,6 +70,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.071824 0.155473
- 0.960612 0.894463
-
+ 0.960612 0.894463
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_11.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_11.md
index db871582..93c12be1 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_11.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_11.md
@@ -73,5 +73,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.013282 0.602673
- 0.989292 0.968863
+ 0.989292 0.968863
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_14.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_14.md
index 3c516420..49f58690 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_14.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_14.md
@@ -72,5 +72,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.286623 0.191233
- 0.202942 0.154461
+ 0.202942 0.154461
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_15.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_15.md
index 0666f512..d11e021d 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_15.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_15.md
@@ -72,5 +72,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.820733 0.090183
- 0.799077 0.523587
+ 0.799077 0.523587
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_19.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_19.md
index 023a7ce5..7bf1bb83 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_19.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_19.md
@@ -75,5 +75,5 @@ get value =( :, :, 2 ) =
get value =( :, :, 3 ) =
-------------------------
0.661545 0.874983
- 0.684608 0.628923
+ 0.684608 0.628923
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_20.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_20.md
index 0869b369..484c0fd7 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_20.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_20.md
@@ -63,5 +63,5 @@ get value =
------------
0.360376
0.515725
- 0.139868
+ 0.139868
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_22.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_22.md
index 2374568c..dd0027c2 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_22.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_22.md
@@ -75,5 +75,5 @@ get value =( :, :, 2 ) =
get value =( :, :, 3 ) =
-------------------------
0.026450 0.434365
- 0.303477 0.002217
+ 0.303477 0.002217
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_23.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_23.md
index 6270b892..d923b8f4 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_23.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_23.md
@@ -63,5 +63,5 @@ get value =
------------
0.826815
0.325986
- 0.024318
+ 0.024318
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_24.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_24.md
index 2a013401..c573b129 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_24.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_24.md
@@ -60,5 +60,4 @@ set value(:,:,3) =
------------------
0.129860 0.440831
0.624638 0.761094
-
```
diff --git a/docs/docs-api/STVectorFieldLis/_STVectorField_test_6.md b/docs/docs-api/STVectorFieldLis/_STVectorField_test_6.md
index b14fd16b..702fdb0c 100644
--- a/docs/docs-api/STVectorFieldLis/_STVectorField_test_6.md
+++ b/docs/docs-api/STVectorFieldLis/_STVectorField_test_6.md
@@ -69,6 +69,5 @@ value =( :, :, 2 ) =
value =( :, :, 3 ) =
---------------------
0.544904 0.914453
- 0.097415 0.895436
-
+ 0.097415 0.895436
```
diff --git a/docs/docs-api/ScalarField/Norm2.md b/docs/docs-api/ScalarField/Norm2.md
index 07ba3859..0517d902 100644
--- a/docs/docs-api/ScalarField/Norm2.md
+++ b/docs/docs-api/ScalarField/Norm2.md
@@ -18,4 +18,3 @@ INTERFACE
END FUNCTION Norm2
END INTERFACE
```
-
diff --git a/docs/docs-api/ScalarField/examples/_ScalarField_test_12.md b/docs/docs-api/ScalarField/examples/_ScalarField_test_12.md
index 59125834..fcb92997 100644
--- a/docs/docs-api/ScalarField/examples/_ScalarField_test_12.md
+++ b/docs/docs-api/ScalarField/examples/_ScalarField_test_12.md
@@ -13,33 +13,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -79,12 +79,12 @@ PROGRAM main
0.979929,
0.115532,
0.829484,
-0.007732,
+0.007732,
```
```fortran title="Get all entries"
- CALL obj%get( value=realVec)
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec)
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
@@ -94,7 +94,7 @@ realVec(1:5) =
0.103488
0.686197
0.979929
- 0.115532
+ 0.115532
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarField/examples/_ScalarField_test_13.md b/docs/docs-api/ScalarField/examples/_ScalarField_test_13.md
index fa0311ca..5cc77938 100644
--- a/docs/docs-api/ScalarField/examples/_ScalarField_test_13.md
+++ b/docs/docs-api/ScalarField/examples/_ScalarField_test_13.md
@@ -13,33 +13,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -80,12 +80,12 @@ PROGRAM main
0.996872,
0.347315,
0.827425,
-0.263551,
+0.263551,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=realVec, globalNode=[1,2,3,4,5])
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec, globalNode=[1,2,3,4,5])
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
@@ -95,7 +95,7 @@ realVec(1:5) =
0.745878
0.844285
0.691231
- 0.996872
+ 0.996872
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarField/examples/_ScalarField_test_14.md b/docs/docs-api/ScalarField/examples/_ScalarField_test_14.md
index 17033933..2b3d622d 100644
--- a/docs/docs-api/ScalarField/examples/_ScalarField_test_14.md
+++ b/docs/docs-api/ScalarField/examples/_ScalarField_test_14.md
@@ -13,33 +13,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -79,12 +79,12 @@ PROGRAM main
0.278568,
0.979695,
0.156565,
-0.007468,
+0.007468,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=realVec, istart=1, iend=5, stride=1)
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec, istart=1, iend=5, stride=1)
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
@@ -94,7 +94,7 @@ realVec(1:5) =
0.106486
0.227661
0.278568
- 0.979695
+ 0.979695
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarField/examples/_ScalarField_test_15.md b/docs/docs-api/ScalarField/examples/_ScalarField_test_15.md
index d7fab14e..1b1ac0ea 100644
--- a/docs/docs-api/ScalarField/examples/_ScalarField_test_15.md
+++ b/docs/docs-api/ScalarField/examples/_ScalarField_test_15.md
@@ -14,33 +14,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -79,12 +79,12 @@ PROGRAM main
0.967630,
0.835710,
0.821063,
-0.613570,
+0.613570,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=fevar, globalNode=arange(1,5,1) )
- CALL Display(fevar, "fevar = ")
+CALL obj%get( value=fevar, globalNode=arange(1,5,1) )
+CALL Display(fevar, "fevar = ")
```
```txt title="results"
@@ -97,8 +97,7 @@ fevar =
0.370695
0.967630
0.835710
-0.821063
-
+0.821063
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/Import.md b/docs/docs-api/ScalarFieldLis/Import.md
index 06998443..2c42df59 100644
--- a/docs/docs-api/ScalarFieldLis/Import.md
+++ b/docs/docs-api/ScalarFieldLis/Import.md
@@ -36,12 +36,12 @@ import EXAMPLE9 from "./_ScalarField_test_2.md";
- The Schema of [HDF5File_](../HDF5File/HDF5File_.md), which is used for import and export calls, is given below.
-
-| Variable | Data type | Value | Comment |
-| ----------- | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT` | |
-| `engine` | String | `NATIVE_SERIAL` | This is constant variable, it tells constructor about the engine name |
-| `dof` | [DOF_](../DOF/DOF_.md) | Group(/) | See [DOF_](../DOF/DOF_.md) class for more details |
-| `realVec` | [RealVector_](../RealVector/RealVector_.md) | Group(/) | See [RealVector_](../RealVector/RealVector_.md) class for more details |
+The Schema of [HDF5File_](../HDF5File/HDF5File_.md), which is used for import and export calls, is given below.
+
+| Variable | Data type | Value | Comment |
+| ----------- | :-----------------------------------------: | :------------------: | ---------------------------------------------------------------------: |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT` | |
+| `engine` | String | `NATIVE_SERIAL` | This is constant variable, it tells constructor about the engine name |
+| `dof` | [DOF_](../DOF/DOF_.md) | Group(/) | See [DOF_](../DOF/DOF_.md) class for more details |
+| `realVec` | [RealVector_](../RealVector/RealVector_.md) | Group(/) | See [RealVector_](../RealVector/RealVector_.md) class for more details |
diff --git a/docs/docs-api/ScalarFieldLis/Norm1.md b/docs/docs-api/ScalarFieldLis/Norm1.md
index 4358107f..1d6a5f48 100644
--- a/docs/docs-api/ScalarFieldLis/Norm1.md
+++ b/docs/docs-api/ScalarFieldLis/Norm1.md
@@ -2,7 +2,6 @@
Norm 1 of scalar field.
-
## Interface
```fortran
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_1.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_1.md
index 0f0cde83..4e7280a9 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_1.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_1.md
@@ -16,27 +16,27 @@ PROGRAM main
CHARACTER(*), PARAMETER :: engine = "LIS_OMP"
```
-```fortran title="setScalarFieldParam"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
+```fortran title="setScalarFieldParam"
+CALL FPL_INIT()
+CALL param%initiate()
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
```
```fortran title="Initiate"
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- CALL meshfile%Deallocate()
- CALL obj%initiate( param, dom )
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+CALL meshfile%Deallocate()
+CALL obj%initiate( param, dom )
```
Let's display the scalar field.
```fortran
- CALL obj%Display("obj = ")
+CALL obj%Display("obj = ")
```
```txt title="results"
@@ -75,14 +75,14 @@ Let's display the scalar field.
0.00000,
0.00000,
0.00000,
-0.00000,
+0.00000,
```
```fortran title="Export"
- CALL resultFile%initiate( filename="./result.h5", mode="NEW" )
- CALL resultFile%open()
- CALL obj%export( hdf5=resultFile, group="/scalarField1")
- CALL resultFile%Deallocate()
+CALL resultFile%initiate( filename="./result.h5", mode="NEW" )
+CALL resultFile%open()
+CALL obj%export( hdf5=resultFile, group="/scalarField1")
+CALL resultFile%Deallocate()
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_10.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_10.md
index aaf74f75..4a7cf075 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_10.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_10.md
@@ -25,38 +25,38 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U2", &
- & engine=engine)
- CALL obj2%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U2", &
+ & engine=engine)
+CALL obj2%initiate( param, dom )
```
```fortran title="Setting multiple values using triplets"
- realVec = [1.0, 3.0, 5.0]
- CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
- CALL obj2%set(obj)
- CALL obj2%Display("obj2 = ")
+realVec = [1.0, 3.0, 5.0]
+CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
+CALL obj2%set(obj)
+CALL obj2%Display("obj2 = ")
```
```txt title="results"
@@ -94,7 +94,7 @@ PROGRAM main
0.00000,
3.00000,
0.00000,
-5.00000,
+5.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_11.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_11.md
index fe3cc504..ade92eaf 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_11.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_11.md
@@ -17,33 +17,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -55,12 +55,12 @@ PROGRAM main
0.356140,
0.737333,
0.739410,
-0.286026,
+0.286026,
```
```fortran
- CALL obj%get( value=avar, globalNode=2)
- CALL Display(avar, "avar = ")
+CALL obj%get( value=avar, globalNode=2)
+CALL Display(avar, "avar = ")
```
```txt title="results"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_12.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_12.md
index 6c3e06b6..53dcbf17 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_12.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_12.md
@@ -17,33 +17,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -56,20 +56,20 @@ PROGRAM main
0.369671,
0.252695,
0.327842,
-0.649937,
+0.649937,
```
```fortran title="Get all entries"
- CALL obj%get( value=realVec)
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec)
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
- 0.132029
- 0.489434
- 0.690163
- 0.424993
- 0.313813
+0.132029
+0.489434
+0.690163
+0.424993
+0.313813
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_13.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_13.md
index f70f8424..894f9366 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_13.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_13.md
@@ -17,33 +17,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -58,12 +58,12 @@ PROGRAM main
0.313375,
0.566592,
0.783093,
-0.844735,
+0.844735,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=realVec, globalNode=[1,2,3,4,5])
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec, globalNode=[1,2,3,4,5])
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
@@ -73,7 +73,7 @@ realVec(1:5) =
0.222078
0.384477
0.360936
- 0.522693
+ 0.522693
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_14.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_14.md
index 659c7d88..a0c16307 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_14.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_14.md
@@ -17,33 +17,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -56,12 +56,12 @@ PROGRAM main
0.618558,
0.111490,
0.447643,
-0.582593,
+0.582593,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=realVec, istart=1, iend=5, stride=1)
- CALL Display(realVec(1:5), "realVec(1:5) = ")
+CALL obj%get( value=realVec, istart=1, iend=5, stride=1)
+CALL Display(realVec(1:5), "realVec(1:5) = ")
```
```txt title="results"
@@ -71,7 +71,7 @@ realVec(1:5) =
0.905349
0.707204
0.759759
- 0.867313
+ 0.867313
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_15.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_15.md
index bd1d6942..0cd3e1d4 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_15.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_15.md
@@ -18,33 +18,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -57,12 +57,12 @@ PROGRAM main
0.443036,
0.104665,
0.759430,
-0.853888,
+0.853888,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=fevar, globalNode=arange(1,5,1) )
- CALL Display(fevar, "fevar = ")
+CALL obj%get( value=fevar, globalNode=arange(1,5,1) )
+CALL Display(fevar, "fevar = ")
```
```txt title="results"
@@ -75,7 +75,7 @@ fevar =
0.721996
0.808386
0.022536
-0.843059
+0.843059
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_16.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_16.md
index 57c17235..0cd864db 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_16.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_16.md
@@ -24,38 +24,38 @@ In this example
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U2", &
- & engine=engine)
- CALL obj2%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U2", &
+ & engine=engine)
+CALL obj2%initiate( param, dom )
```
```fortran title="Setting multiple values using triplets"
- realVec = [1.0, 3.0, 5.0]
- CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
- CALL obj2%set(obj)
- CALL obj2%Display("obj2 = ")
+realVec = [1.0, 3.0, 5.0]
+CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
+CALL obj2%set(obj)
+CALL obj2%Display("obj2 = ")
```
```txt title="results"
@@ -93,7 +93,7 @@ In this example
0.00000,
3.00000,
0.00000,
-5.00000,
+5.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_17.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_17.md
index d9175d69..04024a76 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_17.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_17.md
@@ -25,18 +25,18 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
@@ -54,10 +54,10 @@ PROGRAM main
```
```fortran title="Setting multiple values using triplets"
- realVec = [1.0, 3.0, 5.0]
- CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
- CALL obj2%set(obj)
- CALL obj2%Display("obj2 = ")
+realVec = [1.0, 3.0, 5.0]
+CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
+CALL obj2%set(obj)
+CALL obj2%Display("obj2 = ")
```
```txt title="results"
@@ -95,7 +95,7 @@ PROGRAM main
0.00000,
3.00000,
0.00000,
-5.00000,
+5.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_18.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_18.md
index 39fa2987..9c5c5892 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_18.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_18.md
@@ -25,18 +25,18 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
@@ -54,10 +54,10 @@ PROGRAM main
```
```fortran title="Setting multiple values using triplets"
- CALL Reallocate(realVec, dom%getTotalNodes())
- CALL RANDOM_NUMBER(realVec)
- CALL obj%set(value=realVec)
- CALL obj%Display("obj = ")
+CALL Reallocate(realVec, dom%getTotalNodes())
+CALL RANDOM_NUMBER(realVec)
+CALL obj%set(value=realVec)
+CALL obj%Display("obj = ")
```
```txt title="results"
@@ -67,13 +67,13 @@ PROGRAM main
0.634983,
0.530011,
0.772392,
-0.907221,
+0.907221,
```
```fortran title="Setting multiple values using triplets"
- CALL RANDOM_NUMBER(realVec)
- CALL obj2%set(value=realVec)
- CALL obj2%Display("obj2 = ")
+CALL RANDOM_NUMBER(realVec)
+CALL obj2%set(value=realVec)
+CALL obj2%Display("obj2 = ")
```
```txt title="results"
@@ -83,12 +83,12 @@ PROGRAM main
0.299606,
0.505284,
0.072251,
-0.943977,
+0.943977,
```
```fortran title="obj=obj+scale*obj2"
- CALL obj%set(obj2=obj2, scale=1.0_DFP, addContribution=.TRUE.)
- CALL obj%Display("obj =")
+CALL obj%set(obj2=obj2, scale=1.0_DFP, addContribution=.TRUE.)
+CALL obj%Display("obj =")
```
```txt title="results"
@@ -98,7 +98,7 @@ PROGRAM main
0.93459,
1.03529,
0.84464,
-1.85120,
+1.85120,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_19.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_19.md
index 7cb9f1dc..9ae48dff 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_19.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_19.md
@@ -25,18 +25,18 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
@@ -54,10 +54,10 @@ PROGRAM main
```
```fortran title="Setting multiple values using triplets"
- CALL Reallocate(realVec, dom%getTotalNodes())
- CALL RANDOM_NUMBER(realVec)
- CALL obj%set(value=realVec)
- CALL obj%Display("obj = ")
+CALL Reallocate(realVec, dom%getTotalNodes())
+CALL RANDOM_NUMBER(realVec)
+CALL obj%set(value=realVec)
+CALL obj%Display("obj = ")
```
```txt title="results"
@@ -70,13 +70,13 @@ PROGRAM main
0.371526,
0.956193,
0.684259,
-0.335780,
+0.335780,
```
```fortran title="Setting multiple values using triplets"
- CALL RANDOM_NUMBER(realVec)
- CALL obj2%set(value=realVec)
- CALL obj2%Display("obj2 = ")
+CALL RANDOM_NUMBER(realVec)
+CALL obj2%set(value=realVec)
+CALL obj2%Display("obj2 = ")
```
```txt title="results"
@@ -89,12 +89,12 @@ PROGRAM main
0.497695,
0.054821,
0.674551,
-0.935478,
+0.935478,
```
```fortran title="obj=obj+scale*obj2"
- CALL obj%set(obj2=obj2, scale=1.0_DFP, addContribution=.TRUE.)
- CALL obj%Display("obj =")
+CALL obj%set(obj2=obj2, scale=1.0_DFP, addContribution=.TRUE.)
+CALL obj%Display("obj =")
```
```txt title="results"
@@ -107,7 +107,7 @@ PROGRAM main
0.86922,
1.01101,
1.35881,
-1.27126,
+1.27126,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_2.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_2.md
index d6b35c2d..4ff75305 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_2.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_2.md
@@ -13,28 +13,28 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="import"
- !> start import
- CALL obj%import( hdf5=resultFile, group="/scalarField1", dom=dom )
- !> end start import
+!> start import
+CALL obj%import( hdf5=resultFile, group="/scalarField1", dom=dom )
+!> end start import
```
```fortran
- CALL obj%Display("obj = ")
+CALL obj%Display("obj = ")
```
```txt title="results"
@@ -72,7 +72,7 @@ PROGRAM main
0.00000,
0.00000,
0.00000,
-0.00000,
+0.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_20.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_20.md
index 7c721c6d..fb794ba9 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_20.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_20.md
@@ -25,41 +25,41 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U2", &
- & engine=engine)
- CALL obj2%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U2", &
+ & engine=engine)
+CALL obj2%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -112,12 +112,12 @@ PROGRAM main
0.713219,
0.625906,
0.838845,
-0.960102,
+0.960102,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=obj2 )
- CALL obj2%Display("obj2")
+CALL obj%get( value=obj2 )
+CALL obj2%Display("obj2")
```
```txt title="results"
@@ -170,7 +170,7 @@ PROGRAM main
0.713219,
0.625906,
0.838845,
-0.960102,
+0.960102,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_21.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_21.md
index d0557a96..386e6795 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_21.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_21.md
@@ -25,41 +25,41 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U2", &
- & engine="NATIVE_SERIAL")
- CALL obj2%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U2", &
+ & engine="NATIVE_SERIAL")
+CALL obj2%initiate( param, dom )
```
```fortran title="setting all values using vector"
- CALL reallocate( realVec, dom%getTotalNodes() )
- CALL RANDOM_NUMBER( realVec )
- CALL obj%set(realVec)
- CALL obj%display( "scalar field = ")
+CALL reallocate( realVec, dom%getTotalNodes() )
+CALL RANDOM_NUMBER( realVec )
+CALL obj%set(realVec)
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -113,13 +113,12 @@ PROGRAM main
0.802271,
0.433111,
0.472424,
-0.749044,
-
+0.749044,
```
```fortran title="Get multiple entries"
- CALL obj%get( value=obj2 )
- CALL obj2%Display("obj2")
+CALL obj%get( value=obj2 )
+CALL obj2%Display("obj2")
```
```txt title="results"
@@ -173,7 +172,7 @@ PROGRAM main
0.802271,
0.433111,
0.472424,
-0.749044,
+0.749044,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_3.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_3.md
index 968eaabf..e81f05db 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_3.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_3.md
@@ -16,22 +16,21 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
-
CALL SetScalarFieldParam( param=param, &
& fieldType=FIELD_TYPE_NORMAL, &
& name="U", &
@@ -41,8 +40,8 @@ PROGRAM main
```
```fortran title="set single value"
- CALL obj%set( globalnode = 10, value= 100.0_dfp )
- CALL obj%display( "scalar field = ")
+CALL obj%set( globalnode = 10, value= 100.0_dfp )
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -85,7 +84,7 @@ PROGRAM main
0.000,
0.000,
0.000,
-100.000,
+100.000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_4.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_4.md
index c45a15ed..bc8dc272 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_4.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_4.md
@@ -16,32 +16,31 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
-
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values"
- CALL obj%set( value= 200.0_DFP )
- CALL obj%display( "scalar field = ")
+CALL obj%set( value= 200.0_DFP )
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -84,8 +83,7 @@ PROGRAM main
200.000,
200.000,
200.000,
-200.000,
-
+200.000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_5.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_5.md
index 7354e05a..fcf37db2 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_5.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_5.md
@@ -16,33 +16,33 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="setting all values using vector"
- call reallocate( realVec, dom%getTotalNodes() )
- call RANDOM_NUMBER( realVec )
- call obj%set(realVec)
- call obj%display( "scalar field = ")
+call reallocate( realVec, dom%getTotalNodes() )
+call RANDOM_NUMBER( realVec )
+call obj%set(realVec)
+call obj%display( "scalar field = ")
```
```txt title="results"
@@ -83,8 +83,7 @@ PROGRAM main
0.743044,
0.471275,
0.085154,
-0.671168,
-
+0.671168,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_6.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_6.md
index f1c3a011..75bda35e 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_6.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_6.md
@@ -16,31 +16,31 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="Setting multiple values"
- call obj%set(globalNode=[1,2,5], value=1.0_DFP )
- call obj%display( "scalar field = ")
+call obj%set(globalNode=[1,2,5], value=1.0_DFP )
+call obj%display( "scalar field = ")
```
```txt title="results"
@@ -78,8 +78,7 @@ PROGRAM main
1.00000,
0.00000,
0.00000,
-1.00000,
-
+1.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_7.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_7.md
index 624fd106..41c155f8 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_7.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_7.md
@@ -16,32 +16,32 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="Setting multiple values"
- realVec = [1.0, 2.0, 3.0]
- CALL obj%set(globalNode=[1,2,5], value=realVec )
- CALL obj%display( "scalar field = ")
+realVec = [1.0, 2.0, 3.0]
+CALL obj%set(globalNode=[1,2,5], value=realVec )
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -79,7 +79,7 @@ PROGRAM main
2.00000,
0.00000,
0.00000,
-3.00000,
+3.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_8.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_8.md
index 5c4098bf..7f73539d 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_8.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_8.md
@@ -16,31 +16,31 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="Setting multiple values using triplets"
- CALL obj%set(istart=1, iend=5, stride=2, value=10.0_DFP )
- CALL obj%display( "scalar field = ")
+CALL obj%set(istart=1, iend=5, stride=2, value=10.0_DFP )
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -78,7 +78,7 @@ PROGRAM main
0.0000,
10.0000,
0.0000,
-10.0000,
+10.0000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarFieldLis/_ScalarField_test_9.md b/docs/docs-api/ScalarFieldLis/_ScalarField_test_9.md
index 903d6b31..5f299184 100644
--- a/docs/docs-api/ScalarFieldLis/_ScalarField_test_9.md
+++ b/docs/docs-api/ScalarFieldLis/_ScalarField_test_9.md
@@ -16,32 +16,32 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="initiate scalar field"
- CALL SetScalarFieldParam( param=param, &
- & fieldType=FIELD_TYPE_NORMAL, &
- & name="U", &
- & engine=engine)
- CALL obj%initiate( param, dom )
+CALL SetScalarFieldParam( param=param, &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & name="U", &
+ & engine=engine)
+CALL obj%initiate( param, dom )
```
```fortran title="Setting multiple values using triplets"
- realVec = [1.0, 3.0, 5.0]
- CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
- CALL obj%display( "scalar field = ")
+realVec = [1.0, 3.0, 5.0]
+CALL obj%set(istart=1, iend=5, stride=2, value=realVec )
+CALL obj%display( "scalar field = ")
```
```txt title="results"
@@ -79,7 +79,7 @@ PROGRAM main
0.00000,
3.00000,
0.00000,
-5.00000,
+5.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/ScalarMeshField/examples/_Get_test_1.md b/docs/docs-api/ScalarMeshField/examples/_Get_test_1.md
index 29b1cbb2..b05c9301 100644
--- a/docs/docs-api/ScalarMeshField/examples/_Get_test_1.md
+++ b/docs/docs-api/ScalarMeshField/examples/_Get_test_1.md
@@ -4,7 +4,7 @@ The mesh is given below

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -22,45 +22,45 @@ PROGRAM main
Initiate and open the mesh file which is in [HDF5File_](../HDF5File/HDF5File_.md) format.
```fortran
- CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
- CALL meshfile%Open()
- CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
+CALL meshfile%Open()
+CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
```
Initiate an instance of [ScalarMeshField_](ScalarMeshField_)
```fortran
- CALL FPL_INIT(); CALL param%initiate()
- CALL setScalarMeshFieldParam( &
- & param=param, &
- & name='aScalar', &
- & fieldType=FIELD_TYPE_NORMAL, &
- & engine='NATIVE_SERIAL', &
- & defineOn=Quadrature, &
- & nns=nns)
- CALL obj%Initiate( param=param, mesh=amesh )
+CALL FPL_INIT(); CALL param%initiate()
+CALL setScalarMeshFieldParam( &
+ & param=param, &
+ & name='aScalar', &
+ & fieldType=FIELD_TYPE_NORMAL, &
+ & engine='NATIVE_SERIAL', &
+ & defineOn=Quadrature, &
+ & nns=nns)
+CALL obj%Initiate( param=param, mesh=amesh )
```
To set the entries inside an instance of [ScalarMeshField_](ScalarMeshField_), first one must create an instance of [FEVariable_](../FEVariable/FEVariable_.md). Then one can pass this FEVariable to the instance of [ScalarMeshField_](ScalarMeshField_). Also note that we use `globalElement` number.
```fortran
- DO iel = amesh%minElemNum, amesh%maxElemNum
- IF( .NOT. amesh%isElementPresent( iel ) ) CYCLE
- CALL RANDOM_NUMBER( val )
- fevar = QuadratureVariable( val, TypeFEVariableScalar, &
- & TypeFEVariableSpace )
- CALL obj%set( globalElement=iel, fevar=fevar )
- END DO
+DO iel = amesh%minElemNum, amesh%maxElemNum
+ IF( .NOT. amesh%isElementPresent( iel ) ) CYCLE
+ CALL RANDOM_NUMBER( val )
+ fevar = QuadratureVariable( val, TypeFEVariableScalar, &
+ & TypeFEVariableSpace )
+ CALL obj%set( globalElement=iel, fevar=fevar )
+END DO
```
We can get the entries inside an instance of [ScalarMeshField_](ScalarMeshField_) only as an instance of [FEVariable_](../FEVariable/FEVariable_.md). Also note that we use `globalElement` number.
```fortran
- DO iel = amesh%minElemNum, amesh%maxElemNum
- IF( .NOT. amesh%isElementPresent( iel ) ) CYCLE
- CALL obj%get( globalElement=iel, fevar=fevar )
- CALL Display( fevar, "fevar : " )
- END DO
+DO iel = amesh%minElemNum, amesh%maxElemNum
+ IF( .NOT. amesh%isElementPresent( iel ) ) CYCLE
+ CALL obj%get( globalElement=iel, fevar=fevar )
+ CALL Display( fevar, "fevar : " )
+END DO
```
cleaning up.
diff --git a/docs/docs-api/ScalarMeshField/examples/_Get_test_2.md b/docs/docs-api/ScalarMeshField/examples/_Get_test_2.md
index c3ea455c..bbfec819 100644
--- a/docs/docs-api/ScalarMeshField/examples/_Get_test_2.md
+++ b/docs/docs-api/ScalarMeshField/examples/_Get_test_2.md
@@ -6,7 +6,7 @@ The mesh is given below

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -24,23 +24,23 @@ PROGRAM main
Initiate and open the mesh file which is in [HDF5File_](../HDF5File/HDF5File_.md) format.
```fortran
- CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
- CALL meshfile%Open()
- CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
+CALL meshfile%Open()
+CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
```
Initiate an instance of ScalarMeshField_.
```fortran
- CALL FPL_INIT(); CALL param%initiate()
- CALL setScalarMeshFieldParam( &
- & param=param, &
- & name='aScalar', &
- & fieldType=FIELD_TYPE_CONSTANT, &
- & engine='NATIVE_SERIAL', &
- & defineOn=Quadrature, &
- & nns=nns)
- CALL obj%Initiate( param=param, mesh=amesh )
+CALL FPL_INIT(); CALL param%initiate()
+CALL setScalarMeshFieldParam( &
+ & param=param, &
+ & name='aScalar', &
+ & fieldType=FIELD_TYPE_CONSTANT, &
+ & engine='NATIVE_SERIAL', &
+ & defineOn=Quadrature, &
+ & nns=nns)
+CALL obj%Initiate( param=param, mesh=amesh )
```
To set the entries inside an instance of ScalarMeshField_, first one must create an instance of [FEVariable_](../FEVariable/FEVariable_.md). Then one can pass this FEVariable to the instance of ScalarMeshField_. Also note that we use `globalElement` number.
@@ -48,17 +48,17 @@ To set the entries inside an instance of ScalarMeshField_, first one must create
Because our Scalar mesh field is a constant in this example, we do not need to set the value for each element. Also note that if the mesh field was not constant, then the below code implies we are settings the values for each element to the same value. It is like all components of a vector have same value.
```fortran
- CALL RANDOM_NUMBER( val )
- fevar = QuadratureVariable( val, TypeFEVariableScalar, &
- & TypeFEVariableSpace )
- CALL obj%set( fevar=fevar )
+CALL RANDOM_NUMBER( val )
+fevar = QuadratureVariable( val, TypeFEVariableScalar, &
+ & TypeFEVariableSpace )
+CALL obj%set( fevar=fevar )
```
We can get the entries inside an instance of ScalarMeshField_ only as an instance of [FEVariable_](../FEVariable/FEVariable_.md). Also note that we use `globalElement` number.
```fortran
- CALL obj%get( fevar=fevar )
- CALL Display( fevar, "fevar : " )
+CALL obj%get( fevar=fevar )
+CALL Display( fevar, "fevar : " )
```
cleaning up.
diff --git a/docs/docs-api/ScalarMeshField/examples/_Set_test_2.md b/docs/docs-api/ScalarMeshField/examples/_Set_test_2.md
index c3ea455c..bbfec819 100644
--- a/docs/docs-api/ScalarMeshField/examples/_Set_test_2.md
+++ b/docs/docs-api/ScalarMeshField/examples/_Set_test_2.md
@@ -6,7 +6,7 @@ The mesh is given below

-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -24,23 +24,23 @@ PROGRAM main
Initiate and open the mesh file which is in [HDF5File_](../HDF5File/HDF5File_.md) format.
```fortran
- CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
- CALL meshfile%Open()
- CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
+CALL meshfile%Initiate( FileName="./mesh.h5", MODE="READ" )
+CALL meshfile%Open()
+CALL amesh%Initiate(hdf5=meshfile, group="/surfaceEntities_1" )
```
Initiate an instance of ScalarMeshField_.
```fortran
- CALL FPL_INIT(); CALL param%initiate()
- CALL setScalarMeshFieldParam( &
- & param=param, &
- & name='aScalar', &
- & fieldType=FIELD_TYPE_CONSTANT, &
- & engine='NATIVE_SERIAL', &
- & defineOn=Quadrature, &
- & nns=nns)
- CALL obj%Initiate( param=param, mesh=amesh )
+CALL FPL_INIT(); CALL param%initiate()
+CALL setScalarMeshFieldParam( &
+ & param=param, &
+ & name='aScalar', &
+ & fieldType=FIELD_TYPE_CONSTANT, &
+ & engine='NATIVE_SERIAL', &
+ & defineOn=Quadrature, &
+ & nns=nns)
+CALL obj%Initiate( param=param, mesh=amesh )
```
To set the entries inside an instance of ScalarMeshField_, first one must create an instance of [FEVariable_](../FEVariable/FEVariable_.md). Then one can pass this FEVariable to the instance of ScalarMeshField_. Also note that we use `globalElement` number.
@@ -48,17 +48,17 @@ To set the entries inside an instance of ScalarMeshField_, first one must create
Because our Scalar mesh field is a constant in this example, we do not need to set the value for each element. Also note that if the mesh field was not constant, then the below code implies we are settings the values for each element to the same value. It is like all components of a vector have same value.
```fortran
- CALL RANDOM_NUMBER( val )
- fevar = QuadratureVariable( val, TypeFEVariableScalar, &
- & TypeFEVariableSpace )
- CALL obj%set( fevar=fevar )
+CALL RANDOM_NUMBER( val )
+fevar = QuadratureVariable( val, TypeFEVariableScalar, &
+ & TypeFEVariableSpace )
+CALL obj%set( fevar=fevar )
```
We can get the entries inside an instance of ScalarMeshField_ only as an instance of [FEVariable_](../FEVariable/FEVariable_.md). Also note that we use `globalElement` number.
```fortran
- CALL obj%get( fevar=fevar )
- CALL Display( fevar, "fevar : " )
+CALL obj%get( fevar=fevar )
+CALL Display( fevar, "fevar : " )
```
cleaning up.
diff --git a/docs/docs-api/SortUtility/ArgHeapSort.md b/docs/docs-api/SortUtility/ArgHeapSort.md
index 16d7aa34..754258f4 100644
--- a/docs/docs-api/SortUtility/ArgHeapSort.md
+++ b/docs/docs-api/SortUtility/ArgHeapSort.md
@@ -18,10 +18,10 @@ Then, `array(arg)` will be sorted in increasing order.
```fortran
- MODULE PURE SUBROUTINE ArgHeapSort(array, arg)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
- INTEGER(I4B), INTENT(OUT) :: arg(0:)
- END SUBROUTINE ArgHeapSort
+MODULE PURE SUBROUTINE ArgHeapSort(array, arg)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
+ INTEGER(I4B), INTENT(OUT) :: arg(0:)
+END SUBROUTINE ArgHeapSort
```
- Here, entries of `array` are NOT modified by the routine.
diff --git a/docs/docs-api/SortUtility/ArgInsertionSort.md b/docs/docs-api/SortUtility/ArgInsertionSort.md
index 2a2670b8..f8a595e9 100644
--- a/docs/docs-api/SortUtility/ArgInsertionSort.md
+++ b/docs/docs-api/SortUtility/ArgInsertionSort.md
@@ -21,12 +21,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE ArgInsertionSort(array, arg, low, high)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
- INTEGER(I4B), INTENT(INOUT) :: arg(:)
- INTEGER(I4B), INTENT(IN) :: low
- INTEGER(I4B), INTENT(IN) :: high
- END SUBROUTINE ArgInsertionSort
+MODULE PURE SUBROUTINE ArgInsertionSort(array, arg, low, high)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
+ INTEGER(I4B), INTENT(INOUT) :: arg(:)
+ INTEGER(I4B), INTENT(IN) :: low
+ INTEGER(I4B), INTENT(IN) :: high
+ END SUBROUTINE ArgInsertionSort
```
- Here, entries of `array` are NOT modified by the routine.
diff --git a/docs/docs-api/SortUtility/ArgIntroSort.md b/docs/docs-api/SortUtility/ArgIntroSort.md
index a4eec794..5baa0387 100644
--- a/docs/docs-api/SortUtility/ArgIntroSort.md
+++ b/docs/docs-api/SortUtility/ArgIntroSort.md
@@ -23,10 +23,10 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE ArgIntroSort(array, arg)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
- INTEGER(I4B), INTENT(OUT) :: arg(0:)
- END SUBROUTINE ArgIntroSort
+MODULE PURE SUBROUTINE ArgIntroSort(array, arg)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: array(:)
+ INTEGER(I4B), INTENT(OUT) :: arg(0:)
+END SUBROUTINE ArgIntroSort
```
- Here, entries of `array` are NOT modified by the routine.
diff --git a/docs/docs-api/SortUtility/ArgSort.md b/docs/docs-api/SortUtility/ArgSort.md
index 6a0efffe..f130255b 100644
--- a/docs/docs-api/SortUtility/ArgSort.md
+++ b/docs/docs-api/SortUtility/ArgSort.md
@@ -21,11 +21,11 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION ArgSort(x, name) RESULT(ans)
- INTEGER(Int8|Int16|Int32|Int64), REAL(Real32|Real64), INTENT(IN) :: x(:)
- CHARACTER(*), OPTIONAL, INTENT(IN) :: name
- INTEGER(I4B) :: ans(SIZE(x))
- END FUNCTION ArgSort
+MODULE PURE FUNCTION ArgSort(x, name) RESULT(ans)
+ INTEGER(Int8|Int16|Int32|Int64), REAL(Real32|Real64), INTENT(IN) :: x(:)
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: name
+ INTEGER(I4B) :: ans(SIZE(x))
+END FUNCTION ArgSort
```
- `x` is a vector of reals or integers
diff --git a/docs/docs-api/SortUtility/HeapSort.md b/docs/docs-api/SortUtility/HeapSort.md
index 8663dc18..228d7ef8 100644
--- a/docs/docs-api/SortUtility/HeapSort.md
+++ b/docs/docs-api/SortUtility/HeapSort.md
@@ -17,9 +17,9 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE HeapSort(array)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: array(:)
- END SUBROUTINE HeapSort
+MODULE PURE SUBROUTINE HeapSort(array)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: array(:)
+END SUBROUTINE HeapSort
```
diff --git a/docs/docs-api/SortUtility/QuickSort.md b/docs/docs-api/SortUtility/QuickSort.md
index 4fe08353..0d0ce534 100644
--- a/docs/docs-api/SortUtility/QuickSort.md
+++ b/docs/docs-api/SortUtility/QuickSort.md
@@ -21,10 +21,10 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE RECURSIVE PURE SUBROUTINE QuickSort(vect1, low, high)
- Int8|Int16|Int32|Int64|Real32|Real64, INTENT(INOUT) :: vect1(:)
- INTEGER(I4B), INTENT(IN) :: low, high
- END SUBROUTINE QuickSort
+MODULE RECURSIVE PURE SUBROUTINE QuickSort(vect1, low, high)
+ Int8|Int16|Int32|Int64|Real32|Real64, INTENT(INOUT) :: vect1(:)
+ INTEGER(I4B), INTENT(IN) :: low, high
+END SUBROUTINE QuickSort
```
In this interface `vect1` can be a one dimensional fortran array of
diff --git a/docs/docs-api/SortUtility/Sort.md b/docs/docs-api/SortUtility/Sort.md
index 163b2e82..3dc42d0c 100644
--- a/docs/docs-api/SortUtility/Sort.md
+++ b/docs/docs-api/SortUtility/Sort.md
@@ -17,11 +17,11 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION Sort(x, name) RESULT(ans)
- INTEGER(Int8|Int16|Int32|Int64) | REAL(Real32|Real64), INTENT(IN) :: x(:)
- CHARACTER(*), OPTIONAL, INTENT(IN) :: name
- INTEGER(Int32) :: ans(SIZE(x))
- END FUNCTION Sort
+MODULE PURE FUNCTION Sort(x, name) RESULT(ans)
+ INTEGER(Int8|Int16|Int32|Int64) | REAL(Real32|Real64), INTENT(IN) :: x(:)
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: name
+ INTEGER(Int32) :: ans(SIZE(x))
+END FUNCTION Sort
```
- `x` is a vector of reals or integers.
diff --git a/docs/docs-api/SortUtility/_ArgInsertionSort_test_1.md b/docs/docs-api/SortUtility/_ArgInsertionSort_test_1.md
index 8918d5c0..4f2db649 100644
--- a/docs/docs-api/SortUtility/_ArgInsertionSort_test_1.md
+++ b/docs/docs-api/SortUtility/_ArgInsertionSort_test_1.md
@@ -33,7 +33,7 @@ unsorted array, arg, sorted array
9.07674 , 2 , 6.28162
0.73612 , 3 , 7.10011
2.89498 , 7 , 9.07674
- 0.96830 , 1 , 9.74747
+ 0.96830 , 1 , 9.74747
```
diff --git a/docs/docs-api/SortUtility/_ArgIntroSort_test_1.md b/docs/docs-api/SortUtility/_ArgIntroSort_test_1.md
index 8fdadd58..074c40b1 100644
--- a/docs/docs-api/SortUtility/_ArgIntroSort_test_1.md
+++ b/docs/docs-api/SortUtility/_ArgIntroSort_test_1.md
@@ -22,7 +22,6 @@ USE easifemBase
```txt title="results"
-
unsorted array, arg, sorted array
--------------, ---, ------------
5.54368 , 3 , 0.81292
@@ -34,7 +33,7 @@ unsorted array, arg, sorted array
9.95400 , 4 , 7.37413
8.88093 , 8 , 8.88093
3.91444 , 6 , 9.06920
- 2.87233 , 7 , 9.95400
+ 2.87233 , 7 , 9.95400
```
diff --git a/docs/docs-api/SortUtility/_ArgSort_test_1.md b/docs/docs-api/SortUtility/_ArgSort_test_1.md
index 0586c3a0..6a76e42a 100644
--- a/docs/docs-api/SortUtility/_ArgSort_test_1.md
+++ b/docs/docs-api/SortUtility/_ArgSort_test_1.md
@@ -21,7 +21,6 @@ USE easifemBase
```txt title="results"
-
unsorted array, arg, QuickSort array
--------------, ---, ---------------
7.30120 , 8 , 0.87296
@@ -33,7 +32,7 @@ unsorted array, arg, QuickSort array
3.84105 , 10 , 6.86604
0.87296 , 1 , 7.30120
1.15776 , 2 , 8.24763
- 6.86604 , 4 , 9.83271
+ 6.86604 , 4 , 9.83271
```
@@ -41,13 +40,13 @@ unsorted array, arg, QuickSort array
```fortran
- CALL RANDOM_NUMBER(avec)
- avec = avec * 10
- CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
- arg = ArgSort(avec, "HeapSort" )
- CALL Display( arg, msg="arg", advance="NO", full=.true. )
- CALL Display( avec(arg), msg="HeapSort array", full=.true. )
- CALL blanklines()
+CALL RANDOM_NUMBER(avec)
+avec = avec * 10
+CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
+arg = ArgSort(avec, "HeapSort" )
+CALL Display( arg, msg="arg", advance="NO", full=.true. )
+CALL Display( avec(arg), msg="HeapSort array", full=.true. )
+CALL blanklines()
```
@@ -66,20 +65,20 @@ unsorted array, arg, HeapSort array
7.49388 , 3 , 6.57749
1.36706 , 9 , 6.62953
6.62953 , 7 , 7.49388
- 1.75177 , 1 , 8.48137
+ 1.75177 , 1 , 8.48137
```
```fortran
- CALL RANDOM_NUMBER(avec)
- avec = avec * 10
- CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
- arg = ArgSort(avec, "IntroSort" )
- CALL Display( arg, msg="arg", advance="NO", full=.true. )
- CALL Display( avec(arg), msg="IntroSort array", full=.true. )
- CALL blanklines()
+CALL RANDOM_NUMBER(avec)
+avec = avec * 10
+CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
+arg = ArgSort(avec, "IntroSort" )
+CALL Display( arg, msg="arg", advance="NO", full=.true. )
+CALL Display( avec(arg), msg="IntroSort array", full=.true. )
+CALL blanklines()
```
@@ -98,7 +97,7 @@ unsorted array, arg, IntroSort array
5.73978 , 9 , 7.48543
1.43727 , 1 , 8.14589
7.48543 , 4 , 8.93775
- 5.31886 , 6 , 9.01701
+ 5.31886 , 6 , 9.01701
```
diff --git a/docs/docs-api/SortUtility/_HeapSort_test_1.md b/docs/docs-api/SortUtility/_HeapSort_test_1.md
index 1cb1a155..22b6cae4 100644
--- a/docs/docs-api/SortUtility/_HeapSort_test_1.md
+++ b/docs/docs-api/SortUtility/_HeapSort_test_1.md
@@ -14,18 +14,18 @@ USE easifemBase
See results
-|r32 Before sorting | r32 After sorting |
-|---------------------| --------------------|
-| 8.13609 | 0.72018|
-| 9.81305 | 1.10549|
-| 5.17501 | 2.40877|
-| 0.72018 | 3.13865|
-| 6.35550 | 4.40301|
-| 3.13865 | 5.17501|
-| 9.25757 | 6.35550|
-| 1.10549 | 8.13609|
-| 2.40877 | 9.25757|
-| 4.40301 | 9.81305|
+| r32 Before sorting | r32 After sorting |
+| ------------------ | ----------------- |
+| 8.13609 | 0.72018 |
+| 9.81305 | 1.10549 |
+| 5.17501 | 2.40877 |
+| 0.72018 | 3.13865 |
+| 6.35550 | 4.40301 |
+| 3.13865 | 5.17501 |
+| 9.25757 | 6.35550 |
+| 1.10549 | 8.13609 |
+| 2.40877 | 9.25757 |
+| 4.40301 | 9.81305 |
diff --git a/docs/docs-api/SortUtility/_InsertionSort_test_1.md b/docs/docs-api/SortUtility/_InsertionSort_test_1.md
index b8e7dd9b..cc615e56 100644
--- a/docs/docs-api/SortUtility/_InsertionSort_test_1.md
+++ b/docs/docs-api/SortUtility/_InsertionSort_test_1.md
@@ -9,9 +9,9 @@ program main
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- call InsertionSort(array=intvec, low=1, high=SIZE(intvec) )
- call display( intvec, "intvec = " )
+intvec = [ 5, 4, 3, 2, 1 ]
+call InsertionSort(array=intvec, low=1, high=SIZE(intvec) )
+call display( intvec, "intvec = " )
```
@@ -32,9 +32,9 @@ intvec =
```fortran
- realvec = [ 5, 4, 3, 2, 1 ]
- call InsertionSort( realvec, 1, SIZE( realvec ) )
- call display( realvec, "realvec = " )
+realvec = [ 5, 4, 3, 2, 1 ]
+call InsertionSort( realvec, 1, SIZE( realvec ) )
+call display( realvec, "realvec = " )
```
@@ -48,7 +48,7 @@ realvec =
2.00000
3.00000
4.00000
- 5.00000
+ 5.00000
```
diff --git a/docs/docs-api/SortUtility/_IntroSort_test_1.md b/docs/docs-api/SortUtility/_IntroSort_test_1.md
index f550283e..fd3a788e 100644
--- a/docs/docs-api/SortUtility/_IntroSort_test_1.md
+++ b/docs/docs-api/SortUtility/_IntroSort_test_1.md
@@ -26,7 +26,7 @@ r32 Before sorting = , r32 After sorting =
7.54315 , 7.54315
8.98520 , 8.64364
4.85491 , 8.74764
- 5.73196 , 8.98520
+ 5.73196 , 8.98520
```
diff --git a/docs/docs-api/SortUtility/_QuickSort_test_1.md b/docs/docs-api/SortUtility/_QuickSort_test_1.md
index dee87f73..ae33d9c3 100644
--- a/docs/docs-api/SortUtility/_QuickSort_test_1.md
+++ b/docs/docs-api/SortUtility/_QuickSort_test_1.md
@@ -9,9 +9,9 @@ program main
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- call QuickSort( vect1=intvec, low=1, high=SIZE(intvec) )
- call display( intvec, "intvec = " )
+intvec = [ 5, 4, 3, 2, 1 ]
+call QuickSort( vect1=intvec, low=1, high=SIZE(intvec) )
+call display( intvec, "intvec = " )
```
@@ -32,9 +32,9 @@ intvec =
```fortran
- realvec = [ 5, 4, 3, 2, 1 ]
- call QuickSort( realvec, 1, SIZE( realvec ) )
- call display( realvec, "realvec = " )
+realvec = [ 5, 4, 3, 2, 1 ]
+call QuickSort( realvec, 1, SIZE( realvec ) )
+call display( realvec, "realvec = " )
```
@@ -48,7 +48,7 @@ realvec =
2.00000
3.00000
4.00000
- 5.00000
+ 5.00000
```
diff --git a/docs/docs-api/SortUtility/_QuickSort_test_2.md b/docs/docs-api/SortUtility/_QuickSort_test_2.md
index ba6d7a20..ef3590aa 100644
--- a/docs/docs-api/SortUtility/_QuickSort_test_2.md
+++ b/docs/docs-api/SortUtility/_QuickSort_test_2.md
@@ -9,11 +9,11 @@ program main
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- realvec = [ 8, 9, 12, 3, 2 ]
- call QuickSort( vect1=intvec, vect2=realvec, low=1, high=SIZE(intvec) )
- call display( intvec, "intvec = ", advance="NO" )
- call display( realvec, "realvec= ", advance="YES" )
+intvec = [ 5, 4, 3, 2, 1 ]
+realvec = [ 8, 9, 12, 3, 2 ]
+call QuickSort( vect1=intvec, vect2=realvec, low=1, high=SIZE(intvec) )
+call display( intvec, "intvec = ", advance="NO" )
+call display( realvec, "realvec= ", advance="YES" )
```
@@ -27,18 +27,18 @@ intvec = , realvec=
2 , 3.0000
3 , 12.0000
4 , 9.0000
- 5 , 8.0000
+ 5 , 8.0000
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- realvec = [ 8, 9, 12, 3, 2 ]
- call QuickSort( vect1=realvec, vect2=intvec, low=1, high=SIZE(intvec) )
- call display( intvec, "intvec = ", advance="NO" )
- call display( realvec, "realvec= ", advance="YES" )
+intvec = [ 5, 4, 3, 2, 1 ]
+realvec = [ 8, 9, 12, 3, 2 ]
+call QuickSort( vect1=realvec, vect2=intvec, low=1, high=SIZE(intvec) )
+call display( intvec, "intvec = ", advance="NO" )
+call display( realvec, "realvec= ", advance="YES" )
```
@@ -52,7 +52,7 @@ intvec = , realvec=
2 , 3.0000
5 , 8.0000
4 , 9.0000
- 3 , 12.0000
+ 3 , 12.0000
```
diff --git a/docs/docs-api/SortUtility/_QuickSort_test_3.md b/docs/docs-api/SortUtility/_QuickSort_test_3.md
index 14143f6a..72eaa636 100644
--- a/docs/docs-api/SortUtility/_QuickSort_test_3.md
+++ b/docs/docs-api/SortUtility/_QuickSort_test_3.md
@@ -10,18 +10,18 @@ program main
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- realvec = [ 8, 9, 12, 3, 2 ]
- realvec2 = [ 8, 9, 12, 3, 2 ]
- call QuickSort( &
- & vect1=intvec, &
- & vect2=realvec, &
- & vect3=realvec2, &
- & low=1, &
- & high=SIZE(intvec) )
- call display( intvec, "intvec = ", advance="NO" )
- call display( realvec, "realvec= ", advance="NO" )
- call display( realvec2, "realvec2= ", advance="YES" )
+intvec = [ 5, 4, 3, 2, 1 ]
+realvec = [ 8, 9, 12, 3, 2 ]
+realvec2 = [ 8, 9, 12, 3, 2 ]
+call QuickSort( &
+ & vect1=intvec, &
+ & vect2=realvec, &
+ & vect3=realvec2, &
+ & low=1, &
+ & high=SIZE(intvec) )
+call display( intvec, "intvec = ", advance="NO" )
+call display( realvec, "realvec= ", advance="NO" )
+call display( realvec2, "realvec2= ", advance="YES" )
```
@@ -35,25 +35,25 @@ intvec = , realvec= , realvec2=
2 , 3.0000 , 3.0000
3 , 12.0000 , 12.0000
4 , 9.0000 , 9.0000
- 5 , 8.0000 , 8.0000
+ 5 , 8.0000 , 8.0000
```
```fortran
- intvec = [ 5, 4, 3, 2, 1 ]
- realvec = [ 8, 9, 12, 3, 2 ]
- realvec2 = [ 8, 9, 12, 3, 2 ]
- call QuickSort( &
- & vect1=realvec, &
- & vect2=intvec, &
- & vect3=realvec2, &
- & low=1, &
- & high=SIZE(intvec) )
- call display( intvec, "intvec = ", advance="NO" )
- call display( realvec, "realvec= ", advance="NO" )
- call display( realvec2, "realvec2= ", advance="YES" )
+intvec = [ 5, 4, 3, 2, 1 ]
+realvec = [ 8, 9, 12, 3, 2 ]
+realvec2 = [ 8, 9, 12, 3, 2 ]
+call QuickSort( &
+ & vect1=realvec, &
+ & vect2=intvec, &
+ & vect3=realvec2, &
+ & low=1, &
+ & high=SIZE(intvec) )
+call display( intvec, "intvec = ", advance="NO" )
+call display( realvec, "realvec= ", advance="NO" )
+call display( realvec2, "realvec2= ", advance="YES" )
```
@@ -67,7 +67,7 @@ intvec = , realvec= , realvec2=
2 , 3.0000 , 3.0000
5 , 8.0000 , 8.0000
4 , 9.0000 , 9.0000
- 3 , 12.0000 , 12.0000
+ 3 , 12.0000 , 12.0000
```
diff --git a/docs/docs-api/SortUtility/_QuickSort_test_4.md b/docs/docs-api/SortUtility/_QuickSort_test_4.md
index 6fe7b52f..8e5ddbb3 100644
--- a/docs/docs-api/SortUtility/_QuickSort_test_4.md
+++ b/docs/docs-api/SortUtility/_QuickSort_test_4.md
@@ -13,16 +13,16 @@ integer(i4b) :: first, last
```
```fortran
- i1 = [5,2,1,6,3,4]
- i2 = i1
- i3 = i1
- i4 = i1
- first=1; last=size(i1)
- call QuickSort(i1,i2,i3,i4,first,last)
- call display(i1, "i1=", orient="col", advance="NO")
- call display(i2, "i2=", orient="col", advance="NO")
- call display(i3, "i3=", orient="col", advance="NO")
- call display(i4, "i4=", orient="col", advance="YES")
+i1 = [5,2,1,6,3,4]
+i2 = i1
+i3 = i1
+i4 = i1
+first=1; last=size(i1)
+call QuickSort(i1,i2,i3,i4,first,last)
+call display(i1, "i1=", orient="col", advance="NO")
+call display(i2, "i2=", orient="col", advance="NO")
+call display(i3, "i3=", orient="col", advance="NO")
+call display(i4, "i4=", orient="col", advance="YES")
```
@@ -37,25 +37,25 @@ i1=, i2=, i3=, i4=
3 , 3 , 3 , 3
4 , 4 , 4 , 4
5 , 5 , 5 , 5
- 6 , 6 , 6 , 6
+ 6 , 6 , 6 , 6
```
```fortran
- r4 = [1,2,3,2,2]
- i1 = [0,1,0,0,0]
- i2 = [0,0,1,0,0]
- i3 = [0,0,0,1,1]
- first=1; last=size(i1)
- call QuickSort(i1,i2,i3,r4,first,last)
- call blanklines(nol=2)
- call display( "test-2" )
- call display(i1, "i1=", orient="col", advance="NO")
- call display(i2, "i2=", orient="col", advance="NO")
- call display(i3, "i3=", orient="col", advance="NO")
- call display(r4, "r4=", orient="col", advance="YES")
+r4 = [1,2,3,2,2]
+i1 = [0,1,0,0,0]
+i2 = [0,0,1,0,0]
+i3 = [0,0,0,1,1]
+first=1; last=size(i1)
+call QuickSort(i1,i2,i3,r4,first,last)
+call blanklines(nol=2)
+call display( "test-2" )
+call display(i1, "i1=", orient="col", advance="NO")
+call display(i2, "i2=", orient="col", advance="NO")
+call display(i3, "i3=", orient="col", advance="NO")
+call display(r4, "r4=", orient="col", advance="YES")
```
diff --git a/docs/docs-api/SortUtility/_Sort_test_1.md b/docs/docs-api/SortUtility/_Sort_test_1.md
index f99fdcf3..81581e1e 100644
--- a/docs/docs-api/SortUtility/_Sort_test_1.md
+++ b/docs/docs-api/SortUtility/_Sort_test_1.md
@@ -25,18 +25,18 @@ r32 Before sorting = , r32 After QuickSort =
1.54308 , 4.50177
3.71431 , 5.62974
3.11750 , 6.99052
- 0.96040 , 9.91924
+ 0.96040 , 9.91924
```
```fortran
- call RANDOM_NUMBER(avec)
- avec = avec * 10
- call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
- call Display( Sort(avec, "IntroSort" ), msg="r32 After IntroSort = ", full=.TRUE. )
- call blanklines()
+call RANDOM_NUMBER(avec)
+avec = avec * 10
+call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
+call Display( Sort(avec, "IntroSort" ), msg="r32 After IntroSort = ", full=.TRUE. )
+call blanklines()
```
@@ -55,18 +55,18 @@ r32 Before sorting = , r32 After IntroSort =
3.17075 , 4.81857
2.80677 , 4.97813
4.81857 , 5.28020
- 8.01294 , 8.01294
+ 8.01294 , 8.01294
```
```fortran
- call RANDOM_NUMBER(avec)
- avec = avec * 10
- call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
- call Display( Sort(avec, "HeapSort" ), msg="r32 After HeapSort = ", full=.TRUE. )
- call blanklines()
+call RANDOM_NUMBER(avec)
+avec = avec * 10
+call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
+call Display( Sort(avec, "HeapSort" ), msg="r32 After HeapSort = ", full=.TRUE. )
+call blanklines()
```
@@ -85,19 +85,18 @@ r32 Before sorting = , r32 After HeapSort =
7.08470 , 7.08470
3.75097 , 7.30829
4.85695 , 7.31376
- 6.98299 , 7.47603
-
+ 6.98299 , 7.47603
```
```fortran
- call RANDOM_NUMBER(avec)
- avec = avec * 10
- call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
- call Display(Sort(avec, "InsertionSort" ), msg="r32 After InsertionSort = ", full=.TRUE. )
- call blanklines()
+call RANDOM_NUMBER(avec)
+avec = avec * 10
+call Display( avec, msg="r32 Before sorting = ", advance="NO", full=.TRUE. )
+call Display(Sort(avec, "InsertionSort" ), msg="r32 After InsertionSort = ", full=.TRUE. )
+call blanklines()
```
@@ -116,7 +115,7 @@ r32 Before sorting = , r32 After InsertionSort =
5.04010 , 5.27420
9.14432 , 6.57562
0.85946 , 7.27703
- 6.57562 , 9.14432
+ 6.57562 , 9.14432
```
diff --git a/docs/docs-api/SortUtility/examples/_ArgSort_test_1.md b/docs/docs-api/SortUtility/examples/_ArgSort_test_1.md
index 0586c3a0..6a76e42a 100644
--- a/docs/docs-api/SortUtility/examples/_ArgSort_test_1.md
+++ b/docs/docs-api/SortUtility/examples/_ArgSort_test_1.md
@@ -21,7 +21,6 @@ USE easifemBase
```txt title="results"
-
unsorted array, arg, QuickSort array
--------------, ---, ---------------
7.30120 , 8 , 0.87296
@@ -33,7 +32,7 @@ unsorted array, arg, QuickSort array
3.84105 , 10 , 6.86604
0.87296 , 1 , 7.30120
1.15776 , 2 , 8.24763
- 6.86604 , 4 , 9.83271
+ 6.86604 , 4 , 9.83271
```
@@ -41,13 +40,13 @@ unsorted array, arg, QuickSort array
```fortran
- CALL RANDOM_NUMBER(avec)
- avec = avec * 10
- CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
- arg = ArgSort(avec, "HeapSort" )
- CALL Display( arg, msg="arg", advance="NO", full=.true. )
- CALL Display( avec(arg), msg="HeapSort array", full=.true. )
- CALL blanklines()
+CALL RANDOM_NUMBER(avec)
+avec = avec * 10
+CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
+arg = ArgSort(avec, "HeapSort" )
+CALL Display( arg, msg="arg", advance="NO", full=.true. )
+CALL Display( avec(arg), msg="HeapSort array", full=.true. )
+CALL blanklines()
```
@@ -66,20 +65,20 @@ unsorted array, arg, HeapSort array
7.49388 , 3 , 6.57749
1.36706 , 9 , 6.62953
6.62953 , 7 , 7.49388
- 1.75177 , 1 , 8.48137
+ 1.75177 , 1 , 8.48137
```
```fortran
- CALL RANDOM_NUMBER(avec)
- avec = avec * 10
- CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
- arg = ArgSort(avec, "IntroSort" )
- CALL Display( arg, msg="arg", advance="NO", full=.true. )
- CALL Display( avec(arg), msg="IntroSort array", full=.true. )
- CALL blanklines()
+CALL RANDOM_NUMBER(avec)
+avec = avec * 10
+CALL Display( avec, msg="unsorted array", advance="NO", full=.true. )
+arg = ArgSort(avec, "IntroSort" )
+CALL Display( arg, msg="arg", advance="NO", full=.true. )
+CALL Display( avec(arg), msg="IntroSort array", full=.true. )
+CALL blanklines()
```
@@ -98,7 +97,7 @@ unsorted array, arg, IntroSort array
5.73978 , 9 , 7.48543
1.43727 , 1 , 8.14589
7.48543 , 4 , 8.93775
- 5.31886 , 6 , 9.01701
+ 5.31886 , 6 , 9.01701
```
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_1.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_1.md
index 69627394..b365cc58 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_1.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_1.md
@@ -1,6 +1,6 @@
This examples shows how to use `SetStaticDiffusionParam` to set the parameters of [[StaticDiffusion_]] kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -12,29 +12,29 @@ PROGRAM main
```
!!! notes ""
- Initiate an instance of [[ParameterList_]].
+Initiate an instance of [[ParameterList_]].
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! notes ""
- Setting parameters for initiating an instance of [[StaticDiffusion_]]
+Setting parameters for initiating an instance of [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, &
- & tMaterials=2, &
- & tDirichletBC=4, &
- & domainFile="./mesh.h5" )
+CALL SetStaticDiffusionParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, &
+ & tMaterials=2, &
+ & tDirichletBC=4, &
+ & domainFile="./mesh.h5" )
```
Let us see the content of param.
```fortran
- CALL param%print()
+CALL param%print()
```
The results of the above call is given below
@@ -56,7 +56,7 @@ The results of the above call is given below
Checking the validity of the parameters.
```fortran
- CALL obj%CheckEssentialParam(param)
+CALL obj%CheckEssentialParam(param)
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_10.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_10.md
index 1cd12322..8c0fe13d 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_10.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_10.md
@@ -27,136 +27,135 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "AssembleTanmat"
- Let us assemble the tangent matrix.
+Let us assemble the tangent matrix.
```fortran
- CALL obj%AssembleTanMat()
+CALL obj%AssembleTanMat()
```
!!! note "Export"
- Now we export the kernel in [[HDF5File_]] file
+Now we export the kernel in [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%Export(outfile, "")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%Export(outfile, "")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_11.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_11.md
index cf45841a..8ad8b4c4 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_11.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_11.md
@@ -27,138 +27,137 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "AssembleTanmat"
- Let us assemble the tangent matrix.
+Let us assemble the tangent matrix.
```fortran
- CALL obj%AssembleTanMat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
+CALL obj%AssembleTanMat()
+CALL obj%AssembleRHS()
+CALL obj%Assemble()
```
!!! note "Export"
- Now we export the kernel in [[HDF5File_]] file
+Now we export the kernel in [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%Export(outfile, "")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%Export(outfile, "")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_12.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_12.md
index d33b7824..625bd48a 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_12.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_12.md
@@ -27,145 +27,144 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "AssembleTanmat"
- Let us assemble the tangent matrix.
+Let us assemble the tangent matrix.
```fortran
- CALL obj%AssembleTanMat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
+CALL obj%AssembleTanMat()
+CALL obj%AssembleRHS()
+CALL obj%Assemble()
```
!!! note "Solve"
- solve the system of linear equations.
+solve the system of linear equations.
```fortran
- CALL obj%Solve()
+CALL obj%Solve()
```
!!! note "Export"
- Now we export the kernel in [[HDF5File_]] file
+Now we export the kernel in [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%Export(outfile, "")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%Export(outfile, "")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_13.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_13.md
index 7b2c5bef..c8cd48f9 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_13.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_13.md
@@ -27,146 +27,145 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "AssembleTanmat"
- Let us assemble the tangent matrix.
+Let us assemble the tangent matrix.
```fortran
- CALL obj%AssembleTanMat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
+CALL obj%AssembleTanMat()
+CALL obj%AssembleRHS()
+CALL obj%Assemble()
```
!!! note "Solve"
- solve the system of linear equations.
+solve the system of linear equations.
```fortran
- CALL obj%Solve()
- CALL obj%Update(reset=.true.)
+CALL obj%Solve()
+CALL obj%Update(reset=.true.)
```
!!! note "Export"
- Now we export the kernel in [[HDF5File_]] file
+Now we export the kernel in [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%WriteData(outfile, "1/")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%WriteData(outfile, "1/")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_2.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_2.md
index 6344dfa5..12ae97f5 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_2.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_2.md
@@ -1,6 +1,6 @@
This example shows how to export mesh data from [[MSHFile_]] to [[HDF5File_]]
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,27 +13,27 @@ PROGRAM main
```
!!! notes ""
- Open [[MSHFile_]] mesh file.
+Open [[MSHFile_]] mesh file.
```fortran
- CALL meshfile%Initiate(mshfilename, STATUS="OLD", ACTION="READ")
- CALL meshfile%Open()
- CALL meshfile%Read()
+CALL meshfile%Initiate(mshfilename, STATUS="OLD", ACTION="READ")
+CALL meshfile%Open()
+CALL meshfile%Read()
```
!!! note ""
- Open an [[HDF5File_]], then we will export meshfile data to it.
+Open an [[HDF5File_]], then we will export meshfile data to it.
```fortran
- CALL hdf5file%Initiate(hdf5filename, "NEW")
- CALL hdf5file%Open()
+CALL hdf5file%Initiate(hdf5filename, "NEW")
+CALL hdf5file%Open()
```
!!! notes ""
- Export the mesh data from [[MSHFile_]] to [[HDF5File_]].
+Export the mesh data from [[MSHFile_]] to [[HDF5File_]].
```fortran
- CALL meshfile%Export(hdf5file, "")
+CALL meshfile%Export(hdf5file, "")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_3.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_3.md
index b0b16ce1..b7a9c61a 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_3.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_3.md
@@ -1,6 +1,6 @@
This example shows how to initiate an instance of [[StaticDiffusion_]]
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -21,69 +21,69 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]].
+Initiate an instance of [[ParameterList_]].
```fortran
- CALL FPL_INIT(); CALL param%initiate()
+CALL FPL_INIT(); CALL param%initiate()
```
!!! note ""
- Set parameters for [[StaticDiffusion_]] kernel.
+Set parameters for [[StaticDiffusion_]] kernel.
```fortran
- CALL SetStaticDiffusionParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
Here, `baseContinuity`, `baseInterpolation`, and `quadratureType` are OPTIONAL.
!!! note ""
- Setting parameters for [[LinSolver_]]
+Setting parameters for [[LinSolver_]]
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiate the computation domain.
+Initiate the computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instance of [[StaticDiffusion_]].
+Initiate an instance of [[StaticDiffusion_]].
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note ""
- Display the content of the kernel.
+Display the content of the kernel.
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? mesage "Results"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_4.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_4.md
index 70e3210e..4c9c711d 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_4.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_4.md
@@ -1,4 +1,4 @@
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -19,65 +19,65 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]].
+Initiate an instance of [[ParameterList_]].
```fortran
- CALL FPL_INIT(); CALL param%initiate()
+CALL FPL_INIT(); CALL param%initiate()
```
!!! note ""
- Set parameters for [[StaticDiffusion_]] kernel.
+Set parameters for [[StaticDiffusion_]] kernel.
```fortran
- CALL SetStaticDiffusionParam( param=param, &
- & engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, &
- & tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, &
- & domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, &
+ & engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, &
+ & tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, &
+ & domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
Here, `baseContinuity`, `baseInterpolation`, and `quadratureType` are OPTIONAL.
!!! note ""
- Setting parameters for [[LinSolver_]]
+Setting parameters for [[LinSolver_]]
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiate the computation domain.
+Initiate the computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Set parameters for [[StaticDiffusion_]] kernel.
+Set parameters for [[StaticDiffusion_]] kernel.
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? example "Results"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_5.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_5.md
index 2149013e..976e3e44 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_5.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_5.md
@@ -1,6 +1,6 @@
This example demonstrates how to use `addMaterial` to add new material to [[StaticDiffusion_]] kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -22,85 +22,85 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]].
+Initiate an instance of [[ParameterList_]].
```fortran
- CALL FPL_INIT(); CALL param%initiate()
+CALL FPL_INIT(); CALL param%initiate()
```
!!! note ""
- Set parameters for [[StaticDiffusion_]] kernel.
+Set parameters for [[StaticDiffusion_]] kernel.
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
Here, `baseContinuity`, `baseInterpolation`, and `quadratureType` are optional.
!!! note ""
- Setting parameters for [[LinSolver_]]
+Setting parameters for [[LinSolver_]]
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiate the computation domain.
+Initiate the computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Set parameters for [[StaticDiffusion_]] kernel.
+Set parameters for [[StaticDiffusion_]] kernel.
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "Material 1"
- Now we use `AddMaterial` method to add a material and region to the kernel.
+Now we use `AddMaterial` method to add a material and region to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL obj%AddMaterial( materialNo=1, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL obj%AddMaterial( materialNo=1, region=region )
+CALL region%Deallocate()
```
!!! note "Material 2"
- Now we use `AddMaterial` method to add a material and region to the kernel.
+Now we use `AddMaterial` method to add a material and region to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL obj%AddMaterial( materialNo=2, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL obj%AddMaterial( materialNo=2, region=region )
+CALL region%Deallocate()
```
!!! note ""
- Display the content of [[StaticDiffusion_]]
+Display the content of [[StaticDiffusion_]]
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? example "Results"
@@ -175,8 +175,6 @@ Here, `baseContinuity`, `baseInterpolation`, and `quadratureType` are optional.
# nodeCoord : NOT ASSOCIATED
```
-
-
```fortran
CALL obj%Deallocate( )
CALL dom%Deallocate()
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_6.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_6.md
index 3605fe4d..76fa08a1 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_6.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_6.md
@@ -1,6 +1,6 @@
This example demonstrates how to use `addMaterial` to add new material to [[StaticDiffusion_]] kernel.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -23,90 +23,89 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=7000.0_DFP, diffusivity=11.72D-6 )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=7000.0_DFP, diffusivity=11.72D-6 )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=7000.0_DFP, diffusivity=11.72D-6 )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=7000.0_DFP, diffusivity=11.72D-6 )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note ""
- Display the content of kernel.
+Display the content of kernel.
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? example "Results"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_7.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_7.md
index 6bba32e1..024b7ca5 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_7.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_7.md
@@ -24,119 +24,118 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note ""
- Display the content of kernel.
+Display the content of kernel.
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? example "Results"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_8.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_8.md
index fc717b14..a36bb1e6 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_8.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_8.md
@@ -24,126 +24,125 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note ""
- Display the content of kernel.
+Display the content of kernel.
```fortran
- CALL obj%Display( "StaticDiffusion :: ")
+CALL obj%Display( "StaticDiffusion :: ")
```
??? example "Results"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_9.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_9.md
index 33dfc40d..1aca5092 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_test_9.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_test_9.md
@@ -27,129 +27,128 @@ PROGRAM main
```
!!! note ""
- Initiate an instance of [[ParameterList_]]
+Initiate an instance of [[ParameterList_]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Set the parameter for [[StaticDiffusion_]]
+Set the parameter for [[StaticDiffusion_]]
```fortran
- CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
- & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
- & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
- & baseContinuity="H1", &
- & baseInterpolation="LagrangeInterpolation", &
- & quadratureType="GaussLegendre" )
+CALL SetStaticDiffusionParam( param=param, engine="NATIVE_SERIAL", &
+ & coordinateSystem=KERNEL_2D, tMaterials=tMaterials, &
+ & tDirichletBC=tDirichletBC, domainFile=domainFileName, &
+ & baseContinuity="H1", &
+ & baseInterpolation="LagrangeInterpolation", &
+ & quadratureType="GaussLegendre" )
```
!!! note ""
- Set the parameter for [[LinSolver_]].
-
+Set the parameter for [[LinSolver_]].
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=solverName,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn, &
- & convergenceType=convergenceType, &
- & maxIter=maxIter, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=solverName,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn, &
+ & convergenceType=convergenceType, &
+ & maxIter=maxIter, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiates computation domain.
+Initiates computation domain.
```fortran
- CALL domainFile%Initiate(filename=domainFileName, mode="READ")
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, '' )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate(filename=domainFileName, mode="READ")
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, '' )
+CALL domainFile%Deallocate()
```
!!! note ""
- Initiate an instace of [[StaticDiffusion_]] kernel
+Initiate an instace of [[StaticDiffusion_]] kernel
```fortran
- CALL obj%Initiate( param=param, dom=dom )
+CALL obj%Initiate( param=param, dom=dom )
```
!!! note "addMaterial 1"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[1] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[1] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=1, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "addMaterial 2"
- Add another material and domain region in the [[StaticDiffusion_]] kernel.
+Add another material and domain region in the [[StaticDiffusion_]] kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=2, meshID=[2] )
- CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
- & massDensity=1.0_DFP, diffusivity=1.0_DFP )
- CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
- & param=param, region=region )
- CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=2, meshID=[2] )
+CALL SetSolidMaterialParam( param=param, name="SolidMaterial", &
+ & massDensity=1.0_DFP, diffusivity=1.0_DFP )
+CALL obj%AddMaterial( materialNo=2, materialName="SolidMaterial", &
+ & param=param, region=region )
+CALL region%Deallocate()
```
!!! note "SetDirichletBC 1"
- Now we set the Dirichlet boundary condition. First we select the mesh
- boundary, then we prescribe the boundary condition.
+Now we set the Dirichlet boundary condition. First we select the mesh
+boundary, then we prescribe the boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[3] )
- CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="ZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[3] )
+CALL obj%AddDirichletBC( dbcNo=1, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
```
!!! note "SetDirichletBC 2"
- Let us repeat the procedure mentioned above to prescribe another boundary condition.
+Let us repeat the procedure mentioned above to prescribe another boundary condition.
```fortran
- CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
- & nodalValueType=Constant, useFunction=.FALSE. )
- CALL region%Initiate( isSelectionByMeshID=.TRUE.)
- CALL region%Add( dim=1, meshID=[6] )
- CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
- CALL region%Deallocate()
- dbc => obj%GetDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
+CALL SetDirichletBCParam(param=param, name="NonZeroDBC", idof=1, &
+ & nodalValueType=Constant, useFunction=.FALSE. )
+CALL region%Initiate( isSelectionByMeshID=.TRUE.)
+CALL region%Add( dim=1, meshID=[6] )
+CALL obj%AddDirichletBC( dbcNo=2, boundary=region, param=param )
+CALL region%Deallocate()
+dbc => obj%GetDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=1.0_DFP ); dbc=>NULL()
```
!!! note "Set"
- Now that we are done setting the kernels properties, we will call `Set` method.
+Now that we are done setting the kernels properties, we will call `Set` method.
```fortran
- CALL obj%set()
+CALL obj%set()
```
!!! note "Export"
- Now we export the kernel in [[HDF5File_]] file
+Now we export the kernel in [[HDF5File_]] file
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
- CALL obj%Export(outfile, "")
- CALL outfile%Deallocate()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
+CALL obj%Export(outfile, "")
+CALL outfile%Deallocate()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/StaticDiffusion/StaticDiffusion_theory.md b/docs/docs-api/StaticDiffusion/StaticDiffusion_theory.md
index d9451394..f8cabdb6 100644
--- a/docs/docs-api/StaticDiffusion/StaticDiffusion_theory.md
+++ b/docs/docs-api/StaticDiffusion/StaticDiffusion_theory.md
@@ -13,7 +13,7 @@ $$
-\nabla\cdot\nu\left(\nabla u\right)=f
$$
-where,
+where,
- $\nu:=\nu(\mathbf{x})$ is the diffusivity coefficient
- $f=f(\mathbf{x})$ is the source term.
@@ -44,10 +44,9 @@ $$
- [ ] TODO add description of weak boundary condition.
-
## Galerkin FEM
-### Variation form
+### Variation form
$$
\int_{\Omega}\nabla w\cdot\nu\nabla u {d\Omega}-\int_{\Gamma_{mix}}{awu}dS=\int_{\Gamma_{h}}whdS+\int_{\Gamma_{mix}}wcdS+\int_{\Omega}wfd\Omega
diff --git a/docs/docs-api/StaticLinearElasticity/StaticLinearElasticity_.md b/docs/docs-api/StaticLinearElasticity/StaticLinearElasticity_.md
index 24100e2e..71e75f99 100644
--- a/docs/docs-api/StaticLinearElasticity/StaticLinearElasticity_.md
+++ b/docs/docs-api/StaticLinearElasticity/StaticLinearElasticity_.md
@@ -9,100 +9,100 @@
The following code demonstrates how we can initiate the `StaticLinearElastic` kernel by using `Initiate` method.
```fortran
- type( StaticLinearElasticity_ ) :: obj
- type( ParameterList_ ) :: param
- type( domain_ ) :: dom
- type( MeshSelection_ ) :: region
- CHARACTER( LEN = * ), PARAMETER :: domainFileName="./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: sleFileName="./templateSLE1.hdf5"
- type( HDF5File_ ) :: domainFile, sleFile
- !> main program starts here
- call Display( "TESTING INITIATE, ADDMATERIAL, EXPORT")
- call FPL_INIT(); call param%initiate()
- call setStaticLinearElasticityParam( param=param, engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_PLANE_STRESS, tMaterials=2, &
- & totalDirichletBC=3, domainFile=domainFileName, BaseContinuity="H1", &
- & BaseInterpolation="LagrangeInterpolation", &
- & QuadratureType="GaussLegendre" )
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE.,&
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- !> initiating domain
- call Display( "INITIATING DOMAIN" )
- call domainFile%initiate( filename=domainFileName, mode="READ" )
- call domainFile%open()
- call dom%initiate( domainFile, '' )
- !> initiating kernel
- call Display( "INITIATING STATIC LINEAR ELASTICITY KERNEL" )
- call obj%initiate( param=param, dom=dom )
- !> now we add material
- !> first we select mesh region
- call region%initiate( isSelectionByMeshID=.TRUE. )
- call region%add( xidim=1, meshID=[1,5,6] )
- call region%add( xidim=2, meshID=[1] )
- !> now we add it to the kernel
- call obj%addMaterial( materialNo=1, region=region )
- !> now we select another region
- call region%Deallocate()
- call region%initiate( isSelectionByMeshID=.TRUE. )
- call region%add( xidim=1, meshID=[2,3,4] )
- call region%add( xidim=2, meshID=[2] )
- !> now we add it to the kernel
- call obj%addMaterial( materialNo=2, region=region )
- !> preparing solid material
- call setSolidParam( param=param, name="Solid", massDensity=5000.0_DFP, &
- & stressStrainModel="LinearElasticModel" )
- call setLinearElasticModelParam( &
- & param = param, &
- & ElasticityType = IsoLinearElasticModel, &
- & isPlaneStrain = .TRUE., &
- & PoissonRatio = 0.3_DFP, &
- & YoungsModulus = 1.0D+6 )
- call obj%addMaterial( materialNo=1, materialName="Solid", param=param )
- call setSolidParam( param=param, name="Solid", massDensity=8000.0_DFP, &
- & stressStrainModel="LinearElasticModel" )
- call setLinearElasticModelParam( &
- & param = param, &
- & ElasticityType = IsoLinearElasticModel, &
- & isPlaneStrain = .TRUE., &
- & PoissonRatio = 0.3_DFP, &
- & YoungsModulus = 2.0D+6 )
- call obj%addMaterial( materialNo=2, materialName="Solid", param=param )
- call obj%set()
- call sleFile%initiate( filename=sleFileName, mode="NEW" )
- call sleFile%open()
- call obj%export( hdf5=sleFile, group='' )
- call obj%Deallocate( )
- !> Deallocating stuffs
- call dom%Deallocate()
- call domainFile%close(); call domainFile%Deallocate()
- call sleFile%close(); call sleFile%Deallocate()
- CALL param%Deallocate()
- CALL FPL_FINALIZE()
+type( StaticLinearElasticity_ ) :: obj
+type( ParameterList_ ) :: param
+type( domain_ ) :: dom
+type( MeshSelection_ ) :: region
+CHARACTER( LEN = * ), PARAMETER :: domainFileName="./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: sleFileName="./templateSLE1.hdf5"
+type( HDF5File_ ) :: domainFile, sleFile
+!> main program starts here
+call Display( "TESTING INITIATE, ADDMATERIAL, EXPORT")
+call FPL_INIT(); call param%initiate()
+call setStaticLinearElasticityParam( param=param, engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_PLANE_STRESS, tMaterials=2, &
+ & totalDirichletBC=3, domainFile=domainFileName, BaseContinuity="H1", &
+ & BaseInterpolation="LagrangeInterpolation", &
+ & QuadratureType="GaussLegendre" )
+call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE.,&
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+!> initiating domain
+call Display( "INITIATING DOMAIN" )
+call domainFile%initiate( filename=domainFileName, mode="READ" )
+call domainFile%open()
+call dom%initiate( domainFile, '' )
+!> initiating kernel
+call Display( "INITIATING STATIC LINEAR ELASTICITY KERNEL" )
+call obj%initiate( param=param, dom=dom )
+!> now we add material
+!> first we select mesh region
+call region%initiate( isSelectionByMeshID=.TRUE. )
+call region%add( xidim=1, meshID=[1,5,6] )
+call region%add( xidim=2, meshID=[1] )
+!> now we add it to the kernel
+call obj%addMaterial( materialNo=1, region=region )
+!> now we select another region
+call region%Deallocate()
+call region%initiate( isSelectionByMeshID=.TRUE. )
+call region%add( xidim=1, meshID=[2,3,4] )
+call region%add( xidim=2, meshID=[2] )
+!> now we add it to the kernel
+call obj%addMaterial( materialNo=2, region=region )
+!> preparing solid material
+call setSolidParam( param=param, name="Solid", massDensity=5000.0_DFP, &
+ & stressStrainModel="LinearElasticModel" )
+call setLinearElasticModelParam( &
+ & param = param, &
+ & ElasticityType = IsoLinearElasticModel, &
+ & isPlaneStrain = .TRUE., &
+ & PoissonRatio = 0.3_DFP, &
+ & YoungsModulus = 1.0D+6 )
+call obj%addMaterial( materialNo=1, materialName="Solid", param=param )
+call setSolidParam( param=param, name="Solid", massDensity=8000.0_DFP, &
+ & stressStrainModel="LinearElasticModel" )
+call setLinearElasticModelParam( &
+ & param = param, &
+ & ElasticityType = IsoLinearElasticModel, &
+ & isPlaneStrain = .TRUE., &
+ & PoissonRatio = 0.3_DFP, &
+ & YoungsModulus = 2.0D+6 )
+call obj%addMaterial( materialNo=2, materialName="Solid", param=param )
+call obj%set()
+call sleFile%initiate( filename=sleFileName, mode="NEW" )
+call sleFile%open()
+call obj%export( hdf5=sleFile, group='' )
+call obj%Deallocate( )
+!> Deallocating stuffs
+call dom%Deallocate()
+call domainFile%close(); call domainFile%Deallocate()
+call sleFile%close(); call sleFile%Deallocate()
+CALL param%Deallocate()
+CALL FPL_FINALIZE()
```
### Construct by using `Import`
-| Dataset | Data type | Value | Comment |
-| ------------------------------------ | :-----------: | :----------------------------------------------------------: | -----------------------------------------------------------: |
-| `domainFile` | String | | The path of the mesh file |
-| `name` | String | `StaticLinearElasticity` | It is a constant |
-| `engine` | String | `NATIVE_SERIAL` `NATIVE_OMP` `NATIVE_MPI` `PETSC` | |
-| `BasseContinuity` | String | `H1`,`H1Div`,`H1Curl`,`DG` | Continuity of shape function. |
-| `BaseInterpolation` | String | `LagrangeInterpolation`, `HermitInterpolation`, `SerendipityInterpolation`, `HierarchyInterpolation` | Interpolation of shape functions |
-| `QuadratureType` | String | `GaussLegendre` | |
-| `CoordinateSystem` | String | `1D_H`, `1D_V`,`AXISYM`, `PLANE_STRAIN`, `PLANE_STRESS`, `3D` | This variable defines the spatial dimension of the partial differential equation. |
-| `tMaterials` | Integer | | Total number of materials present in the computations |
-| | | | . |
-| `Material1` | Group dataset | / | This is a group dataset, that is, a directory. Its content depends upon the child of `Solid_` class. Please refer to the manual. |
-| `Material2` | Group dataset | / | |
-| `boundaryCondition` | Group dataset | / | |
-| `boundaryCondition/totalDirichletBC` | Integer | | Total number of Dirichlet boundary conditions |
-| `boundaryCondition/DirichletBC1`... | Group dataset | / | Dirichlet Boundary Condition 1, 2,... |
-| `Material1`... | Group dataset | / | |
-| | | | |
-| `linSolver` | Group dataset | / | This is a group dataset , that is, a directory. Its content depends upon the child of `abstractLinSolver`. Please check the manual of individual child, for more detail |
+| Dataset | Data type | Value | Comment |
+| ------------------------------------ | :-----------: | :--------------------------------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `domainFile` | String | | The path of the mesh file |
+| `name` | String | `StaticLinearElasticity` | It is a constant |
+| `engine` | String | `NATIVE_SERIAL` `NATIVE_OMP` `NATIVE_MPI` `PETSC` | |
+| `BasseContinuity` | String | `H1`,`H1Div`,`H1Curl`,`DG` | Continuity of shape function. |
+| `BaseInterpolation` | String | `LagrangeInterpolation`, `HermitInterpolation`, `SerendipityInterpolation`, `HierarchyInterpolation` | Interpolation of shape functions |
+| `QuadratureType` | String | `GaussLegendre` | |
+| `CoordinateSystem` | String | `1D_H`, `1D_V`,`AXISYM`, `PLANE_STRAIN`, `PLANE_STRESS`, `3D` | This variable defines the spatial dimension of the partial differential equation. |
+| `tMaterials` | Integer | | Total number of materials present in the computations |
+| | | | . |
+| `Material1` | Group dataset | / | This is a group dataset, that is, a directory. Its content depends upon the child of `Solid_` class. Please refer to the manual. |
+| `Material2` | Group dataset | / | |
+| `boundaryCondition` | Group dataset | / | |
+| `boundaryCondition/totalDirichletBC` | Integer | | Total number of Dirichlet boundary conditions |
+| `boundaryCondition/DirichletBC1`... | Group dataset | / | Dirichlet Boundary Condition 1, 2,... |
+| `Material1`... | Group dataset | / | |
+| | | | |
+| `linSolver` | Group dataset | / | This is a group dataset , that is, a directory. Its content depends upon the child of `abstractLinSolver`. Please check the manual of individual child, for more detail |
The **template** of `DirichletBC1` is given below.
@@ -116,166 +116,166 @@ The **template** of `DirichletBC1` is given below.
The **template** of `Boundary` , which is an instance of `MeshSelection_`, is given below.
-| Variable | Data type | Value | Comment |
-| --------------------- | :-------: | :-----------: | -----------------------------------------------------------: |
-| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
-| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
-| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
-| `isSelectionByNode` | Bool | | |
-| `PointMeshID` | | | |
-| `CurveMeshID` | | | |
-| `SurfaceMeshID` | | | |
-| `PointElemNum` | | | |
-| `CurveElemNum` | | | |
-| `SurfaceElemNum` | | | |
-| `VolumeElemNum` | | | |
-| `NodeNum` | | | |
+| Variable | Data type | Value | Comment |
+| --------------------- | :-------: | :-----------: | ---------------------------------------------------------------------: |
+| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
+| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
+| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
+| `isSelectionByNode` | Bool | | |
+| `PointMeshID` | | | |
+| `CurveMeshID` | | | |
+| `SurfaceMeshID` | | | |
+| `PointElemNum` | | | |
+| `CurveElemNum` | | | |
+| `SurfaceElemNum` | | | |
+| `VolumeElemNum` | | | |
+| `NodeNum` | | | |
The **template** of `Material1` is given below
-| Variable | Data type | Value | Comment |
-| ---------------------- | :-----------: | :-----------: | -----------------------------------------------------------: |
-| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
-| `isSelectionByElemNum` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
-| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
-| `isSelectionByNodeNum` | Bool | | |
-| `PointMeshID` | | | |
-| `CurveMeshID` | | | |
-| `SurfaceMeshID` | | | |
-| `VolumeMeshID` | | | |
-| `PointElemNum` | | | |
-| `CurveElemNum` | | | |
-| `SurfaceElemNum` | | | |
-| `VolumeElemNum` | | | |
-| `NodeNum` | | | |
-| `name` | String | | |
-| `massDensity` | REAL | | |
-| `stressStrainModel` | Group dataset | / | |
-| | | | |
+| Variable | Data type | Value | Comment |
+| ---------------------- | :-----------: | :-----------: | ---------------------------------------------------------------------: |
+| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
+| `isSelectionByElemNum` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
+| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
+| `isSelectionByNodeNum` | Bool | | |
+| `PointMeshID` | | | |
+| `CurveMeshID` | | | |
+| `SurfaceMeshID` | | | |
+| `VolumeMeshID` | | | |
+| `PointElemNum` | | | |
+| `CurveElemNum` | | | |
+| `SurfaceElemNum` | | | |
+| `VolumeElemNum` | | | |
+| `NodeNum` | | | |
+| `name` | String | | |
+| `massDensity` | REAL | | |
+| `stressStrainModel` | Group dataset | / | |
+| | | | |
-The **template** for `stressStrainModel`, which is an instance of `LinearElasticModel_` is given below.
+The **template** for `stressStrainModel`, which is an instance of `LinearElasticModel_` is given below.
-| Variable name | Data type | Value | Comment |
-| ---------------- | :-------: | :------------------------------: | -----------------------------------------------------------: |
-| `name` | String | `LinearElasticModel` | It is constant, which denotes the name of the class. |
-| `elasticityType` | String | `ISO`, `ANISO`, `ORTHO`, `TRANS` | It denotes the linear elasticity type |
-| `isPlaneStress` | String | `T`or `F` | If the problem is 2D, and plane stress then set it to .TRUE. |
+| Variable name | Data type | Value | Comment |
+| ---------------- | :-------: | :------------------------------: | --------------------------------------------------------------: |
+| `name` | String | `LinearElasticModel` | It is constant, which denotes the name of the class. |
+| `elasticityType` | String | `ISO`, `ANISO`, `ORTHO`, `TRANS` | It denotes the linear elasticity type |
+| `isPlaneStress` | String | `T`or `F` | If the problem is 2D, and plane stress then set it to .TRUE. |
| `isPlaneStrain` | String | `T` or `F` | If the problem is 2D, and plane strain , then set it to .FALSE. |
-| `lambda` | REAL | | This is required when `ISO` option is selected |
-| `ShearModulus` | REAL | | This is required when `ISO` option is selected |
-| `YoungsModulus` | REAL | | This is required when `ISO` option is selected |
-| `PoissonRatio` | REAL | | This is required when `ISO` option is selected |
-| `C` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
-| `invC` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
+| `lambda` | REAL | | This is required when `ISO` option is selected |
+| `ShearModulus` | REAL | | This is required when `ISO` option is selected |
+| `YoungsModulus` | REAL | | This is required when `ISO` option is selected |
+| `PoissonRatio` | REAL | | This is required when `ISO` option is selected |
+| `C` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
+| `invC` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
The **template** of `linSolver`, which is an instance of `LinearSolver_` class, with engine type `NATIVE_SERIES` is given below.
-| Variable | Data type | Value | Comment |
-| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------: |
-| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
-| `solverName` | String | `CG` | This is a constant |
-| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | What type of preconditioning do you want to use? |
-| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | Should we check convergence in `residual` or the `solution` |
-| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | Absolute convergence or relative convergence |
-| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
-| `maxIter` | INT | | Maximum number of iterations |
-| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
-| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
-| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
+| Variable | Data type | Value | Comment |
+| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
+| `solverName` | String | `CG` | This is a constant |
+| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | What type of preconditioning do you want to use? |
+| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | Should we check convergence in `residual` or the `solution` |
+| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | Absolute convergence or relative convergence |
+| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
+| `maxIter` | INT | | Maximum number of iterations |
+| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
+| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
+| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
First we export the data to a `hdf5` file using the following commands.
```fortran
- type( StaticLinearElasticity_ ) :: obj
- type( ParameterList_ ) :: param
- type( domain_ ) :: dom
- CHARACTER( LEN = * ), PARAMETER :: domainFileName="./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: sleFileName="./templateSLE1.hdf5"
- type( HDF5File_ ) :: domainFile, sleFile
- !> main program starts here
- call Display( "TESTING INITIATE, ADDMATERIAL, EXPORT")
- call FPL_INIT(); call param%initiate()
- call setStaticLinearElasticityParam( param=param, engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_PLANE_STRESS, tMaterials=2, &
- & totalDirichletBC=3, domainFile=domainFileName, BaseContinuity="H1", &
- & BaseInterpolation="LagrangeInterpolation", &
- & QuadratureType="GaussLegendre" )
- call setLinSolverParam( param=param, solverName=LIS_CG,&
- & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE.,&
- & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
- !> initiating domain
- call Display( "INITIATING DOMAIN" )
- call domainFile%initiate( filename=domainFileName, mode="READ" )
- call domainFile%open()
- call dom%initiate( domainFile, '' )
- !> initiating kernel
- call Display( "INITIATING STATIC LINEAR ELASTICITY KERNEL" )
- call obj%initiate( param=param, dom=dom )
- !> now we add material
- call obj%addMaterial( materialNo=1, xidim=1, meshID=[1,5,6], &
- & isSelectionByMeshID=.TRUE. )
- call obj%addMaterial( materialNo=1, xidim=2, meshID=[1] )
- call obj%addMaterial( materialNo=2, xidim=1, meshID=[2,3,4], &
- & isSelectionByMeshID=.TRUE. )
- call obj%addMaterial( materialNo=2, xidim=2, meshID=[2] )
- !> preparing solid material
- call setSolidParam( param=param, name="Solid", massDensity=5000.0_DFP, &
- & stressStrainModel="LinearElasticModel" )
- call setLinearElasticModelParam( &
- & param = param, &
- & ElasticityType = IsoLinearElasticModel, &
- & isPlaneStrain = .TRUE., &
- & PoissonRatio = 0.3_DFP, &
- & YoungsModulus = 1.0D+6 )
- call obj%addMaterial( materialNo=1, materialName="Solid", param=param )
- call setSolidParam( param=param, name="Solid", massDensity=8000.0_DFP, &
- & stressStrainModel="LinearElasticModel" )
- call setLinearElasticModelParam( &
- & param = param, &
- & ElasticityType = IsoLinearElasticModel, &
- & isPlaneStrain = .TRUE., &
- & PoissonRatio = 0.3_DFP, &
- & YoungsModulus = 2.0D+6 )
- call obj%addMaterial( materialNo=2, materialName="Solid", param=param )
- call obj%set()
- call sleFile%initiate( filename=sleFileName, mode="NEW" )
- call sleFile%open()
- call obj%export( hdf5=sleFile, group='' )
- call obj%Deallocate( )
- !> Deallocating stuffs
- call dom%Deallocate()
- call domainFile%close(); call domainFile%Deallocate()
- call sleFile%close(); call sleFile%Deallocate()
- CALL param%Deallocate()
- CALL FPL_FINALIZE()
+type( StaticLinearElasticity_ ) :: obj
+ type( ParameterList_ ) :: param
+ type( domain_ ) :: dom
+ CHARACTER( LEN = * ), PARAMETER :: domainFileName="./mesh.h5"
+ CHARACTER( LEN = * ), PARAMETER :: sleFileName="./templateSLE1.hdf5"
+ type( HDF5File_ ) :: domainFile, sleFile
+ !> main program starts here
+ call Display( "TESTING INITIATE, ADDMATERIAL, EXPORT")
+ call FPL_INIT(); call param%initiate()
+ call setStaticLinearElasticityParam( param=param, engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_PLANE_STRESS, tMaterials=2, &
+ & totalDirichletBC=3, domainFile=domainFileName, BaseContinuity="H1", &
+ & BaseInterpolation="LagrangeInterpolation", &
+ & QuadratureType="GaussLegendre" )
+ call setLinSolverParam( param=param, solverName=LIS_CG,&
+ & preconditionOption=LEFT_PRECONDITION, convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, maxIter=100,relativeToRHS=.TRUE.,&
+ & KrylovSubspaceSize=20,rtol=1.0D-10,atol=1.0D-10 )
+ !> initiating domain
+ call Display( "INITIATING DOMAIN" )
+ call domainFile%initiate( filename=domainFileName, mode="READ" )
+ call domainFile%open()
+ call dom%initiate( domainFile, '' )
+ !> initiating kernel
+ call Display( "INITIATING STATIC LINEAR ELASTICITY KERNEL" )
+ call obj%initiate( param=param, dom=dom )
+ !> now we add material
+ call obj%addMaterial( materialNo=1, xidim=1, meshID=[1,5,6], &
+ & isSelectionByMeshID=.TRUE. )
+ call obj%addMaterial( materialNo=1, xidim=2, meshID=[1] )
+ call obj%addMaterial( materialNo=2, xidim=1, meshID=[2,3,4], &
+ & isSelectionByMeshID=.TRUE. )
+ call obj%addMaterial( materialNo=2, xidim=2, meshID=[2] )
+ !> preparing solid material
+ call setSolidParam( param=param, name="Solid", massDensity=5000.0_DFP, &
+ & stressStrainModel="LinearElasticModel" )
+ call setLinearElasticModelParam( &
+ & param = param, &
+ & ElasticityType = IsoLinearElasticModel, &
+ & isPlaneStrain = .TRUE., &
+ & PoissonRatio = 0.3_DFP, &
+ & YoungsModulus = 1.0D+6 )
+ call obj%addMaterial( materialNo=1, materialName="Solid", param=param )
+ call setSolidParam( param=param, name="Solid", massDensity=8000.0_DFP, &
+ & stressStrainModel="LinearElasticModel" )
+ call setLinearElasticModelParam( &
+ & param = param, &
+ & ElasticityType = IsoLinearElasticModel, &
+ & isPlaneStrain = .TRUE., &
+ & PoissonRatio = 0.3_DFP, &
+ & YoungsModulus = 2.0D+6 )
+ call obj%addMaterial( materialNo=2, materialName="Solid", param=param )
+ call obj%set()
+ call sleFile%initiate( filename=sleFileName, mode="NEW" )
+ call sleFile%open()
+ call obj%export( hdf5=sleFile, group='' )
+ call obj%Deallocate( )
+ !> Deallocating stuffs
+ call dom%Deallocate()
+ call domainFile%close(); call domainFile%Deallocate()
+ call sleFile%close(); call sleFile%Deallocate()
+ CALL param%Deallocate()
+ CALL FPL_FINALIZE()
```
Then, we import the data using the following code.
```fortran
- type( StaticLinearElasticity_ ) :: obj
- type( domain_ ) :: dom
- CHARACTER( LEN = * ), PARAMETER :: domainFilePath="./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: kernelFilePath="./templateSLE1.hdf5"
- type( HDF5File_ ) :: domainFile, kernelFile
- call Display( "TESTING INITIATE & IMPORT")
- !> initiating domain
- call Display( "INITIATING DOMAIN" )
- call domainFile%initiate( filename=domainFilePath, mode="READ" )
- call domainFile%open()
- call dom%initiate( domainFile, '' )
- !> initiating kernel
- call Display( "INITIATING KERNEL" )
- call kernelFile%initiate( filename=kernelFilePath, mode="READ" )
- call kernelFile%open()
- call obj%import( hdf5=kernelFile, group='', dom=dom )
- call obj%set()
- call obj%Deallocate( )
- !> Deallocating stuffs
- call dom%Deallocate()
- call domainFile%close(); call domainFile%Deallocate()
- call kernelFile%close(); call kernelFile%Deallocate()
+type( StaticLinearElasticity_ ) :: obj
+type( domain_ ) :: dom
+CHARACTER( LEN = * ), PARAMETER :: domainFilePath="./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: kernelFilePath="./templateSLE1.hdf5"
+type( HDF5File_ ) :: domainFile, kernelFile
+call Display( "TESTING INITIATE & IMPORT")
+!> initiating domain
+call Display( "INITIATING DOMAIN" )
+call domainFile%initiate( filename=domainFilePath, mode="READ" )
+call domainFile%open()
+call dom%initiate( domainFile, '' )
+!> initiating kernel
+call Display( "INITIATING KERNEL" )
+call kernelFile%initiate( filename=kernelFilePath, mode="READ" )
+call kernelFile%open()
+call obj%import( hdf5=kernelFile, group='', dom=dom )
+call obj%set()
+call obj%Deallocate( )
+!> Deallocating stuffs
+call dom%Deallocate()
+call domainFile%close(); call domainFile%Deallocate()
+call kernelFile%close(); call kernelFile%Deallocate()
```
## Adding materials
diff --git a/docs/docs-api/SteadyStokes111/GetPressureDirichletBCPointer.md b/docs/docs-api/SteadyStokes111/GetPressureDirichletBCPointer.md
index 1f4dc6d4..fc66f115 100644
--- a/docs/docs-api/SteadyStokes111/GetPressureDirichletBCPointer.md
+++ b/docs/docs-api/SteadyStokes111/GetPressureDirichletBCPointer.md
@@ -3,7 +3,7 @@
This routine returns the pointer to Dirichlet boundary condition of pressure field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%DBCForPressure(dbcNo)%ptr`.
- After obtaining the Dirichlet boundary condition pointer, user can set the
-boundary condition
+ boundary condition
- `dbcNo` should be lesser than total dirichlet boundary condition
## Interface
diff --git a/docs/docs-api/SteadyStokes111/GetPressureNeumannBCPointer.md b/docs/docs-api/SteadyStokes111/GetPressureNeumannBCPointer.md
index 8730760a..51a35431 100644
--- a/docs/docs-api/SteadyStokes111/GetPressureNeumannBCPointer.md
+++ b/docs/docs-api/SteadyStokes111/GetPressureNeumannBCPointer.md
@@ -1,4 +1,3 @@
-
# GetPressureNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of pressure field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%NBCForPressure(nbcNo)%ptr`.
diff --git a/docs/docs-api/SteadyStokes111/GetVelocityNeumannBCPointer.md b/docs/docs-api/SteadyStokes111/GetVelocityNeumannBCPointer.md
index a0bd6357..fd3ca6e7 100644
--- a/docs/docs-api/SteadyStokes111/GetVelocityNeumannBCPointer.md
+++ b/docs/docs-api/SteadyStokes111/GetVelocityNeumannBCPointer.md
@@ -1,4 +1,3 @@
-
# GetVelocityNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of Velocity field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%NBCForVelocity(nbcNo)%ptr`.
diff --git a/docs/docs-api/SteadyStokes111/_AddFluidMaterial_test_1.md b/docs/docs-api/SteadyStokes111/_AddFluidMaterial_test_1.md
index 2bafa7db..a573699c 100644
--- a/docs/docs-api/SteadyStokes111/_AddFluidMaterial_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_AddFluidMaterial_test_1.md
@@ -53,99 +53,99 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
Cleanup
diff --git a/docs/docs-api/SteadyStokes111/_AddVelocityDirichletBC_test_1.md b/docs/docs-api/SteadyStokes111/_AddVelocityDirichletBC_test_1.md
index 86656903..cff7dfbb 100644
--- a/docs/docs-api/SteadyStokes111/_AddVelocityDirichletBC_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_AddVelocityDirichletBC_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -243,7 +243,7 @@ CALL SetDirichletBCParam( &
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
cleanup
diff --git a/docs/docs-api/SteadyStokes111/_AssembleRHS_test_1.md b/docs/docs-api/SteadyStokes111/_AssembleRHS_test_1.md
index aa18203e..67ee0ca5 100644
--- a/docs/docs-api/SteadyStokes111/_AssembleRHS_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_AssembleRHS_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,31 +241,31 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Assemble tangent matrix.
```fortran
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
AssembleRHS
```fortran
- CALL obj%AssembleRHS()
+CALL obj%AssembleRHS()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/SteadyStokes111/_AssembleTanMat_test_1.md b/docs/docs-api/SteadyStokes111/_AssembleTanMat_test_1.md
index 7def2bd8..20eb3ac2 100644
--- a/docs/docs-api/SteadyStokes111/_AssembleTanMat_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_AssembleTanMat_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,25 +241,25 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Assemble tangent matrix.
```fortran
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/SteadyStokes111/_Assemble_InternalFacet_test_1.md b/docs/docs-api/SteadyStokes111/_Assemble_InternalFacet_test_1.md
index 6b9e2092..201a0493 100644
--- a/docs/docs-api/SteadyStokes111/_Assemble_InternalFacet_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Assemble_InternalFacet_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,41 +241,41 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Assemble tangent matrix.
```fortran
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
```fortran
- CALL obj%AssembleTanmat_InternalFacet( )
+CALL obj%AssembleTanmat_InternalFacet( )
```
AssembleRHS
```fortran
- CALL obj%AssembleRHS()
+CALL obj%AssembleRHS()
```
Assemble
```fortran
- CALL obj%Assemble()
+CALL obj%Assemble()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/SteadyStokes111/_Assemble_NeumanFacet_test_1.md b/docs/docs-api/SteadyStokes111/_Assemble_NeumanFacet_test_1.md
index 8c8e9b74..f41b77dc 100644
--- a/docs/docs-api/SteadyStokes111/_Assemble_NeumanFacet_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Assemble_NeumanFacet_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,41 +241,41 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Assemble tangent matrix.
```fortran
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
```fortran
- CALL obj%AssembleTanmat_NeumanFacet( )
+CALL obj%AssembleTanmat_NeumanFacet( )
```
AssembleRHS
```fortran
- CALL obj%AssembleRHS()
+CALL obj%AssembleRHS()
```
Assemble
```fortran
- CALL obj%Assemble()
+CALL obj%Assemble()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/SteadyStokes111/_Assemble_test_1.md b/docs/docs-api/SteadyStokes111/_Assemble_test_1.md
index 389764d6..edcc2612 100644
--- a/docs/docs-api/SteadyStokes111/_Assemble_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Assemble_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,37 +241,37 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Assemble tangent matrix.
```fortran
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
AssembleRHS
```fortran
- CALL obj%AssembleRHS()
+CALL obj%AssembleRHS()
```
Assemble
```fortran
- CALL obj%Assemble()
+CALL obj%Assemble()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/SteadyStokes111/_ComputeStabParam_test_1.md b/docs/docs-api/SteadyStokes111/_ComputeStabParam_test_1.md
index bcb1efa9..c1b24dcd 100644
--- a/docs/docs-api/SteadyStokes111/_ComputeStabParam_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_ComputeStabParam_test_1.md
@@ -54,93 +54,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -155,66 +155,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -241,19 +241,19 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Now we compute the stablizing parameters of finite element method.
```fortran
- CALL obj%ComputeStabParam()
+CALL obj%ComputeStabParam()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
Cleanup
diff --git a/docs/docs-api/SteadyStokes111/_Initiate_test_1.md b/docs/docs-api/SteadyStokes111/_Initiate_test_1.md
index 1d8711bd..e354a0ad 100644
--- a/docs/docs-api/SteadyStokes111/_Initiate_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Initiate_test_1.md
@@ -49,68 +49,68 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
- CALL obj%Display("")
+CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/SteadyStokes111/_Run_test_1.md b/docs/docs-api/SteadyStokes111/_Run_test_1.md
index 9479ee53..781e9dad 100644
--- a/docs/docs-api/SteadyStokes111/_Run_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Run_test_1.md
@@ -55,93 +55,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -156,100 +156,100 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType = Space, &
- & useFunction=.TRUE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType = Space, &
+ & useFunction=.TRUE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- f_Vx_US => function_Vx_US
- CALL dbc%Set( SpaceFunction=f_Vx_US )
- dbc=>NULL()
- f_Vx_US => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+f_Vx_US => function_Vx_US
+CALL dbc%Set( SpaceFunction=f_Vx_US )
+dbc=>NULL()
+f_Vx_US => NULL()
+CALL region%Deallocate()
```
AddDirichletBC, V1=0,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V1=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V1=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, P=0
@@ -281,13 +281,13 @@ END IF
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Run the kernel.
```fortran
- CALL obj%run(param=param)
+CALL obj%run(param=param)
```
Write Data
diff --git a/docs/docs-api/SteadyStokes111/_SetSteadyStokes111Param_test_1.md b/docs/docs-api/SteadyStokes111/_SetSteadyStokes111Param_test_1.md
index f750bbb1..faaeee81 100644
--- a/docs/docs-api/SteadyStokes111/_SetSteadyStokes111Param_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_SetSteadyStokes111Param_test_1.md
@@ -39,49 +39,49 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Let us print the parameter list.
```fortran
- CALL param%Print()
+CALL param%Print()
```
Let us check the essential parameter.
```fortran
- CALL obj%CheckEssentialParam( param )
- CALL param%Deallocate(); CALL FPL_FINALIZE()
- END PROGRAM main
+CALL obj%CheckEssentialParam( param )
+CALL param%Deallocate(); CALL FPL_FINALIZE()
+END PROGRAM main
```
diff --git a/docs/docs-api/SteadyStokes111/_Set_test_1.md b/docs/docs-api/SteadyStokes111/_Set_test_1.md
index 9619c0ab..0afb223d 100644
--- a/docs/docs-api/SteadyStokes111/_Set_test_1.md
+++ b/docs/docs-api/SteadyStokes111/_Set_test_1.md
@@ -58,93 +58,93 @@ PROGRAM main
Set parameters for kernel.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
Set parameters for the kernel.
```fortran
- CALL SetSteadyStokes111Param( &
- & param=param, &
- & isConservativeForm=isConservativeForm, &
- & gravity = gravity, &
- & isSubscalePressure = isSubscalePressure, &
- & isBoundarySubscale = isBoundarySubscale, &
- & stabParamOption = stabParamOption, &
- & domainFile = domainFileName, &
- & engine=engine, &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter =maxIter, &
- & rtoleranceForPressure = rtoleranceForPressure, &
- & rtoleranceForVelocity = rtoleranceForVelocity, &
- & atoleranceForPressure = atoleranceForPressure, &
- & atoleranceForVelocity = atoleranceForVelocity, &
- & toleranceForSteadyState = toleranceForSteadyState, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & baseInterpolationForSpace=baseInterpolationForSpace, &
- & baseContinuityForSpace=baseContinuityForSpace, &
- & quadratureTypeForSpace=quadratureTypeForSpace, &
- & refPressureNode=refPressureNode, &
- & refPressure=refPressure &
- & )
+CALL SetSteadyStokes111Param( &
+ & param=param, &
+ & isConservativeForm=isConservativeForm, &
+ & gravity = gravity, &
+ & isSubscalePressure = isSubscalePressure, &
+ & isBoundarySubscale = isBoundarySubscale, &
+ & stabParamOption = stabParamOption, &
+ & domainFile = domainFileName, &
+ & engine=engine, &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter =maxIter, &
+ & rtoleranceForPressure = rtoleranceForPressure, &
+ & rtoleranceForVelocity = rtoleranceForVelocity, &
+ & atoleranceForPressure = atoleranceForPressure, &
+ & atoleranceForVelocity = atoleranceForVelocity, &
+ & toleranceForSteadyState = toleranceForSteadyState, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & baseInterpolationForSpace=baseInterpolationForSpace, &
+ & baseContinuityForSpace=baseContinuityForSpace, &
+ & quadratureTypeForSpace=quadratureTypeForSpace, &
+ & refPressureNode=refPressureNode, &
+ & refPressure=refPressure &
+ & )
```
Setting parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=ls_solverName,&
- & preconditionOption=ls_preconditionOption, &
- & convergenceIn=ls_convergenceIn, &
- & convergenceType=ls_convergenceType, &
- & maxIter=ls_maxIter, &
- & relativeToRHS=ls_relativeToRHS, &
- & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
- & rtol=ls_rtol, &
- & atol=ls_atol )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=ls_solverName,&
+ & preconditionOption=ls_preconditionOption, &
+ & convergenceIn=ls_convergenceIn, &
+ & convergenceType=ls_convergenceType, &
+ & maxIter=ls_maxIter, &
+ & relativeToRHS=ls_relativeToRHS, &
+ & KrylovSubspaceSize=ls_KrylovSubspaceSize, &
+ & rtol=ls_rtol, &
+ & atol=ls_atol )
```
Initiate domain by reading data from a domain file.
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
- CALL domainFile%Open()
- CALL dom%Initiate( domainFile, "" )
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ" )
+CALL domainFile%Open()
+CALL dom%Initiate( domainFile, "" )
+CALL domainFile%Deallocate()
```
Initiate the kernel.
```fortran
- CALL obj%Initiate(param=param, dom=dom )
+CALL obj%Initiate(param=param, dom=dom )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md). Then, we add this instance to the kernel.
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=fluid_massDensity, &
- & dynamicViscosity = fluid_dynamicViscosity, &
- & stressStrainModel=fluid_stressStrainModel )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = fluid_dynamicViscosity )
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=dom%GetNSD(), meshID=fluid_meshID )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=fluid_massDensity, &
+ & dynamicViscosity = fluid_dynamicViscosity, &
+ & stressStrainModel=fluid_stressStrainModel )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = fluid_dynamicViscosity )
```
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [MeshSelection](../MeshSelection/MeshSelection_.md) to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -159,66 +159,66 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="V2=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="V2=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U,
set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.01_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.01_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0
@@ -245,13 +245,13 @@ set parameters for dirichlet boundary condition:
```
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Display the kernel.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
cleanup
diff --git a/docs/docs-api/SteadyStokes221/GetPressureDirichletBCPointer.md b/docs/docs-api/SteadyStokes221/GetPressureDirichletBCPointer.md
index 6522b7fb..af4dcfb5 100644
--- a/docs/docs-api/SteadyStokes221/GetPressureDirichletBCPointer.md
+++ b/docs/docs-api/SteadyStokes221/GetPressureDirichletBCPointer.md
@@ -3,7 +3,7 @@
This routine returns the pointer to Dirichlet boundary condition of pressure field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%DBCForPressure(dbcNo)%ptr`.
- After obtaining the Dirichlet boundary condition pointer, user can set the
-boundary condition
+ boundary condition
- `dbcNo` should be lesser than total dirichlet boundary condition
## Interface
diff --git a/docs/docs-api/SteadyStokes221/GetPressureNeumannBCPointer.md b/docs/docs-api/SteadyStokes221/GetPressureNeumannBCPointer.md
index 8730760a..51a35431 100644
--- a/docs/docs-api/SteadyStokes221/GetPressureNeumannBCPointer.md
+++ b/docs/docs-api/SteadyStokes221/GetPressureNeumannBCPointer.md
@@ -1,4 +1,3 @@
-
# GetPressureNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of pressure field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%NBCForPressure(nbcNo)%ptr`.
diff --git a/docs/docs-api/SteadyStokes221/GetVelocityNeumannBCPointer.md b/docs/docs-api/SteadyStokes221/GetVelocityNeumannBCPointer.md
index a0bd6357..fd3ca6e7 100644
--- a/docs/docs-api/SteadyStokes221/GetVelocityNeumannBCPointer.md
+++ b/docs/docs-api/SteadyStokes221/GetVelocityNeumannBCPointer.md
@@ -1,4 +1,3 @@
-
# GetVelocityNeumannBCPointer
This routine returns the pointer to Neumann boundary condition of Velocity field in [AbstractSteadyStokes_](../AbstractSteadyStokes/AbstractSteadyStokes_.md) kernel, that is `obj%NBCForVelocity(nbcNo)%ptr`.
diff --git a/docs/docs-api/SteadyStokes221/_AddFluidMaterial_test_1.md b/docs/docs-api/SteadyStokes221/_AddFluidMaterial_test_1.md
index 27391dbf..990df1e2 100644
--- a/docs/docs-api/SteadyStokes221/_AddFluidMaterial_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_AddFluidMaterial_test_1.md
@@ -13,19 +13,19 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
```
New variables in this example:
```fortran
- TYPE( MeshSelection_ ) :: region
+TYPE( MeshSelection_ ) :: region
```
Set parameters
@@ -34,64 +34,64 @@ Set parameters
:::
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=0, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=0, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
:::note Set parameters for linear solver.
:::
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
```fortran
- filename = [String(domainFileNamePressure), &
- & String(domainFileNameVelocity)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNamePressure), &
+ & String(domainFileNameVelocity)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
Initiate kernel
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Add fluid material
@@ -102,35 +102,35 @@ Then we add this instance to the kernel.
:::
```fortran
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- dom => domains(1)%ptr
- CALL region%Add( dim=dom%GetNSD(), meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+dom => domains(1)%ptr
+CALL region%Add( dim=dom%GetNSD(), meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Display kernel
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
Cleanup
diff --git a/docs/docs-api/SteadyStokes221/_AddVelocityDirichletBC_test_1.md b/docs/docs-api/SteadyStokes221/_AddVelocityDirichletBC_test_1.md
index 776918e1..68b79dcd 100644
--- a/docs/docs-api/SteadyStokes221/_AddVelocityDirichletBC_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_AddVelocityDirichletBC_test_1.md
@@ -13,110 +13,110 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
```
New variables in this example
```fortran
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
```
Set parameters
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
Set parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate the domain.
```fortran
- filename = [String(domainFileNamePressure), &
- & String(domainFileNameVelocity)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNamePressure), &
+ & String(domainFileNameVelocity)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
Initiate kernel
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md).
Then we add this instance to the kernel.
```fortran
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Now we show how to add dirichlet boundary condition. To this end first we create an instance of [[MeshSelection_]] to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -124,12 +124,12 @@ Now we show how to add dirichlet boundary condition. To this end first we create
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
@@ -142,86 +142,86 @@ select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U, set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.1_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.1_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0, Set parameters for dirichlet boundary condition:
@@ -247,15 +247,15 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/SteadyStokes221/_AssembleRHS_test_1.md b/docs/docs-api/SteadyStokes221/_AssembleRHS_test_1.md
index 98371149..21de6883 100644
--- a/docs/docs-api/SteadyStokes221/_AssembleRHS_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_AssembleRHS_test_1.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `AssembleTanMat()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,15 +13,15 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
```
Set parameters
@@ -29,54 +29,54 @@ Set parameters
Initiate an instance of [ParameterList_](../ParameterList/ParameterList_.md), param, this will be used to initiate several objects.
```fortran title="Initiate param"
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran {5} title="set SteadyStokes221 parameters"
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
```fortran title="Set param for linSolver"
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
```fortran {1} title="Initiate domain"
- filename = [String(domainFileNameVelocity), &
- & String(domainFileNamePressure)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNameVelocity), &
+ & String(domainFileNamePressure)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
:::caution In line 1, make sure that Velocity domain comes first.
@@ -85,8 +85,8 @@ Initiate domain
Initiate kernel
```fortran {1} title="Initiate kernel"
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Here, line 1 is to allow verbosity.
@@ -94,28 +94,28 @@ Here, line 1 is to allow verbosity.
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md). Then we add this instance to the kernel.
```fortran title="adding fluid material"
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Add Dirichlet boundary condition
@@ -125,12 +125,12 @@ V1=0, Now we show how to add dirichlet boundary condition. To this end first we
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
@@ -143,86 +143,86 @@ Select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
V1=U, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.1_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.1_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
P=0, Set parameters for dirichlet boundary condition:
@@ -248,29 +248,29 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
Now that we are done with the setup, we should call `Set` method. In this method, the kernel checks the data, configuration, and intiates appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
AssembleTanMat
```fortran title="assembling tangent matrix"
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
AssembleRHS
```fortran
- CALL obj%AssembleRHS()
+CALL obj%AssembleRHS()
```
Cleanup
diff --git a/docs/docs-api/SteadyStokes221/_AssembleTanMat_test_1.md b/docs/docs-api/SteadyStokes221/_AssembleTanMat_test_1.md
index 909c104e..7ea6f4c2 100644
--- a/docs/docs-api/SteadyStokes221/_AssembleTanMat_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_AssembleTanMat_test_1.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `AssembleTanMat()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,15 +13,15 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
```
Set parameters
@@ -29,54 +29,54 @@ Set parameters
Initiate an instance of [ParameterList_](../ParameterList/ParameterList_.md), param, this will be used to initiate several objects.
```fortran title="Initiate param"
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran {5} title="set SteadyStokes221 parameters"
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
```fortran title="Set param for linSolver"
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
```fortran {1} title="Initiate domain"
- filename = [String(domainFileNameVelocity), &
- & String(domainFileNamePressure)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNameVelocity), &
+ & String(domainFileNamePressure)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
:::caution In line 1, make sure that Velocity domain comes first.
@@ -85,8 +85,8 @@ Initiate domain
Initiate kernel
```fortran {1} title="Initiate kernel"
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Here, line 1 is to allow verbosity.
@@ -94,28 +94,28 @@ Here, line 1 is to allow verbosity.
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md). Then we add this instance to the kernel.
```fortran title="adding fluid material"
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Add Dirichlet boundary condition
@@ -125,12 +125,12 @@ V1=0, Now we show how to add dirichlet boundary condition. To this end first we
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
@@ -143,86 +143,86 @@ Select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
V1=U, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.1_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.1_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
P=0, Set parameters for dirichlet boundary condition:
@@ -248,28 +248,28 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
Now that we are done with the setup, we should call `Set` method. In this method, the kernel checks the data, configuration, and intiates appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
AssembleTanMat
```fortran title="assembling tangent matrix"
- CALL obj%AssembleTanmat()
+CALL obj%AssembleTanmat()
```
```fortran title="checking sparsity pattern"
- CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
- CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
+CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
+CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
```
```fortran
diff --git a/docs/docs-api/SteadyStokes221/_Assemble_test_1.md b/docs/docs-api/SteadyStokes221/_Assemble_test_1.md
index 7f46167c..3eb225e8 100644
--- a/docs/docs-api/SteadyStokes221/_Assemble_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_Assemble_test_1.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `AssembleTanMat()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,15 +13,15 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
```
Set parameters
@@ -29,54 +29,54 @@ Set parameters
Initiate an instance of [ParameterList_](../ParameterList/ParameterList_.md), param, this will be used to initiate several objects.
```fortran title="Initiate param"
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran {5} title="set SteadyStokes221 parameters"
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
```fortran title="Set param for linSolver"
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
```fortran {1} title="Initiate domain"
- filename = [String(domainFileNameVelocity), &
- & String(domainFileNamePressure)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNameVelocity), &
+ & String(domainFileNamePressure)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
:::caution In line 1, make sure that Velocity domain comes first.
@@ -85,8 +85,8 @@ Initiate domain
Initiate kernel
```fortran {1} title="Initiate kernel"
- CALL e%setQuietMode(.TRUE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.TRUE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Here, line 1 is to allow verbosity.
@@ -94,28 +94,28 @@ Here, line 1 is to allow verbosity.
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md). Then we add this instance to the kernel.
```fortran title="adding fluid material"
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.TRUE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.TRUE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Add Dirichlet boundary condition
@@ -125,12 +125,12 @@ V1=0, Now we show how to add dirichlet boundary condition. To this end first we
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
@@ -143,86 +143,86 @@ Select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
V1=U, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.1_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.1_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
P=0, Set parameters for dirichlet boundary condition:
@@ -248,36 +248,36 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
Now that we are done with the setup, we should call `Set` method. In this method, the kernel checks the data, configuration, and intiates appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
AssembleTanMat
```fortran title="assembling tangent matrix"
- CALL e%setQuietMode(.TRUE.)
- CALL obj%AssembleTanmat()
+CALL e%setQuietMode(.TRUE.)
+CALL obj%AssembleTanmat()
```
```comment title="checking sparsity pattern"
- CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
- CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
+CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
+CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
```
Assemble
```fortran title="assemble"
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Assemble()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Assemble()
```
Cleanup
diff --git a/docs/docs-api/SteadyStokes221/_Initiate_test_1.md b/docs/docs-api/SteadyStokes221/_Initiate_test_1.md
index 1b870ef2..8f8ba587 100644
--- a/docs/docs-api/SteadyStokes221/_Initiate_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_Initiate_test_1.md
@@ -14,12 +14,12 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
```
Set parameters
@@ -28,48 +28,48 @@ Set parameters
:::
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=0, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=0, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
:::note Set parameters for linear solver.
:::
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=LEFT_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=LEFT_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
@@ -77,18 +77,18 @@ Initiate domain
Initiate the domain.
```fortran
- filename = [String(domainFileNamePressure), &
- & String(domainFileNameVelocity)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNamePressure), &
+ & String(domainFileNameVelocity)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
Initiate kernel
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
- CALL obj%Display("")
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/SteadyStokes221/_SetSteadyStokes221Param_test_1.md b/docs/docs-api/SteadyStokes221/_SetSteadyStokes221Param_test_1.md
index 43b85944..af383aa5 100644
--- a/docs/docs-api/SteadyStokes221/_SetSteadyStokes221Param_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_SetSteadyStokes221Param_test_1.md
@@ -13,10 +13,10 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- CHARACTER( LEN = * ), PARAMETER :: domainFileForPressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileForVelocity="./mesh_tri6.h5"
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+CHARACTER( LEN = * ), PARAMETER :: domainFileForPressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileForVelocity="./mesh_tri6.h5"
```
Set parameters
@@ -26,45 +26,45 @@ Initiate the parameter list to store the parameters of the kernel
:::
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
We set the parameters for [SteadyStokes221_](./SteadyStokes221_.md) kernel.
```fortran
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileForPressure, &
- & domainFileForVelocity = domainFileForVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=0, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileForPressure, &
+ & domainFileForVelocity = domainFileForVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=0, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
Let us print the parameter list.
```fortran
- CALL param%Print()
+CALL param%Print()
```
Let us check the essential parameter.
```fortran
- CALL obj%CheckEssentialParam( param )
+CALL obj%CheckEssentialParam( param )
```
```fortran
diff --git a/docs/docs-api/SteadyStokes221/_Set_test_1.md b/docs/docs-api/SteadyStokes221/_Set_test_1.md
index bbb29ec8..cbe01f8d 100644
--- a/docs/docs-api/SteadyStokes221/_Set_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_Set_test_1.md
@@ -4,7 +4,7 @@ This example tests and demonstrates the usage of `Set()` method of [SteadyStokes
- The set method does a lot of work, for example depending upon the options provided by the user it allocates the field instances for matrices, vectors, material properties etc.
- The main computation starts only after calling the Set function.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -17,105 +17,105 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
```
Initiate an instance of [ParameterList_](../ParameterList/ParameterList_.md), param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
Set parameters for linear solver.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate the domain.
```fortran
- filename = [String(domainFileNamePressure), &
- & String(domainFileNameVelocity)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNamePressure), &
+ & String(domainFileNameVelocity)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
Initiate kernel
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md).
Then we add this instance to the kernel.
```fortran
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.FALSE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.FALSE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
AddDirichletBC, V1=0, Now we show how to add dirichlet boundary condition. To this end first we create an instance of [[MeshSelection_]] to select the region of the mesh. Then we define the dirichlet bonundary condition, and pass these two information to kernel.
@@ -123,12 +123,12 @@ AddDirichletBC, V1=0, Now we show how to add dirichlet boundary condition. To th
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
@@ -141,86 +141,86 @@ Select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
AddDirichletBC, V1=U, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.1_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.1_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
AddDirichletBC, P=0, Set parameters for dirichlet boundary condition:
@@ -246,23 +246,23 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
Now that we are done with the setup, we should call `Set` method. In this method, the kernel checks the data, configuration, and intiates appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
Let see the content of the kernel on the terminal screen by using `Display` method.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
```fortran
diff --git a/docs/docs-api/SteadyStokes221/_Solve_test_1.md b/docs/docs-api/SteadyStokes221/_Solve_test_1.md
index 76a82d1b..6d2f2d0b 100644
--- a/docs/docs-api/SteadyStokes221/_Solve_test_1.md
+++ b/docs/docs-api/SteadyStokes221/_Solve_test_1.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `Solve()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -13,16 +13,16 @@ PROGRAM main
Declare variables
```fortran
- TYPE( SteadyStokes221_ ) :: obj
- TYPE( ParameterList_ ) :: param
- TYPE( DomainPointer_ ) :: domains(2)
- CLASS( Domain_ ), POINTER :: dom => NULL()
- CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
- CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
- TYPE(String) :: filename(2)
- TYPE( MeshSelection_ ) :: region
- CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
- INTEGER( I4B ) :: intDebug
+TYPE( SteadyStokes221_ ) :: obj
+TYPE( ParameterList_ ) :: param
+TYPE( DomainPointer_ ) :: domains(2)
+CLASS( Domain_ ), POINTER :: dom => NULL()
+CHARACTER( LEN = * ), PARAMETER :: domainFileNamePressure="./mesh_tri3.h5"
+CHARACTER( LEN = * ), PARAMETER :: domainFileNameVelocity="./mesh_tri6.h5"
+TYPE(String) :: filename(2)
+TYPE( MeshSelection_ ) :: region
+CLASS( DirichletBC_ ), POINTER :: dbc => NULL()
+INTEGER( I4B ) :: intDebug
```
Set parameters
@@ -30,54 +30,54 @@ Set parameters
Initiate an instance of [ParameterList_](../ParameterList/ParameterList_.md), param, this will be used to initiate several objects.
```fortran title="Initiate param"
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
```fortran {5} title="set SteadyStokes221 parameters"
- CALL SetSteadyStokes221Param( &
- & param=param, &
- & isConservativeForm=.TRUE., &
- & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
- & domainFileForPressure = domainFileNamePressure, &
- & domainFileForVelocity = domainFileNameVelocity, &
- & engine="NATIVE_SERIAL", &
- & CoordinateSystem=KERNEL_CARTESIAN, &
- & maxIter = 100, &
- & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
- & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
- & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & baseInterpolationForSpace="LagrangeInterpolation", &
- & baseContinuityForSpace="H1", &
- & quadratureTypeForSpace="GaussLegendre", &
- & postProcessOpt=1)
+CALL SetSteadyStokes221Param( &
+ & param=param, &
+ & isConservativeForm=.TRUE., &
+ & gravity = [0.0_DFP, -9.8_DFP, 0.0_DFP], &
+ & domainFileForPressure = domainFileNamePressure, &
+ & domainFileForVelocity = domainFileNameVelocity, &
+ & engine="NATIVE_SERIAL", &
+ & CoordinateSystem=KERNEL_CARTESIAN, &
+ & maxIter = 100, &
+ & rtoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & rtoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & atoleranceForPressure = REAL( 1.0E-6, DFP ), &
+ & atoleranceForVelocity = REAL( 1.0E-6, DFP ), &
+ & toleranceForSteadyState = REAL( 1.0E-6, DFP ), &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & baseInterpolationForSpace="LagrangeInterpolation", &
+ & baseContinuityForSpace="H1", &
+ & quadratureTypeForSpace="GaussLegendre", &
+ & postProcessOpt=1)
```
```fortran title="Set param for linSolver"
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=REAL( 1.0E-10, DFP ), &
- & atol=REAL( 1.0D-10, DFP ) )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=REAL( 1.0E-10, DFP ), &
+ & atol=REAL( 1.0D-10, DFP ) )
```
Initiate domain
```fortran {1} title="Initiate domain"
- filename = [String(domainFileNameVelocity), &
- & String(domainFileNamePressure)]
- CALL e%setQuietMode(.TRUE.)
- CALL Initiate(domains=domains, filename=filename)
+filename = [String(domainFileNameVelocity), &
+ & String(domainFileNamePressure)]
+CALL e%setQuietMode(.TRUE.)
+CALL Initiate(domains=domains, filename=filename)
```
:::caution In line 1, make sure that Velocity domain comes first.
@@ -86,8 +86,8 @@ Initiate domain
Initiate kernel
```fortran {1} title="Initiate kernel"
- CALL e%setQuietMode(.TRUE.)
- CALL obj%Initiate(param=param, domains=domains )
+CALL e%setQuietMode(.TRUE.)
+CALL obj%Initiate(param=param, domains=domains )
```
Here, line 1 is to allow verbosity.
@@ -95,28 +95,28 @@ Here, line 1 is to allow verbosity.
Add fluid material to kernel. To do so, we first create an instance of [MeshSelection_](../MeshSelection/MeshSelection_.md). Then we add this instance to the kernel.
```fortran title="adding fluid material"
- CALL e%setQuietMode(.TRUE.)
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd, meshID=[1] )
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity = 0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel" )
- CALL SetNewtonianFluidModelParam( &
- & param = param, &
- & dynamicViscosity = 0.001_DFP )
+CALL e%setQuietMode(.TRUE.)
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd, meshID=[1] )
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity = 0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel" )
+CALL SetNewtonianFluidModelParam( &
+ & param = param, &
+ & dynamicViscosity = 0.001_DFP )
```
```fortran
- CALL e%setQuietMode(.TRUE.)
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL e%setQuietMode(.TRUE.)
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
Add Dirichlet boundary condition
@@ -126,12 +126,12 @@ V1=0, Now we show how to add dirichlet boundary condition. To this end first we
Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
@@ -144,86 +144,86 @@ Select the mesh region:
```
```fortran
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
- CALL region%Set()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=1, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP )
- dbc=>NULL()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=1, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP )
+dbc=>NULL()
```
V1=U, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[TOP] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=2, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
- CALL dbc%Set( ConstantNodalValue=0.001_DFP )
- dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=2, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=2 )
+CALL dbc%Set( ConstantNodalValue=0.001_DFP )
+dbc=>NULL()
+CALL region%Deallocate()
```
V2=0, Set parameters for dirichlet boundary condition:
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE. )
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE. )
```
Select the mesh region:
```fortran
- CALL region%Deallocate()
- CALL region%Initiate( isSelectionByMeshID=.TRUE. )
- CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
- CALL region%Set()
+CALL region%Deallocate()
+CALL region%Initiate( isSelectionByMeshID=.TRUE. )
+CALL region%Add( dim=obj%nsd-1, meshID=[BOTTOM, RIGHT, TOP, LEFT] )
+CALL region%Set()
```
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddVelocityDirichletBC( &
- & dbcNo=3, &
- & param=param, &
- & boundary=region )
- dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC( &
+ & dbcNo=3, &
+ & param=param, &
+ & boundary=region )
+dbc => obj%GetVelocityDirichletBCPointer( dbcNo=3 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
P=0, Set parameters for dirichlet boundary condition:
@@ -249,56 +249,56 @@ CALL region%Set()
Add dirichlet boundary condition and the region to kernel:
```fortran
- CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
- & boundary=region )
- dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
- CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
- CALL region%Deallocate()
+CALL obj%AddPressureDirichletBC( dbcNo=1, param=param, &
+ & boundary=region )
+dbc => obj%GetPressureDirichletBCPointer( dbcNo=1 )
+CALL dbc%Set( ConstantNodalValue=0.0_DFP ); dbc=>NULL()
+CALL region%Deallocate()
```
Now that we are done with the setup, we should call `Set` method. In this method, the kernel checks the data, configuration, and intiates appropriate variables.
```fortran
- call display("solve test 1 set ()")
- CALL obj%Set()
+call display("solve test 1 set ()")
+CALL obj%Set()
```
AssembleTanMat
```fortran title="assembling tangent matrix"
- CALL e%setQuietMode(.TRUE.)
- call display("solve test 1 AssembleTanmat()")
- CALL obj%AssembleTanmat()
+CALL e%setQuietMode(.TRUE.)
+call display("solve test 1 AssembleTanmat()")
+CALL obj%AssembleTanmat()
```
```comment
- CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
- CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
+CALL obj%Kmat%SPY(filename="./Kmat", ext=".png")
+CALL obj%Gmat%SPY(filename="./Gmat", ext=".png")
```
AssembleRHS
```fortran
- CALL e%setQuietMode(.TRUE.)
- call display("solve test 1 AssembleRHS()")
- CALL obj%AssembleRHS()
+CALL e%setQuietMode(.TRUE.)
+call display("solve test 1 AssembleRHS()")
+CALL obj%AssembleRHS()
```
Assemble
```fortran
- call display("solve test 1 Assemble()")
- CALL e%setQuietMode(.TRUE.)
- CALL obj%Assemble()
+call display("solve test 1 Assemble()")
+CALL e%setQuietMode(.TRUE.)
+CALL obj%Assemble()
```
Solve
```fortran
- call display("solve test 1 Solve()")
- CALL e%setQuietMode(.FALSE.)
- CALL obj%Solve()
- CALL Display("========= Solve test 1 Debug 1 =========")
+call display("solve test 1 Solve()")
+CALL e%setQuietMode(.FALSE.)
+CALL obj%Solve()
+CALL Display("========= Solve test 1 Debug 1 =========")
```
Cleanup
diff --git a/docs/docs-api/String/String_test_1.md b/docs/docs-api/String/String_test_1.md
index bfd1b692..7c2c8912 100644
--- a/docs/docs-api/String/String_test_1.md
+++ b/docs/docs-api/String/String_test_1.md
@@ -26,31 +26,31 @@ implicit none
!!! note "Str for integer"
```fortran
- BLOCK
- CALL Display( Str(1), "Str(1) = " )
- CALL Display( Str(1, no_sign=.TRUE.), "Str(1) = " )
- CALL Display( Str(1, no_sign=.FALSE.), "Str(1) = " )
- END BLOCK
+BLOCK
+ CALL Display( Str(1), "Str(1) = " )
+ CALL Display( Str(1, no_sign=.TRUE.), "Str(1) = " )
+ CALL Display( Str(1, no_sign=.FALSE.), "Str(1) = " )
+END BLOCK
```
!!! note "Str for real32"
```fortran
- BLOCK
- CALL Display( Str(1.0_Real32), "Str(1) = " )
- CALL Display( Str(1.0_Real32, no_sign=.TRUE.), "Str(1) = " )
- CALL Display( Str(1.0_Real32, no_sign=.FALSE.), "Str(1) = " )
- END BLOCK
+BLOCK
+ CALL Display( Str(1.0_Real32), "Str(1) = " )
+ CALL Display( Str(1.0_Real32, no_sign=.TRUE.), "Str(1) = " )
+ CALL Display( Str(1.0_Real32, no_sign=.FALSE.), "Str(1) = " )
+END BLOCK
```
!!! note "Str for real64"
```fortran
- BLOCK
- CALL Display( Str(1.0_Real64), "Str(1) = " )
- CALL Display( Str(1.0_Real64, no_sign=.TRUE.), "Str(1) = " )
- CALL Display( Str(1.0_Real64, no_sign=.FALSE.), "Str(1) = " )
- END BLOCK
+BLOCK
+ CALL Display( Str(1.0_Real64), "Str(1) = " )
+ CALL Display( Str(1.0_Real64, no_sign=.TRUE.), "Str(1) = " )
+ CALL Display( Str(1.0_Real64, no_sign=.FALSE.), "Str(1) = " )
+END BLOCK
```
```fortran
diff --git a/docs/docs-api/StringUtility/examples/_ToLowerCase_test_1.md b/docs/docs-api/StringUtility/examples/_ToLowerCase_test_1.md
index d3b2a560..ecce1a13 100644
--- a/docs/docs-api/StringUtility/examples/_ToLowerCase_test_1.md
+++ b/docs/docs-api/StringUtility/examples/_ToLowerCase_test_1.md
@@ -6,5 +6,5 @@ implicit none
CHARACTER( LEN = 100 ) :: astr = "HELLO World"
CALL ToLowerCase(astr)
CALL Display(astr, "lowercase astr = ")
-end program main
+end program main
```
diff --git a/docs/docs-api/StringUtility/examples/_ToUpperCase_test_1.md b/docs/docs-api/StringUtility/examples/_ToUpperCase_test_1.md
index 818af859..e8b5f64b 100644
--- a/docs/docs-api/StringUtility/examples/_ToUpperCase_test_1.md
+++ b/docs/docs-api/StringUtility/examples/_ToUpperCase_test_1.md
@@ -6,5 +6,5 @@ implicit none
CHARACTER( LEN = 100 ) :: astr = "hello world"
CALL ToUpperCase(astr)
CALL Display(astr, "uppercase astr = ")
-end program main
+end program main
```
diff --git a/docs/docs-api/SuperLU/dCrete_Dense_Matrix.md b/docs/docs-api/SuperLU/dCrete_Dense_Matrix.md
index c9580901..c31673d6 100644
--- a/docs/docs-api/SuperLU/dCrete_Dense_Matrix.md
+++ b/docs/docs-api/SuperLU/dCrete_Dense_Matrix.md
@@ -20,7 +20,6 @@ INTERFACE
END INTERFACE
PUBLIC :: dCreate_Dense_Matrix
-
```
import EXAMPLE26 from "./_dCreate_Dense_Matrix_test.md";
diff --git a/docs/docs-api/SuperLU/dgssvx.md b/docs/docs-api/SuperLU/dgssvx.md
index 17c0b4f2..d6fb1312 100644
--- a/docs/docs-api/SuperLU/dgssvx.md
+++ b/docs/docs-api/SuperLU/dgssvx.md
@@ -29,7 +29,7 @@ $$
$$
:::note
- Whether the system will be equilibrated depends on the scaling of the matrix A, but if equilibration is used, A is overwritten by $\text{diag}(R)\cdot A \cdot \text{diag}(C)$ and B by $\text{diag}(R) \cdot B$ (if `options->Trans=NOTRANS`) or $\text{diag}(C) \cdot B$ (if `options->Trans = TRANS or CONJ`).
+Whether the system will be equilibrated depends on the scaling of the matrix A, but if equilibration is used, A is overwritten by $\text{diag}(R)\cdot A \cdot \text{diag}(C)$ and B by $\text{diag}(R) \cdot B$ (if `options->Trans=NOTRANS`) or $\text{diag}(C) \cdot B$ (if `options->Trans = TRANS or CONJ`).
:::
2. Permute columns of A, forming `A*Pc`, where Pc is a permutation matrix that usually preserves sparsity. For more details of this step, see sp_preorder.c.
@@ -50,17 +50,17 @@ If A is stored row-wise (`A->Stype = SLU_NR`), apply the above algorithm to the
1. If `options->Equil = YES`, scaling factors are computed to equilibrate the system:
- `options->Trans = NOTRANS`:
-$$
-\text{diag}(R) \cdot A \cdot \text{diag}(C) \cdot \text{diag}(C)^{-1} \cdot X = \text{diag}(R) \cdot B
-$$
+ $$
+ \text{diag}(R) \cdot A \cdot \text{diag}(C) \cdot \text{diag}(C)^{-1} \cdot X = \text{diag}(R) \cdot B
+ $$
- `options->Trans = TRANS:`
-$$
-(\text{diag}(R) \cdot A \cdot \text{diag}(C))^{T} \cdot \text{diag}(R)^{-1} \cdot X = \text{diag}(C) \cdot B
-$$
+ $$
+ (\text{diag}(R) \cdot A \cdot \text{diag}(C))^{T} \cdot \text{diag}(R)^{-1} \cdot X = \text{diag}(C) \cdot B
+ $$
- `options->Trans = CONJ:`
-$$
-(\text{diag}(R) \cdot A \cdot \text{diag}(C))^{H} \cdot \text{diag}(R)^{-1} \cdot X = \text{diag}(C) \cdot B
-$$
+ $$
+ (\text{diag}(R) \cdot A \cdot \text{diag}(C))^{H} \cdot \text{diag}(R)^{-1} \cdot X = \text{diag}(C) \cdot B
+ $$
:::note
Whether the system will be equilibrated depends on the scaling of the matrix A, but if equilibration is used, $A^{T}$ is overwritten by $\text{diag}(R) \cdot A^{T} \cdot \text{diag}(C)$ and B by $\text{diag}(R)\cdot B$ (if `trans='N'`) or $\text{diag}(C) \cdot B$ (if `trans = 'T' or 'C'`).
@@ -282,7 +282,7 @@ If `A->Stype = SLU_NR`, column permutation vector of size `A->nrow`, which descr
(input/output) int*
```
-If `A->Stype = SLU_NC`, row permutation vector of size `A->nrow`, which defines the permutation matrix Pr, and is determined by partial pivoting. `perm_r[i] = j` means row i of A is in position j in `Pr*A`.
+If `A->Stype = SLU_NC`, row permutation vector of size `A->nrow`, which defines the permutation matrix Pr, and is determined by partial pivoting. `perm_r[i] = j` means row i of A is in position j in `Pr*A`.
If `A->Stype = SLU_NR`, permutation vector of size `A->ncol`, which determines permutation of rows of transpose(A) (columns of A) as described above.
diff --git a/docs/docs-api/SuperLU/dgstrf.md b/docs/docs-api/SuperLU/dgstrf.md
index ce36a2f9..ef658fca 100644
--- a/docs/docs-api/SuperLU/dgstrf.md
+++ b/docs/docs-api/SuperLU/dgstrf.md
@@ -5,14 +5,14 @@
The factorization has the form
$$
-P_{r} \cdot A = L \cdot U,
+P_{r} \cdot A = L \cdot U,
$$
- Pr is a row-permutation matrix
- L is lower triangular with unit diagonal elements (lower trapezoidal if `A->nrow > A->ncol`)
- U is upper triangular (upper trapezoidal if `A->nrow < A->ncol`).
- See supermatrix.h for the definition of 'SuperMatrix' structure.
+See supermatrix.h for the definition of 'SuperMatrix' structure.
## Interface
@@ -54,7 +54,7 @@ PUBLIC :: dgstrf
## options
```fortran
- (input) superlu_options_t*
+(input) superlu_options_t*
```
The structure defines the input parameters to control how the LU decomposition will be performed.
@@ -205,13 +205,13 @@ See slu_util.h for the definition of 'SuperLUStat_t'.
- `> 0:` if info = i, and `i` is
```txt
- <= A->ncol: U(i,i) is exactly zero. The factorization has
- been completed, but the factor U is exactly singular,
- and division by zero will occur if it is used to solve a
- system of equations.
- > A->ncol: number of bytes allocated when memory allocation
- failure occurred, plus A->ncol. If lwork = -1, it is
- the estimated amount of space needed, plus A->ncol.
+<= A->ncol: U(i,i) is exactly zero. The factorization has
+ been completed, but the factor U is exactly singular,
+ and division by zero will occur if it is used to solve a
+ system of equations.
+> A->ncol: number of bytes allocated when memory allocation
+ failure occurred, plus A->ncol. If lwork = -1, it is
+ the estimated amount of space needed, plus A->ncol.
```
```fortran
diff --git a/docs/docs-api/SuperLU/dutil.md b/docs/docs-api/SuperLU/dutil.md
index c3747f88..d0c38215 100644
--- a/docs/docs-api/SuperLU/dutil.md
+++ b/docs/docs-api/SuperLU/dutil.md
@@ -51,5 +51,4 @@ INTERFACE
END INTERFACE
PUBLIC :: dCreate_CompRow_Matrix
-
```
diff --git a/docs/docs-api/SuperLU/formats.md b/docs/docs-api/SuperLU/formats.md
index 407a94a6..21fd8d95 100644
--- a/docs/docs-api/SuperLU/formats.md
+++ b/docs/docs-api/SuperLU/formats.md
@@ -35,7 +35,6 @@ TYPE(rowperm_), PUBLIC, PARAMETER :: rowperm_t = rowperm_( &
## ColPerm_t
```fortran
-
TYPE :: colperm_
INTEGER(C_INT) :: NATURAL, MMD_ATA, MMD_AT_PLUS_A, COLAMD, &
& METIS_AT_PLUS_A, PARMETIS, ZOLTAN, MY_PERMC
@@ -44,7 +43,6 @@ END TYPE
TYPE(colperm_), PUBLIC, PARAMETER :: colperm_t = colperm_(&
& NATURAL, MMD_ATA, MMD_AT_PLUS_A, COLAMD, &
& METIS_AT_PLUS_A, PARMETIS, ZOLTAN, MY_PERMC)
-
```
## Trans_t
@@ -61,14 +59,12 @@ TYPE(trans_), PARAMETER, PUBLIC :: trans_t = trans_(&
## DiagScale_t
```fortran
-
TYPE :: DiagScale_
INTEGER(C_INT) :: NOEQUIL, ROW, COL, BOTH
END TYPE
TYPE(DiagScale_), PUBLIC, PARAMETER :: DiagScale_t = DiagScale_(&
& NOEQUIL, ROW, COL, BOTH)
-
```
## IterRefine_t
@@ -80,7 +76,6 @@ END TYPE
TYPE(IterRefine_), PUBLIC, PARAMETER :: IterRefine_t = IterRefine_(&
& NOREFINE, SLU_SINGLE, SLU_DOUBLE, SLU_EXTRA)
-
```
## MemType_t
@@ -92,13 +87,11 @@ END TYPE MemType_
TYPE(MemType_), PUBLIC, PARAMETER :: MemType_t = MemType_(&
& USUB, LSUB, UCOL, LUSUP, LLVL, ULVL, NO_MEMTYPE)
-
```
## Stack_end_t
```fortran
-
TYPE :: stack_end_
INTEGER(C_INT) :: HEAD, TAIL
END TYPE
@@ -110,7 +103,6 @@ TYPE(stack_end_), PUBLIC, PARAMETER :: stack_end_t = stack_end_(&
## LU_space_t
```fortran
-
TYPE :: LU_space_
INTEGER(C_INT) :: SYSTEM, USER
END TYPE
@@ -122,27 +114,23 @@ TYPE(LU_space_), PARAMETER, PUBLIC :: LU_space_t = LU_space_(&
## Norm_t
```fortran
-
TYPE :: norm_
INTEGER(C_INT) :: ONE_NORM, TWO_NORM, INF_NORM
END TYPE
TYPE(norm_), PUBLIC, PARAMETER :: norm_t = norm_(&
& ONE_NORM, TWO_NORM, INF_NORM)
-
```
## Milu_t
```fortran
-
TYPE :: milu_
INTEGER(C_INT) :: SILU, SMILU_1, SMILU_2, SMILU_3
END TYPE milu_
TYPE(milu_), PARAMETER, PUBLIC :: milu_t = milu_(&
& SILU, SMILU_1, SMILU_2, SMILU_3)
-
```
## MType_t
@@ -171,7 +159,6 @@ TYPE(Mtype_), PUBLIC, PARAMETER :: Mtype_t = Mtype_(&
& SLU_SYU=SLU_SYU, &
& SLU_HEL=SLU_HEL, &
& SLU_HEU=SLU_HEU)
-
```
## DType_t
@@ -190,7 +177,6 @@ TYPE(Dtype_), PARAMETER, PUBLIC :: Dtype_t = Dtype_(&
& SLU_D=SLU_D, &
& SLU_C=SLU_C, &
& SLU_Z=SLU_Z)
-
```
## SType_t
@@ -218,7 +204,6 @@ TYPE(Stype_), PARAMETER, PUBLIC :: Stype_t = Stype_(&
& SLU_DN=SLU_DN, &
& SLU_NR_LOC=SLU_NR_LOC &
& )
-
```
## NCFormat
@@ -381,7 +366,6 @@ TYPE, BIND(c) :: NCPformat
END TYPE NCPformat
PUBLIC :: NCPformat
-
```
## DNformat
@@ -490,5 +474,4 @@ TYPE, BIND(C) :: SuperLUStat_t
END TYPE SuperLUStat_t
PUBLIC :: SuperLUStat_t
-
```
diff --git a/docs/docs-api/SuperLU/options.md b/docs/docs-api/SuperLU/options.md
index 3aaec939..c55b057c 100644
--- a/docs/docs-api/SuperLU/options.md
+++ b/docs/docs-api/SuperLU/options.md
@@ -77,10 +77,10 @@ Specifies whether to permute the rows of the original matrix.
- NO: not to permute the rows
- LargeDiag MC64: use a serial, weighted bipartite matching algorithm implemented in
-MC64 to permute the rows to make the diagonal large relative to the off-diagonal [11].
+ MC64 to permute the rows to make the diagonal large relative to the off-diagonal [11].
- LargeDiag AWPM: use a parallel, approximate weighted bipartite matching algorithm
-implemented in CombBLAS to permute the rows to make the diagonal large relative to
-the off-diagonal [3].
+ implemented in CombBLAS to permute the rows to make the diagonal large relative to
+ the off-diagonal [3].
- MY PERMR: use the permutation given by the user.
## ILU_DropRule
diff --git a/docs/docs-api/SwapUtility/Swap.md b/docs/docs-api/SwapUtility/Swap.md
index 1fe447f2..a2af51a1 100644
--- a/docs/docs-api/SwapUtility/Swap.md
+++ b/docs/docs-api/SwapUtility/Swap.md
@@ -155,7 +155,7 @@ Swap two scalar numbers.
import EXAMPLE155 from "./_Swap_test_4.md";
-
+
diff --git a/docs/docs-api/SwapUtility/_Swap_test_1.md b/docs/docs-api/SwapUtility/_Swap_test_1.md
index 5a2df45c..c648b0d1 100644
--- a/docs/docs-api/SwapUtility/_Swap_test_1.md
+++ b/docs/docs-api/SwapUtility/_Swap_test_1.md
@@ -11,8 +11,8 @@ PROGRAM main
Make a random matrix and display it.
```fortran
- CALL Reallocate( b2, 4, 3 )
- CALL RANDOM_NUMBER(b2)
+CALL Reallocate( b2, 4, 3 )
+CALL RANDOM_NUMBER(b2)
```
Make another matrix `a` so that we can swap the indices of `b` and SAVE it in `a`.
@@ -25,8 +25,8 @@ In this swap we are using:
which means `a=b`.
```fortran
- CALL SWAP(a=a2,b=b2,i1=1,i2=2)
- CALL OK( ALL( a2 .approxeq. b2 ), "swap" )
+CALL SWAP(a=a2,b=b2,i1=1,i2=2)
+CALL OK( ALL( a2 .approxeq. b2 ), "swap" )
```
Now let us use
@@ -37,15 +37,15 @@ Now let us use
which will produce `a=transpose(b)`.
```fortran
- CALL SWAP(a=a2,b=b2,i1=2,i2=1)
- CALL OK( ALL( a2 .approxeq. TRANSPOSE(b2) ), "swap" )
+CALL SWAP(a=a2,b=b2,i1=2,i2=1)
+CALL OK( ALL( a2 .approxeq. TRANSPOSE(b2) ), "swap" )
```
Let us see what happens when i1=1, i2=1. Actually, it will DO nothing but `a=b`.
```fortran
- CALL SWAP(a=a2,b=b2,i1=1,i2=1)
- CALL OK( ALL( a2 .approxeq. b2), "swap" )
+CALL SWAP(a=a2,b=b2,i1=1,i2=1)
+CALL OK( ALL( a2 .approxeq. b2), "swap" )
```
We DO not indend to USE `swap` for two-dimensional arrays, because we already have `transpose` FUNCTION for doing the same. The purpose was to check that algorithm works.
diff --git a/docs/docs-api/SwapUtility/_Swap_test_2.md b/docs/docs-api/SwapUtility/_Swap_test_2.md
index 03724525..1a5929cb 100644
--- a/docs/docs-api/SwapUtility/_Swap_test_2.md
+++ b/docs/docs-api/SwapUtility/_Swap_test_2.md
@@ -11,52 +11,52 @@ PROGRAM main
Now let us USE `swap` for rank 3 Fortran array. But, first generate a rank 3 arrays, and display its content.
```fortran
- CALL Reallocate(b3, 2,3,2)
- CALL Random_NUMBER(b3)
- CALL Display(MdEncode(b3), "b3 = ")
+CALL Reallocate(b3, 2,3,2)
+CALL Random_NUMBER(b3)
+CALL Display(MdEncode(b3), "b3 = ")
```
-b3 = ( :, :, 1 ) =
+b3 = ( :, :, 1 ) =
- | | | |
- | --- | --- | --- |
- | 0.85128 | 7.97914E-03 | 0.12877 |
- | 0.61923 | 2.30844E-02 | 0.67707 |
+| | | |
+| ------- | ----------- | ------- |
+| 0.85128 | 7.97914E-03 | 0.12877 |
+| 0.61923 | 2.30844E-02 | 0.67707 |
-( :, :, 2 ) =
+( :, :, 2 ) =
- | | | |
- | --- | --- | --- |
- | 9.43064E-02 | 0.82267 | 0.40266 |
- | 0.26413 | 0.32497 | 0.9931 |
+| | | |
+| ----------- | ------- | ------- |
+| 9.43064E-02 | 0.82267 | 0.40266 |
+| 0.26413 | 0.32497 | 0.9931 |
Now swap dimension 2 with dimension 3.
```fortran
- CALL SWAP(a3, b3, 1,3,2)
- CALL Display(MdEncode(a3), "a3=")
+CALL SWAP(a3, b3, 1,3,2)
+CALL Display(MdEncode(a3), "a3=")
```
-a3=( :, :, 1 ) =
+a3=( :, :, 1 ) =
- | | |
- | --- | --- |
- | 0.85128 | 9.43064E-02 |
- | 0.61923 | 0.26413 |
+| | |
+| ------- | ----------- |
+| 0.85128 | 9.43064E-02 |
+| 0.61923 | 0.26413 |
-( :, :, 2 ) =
+( :, :, 2 ) =
- | | |
- | --- | --- |
- | 7.97914E-03 | 0.82267 |
- | 2.30844E-02 | 0.32497 |
+| | |
+| ----------- | ------- |
+| 7.97914E-03 | 0.82267 |
+| 2.30844E-02 | 0.32497 |
-( :, :, 3 ) =
+( :, :, 3 ) =
- | | |
- | --- | --- |
- | 0.12877 | 0.40266 |
- | 0.67707 | 0.9931 |
+| | |
+| ------- | ------- |
+| 0.12877 | 0.40266 |
+| 0.67707 | 0.9931 |
You can verify that the dimension 2 and dimension 3 are changed.
diff --git a/docs/docs-api/SwapUtility/_Swap_test_3.md b/docs/docs-api/SwapUtility/_Swap_test_3.md
index 3d020739..18d419b7 100644
--- a/docs/docs-api/SwapUtility/_Swap_test_3.md
+++ b/docs/docs-api/SwapUtility/_Swap_test_3.md
@@ -11,74 +11,74 @@ PROGRAM main
```
```fortran
- call reallocate(a2, 2,2)
- call reallocate(b2, 2,2)
- a2(1,:) = [2,1]
- a2(2,:) = [4,2]
- b2(1,1) = 1; b2(2,2) = 2
- b4 = outerprod(a2, b2)
- call swap(a=a4, b=b4, i1=1, i2=2, i3=3, i4=4)
- call display(MdEncode(a4), "a4")
+call reallocate(a2, 2,2)
+call reallocate(b2, 2,2)
+a2(1,:) = [2,1]
+a2(2,:) = [4,2]
+b2(1,1) = 1; b2(2,2) = 2
+b4 = outerprod(a2, b2)
+call swap(a=a4, b=b4, i1=1, i2=2, i3=3, i4=4)
+call display(MdEncode(a4), "a4")
```
a4(:,:,1,1) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 2 | 1 |
| 4 | 2 |
(:,:,2,1) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 0 | 0 |
(:,:,1,2) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 0 | 0 |
(:,:,2,2) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 4 | 2 |
| 8 | 4 |
```fortran
- call swap(a=a4, b=b4, i1=1, i2=3, i3=2, i4=4)
- call display(MdEncode(a4), "a4")
+call swap(a=a4, b=b4, i1=1, i2=3, i3=2, i4=4)
+call display(MdEncode(a4), "a4")
```
a4(:,:,1,1) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 2 | 0 |
| 4 | 0 |
(:,:,2,1) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 1 | 0 |
| 2 | 0 |
(:,:,1,2) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 4 |
| 0 | 8 |
(:,:,2,2) =
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 2 |
| 0 | 4 |
diff --git a/docs/docs-api/SymUtility/GetSym.md b/docs/docs-api/SymUtility/GetSym.md
index 2e606e77..cf5d2ce4 100644
--- a/docs/docs-api/SymUtility/GetSym.md
+++ b/docs/docs-api/SymUtility/GetSym.md
@@ -28,12 +28,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE GetSym(mat, from)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: mat(:, :)
- CHARACTER(1), INTENT(IN) :: from
- !! from = "U", then upper triangular part must be provided
- !! from = "L", then lower triangular part must be provided
- END SUBROUTINE GetSym
+MODULE PURE SUBROUTINE GetSym(mat, from)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: mat(:, :)
+ CHARACTER(1), INTENT(IN) :: from
+ !! from = "U", then upper triangular part must be provided
+ !! from = "L", then lower triangular part must be provided
+END SUBROUTINE GetSym
```
diff --git a/docs/docs-api/SymUtility/Sym.md b/docs/docs-api/SymUtility/Sym.md
index ae3b10c9..036109cc 100644
--- a/docs/docs-api/SymUtility/Sym.md
+++ b/docs/docs-api/SymUtility/Sym.md
@@ -27,13 +27,13 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION Sym(mat, from) RESULT(ans)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: mat(:, :)
- CHARACTER(1), INTENT(IN) :: from
- !! from = "U", then upper triangular part must be provided
- !! from = "L", then lower triangular part must be provided
- INTEGER(INT8) :: ans(SIZE(mat, 1), SIZE(mat, 2))
- END FUNCTION Sym
+MODULE PURE FUNCTION Sym(mat, from) RESULT(ans)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: mat(:, :)
+ CHARACTER(1), INTENT(IN) :: from
+ !! from = "U", then upper triangular part must be provided
+ !! from = "L", then lower triangular part must be provided
+ INTEGER(INT8) :: ans(SIZE(mat, 1), SIZE(mat, 2))
+END FUNCTION Sym
```
diff --git a/docs/docs-api/SymUtility/_GetSym_test_1.md b/docs/docs-api/SymUtility/_GetSym_test_1.md
index 43fcaf02..9d4f9cb5 100644
--- a/docs/docs-api/SymUtility/_GetSym_test_1.md
+++ b/docs/docs-api/SymUtility/_GetSym_test_1.md
@@ -9,68 +9,68 @@ program main
For `Real(DFP)`
```fortran title="GetSym from U"
- block
- real(dfp), allocatable :: b(:,:)
- call Reallocate(b, 5, 5)
- call RANDOM_NUMBER(b)
- b = b * 10.0
- call Display( MdEncode(b), "b = " // CHAR_LF )
- call GetSym(mat=b, from="U")
- call Display( MdEncode(b), "b = GetSym(b, 'U') = "// CHAR_LF )
- end block
+block
+ real(dfp), allocatable :: b(:,:)
+ call Reallocate(b, 5, 5)
+ call RANDOM_NUMBER(b)
+ b = b * 10.0
+ call Display( MdEncode(b), "b = " // CHAR_LF )
+ call GetSym(mat=b, from="U")
+ call Display( MdEncode(b), "b = GetSym(b, 'U') = "// CHAR_LF )
+end block
```
b =
- | | | | | |
- |---------|---------|--------|--------|--------|
- | 3.8354 | 5.6041 | 4.9296 | 7.7754 | 6.9113 |
- | 0.98851 | 8.6482 | 6.7796 | 1.1816 | 7.6655 |
- | 6.1543 | 6.7845 | 5.3833 | 3.0619 | 7.2087 |
- | 9.1698 | 0.78692 | 7.6604 | 7.0247 | 4.3874 |
- | 1.5751 | 2.3596 | 4.9529 | 7.1787 | 1.0189 |
+| | | | | |
+| ------- | ------- | ------ | ------ | ------ |
+| 3.8354 | 5.6041 | 4.9296 | 7.7754 | 6.9113 |
+| 0.98851 | 8.6482 | 6.7796 | 1.1816 | 7.6655 |
+| 6.1543 | 6.7845 | 5.3833 | 3.0619 | 7.2087 |
+| 9.1698 | 0.78692 | 7.6604 | 7.0247 | 4.3874 |
+| 1.5751 | 2.3596 | 4.9529 | 7.1787 | 1.0189 |
b = GetSym(b, 'U') =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 3.8354 | 5.6041 | 4.9296 | 7.7754 | 6.9113 |
- | 5.6041 | 8.6482 | 6.7796 | 1.1816 | 7.6655 |
- | 4.9296 | 6.7796 | 5.3833 | 3.0619 | 7.2087 |
- | 7.7754 | 1.1816 | 3.0619 | 7.0247 | 4.3874 |
- | 6.9113 | 7.6655 | 7.2087 | 4.3874 | 1.0189 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 3.8354 | 5.6041 | 4.9296 | 7.7754 | 6.9113 |
+| 5.6041 | 8.6482 | 6.7796 | 1.1816 | 7.6655 |
+| 4.9296 | 6.7796 | 5.3833 | 3.0619 | 7.2087 |
+| 7.7754 | 1.1816 | 3.0619 | 7.0247 | 4.3874 |
+| 6.9113 | 7.6655 | 7.2087 | 4.3874 | 1.0189 |
```fortran title="GetSym from L"
- block
- real(dfp), allocatable :: b(:,:)
- call Reallocate(b, 5, 5)
- call RANDOM_NUMBER(b)
- b = b * 10.0
- call Display( MdEncode(b), "b = " // CHAR_LF )
- call GetSym(mat=b, from="L")
- call Display( MdEncode(b), "b = GetSym(b, 'L') = "// CHAR_LF )
- end block
+block
+ real(dfp), allocatable :: b(:,:)
+ call Reallocate(b, 5, 5)
+ call RANDOM_NUMBER(b)
+ b = b * 10.0
+ call Display( MdEncode(b), "b = " // CHAR_LF )
+ call GetSym(mat=b, from="L")
+ call Display( MdEncode(b), "b = GetSym(b, 'L') = "// CHAR_LF )
+end block
```
b =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 3.5542 | 9.9755 | 1.8319 | 5.38 | 8.4256 |
- | 1.7703 | 5.7418 | 7.052 | 7.0634 | 7.6882 |
- | 2.6623 | 2.679 | 9.219 | 2.7943 | 4.6874 |
- | 8.188 | 1.6199 | 5.7354 | 6.2719 | 7.074 |
- | 3.9515 | 6.714 | 2.5161 | 1.2291 | 9.916 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 3.5542 | 9.9755 | 1.8319 | 5.38 | 8.4256 |
+| 1.7703 | 5.7418 | 7.052 | 7.0634 | 7.6882 |
+| 2.6623 | 2.679 | 9.219 | 2.7943 | 4.6874 |
+| 8.188 | 1.6199 | 5.7354 | 6.2719 | 7.074 |
+| 3.9515 | 6.714 | 2.5161 | 1.2291 | 9.916 |
b = GetSym(b, 'L') =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 3.5542 | 1.7703 | 2.6623 | 8.188 | 3.9515 |
- | 1.7703 | 5.7418 | 2.679 | 1.6199 | 6.714 |
- | 2.6623 | 2.679 | 9.219 | 5.7354 | 2.5161 |
- | 8.188 | 1.6199 | 5.7354 | 6.2719 | 1.2291 |
- | 3.9515 | 6.714 | 2.5161 | 1.2291 | 9.916 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 3.5542 | 1.7703 | 2.6623 | 8.188 | 3.9515 |
+| 1.7703 | 5.7418 | 2.679 | 1.6199 | 6.714 |
+| 2.6623 | 2.679 | 9.219 | 5.7354 | 2.5161 |
+| 8.188 | 1.6199 | 5.7354 | 6.2719 | 1.2291 |
+| 3.9515 | 6.714 | 2.5161 | 1.2291 | 9.916 |
```fortran title="cleanup"
end program main
diff --git a/docs/docs-api/SymUtility/_Sym_test_1.md b/docs/docs-api/SymUtility/_Sym_test_1.md
index 33b0cb2d..75085f0a 100644
--- a/docs/docs-api/SymUtility/_Sym_test_1.md
+++ b/docs/docs-api/SymUtility/_Sym_test_1.md
@@ -9,68 +9,68 @@ program main
For `Real(DFP)`
```fortran title="Sym from U"
- block
- real(dfp), allocatable :: a(:,:), b(:, :)
- call Reallocate(b, 5, 5)
- call RANDOM_NUMBER(b)
- b = b * 10.0
- a = Sym(mat=b, from="U")
- call Display( MdEncode(b), "b = " // CHAR_LF )
- call Display( MdEncode(a), "a = Sym(b, 'U') = "// CHAR_LF )
- end block
+block
+ real(dfp), allocatable :: a(:,:), b(:, :)
+ call Reallocate(b, 5, 5)
+ call RANDOM_NUMBER(b)
+ b = b * 10.0
+ a = Sym(mat=b, from="U")
+ call Display( MdEncode(b), "b = " // CHAR_LF )
+ call Display( MdEncode(a), "a = Sym(b, 'U') = "// CHAR_LF )
+end block
```
b =
- | | | | | |
- |--------|---------|--------|--------|--------|
- | 9.1092 | 3.1157 | 2.4922 | 5.2597 | 5.7134 |
- | 4.9975 | 7.2487 | 3.4857 | 2.0651 | 8.8911 |
- | 6.248 | 6.3238 | 3.0667 | 2.7061 | 1.9605 |
- | 3.5998 | 1.5125 | 8.7133 | 4.4033 | 4.1027 |
- | 9.1797 | 0.34982 | 4.4058 | 5.9536 | 8.905 |
+| | | | | |
+| ------ | ------- | ------ | ------ | ------ |
+| 9.1092 | 3.1157 | 2.4922 | 5.2597 | 5.7134 |
+| 4.9975 | 7.2487 | 3.4857 | 2.0651 | 8.8911 |
+| 6.248 | 6.3238 | 3.0667 | 2.7061 | 1.9605 |
+| 3.5998 | 1.5125 | 8.7133 | 4.4033 | 4.1027 |
+| 9.1797 | 0.34982 | 4.4058 | 5.9536 | 8.905 |
a = Sym(b, 'U') =
- | | | | | |
- |--------|--------|--------|--------|--------|
- | 9.1092 | 3.1157 | 2.4922 | 5.2597 | 5.7134 |
- | 3.1157 | 7.2487 | 3.4857 | 2.0651 | 8.8911 |
- | 2.4922 | 3.4857 | 3.0667 | 2.7061 | 1.9605 |
- | 5.2597 | 2.0651 | 2.7061 | 4.4033 | 4.1027 |
- | 5.7134 | 8.8911 | 1.9605 | 4.1027 | 8.905 |
+| | | | | |
+| ------ | ------ | ------ | ------ | ------ |
+| 9.1092 | 3.1157 | 2.4922 | 5.2597 | 5.7134 |
+| 3.1157 | 7.2487 | 3.4857 | 2.0651 | 8.8911 |
+| 2.4922 | 3.4857 | 3.0667 | 2.7061 | 1.9605 |
+| 5.2597 | 2.0651 | 2.7061 | 4.4033 | 4.1027 |
+| 5.7134 | 8.8911 | 1.9605 | 4.1027 | 8.905 |
```fortran title="Sym from L"
- block
- real(dfp), allocatable :: a(:,:), b(:, :)
- call Reallocate(b, 5, 5)
- call RANDOM_NUMBER(b)
- b = b * 10.0
- a = Sym(mat=b, from="L")
- call Display( MdEncode(b), "b = " // CHAR_LF )
- call Display( MdEncode(a), "a = Sym(b, 'L') = "// CHAR_LF )
- end block
+block
+ real(dfp), allocatable :: a(:,:), b(:, :)
+ call Reallocate(b, 5, 5)
+ call RANDOM_NUMBER(b)
+ b = b * 10.0
+ a = Sym(mat=b, from="L")
+ call Display( MdEncode(b), "b = " // CHAR_LF )
+ call Display( MdEncode(a), "a = Sym(b, 'L') = "// CHAR_LF )
+end block
```
b =
- | | | | | |
- |---------|--------|---------|---------|---------|
- | 5.0055 | 6.9798 | 4.7405 | 2.5558 | 9.0049 |
- | 0.94932 | 4.4983 | 3.8745 | 4.7315 | 4.0114 |
- | 1.8051 | 3.7857 | 6.4184 | 1.3453 | 0.66188 |
- | 2.2517 | 5.5031 | 7.8064 | 0.72241 | 5.8013 |
- | 6.5009 | 5.5032 | 0.86608 | 5.6514 | 8.6163 |
+| | | | | |
+| ------- | ------ | ------- | ------- | ------- |
+| 5.0055 | 6.9798 | 4.7405 | 2.5558 | 9.0049 |
+| 0.94932 | 4.4983 | 3.8745 | 4.7315 | 4.0114 |
+| 1.8051 | 3.7857 | 6.4184 | 1.3453 | 0.66188 |
+| 2.2517 | 5.5031 | 7.8064 | 0.72241 | 5.8013 |
+| 6.5009 | 5.5032 | 0.86608 | 5.6514 | 8.6163 |
a = Sym(b, 'L') =
- | | | | | |
- |---------|---------|---------|---------|---------|
- | 5.0055 | 0.94932 | 1.8051 | 2.2517 | 6.5009 |
- | 0.94932 | 4.4983 | 3.7857 | 5.5031 | 5.5032 |
- | 1.8051 | 3.7857 | 6.4184 | 7.8064 | 0.86608 |
- | 2.2517 | 5.5031 | 7.8064 | 0.72241 | 5.6514 |
- | 6.5009 | 5.5032 | 0.86608 | 5.6514 | 8.6163 |
+| | | | | |
+| ------- | ------- | ------- | ------- | ------- |
+| 5.0055 | 0.94932 | 1.8051 | 2.2517 | 6.5009 |
+| 0.94932 | 4.4983 | 3.7857 | 5.5031 | 5.5032 |
+| 1.8051 | 3.7857 | 6.4184 | 7.8064 | 0.86608 |
+| 2.2517 | 5.5031 | 7.8064 | 0.72241 | 5.6514 |
+| 6.5009 | 5.5032 | 0.86608 | 5.6514 | 8.6163 |
```fortran title="cleanup"
end program main
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/QuadraturePoint_Tetrahedron.md b/docs/docs-api/TetrahedronInterpolationUtility/QuadraturePoint_Tetrahedron.md
index a05f6caa..cf9871b1 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/QuadraturePoint_Tetrahedron.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/QuadraturePoint_Tetrahedron.md
@@ -100,4 +100,3 @@ Return quadrature points by specifying the number of integration points `nips`.
```txt
1, 4, 5, 11, 14, 24, 31, 43, 53, 126, 210, 330, 495, 715, 1001
```
-
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_1.md b/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_1.md
index 9ce6b4ef..536ee8f5 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_1.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_1.md
@@ -17,22 +17,20 @@ ans = QuadraturePoint_Tetrahedron(&
& refTetrahedron=refTetrahedron%chars())
CALL Display(mdencode(ans) , "ans" // char_lf2 )
-
```
See results
-
Ans
-| |
-| --- |
-| 0.25 |
-| 0.25 |
-| 0.25 |
-| 0.16667 |
+| |
+| ------- |
+| 0.25 |
+| 0.25 |
+| 0.25 |
+| 0.16667 |
@@ -52,12 +50,12 @@ CALL Display(mdencode(ans) , "ans" // char_lf2 )
Ans
-| |
-| --- |
-| -0.5 |
-| -0.5 |
-| -0.5 |
-| 1.3333 |
+| |
+| ------ |
+| -0.5 |
+| -0.5 |
+| -0.5 |
+| 1.3333 |
```fortran
refTetrahedron = "UNIT"
@@ -73,7 +71,6 @@ ans = QuadraturePoint_Tetrahedron(&
CALL Display(mdencode(ans) , "ans" // char_lf2 )
END PROGRAM main
-
```
@@ -82,14 +79,12 @@ END PROGRAM main
Ans
-| |
-| --- |
-| 0.25 |
-| 0.25 |
-| 0.25 |
-| 0.16667 |
+| |
+| ------- |
+| 0.25 |
+| 0.25 |
+| 0.25 |
+| 0.16667 |
-
-
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_2.md b/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_2.md
index 377595ac..657217ed 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_2.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/_QuadraturePoint_Tetrahedron_test_2.md
@@ -36,13 +36,12 @@ END PROGRAM main
See results
-
-| Ans | Point-1 | Point-2 | Point-3 | Point-4 |
-| --- | --- | --- | --- | --- |
-| `xi1` | 0.58541 | 0.1382 | 0.1382 | 0.1382 |
-| `xi2` | 0.1382 | 0.1382 | 0.1382 | 0.58541 |
-| `xi3` | 0.1382 | 0.1382 | 0.58541 | 0.1382 |
-| `wt` | 4.16667E-02 | 4.16667E-02 | 4.16667E-02 | 4.16667E-02 |
+| Ans | Point-1 | Point-2 | Point-3 | Point-4 |
+| ----- | ----------- | ----------- | ----------- | ----------- |
+| `xi1` | 0.58541 | 0.1382 | 0.1382 | 0.1382 |
+| `xi2` | 0.1382 | 0.1382 | 0.1382 | 0.58541 |
+| `xi3` | 0.1382 | 0.1382 | 0.58541 | 0.1382 |
+| `wt` | 4.16667E-02 | 4.16667E-02 | 4.16667E-02 | 4.16667E-02 |
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_1.md b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_1.md
index 13fee984..72e5145a 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_1.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_1.md
@@ -13,41 +13,41 @@ program main
```
```fortran
- order=1
- i1 = LagrangeDOF_Tetrahedron(order=order)
- i2 = (order+1)*(order+2)*(order+3)/6
- call IS( i1, i2 )
- order=2
- i1 = LagrangeDOF_Tetrahedron(order=order)
- i2 = (order+1)*(order+2)*(order+3)/6
- call IS( i1, i2 )
- order=3
- i1 = LagrangeDOF_Tetrahedron(order=order)
- i2 = (order+1)*(order+2)*(order+3)/6
- call IS( i1, i2 )
+order=1
+i1 = LagrangeDOF_Tetrahedron(order=order)
+i2 = (order+1)*(order+2)*(order+3)/6
+call IS( i1, i2 )
+order=2
+i1 = LagrangeDOF_Tetrahedron(order=order)
+i2 = (order+1)*(order+2)*(order+3)/6
+call IS( i1, i2 )
+order=3
+i1 = LagrangeDOF_Tetrahedron(order=order)
+i2 = (order+1)*(order+2)*(order+3)/6
+call IS( i1, i2 )
```
```fortran
- order=1
- i1 = LagrangeInDOF_Tetrahedron(order=order)
- i2 = (order-1)*(order-2)*(order-3)/6
- call IS( i1, i2 )
- order=2
- i1 = LagrangeInDOF_Tetrahedron(order=order)
- i2 = (order-1)*(order-2)*(order-3)/6
- call IS( i1, i2 )
- order=3
- i1 = LagrangeInDOF_Tetrahedron(order=order)
- i2 = (order-1)*(order-2)*(order-3)/6
- call IS( i1, i2 )
+order=1
+i1 = LagrangeInDOF_Tetrahedron(order=order)
+i2 = (order-1)*(order-2)*(order-3)/6
+call IS( i1, i2 )
+order=2
+i1 = LagrangeInDOF_Tetrahedron(order=order)
+i2 = (order-1)*(order-2)*(order-3)/6
+call IS( i1, i2 )
+order=3
+i1 = LagrangeInDOF_Tetrahedron(order=order)
+i2 = (order-1)*(order-2)*(order-3)/6
+call IS( i1, i2 )
```
```fortran
- order=1
- degree=LagrangeDegree_Tetrahedron(order=order)
- astr = MdEncode( degree )
- call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
- call blanklines(nol=2)
+order=1
+degree=LagrangeDegree_Tetrahedron(order=order)
+astr = MdEncode( degree )
+call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
+call blanklines(nol=2)
```
@@ -57,7 +57,7 @@ program main
degree(order=1)=
| x | y | z |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
@@ -67,11 +67,11 @@ degree(order=1)=
```fortran
- order=2
- degree=LagrangeDegree_Tetrahedron(order=order)
- astr = MdEncode( degree )
- call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
- call blanklines(nol=2)
+order=2
+degree=LagrangeDegree_Tetrahedron(order=order)
+astr = MdEncode( degree )
+call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
+call blanklines(nol=2)
```
@@ -81,7 +81,7 @@ degree(order=1)=
degree(order=2)=
| x | y | z |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 2 | 0 | 0 |
@@ -97,11 +97,11 @@ degree(order=2)=
```fortran
- order=3
- degree=LagrangeDegree_Tetrahedron(order=order)
- astr = MdEncode( degree )
- call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
- call blanklines(nol=2)
+order=3
+degree=LagrangeDegree_Tetrahedron(order=order)
+astr = MdEncode( degree )
+call Display( astr, "degree(order="//tostring(order)//")=" //CHAR_LF )
+call blanklines(nol=2)
```
@@ -111,7 +111,7 @@ degree(order=2)=
degree(order=3)=
| x | y | z |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 2 | 0 | 0 |
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_2.md b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_2.md
index 7f84e761..dcdfdfae 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_2.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_2.md
@@ -12,11 +12,11 @@ program main
```
```fortran
- order=1
- x = EquidistancePoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=1
+x = EquidistancePoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -26,7 +26,7 @@ program main
xij (order=1)=
| x | y | z |
-|---|---|---|
+| - | - | - |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
@@ -37,11 +37,11 @@ xij (order=1)=
!!! note "Order=2"
```fortran
- order=2
- x = EquidistancePoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=2
+x = EquidistancePoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -51,7 +51,7 @@ xij (order=1)=
xij (order=2)=
| x | y | z |
-|-----|-----|-----|
+| --- | --- | --- |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
@@ -68,11 +68,11 @@ xij (order=2)=
!!! note "Order=3"
```fortran
- order=3
- x = EquidistancePoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=3
+x = EquidistancePoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -82,7 +82,7 @@ xij (order=2)=
xij (order=3)=
| x | y | z |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
@@ -108,11 +108,11 @@ xij (order=3)=
```fortran
- order=4
- x = EquidistancePoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=4
+x = EquidistancePoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -122,7 +122,7 @@ xij (order=3)=
xij (order=4)=
| | | |
-|------|------|------|
+| ---- | ---- | ---- |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
@@ -163,11 +163,11 @@ xij (order=4)=
```fortran
- order=5
- x = EquidistancePoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=5
+x = EquidistancePoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -177,7 +177,7 @@ xij (order=4)=
xij (order=5)=
| | | |
-|-----|-----|-----|
+| --- | --- | --- |
| 0 | 0 | 0 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_3.md b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_3.md
index db1ddd14..b406dc50 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_3.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/_TetrahedronInterpolationUtility_test_3.md
@@ -12,11 +12,11 @@ program main
```
```fortran
- order=4
- x = EquidistanceInPoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=4
+x = EquidistanceInPoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -26,18 +26,18 @@ program main
xij (order=4)=
| x | y | z |
-|------|------|------|
+| ---- | ---- | ---- |
| 0.25 | 0.25 | 0.25 |
```fortran
- order=5
- x = EquidistanceInPoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=5
+x = EquidistanceInPoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -46,8 +46,8 @@ xij (order=4)=
xij (order=5)=
-| x | y | z |
-|-----|-----|-----|
+| x | y | z |
+| --- | --- | --- |
| 0.2 | 0.2 | 0.2 |
| 0.4 | 0.2 | 0.2 |
| 0.2 | 0.4 | 0.2 |
@@ -57,11 +57,11 @@ xij (order=5)=
```fortran
- order=6
- x = EquidistanceInPoint_Tetrahedron( order=order )
- astr = MdEncode( TRANSPOSE(x) )
- call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
- call blanklines(nol=2)
+order=6
+x = EquidistanceInPoint_Tetrahedron( order=order )
+astr = MdEncode( TRANSPOSE(x) )
+call display( astr, "xij (order="//tostring(order)//")=" // CHAR_LF )
+call blanklines(nol=2)
```
@@ -70,8 +70,8 @@ xij (order=5)=
xij (order=6)=
-| x | y | z |
-|---------|---------|---------|
+| x | y | z |
+| ------- | ------- | ------- |
| 0.16667 | 0.16667 | 0.16667 |
| 0.5 | 0.16667 | 0.16667 |
| 0.16667 | 0.5 | 0.16667 |
diff --git a/docs/docs-api/TetrahedronInterpolationUtility/methods.md b/docs/docs-api/TetrahedronInterpolationUtility/methods.md
index 3b48598b..073b9df5 100644
--- a/docs/docs-api/TetrahedronInterpolationUtility/methods.md
+++ b/docs/docs-api/TetrahedronInterpolationUtility/methods.md
@@ -7,7 +7,7 @@ It returns the monomial degress on Tetrahedron element.
## LagrangeDOF_Tetrahedron
It returns the total number of dof for constructing the Lagrange polynomial on
- Tetrahedron.
+Tetrahedron.
## LagrangeInDOF_Tetrahedron
diff --git a/docs/docs-api/TomlUtility/GetValue.md b/docs/docs-api/TomlUtility/GetValue.md
new file mode 100644
index 00000000..56ab355a
--- /dev/null
+++ b/docs/docs-api/TomlUtility/GetValue.md
@@ -0,0 +1,84 @@
+---
+sidebar_position: 2
+title: GetValue
+---
+
+## Getting scalar values
+
+```fortran
+INTERFACE GetValue
+ MODULE SUBROUTINE GetValue(table, key, VALUE, default_value, &
+ origin, stat, isFound)
+ TYPE(toml_table), INTENT(INOUT) :: table
+ !! Toml table
+ CHARACTER(*), INTENT(IN) :: key
+ !! key
+ {DATA_TYPE}, INTENT(INOUT) :: VALUE
+ !! value in string
+ {DATA_TYPE}, INTENT(IN) :: default_value
+ !! default value
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: origin
+ !! origin, necessary for debugging
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: stat
+ !! To check the status of getting the value
+ LOGICAL(LGT), OPTIONAL, INTENT(INOUT) :: isFound
+ !! If key is found then isFound is set to true
+ END SUBROUTINE GetValue
+END INTERFACE GetValue
+```
+
+Following data types are supported.
+
+- String
+- INTEGER(Int8 | Int16 | Int32 | Int64)
+- REAL(Real32 | Real64)
+
+:::note Default value
+The data type of default value should be same as the data type of value. However, in case value is String type, then the default value can be Character type also.
+:::
+
+## Get the vector values
+
+The generic interface for getting the vector values is as follows:
+
+```fortran
+INTERFACE GetValue
+ MODULE SUBROUTINE GetValue(table, key, VALUE, origin, stat, &
+ isFound)
+ TYPE(toml_table), INTENT(INOUT) :: table
+ CHARACTER(*), INTENT(IN) :: key
+ DATA_TYPE, ALLOCATABLE, INTENT(INOUT) :: VALUE(:)
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: origin
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: stat
+ LOGICAL(LGT), OPTIONAL, INTENT(INOUT) :: isFound
+ END SUBROUTINE GetValue
+END INTERFACE GetValue
+```
+
+The above method will allocate the value. If you want to avoid the allocation, then use the following method.
+
+```fortran
+INTERFACE GetValue_
+ MODULE SUBROUTINE GetValue_(table, key, VALUE, tsize, origin, stat, &
+ isFound)
+ TYPE(toml_table), INTENT(INOUT) :: table
+ CHARACTER(*), INTENT(IN) :: key
+ DATA_TYPE, ALLOCATABLE, INTENT(INOUT) :: VALUE(:)
+ INTEGER(I4B), INTENT(OUT) :: tsize
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: origin
+ INTEGER(I4B), OPTIONAL, INTENT(INOUT) :: stat
+ LOGICAL(LGT), OPTIONAL, INTENT(INOUT) :: isFound
+ END SUBROUTINE GetValue_
+END INTERFACE GetValue_
+```
+
+- tsize is the number of data written in the value.
+
+The value can have following data types:
+
+- INTEGER(Int8 | Int16 | Int32 | Int64)
+- REAL(Real32 | Real64)
+
+## Get the matrix values
+
+The generic interface for getting the matrix values is as follows:
diff --git a/docs/docs-api/TomlUtility/examples/_GetValue_test_1.F90 b/docs/docs-api/TomlUtility/examples/_GetValue_test_1.F90
new file mode 100644
index 00000000..3eb589e3
--- /dev/null
+++ b/docs/docs-api/TomlUtility/examples/_GetValue_test_1.F90
@@ -0,0 +1,62 @@
+!> author: Vikas Sharma, Ph. D.
+! date: 2025-06-01
+! summary: Get value of an integer vector from toml file
+
+PROGRAM main
+
+USE GlobalData
+USE TomlUtility, ONLY: GetValue
+USE tomlf, ONLY: toml_table, toml_get => get_value
+USE Test_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+
+IMPLICIT NONE
+
+CHARACTER(*), PARAMETER :: filename = "./toml/test.toml"
+TYPE(toml_table), ALLOCATABLE :: table
+TYPE(toml_table), POINTER :: node
+INTEGER(I4B) :: origin, stat
+LOGICAL(LGT) :: isFound, isok
+INTEGER(I4B), ALLOCATABLE :: VALUE(:)
+
+CALL e%setQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+CALL GetValue(table=table, filename=filename)
+
+node => NULL()
+CALL toml_get(table, "test1", node, origin=origin, requested=.FALSE., &
+ stat=stat)
+
+CALL GetValue(table=node, key="value1", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2])
+CALL OK(isok, "Getvalue: integer vector from toml array")
+
+CALL GetValue(table=node, key="value2", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2])
+CALL OK(isok, "Getvalue: integer vector from txt file")
+
+CALL GetValue(table=node, key="value3", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2])
+CALL OK(isok, "Getvalue: integer vector from txt file")
+
+CALL GetValue(table=node, key="value4", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2])
+CALL OK(isok, "Getvalue: integer vector from csv file")
+
+CALL GetValue(table=node, key="value5", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2])
+CALL OK(isok, "Getvalue: integer vector from csv file")
+
+CALL GetValue(table=node, key="value6", VALUE=VALUE, &
+ origin=origin, stat=stat, isFound=isFound)
+isok = ALL(VALUE .EQ. [1, 2, 0, 0, 5])
+CALL OK(isok, "Getvalue: integer vector from csv file")
+
+node => NULL()
+
+END PROGRAM main
diff --git a/docs/docs-api/TomlUtility/examples/runner.toml b/docs/docs-api/TomlUtility/examples/runner.toml
new file mode 100644
index 00000000..7c3391f8
--- /dev/null
+++ b/docs/docs-api/TomlUtility/examples/runner.toml
@@ -0,0 +1,3 @@
+Buildtype = "Debug"
+BuildDir = "/tmp/easifem-tests/TomlUtility"
+TargetLibs = ["easifemClasses"]
diff --git a/docs/docs-api/TomlUtility/examples/toml/test.toml b/docs/docs-api/TomlUtility/examples/toml/test.toml
new file mode 100644
index 00000000..15ba27eb
--- /dev/null
+++ b/docs/docs-api/TomlUtility/examples/toml/test.toml
@@ -0,0 +1,7 @@
+[test1]
+value1 = [1, 2]
+value2 = "./toml/test1.txt"
+value3 = "./toml/test1b.txt"
+value4 = "./toml/test1.csv"
+value5 = "./toml/test1b.csv"
+value6 = "./toml/test1c.csv"
diff --git a/docs/docs-api/TomlUtility/index.md b/docs/docs-api/TomlUtility/index.md
new file mode 100644
index 00000000..c05640d0
--- /dev/null
+++ b/docs/docs-api/TomlUtility/index.md
@@ -0,0 +1,19 @@
+---
+sidebar_position: 1
+date: 2025-06-01
+update: 2025-06-01
+status: stable
+docs: done
+extpkgs: ['tomlf']
+category: ['Toml', 'File', 'IO']
+tags: ['toml', 'file', 'input', 'config']
+---
+
+# TomlUtility
+
+This module provides utilities for working with TOML files. It uses the `tomlf` package.
+
+This module provides following routines:
+
+- GetValue: Getting values from a toml table
+- GetValue_: Gettting values from a toml table without allocation.
diff --git a/docs/docs-api/TriagUtility/GetTril.md b/docs/docs-api/TriagUtility/GetTril.md
index 33b3cb1a..d5fd924f 100644
--- a/docs/docs-api/TriagUtility/GetTril.md
+++ b/docs/docs-api/TriagUtility/GetTril.md
@@ -11,12 +11,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE GetTril(A, diagNo, lu)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- INTEGER(INT64), INTENT(OUT) :: lu(SIZE(A, 1), SIZE(A, 2))
- END SUBROUTINE GetTril
+MODULE PURE SUBROUTINE GetTril(A, diagNo, lu)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ INTEGER(INT64), INTENT(OUT) :: lu(SIZE(A, 1), SIZE(A, 2))
+END SUBROUTINE GetTril
```
@@ -35,7 +35,7 @@ import EXAMPLE34 from "./_GetTril_test_2.md";
-
+
diff --git a/docs/docs-api/TriagUtility/GetTriu.md b/docs/docs-api/TriagUtility/GetTriu.md
index 78551197..23af1521 100644
--- a/docs/docs-api/TriagUtility/GetTriu.md
+++ b/docs/docs-api/TriagUtility/GetTriu.md
@@ -11,12 +11,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE GetTriu(A, diagNo, lu)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- REAL(REAL32), INTENT(OUT) :: lu(SIZE(A, 1), SIZE(A, 2))
- END SUBROUTINE GetTriu
+MODULE PURE SUBROUTINE GetTriu(A, diagNo, lu)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ REAL(REAL32), INTENT(OUT) :: lu(SIZE(A, 1), SIZE(A, 2))
+END SUBROUTINE GetTriu
```
diff --git a/docs/docs-api/TriagUtility/SetTril.md b/docs/docs-api/TriagUtility/SetTril.md
index 2d578b95..9c4c3d43 100644
--- a/docs/docs-api/TriagUtility/SetTril.md
+++ b/docs/docs-api/TriagUtility/SetTril.md
@@ -11,12 +11,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE SetTril(A, lu, diagNo)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: lu(:, :)
- END SUBROUTINE SetTril
+MODULE PURE SUBROUTINE SetTril(A, lu, diagNo)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: lu(:, :)
+END SUBROUTINE SetTril
```
diff --git a/docs/docs-api/TriagUtility/SetTriu.md b/docs/docs-api/TriagUtility/SetTriu.md
index c7f7e089..3552978b 100644
--- a/docs/docs-api/TriagUtility/SetTriu.md
+++ b/docs/docs-api/TriagUtility/SetTriu.md
@@ -11,12 +11,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE SUBROUTINE SetTriu(A, lu, diagNo)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: lu(:, :)
- END SUBROUTINE SetTriu
+MODULE PURE SUBROUTINE SetTriu(A, lu, diagNo)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(INOUT) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: lu(:, :)
+END SUBROUTINE SetTriu
```
diff --git a/docs/docs-api/TriagUtility/Tril.md b/docs/docs-api/TriagUtility/Tril.md
index 350bce5f..94c5bc6b 100644
--- a/docs/docs-api/TriagUtility/Tril.md
+++ b/docs/docs-api/TriagUtility/Tril.md
@@ -11,12 +11,12 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION Tril(A, diagNo) RESULT(ans)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64) :: ans(SIZE(A, 1), SIZE(A, 2))
- END FUNCTION Tril
+MODULE PURE FUNCTION Tril(A, diagNo) RESULT(ans)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64) :: ans(SIZE(A, 1), SIZE(A, 2))
+END FUNCTION Tril
```
diff --git a/docs/docs-api/TriagUtility/TrilIndx.md b/docs/docs-api/TriagUtility/TrilIndx.md
index 84518679..6f239358 100644
--- a/docs/docs-api/TriagUtility/TrilIndx.md
+++ b/docs/docs-api/TriagUtility/TrilIndx.md
@@ -25,7 +25,7 @@ import TabItem from '@theme/TabItem';
!! ans(:,1) contains the row indices
!! ans(:,2) contains the col indices
END FUNCTION TrilIndx
-END INTERFACE
+END INTERFACE
```
diff --git a/docs/docs-api/TriagUtility/Triu.md b/docs/docs-api/TriagUtility/Triu.md
index 9fa2a0d5..6885449d 100644
--- a/docs/docs-api/TriagUtility/Triu.md
+++ b/docs/docs-api/TriagUtility/Triu.md
@@ -11,14 +11,14 @@ import TabItem from '@theme/TabItem';
```fortran
- MODULE PURE FUNCTION Triu(A, diagNo) RESULT(ans)
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
- INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
- !! diagonal number, default = 0
- !! diagNo>0 means super diagonal
- !! diagNo<0 means subdiagonal
- INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64) :: ans(SIZE(A, 1), SIZE(A, 2))
- END FUNCTION Triu
+MODULE PURE FUNCTION Triu(A, diagNo) RESULT(ans)
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64), INTENT(IN) :: A(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(IN) :: diagNo
+ !! diagonal number, default = 0
+ !! diagNo>0 means super diagonal
+ !! diagNo<0 means subdiagonal
+ INTEGER(Int8| Int16 | Int32 | Int64) | REAL(Real32| Real64) :: ans(SIZE(A, 1), SIZE(A, 2))
+END FUNCTION Triu
```
diff --git a/docs/docs-api/TriagUtility/TriuIndx.md b/docs/docs-api/TriagUtility/TriuIndx.md
index 351376c5..8cc57c32 100644
--- a/docs/docs-api/TriagUtility/TriuIndx.md
+++ b/docs/docs-api/TriagUtility/TriuIndx.md
@@ -25,7 +25,7 @@ import TabItem from '@theme/TabItem';
!! ans(:,1) contains the row indices
!! ans(:,2) contains the col indices
END FUNCTION TriuIndx
-END INTERFACE
+END INTERFACE
```
diff --git a/docs/docs-api/TriagUtility/_GetTril_test_1.md b/docs/docs-api/TriagUtility/_GetTril_test_1.md
index 51fd332d..c183ac57 100644
--- a/docs/docs-api/TriagUtility/_GetTril_test_1.md
+++ b/docs/docs-api/TriagUtility/_GetTril_test_1.md
@@ -21,12 +21,12 @@ CALl Display(MdEncode(A), "A = " // CHAR_LF // CHAR_LF)
A =
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ------- | ------ | ------ | ------ |
| 0.86636 | 3.7301 | 4.4509 | 7.4084 |
-| 5.9178 | 6.2964 | 1.2734 | 6.8327 |
-| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
-| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
+| 5.9178 | 6.2964 | 1.2734 | 6.8327 |
+| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
+| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
@@ -42,12 +42,12 @@ CALL Display(MdEncode(lu), "diagNo=0, = " // CHAR_LF // CHAR_LF )
diagNo=0, =
-| | | | |
-| --- | --- | --- | --- |
-| 0.86636 | 0 | 0 | 0 |
-| 5.9178 | 6.2964 | 0 | 0 |
-| 9.3275 | 1.5065 | 4.9179 | 0 |
-| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
+| | | | |
+| ------- | ------ | ------ | ------ |
+| 0.86636 | 0 | 0 | 0 |
+| 5.9178 | 6.2964 | 0 | 0 |
+| 9.3275 | 1.5065 | 4.9179 | 0 |
+| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
@@ -63,12 +63,12 @@ CALL Display(MdEncode(lu), "diagNo=1, = " // CHAR_LF // CHAR_LF)
diagNo=1, =
-| | | | |
-| --- | --- | --- | --- |
-| 0.86636 | 3.7301 | 0 | 0 |
-| 5.9178 | 6.2964 | 1.2734 | 0 |
-| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
-| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
+| | | | |
+| ------- | ------ | ------ | ------ |
+| 0.86636 | 3.7301 | 0 | 0 |
+| 5.9178 | 6.2964 | 1.2734 | 0 |
+| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
+| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
@@ -84,12 +84,12 @@ CALL Display(MdEncode(lu), "diagNo=2, = " // CHAR_LF // CHAR_LF )
diagNo=2, =
-| | | | |
-| --- | --- | --- | --- |
-| 0.86636 | 3.7301 | 4.4509 | 0 |
-| 5.9178 | 6.2964 | 1.2734 | 6.8327 |
-| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
-| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
+| | | | |
+| ------- | ------ | ------ | ------ |
+| 0.86636 | 3.7301 | 4.4509 | 0 |
+| 5.9178 | 6.2964 | 1.2734 | 6.8327 |
+| 9.3275 | 1.5065 | 4.9179 | 7.6162 |
+| 4.4428 | 5.1334 | 8.7562 | 0.1652 |
diff --git a/docs/docs-api/TriagUtility/_GetTril_test_2.md b/docs/docs-api/TriagUtility/_GetTril_test_2.md
index c247f862..bae68c68 100644
--- a/docs/docs-api/TriagUtility/_GetTril_test_2.md
+++ b/docs/docs-api/TriagUtility/_GetTril_test_2.md
@@ -29,7 +29,7 @@ CALL Display(MdEncode(lu), "diagNo=-2, = " // CHAR_LF // CHAR_LF )
A =
| | | | |
-|--------|---------|--------|--------|
+| ------ | ------- | ------ | ------ |
| 3.4843 | 0.21881 | 7.0136 | 8.6618 |
| 1.1204 | 4.0021 | 8.4773 | 3.9924 |
| 2.6185 | 8.0988 | 6.4968 | 2.7172 |
@@ -38,7 +38,7 @@ A =
diagNo=-1, =
| | | | |
-|--------|--------|--------|---|
+| ------ | ------ | ------ | - |
| 0 | 0 | 0 | 0 |
| 1.1204 | 0 | 0 | 0 |
| 2.6185 | 8.0988 | 0 | 0 |
@@ -47,7 +47,7 @@ diagNo=-1, =
diagNo=-2, =
| | | | |
-|--------|--------|---|---|
+| ------ | ------ | - | - |
| 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 0 |
| 2.6185 | 0 | 0 | 0 |
diff --git a/docs/docs-api/TriagUtility/_GetTriu_test_1.md b/docs/docs-api/TriagUtility/_GetTriu_test_1.md
index ff28ae2c..996cfabf 100644
--- a/docs/docs-api/TriagUtility/_GetTriu_test_1.md
+++ b/docs/docs-api/TriagUtility/_GetTriu_test_1.md
@@ -21,12 +21,12 @@ CALl Display(MdEncode(A), "A = " // CHAR_LF // CHAR_LF)
A =
-| | | | |
-| --- | --- | --- | --- |
-| 7.9596 | 0.4582 | 9.668 | 3.2888 |
-| 9.8813 | 8.812 | 8.1055 | 0.42248 |
+| | | | |
+| ------ | ------ | ------ | ------- |
+| 7.9596 | 0.4582 | 9.668 | 3.2888 |
+| 9.8813 | 8.812 | 8.1055 | 0.42248 |
| 2.7221 | 5.3213 | 8.3696 | 0.61326 |
-| 5.3658 | 7.8775 | 4.4198 | 1.9634 |
+| 5.3658 | 7.8775 | 4.4198 | 1.9634 |
@@ -42,12 +42,12 @@ CALL Display(MdEncode(lu), "diagNo=0, = " // CHAR_LF // CHAR_LF )
diagNo=0, =
-| | | | |
-| --- | --- | --- | --- |
-| 7.9596 | 0.4582 | 9.668 | 3.2888 |
-| 0 | 8.812 | 8.1055 | 0.42248 |
-| 0 | 0 | 8.3696 | 0.61326 |
-| 0 | 0 | 0 | 1.9634 |
+| | | | |
+| ------ | ------ | ------ | ------- |
+| 7.9596 | 0.4582 | 9.668 | 3.2888 |
+| 0 | 8.812 | 8.1055 | 0.42248 |
+| 0 | 0 | 8.3696 | 0.61326 |
+| 0 | 0 | 0 | 1.9634 |
@@ -63,12 +63,12 @@ CALL Display(MdEncode(lu), "diagNo=1, = " // CHAR_LF // CHAR_LF)
diagNo=1, =
-| | | | |
-| --- | --- | --- | --- |
-| 0 | 0.4582 | 9.668 | 3.2888 |
-| 0 | 0 | 8.1055 | 0.42248 |
-| 0 | 0 | 0 | 0.61326 |
-| 0 | 0 | 0 | 0 |
+| | | | |
+| - | ------ | ------ | ------- |
+| 0 | 0.4582 | 9.668 | 3.2888 |
+| 0 | 0 | 8.1055 | 0.42248 |
+| 0 | 0 | 0 | 0.61326 |
+| 0 | 0 | 0 | 0 |
@@ -84,12 +84,12 @@ CALL Display(MdEncode(lu), "diagNo=2, = " // CHAR_LF // CHAR_LF )
diagNo=2, =
-| | | | |
-| --- | --- | --- | --- |
-| 0 | 0 | 9.668 | 3.2888 |
-| 0 | 0 | 0 | 0.42248 |
-| 0 | 0 | 0 | 0 |
-| 0 | 0 | 0 | 0 |
+| | | | |
+| - | - | ----- | ------- |
+| 0 | 0 | 9.668 | 3.2888 |
+| 0 | 0 | 0 | 0.42248 |
+| 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/TriagUtility/_GetTriu_test_2.md b/docs/docs-api/TriagUtility/_GetTriu_test_2.md
index a7509d19..e98ad133 100644
--- a/docs/docs-api/TriagUtility/_GetTriu_test_2.md
+++ b/docs/docs-api/TriagUtility/_GetTriu_test_2.md
@@ -28,8 +28,8 @@ CALL Display(MdEncode(lu), "diagNo=-2, = " // CHAR_LF // CHAR_LF )
A =
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ------ | ------ | ------ | ------ |
| 4.3601 | 7.6972 | 7.6983 | 2.2272 |
| 6.2194 | 1.4554 | 1.4307 | 9.2086 |
| 8.7748 | 4.4743 | 9.8157 | 7.9489 |
@@ -37,21 +37,21 @@ A =
diagNo=-1, =
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ------ | ------ | ------ | ------ |
| 4.3601 | 7.6972 | 7.6983 | 2.2272 |
| 6.2194 | 1.4554 | 1.4307 | 9.2086 |
-| 0 | 4.4743 | 9.8157 | 7.9489 |
-| 0 | 0 | 5.7968 | 1.1776 |
+| 0 | 4.4743 | 9.8157 | 7.9489 |
+| 0 | 0 | 5.7968 | 1.1776 |
diagNo=-2, =
-| | | | |
-| --- | --- | --- | --- |
+| | | | |
+| ------ | ------ | ------ | ------ |
| 4.3601 | 7.6972 | 7.6983 | 2.2272 |
| 6.2194 | 1.4554 | 1.4307 | 9.2086 |
| 8.7748 | 4.4743 | 9.8157 | 7.9489 |
-| 0 | 8.4748 | 5.7968 | 1.1776 |
+| 0 | 8.4748 | 5.7968 | 1.1776 |
diff --git a/docs/docs-api/TriagUtility/_SetTril_test_1.md b/docs/docs-api/TriagUtility/_SetTril_test_1.md
index 26c55487..783d3742 100644
--- a/docs/docs-api/TriagUtility/_SetTril_test_1.md
+++ b/docs/docs-api/TriagUtility/_SetTril_test_1.md
@@ -21,12 +21,12 @@ CALl Display(MdEncode(A), "A = " // CHAR_LF // CHAR_LF)
A =
-| | | | |
-| --- | --- | --- | --- |
-| 4.6448 | 7.6162 | 0.43394 | 1.9014 |
-| 1.6243 | 4.1942 | 9.6744 | 0.59226 |
-| 7.6298 | 9.6844 | 2.2546 | 2.7899 |
-| 9.71 | 1.6767 | 7.4656 | 9.0884 |
+| | | | |
+| ------ | ------ | ------- | ------- |
+| 4.6448 | 7.6162 | 0.43394 | 1.9014 |
+| 1.6243 | 4.1942 | 9.6744 | 0.59226 |
+| 7.6298 | 9.6844 | 2.2546 | 2.7899 |
+| 9.71 | 1.6767 | 7.4656 | 9.0884 |
@@ -44,12 +44,12 @@ CALL Display(MdEncode(B), "diagNo=0, = " // CHAR_LF // CHAR_LF )
diagNo=0, =
-| | | | |
-| --- | --- | --- | --- |
-| 4.6448 | 0 | 0 | 0 |
-| 1.6243 | 4.1942 | 0 | 0 |
-| 7.6298 | 9.6844 | 2.2546 | 0 |
-| 9.71 | 1.6767 | 7.4656 | 9.0884 |
+| | | | |
+| ------ | ------ | ------ | ------ |
+| 4.6448 | 0 | 0 | 0 |
+| 1.6243 | 4.1942 | 0 | 0 |
+| 7.6298 | 9.6844 | 2.2546 | 0 |
+| 9.71 | 1.6767 | 7.4656 | 9.0884 |
@@ -67,12 +67,12 @@ CALL Display(MdEncode(B), "diagNo=1, = " // CHAR_LF // CHAR_LF )
diagNo=1, =
-| | | | |
-| --- | --- | --- | --- |
-| 4.6448 | 7.6162 | 0 | 0 |
-| 1.6243 | 4.1942 | 9.6744 | 0 |
+| | | | |
+| ------ | ------ | ------ | ------ |
+| 4.6448 | 7.6162 | 0 | 0 |
+| 1.6243 | 4.1942 | 9.6744 | 0 |
| 7.6298 | 9.6844 | 2.2546 | 2.7899 |
-| 9.71 | 1.6767 | 7.4656 | 9.0884 |
+| 9.71 | 1.6767 | 7.4656 | 9.0884 |
diff --git a/docs/docs-api/TriagUtility/_SetTriu_test_1.md b/docs/docs-api/TriagUtility/_SetTriu_test_1.md
index 973a837f..7d3dd6a0 100644
--- a/docs/docs-api/TriagUtility/_SetTriu_test_1.md
+++ b/docs/docs-api/TriagUtility/_SetTriu_test_1.md
@@ -21,12 +21,12 @@ CALl Display(MdEncode(A), "A = " // CHAR_LF // CHAR_LF)
A =
-| | | | |
-| --- | --- | --- | --- |
-| 2.859 | 5.5172 | 1.6403 | 5.7708 |
-| 8.8695 | 6.974 | 5.6426 | 0.80722 |
-| 6.8828 | 4.0238 | 9.9846 | 9.9341 |
-| 2.7916 | 1.4534 | 5.1318 | 2.3856 |
+| | | | |
+| ------ | ------ | ------ | ------- |
+| 2.859 | 5.5172 | 1.6403 | 5.7708 |
+| 8.8695 | 6.974 | 5.6426 | 0.80722 |
+| 6.8828 | 4.0238 | 9.9846 | 9.9341 |
+| 2.7916 | 1.4534 | 5.1318 | 2.3856 |
@@ -44,12 +44,12 @@ CALL Display(MdEncode(B), "diagNo=0, = " // CHAR_LF // CHAR_LF )
diagNo=0, =
-| | | | |
-| --- | --- | --- | --- |
-| 2.859 | 5.5172 | 1.6403 | 5.7708 |
-| 0 | 6.974 | 5.6426 | 0.80722 |
-| 0 | 0 | 9.9846 | 9.9341 |
-| 0 | 0 | 0 | 2.3856 |
+| | | | |
+| ----- | ------ | ------ | ------- |
+| 2.859 | 5.5172 | 1.6403 | 5.7708 |
+| 0 | 6.974 | 5.6426 | 0.80722 |
+| 0 | 0 | 9.9846 | 9.9341 |
+| 0 | 0 | 0 | 2.3856 |
@@ -67,12 +67,12 @@ CALL Display(MdEncode(B), "diagNo=1, = " // CHAR_LF // CHAR_LF )
diagNo=1, =
-| | | | |
-| --- | --- | --- | --- |
-| 0 | 5.5172 | 1.6403 | 5.7708 |
-| 0 | 0 | 5.6426 | 0.80722 |
-| 0 | 0 | 0 | 9.9341 |
-| 0 | 0 | 0 | 0 |
+| | | | |
+| - | ------ | ------ | ------- |
+| 0 | 5.5172 | 1.6403 | 5.7708 |
+| 0 | 0 | 5.6426 | 0.80722 |
+| 0 | 0 | 0 | 9.9341 |
+| 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/TriagUtility/_TrilIndx_test_1.md b/docs/docs-api/TriagUtility/_TrilIndx_test_1.md
index 3bb1437c..e0079688 100644
--- a/docs/docs-api/TriagUtility/_TrilIndx_test_1.md
+++ b/docs/docs-api/TriagUtility/_TrilIndx_test_1.md
@@ -54,8 +54,7 @@ CALL Display(TrilIndx(m=3,n=3,diagNo=-2), "(3,3) diagNo=-2, = " )
3 1
(3,3) diagNo=-2, =
-------------------
- 3 1
-
+ 3 1
```
diff --git a/docs/docs-api/TriagUtility/_TrilIndx_test_2.md b/docs/docs-api/TriagUtility/_TrilIndx_test_2.md
index 387fdb57..5391e7a6 100644
--- a/docs/docs-api/TriagUtility/_TrilIndx_test_2.md
+++ b/docs/docs-api/TriagUtility/_TrilIndx_test_2.md
@@ -55,8 +55,7 @@ CALL Display(TrilIndx(amat,diagNo=-2), "(3,3) diagNo=-2, = " )
3 1
(3,3) diagNo=-2, =
-------------------
- 3 1
-
+ 3 1
```
diff --git a/docs/docs-api/TriagUtility/_Tril_test_1.md b/docs/docs-api/TriagUtility/_Tril_test_1.md
index 3d054a84..da860338 100644
--- a/docs/docs-api/TriagUtility/_Tril_test_1.md
+++ b/docs/docs-api/TriagUtility/_Tril_test_1.md
@@ -25,7 +25,7 @@ END BLOCK
A =
| | | | |
-|---------|--------|--------|--------|
+| ------- | ------ | ------ | ------ |
| 7.2777 | 8.6925 | 3.2953 | 9.1375 |
| 9.5344 | 1.8291 | 3.1941 | 2.7707 |
| 0.72276 | 6.2783 | 8.5105 | 1.4668 |
@@ -34,7 +34,7 @@ A =
diagNo=0, =
| | | | |
-|---------|--------|--------|-------|
+| ------- | ------ | ------ | ----- |
| 7.2777 | 0 | 0 | 0 |
| 9.5344 | 1.8291 | 0 | 0 |
| 0.72276 | 6.2783 | 8.5105 | 0 |
@@ -43,7 +43,7 @@ diagNo=0, =
diagNo=1, =
| | | | |
-|---------|--------|--------|--------|
+| ------- | ------ | ------ | ------ |
| 7.2777 | 8.6925 | 0 | 0 |
| 9.5344 | 1.8291 | 3.1941 | 0 |
| 0.72276 | 6.2783 | 8.5105 | 1.4668 |
@@ -52,7 +52,7 @@ diagNo=1, =
diagNo=2, =
| | | | |
-|---------|--------|--------|--------|
+| ------- | ------ | ------ | ------ |
| 7.2777 | 8.6925 | 3.2953 | 0 |
| 9.5344 | 1.8291 | 3.1941 | 2.7707 |
| 0.72276 | 6.2783 | 8.5105 | 1.4668 |
@@ -80,30 +80,30 @@ END BLOCK
A =
- | | | | |
- |--------|---------|--------|--------|
- | 3.4843 | 0.21881 | 7.0136 | 8.6618 |
- | 1.1204 | 4.0021 | 8.4773 | 3.9924 |
- | 2.6185 | 8.0988 | 6.4968 | 2.7172 |
- | 5.5955 | 2.0122 | 7.5929 | 4.431 |
+| | | | |
+| ------ | ------- | ------ | ------ |
+| 3.4843 | 0.21881 | 7.0136 | 8.6618 |
+| 1.1204 | 4.0021 | 8.4773 | 3.9924 |
+| 2.6185 | 8.0988 | 6.4968 | 2.7172 |
+| 5.5955 | 2.0122 | 7.5929 | 4.431 |
(3,3) diagNo=-1, =
- | | | | |
- |--------|--------|--------|---|
- | 0 | 0 | 0 | 0 |
- | 1.1204 | 0 | 0 | 0 |
- | 2.6185 | 8.0988 | 0 | 0 |
- | 5.5955 | 2.0122 | 7.5929 | 0 |
+| | | | |
+| ------ | ------ | ------ | - |
+| 0 | 0 | 0 | 0 |
+| 1.1204 | 0 | 0 | 0 |
+| 2.6185 | 8.0988 | 0 | 0 |
+| 5.5955 | 2.0122 | 7.5929 | 0 |
(3,3) diagNo=-2, =
- | | | | |
- |--------|--------|---|---|
- | 0 | 0 | 0 | 0 |
- | 0 | 0 | 0 | 0 |
- | 2.6185 | 0 | 0 | 0 |
- | 5.5955 | 2.0122 | 0 | 0 |
+| | | | |
+| ------ | ------ | - | - |
+| 0 | 0 | 0 | 0 |
+| 0 | 0 | 0 | 0 |
+| 2.6185 | 0 | 0 | 0 |
+| 5.5955 | 2.0122 | 0 | 0 |
diff --git a/docs/docs-api/TriagUtility/_Tril_test_2.md b/docs/docs-api/TriagUtility/_Tril_test_2.md
index 177741f2..869e17ee 100644
--- a/docs/docs-api/TriagUtility/_Tril_test_2.md
+++ b/docs/docs-api/TriagUtility/_Tril_test_2.md
@@ -19,30 +19,30 @@ end program main
A =
- | | | | |
- | --- | --- | --- | --- |
- | 1.4576 | 3.1887 | 4.4724 | 2.3238 |
- | 3.5987 | 4.2895 | 2.7841 | 3.4316 |
- | 2.7368 | 8.7299 | 5.3137 | 3.5759 |
- | 7.6728 | 0.5108 | 3.7975 | 1.3629 |
+| | | | |
+| ------ | ------ | ------ | ------ |
+| 1.4576 | 3.1887 | 4.4724 | 2.3238 |
+| 3.5987 | 4.2895 | 2.7841 | 3.4316 |
+| 2.7368 | 8.7299 | 5.3137 | 3.5759 |
+| 7.6728 | 0.5108 | 3.7975 | 1.3629 |
diagNo=0, =
- | | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
+| | | | | | | | | | |
+| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
+| 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
diagNo=1, =
- | | | | | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 3.1887 | 2.7841 | 3.5759 | 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
+| | | | | | | | | | | | | |
+| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
+| 3.1887 | 2.7841 | 3.5759 | 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
diagNo=2, =
- | | | | | | | | | | | | | | | |
- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
- | 4.4724 | 3.4316 | 3.1887 | 2.7841 | 3.5759 | 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
+| | | | | | | | | | | | | | | |
+| ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
+| 4.4724 | 3.4316 | 3.1887 | 2.7841 | 3.5759 | 1.4576 | 4.2895 | 5.3137 | 1.3629 | 3.5987 | 8.7299 | 3.7975 | 2.7368 | 0.5108 | 7.6728 |
diff --git a/docs/docs-api/TriagUtility/_TriuIndx_test_2.md b/docs/docs-api/TriagUtility/_TriuIndx_test_2.md
index 610817be..f400897c 100644
--- a/docs/docs-api/TriagUtility/_TriuIndx_test_2.md
+++ b/docs/docs-api/TriagUtility/_TriuIndx_test_2.md
@@ -55,7 +55,7 @@ CALL Display(TriuIndx(amat,diagNo=-2), "(3,3) diagNo=-2, = " )
3 3
1 2
2 3
- 1 3
+ 1 3
```
diff --git a/docs/docs-api/TriagUtility/_Triu_test_1.md b/docs/docs-api/TriagUtility/_Triu_test_1.md
index 5b363d34..41c98d37 100644
--- a/docs/docs-api/TriagUtility/_Triu_test_1.md
+++ b/docs/docs-api/TriagUtility/_Triu_test_1.md
@@ -20,7 +20,7 @@ END BLOCK
A =
| | | | |
-|--------|--------|--------|--------|
+| ------ | ------ | ------ | ------ |
| 7.4672 | 7.2656 | 2.6319 | 7.4388 |
| 3.3308 | 4.4818 | 8.0987 | 7.1544 |
| 5.7006 | 8.3514 | 2.9005 | 6.3054 |
@@ -29,7 +29,7 @@ A =
(3,3) diagNo=0, =
| | | | |
-|--------|--------|--------|--------|
+| ------ | ------ | ------ | ------ |
| 7.4672 | 7.2656 | 2.6319 | 7.4388 |
| 0 | 4.4818 | 8.0987 | 7.1544 |
| 0 | 0 | 2.9005 | 6.3054 |
@@ -38,7 +38,7 @@ A =
(3,3) diagNo=1, =
| | | | |
-|---|--------|--------|--------|
+| - | ------ | ------ | ------ |
| 0 | 7.2656 | 2.6319 | 7.4388 |
| 0 | 0 | 8.0987 | 7.1544 |
| 0 | 0 | 0 | 6.3054 |
@@ -47,7 +47,7 @@ A =
(3,3) diagNo=2, =
| | | | |
-|---|---|--------|--------|
+| - | - | ------ | ------ |
| 0 | 0 | 2.6319 | 7.4388 |
| 0 | 0 | 0 | 7.1544 |
| 0 | 0 | 0 | 0 |
@@ -76,7 +76,7 @@ END BLOCK
(3,3) diagNo=-1, =
| | | | |
-|--------|--------|--------|--------|
+| ------ | ------ | ------ | ------ |
| 3.5096 | 8.8744 | 1.7549 | 1.5576 |
| 8.661 | 7.3655 | 2.6134 | 9.767 |
| 0 | 9.788 | 1.4703 | 3.3602 |
@@ -85,7 +85,7 @@ END BLOCK
(3,3) diagNo=-2, =
| | | | |
-|--------|--------|--------|--------|
+| ------ | ------ | ------ | ------ |
| 3.5096 | 8.8744 | 1.7549 | 1.5576 |
| 8.661 | 7.3655 | 2.6134 | 9.767 |
| 6.0823 | 9.788 | 1.4703 | 3.3602 |
diff --git a/docs/docs-api/TriagUtility/_Triu_test_2.md b/docs/docs-api/TriagUtility/_Triu_test_2.md
index a40f6612..3da0d3d2 100644
--- a/docs/docs-api/TriagUtility/_Triu_test_2.md
+++ b/docs/docs-api/TriagUtility/_Triu_test_2.md
@@ -19,29 +19,29 @@ end program main
A =
-| | | | |
-| --- | --- | --- | --- |
-| 0.99172 | 0.2666 | 4.3266 | 5.4603 |
-| 2.5813 | 0.14775 | 1.7741 | 5.3106 |
-| 1.9852 | 5.8142 | 4.8581 | 9.2279 |
-| 1.4559 | 7.9147 | 7.84 | 9.2751 |
+| | | | |
+| ------- | ------- | ------ | ------ |
+| 0.99172 | 0.2666 | 4.3266 | 5.4603 |
+| 2.5813 | 0.14775 | 1.7741 | 5.3106 |
+| 1.9852 | 5.8142 | 4.8581 | 9.2279 |
+| 1.4559 | 7.9147 | 7.84 | 9.2751 |
diagNo=0, =
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | | |
+| ------- | ------- | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ |
| 0.99172 | 0.14775 | 4.8581 | 9.2751 | 0.2666 | 1.7741 | 9.2279 | 4.3266 | 5.3106 | 5.4603 |
diagNo=1, =
-| | | | | | |
-| --- | --- | --- | --- | --- | --- |
+| | | | | | |
+| ------ | ------ | ------ | ------ | ------ | ------ |
| 0.2666 | 1.7741 | 9.2279 | 4.3266 | 5.3106 | 5.4603 |
diagNo=2, =
-| | | |
-| --- | --- | --- |
+| | | |
+| ------ | ------ | ------ |
| 4.3266 | 5.3106 | 5.4603 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/LagrangeEvalAll_Triangle.md b/docs/docs-api/TriangleInterpolationUtility/LagrangeEvalAll_Triangle.md
index ad46309f..3f8d2b6d 100644
--- a/docs/docs-api/TriangleInterpolationUtility/LagrangeEvalAll_Triangle.md
+++ b/docs/docs-api/TriangleInterpolationUtility/LagrangeEvalAll_Triangle.md
@@ -43,16 +43,15 @@ END INTERFACE LagrangeEvalAll_Triangle
:::note `xij`
:::
-`xij` is the interpolation points for Lagrange polynomials. `xij` is used for constructing the `coeff`.
-
+`xij` is the interpolation points for Lagrange polynomials. `xij` is used for constructing the `coeff`.
:::note `basisType`
:::
-Type of basis functions used for constructing the Lagrange polynomial. Following values are allowed:
+Type of basis functions used for constructing the Lagrange polynomial. Following values are allowed:
-- Monomials
-- Orthogonal, Jacobi, Legendre, Ultraspherical, are all the same.
+- Monomials
+- Orthogonal, Jacobi, Legendre, Ultraspherical, are all the same.
- Hierarchical
diff --git a/docs/docs-api/TriangleInterpolationUtility/_QuadraturePoint_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/_QuadraturePoint_Triangle_test_1.md
index b5f2e668..67febae3 100644
--- a/docs/docs-api/TriangleInterpolationUtility/_QuadraturePoint_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/_QuadraturePoint_Triangle_test_1.md
@@ -26,10 +26,10 @@ end program main
xij (order=2)=
-| | | | | | |
-| --- | --- | --- | --- | --- | --- |
-| 1.11022E-16 | 5.55112E-17 | 0.5 | 0.25 | 1 | 0.5 |
-| 0 | 0.5 | 0 | 0.5 | 0 | 0.5 |
+| | | | | | |
+| ----------- | ----------- | ------- | ------- | ----------- | ----------- |
+| 1.11022E-16 | 5.55112E-17 | 0.5 | 0.25 | 1 | 0.5 |
+| 0 | 0.5 | 0 | 0.5 | 0 | 0.5 |
| 2.77778E-02 | 5.55556E-02 | 0.11111 | 0.22222 | 2.77778E-02 | 5.55556E-02 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_BarycentricHeirarchicalBasis_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_BarycentricHeirarchicalBasis_Triangle_test_1.md
index 865cbb53..21765328 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_BarycentricHeirarchicalBasis_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_BarycentricHeirarchicalBasis_Triangle_test_1.md
@@ -25,30 +25,30 @@ program main
```
```fortran title="order=1; pe1=1; pe2=1; pe3=1"
- BLOCK
- real(dfp), allocatable :: ans(:,:)
- integer(i4b) :: ii, order, pe1, pe2, pe3
- type( VTKPlot_ ) :: aplot
- character(len=*), parameter :: fname="./results/"
- !!
- order=1; pe1=1; pe2=1; pe3=1
- !!
- ans = BarycentricHeirarchicalBasis_Triangle(&
- & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
- & lambda=lambda, refTriangle="UNIT")
- !!
- do ii = 1, size(ans,2)
- call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
- & filename=fname//"Pbary( order=" // tostring(order) // &
- & ", pe1="//tostring(pe1) // &
- & ", pe2="//tostring(pe2) // &
- & ", pe3="//tostring(pe3) // &
- & " )" // tostring(ii) // &
- & ".vtp", &
- & label="P")
- end do
- !!
- END BLOCK
+BLOCK
+ real(dfp), allocatable :: ans(:,:)
+ integer(i4b) :: ii, order, pe1, pe2, pe3
+ type( VTKPlot_ ) :: aplot
+ character(len=*), parameter :: fname="./results/"
+ !!
+ order=1; pe1=1; pe2=1; pe3=1
+ !!
+ ans = BarycentricHeirarchicalBasis_Triangle(&
+ & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
+ & lambda=lambda, refTriangle="UNIT")
+ !!
+ do ii = 1, size(ans,2)
+ call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
+ & filename=fname//"Pbary( order=" // tostring(order) // &
+ & ", pe1="//tostring(pe1) // &
+ & ", pe2="//tostring(pe2) // &
+ & ", pe3="//tostring(pe3) // &
+ & " )" // tostring(ii) // &
+ & ".vtp", &
+ & label="P")
+ end do
+ !!
+END BLOCK
```
@@ -57,30 +57,30 @@ program main
```fortran title="order=3; pe1=3; pe2=3; pe3=3"
- BLOCK
- real(dfp), allocatable :: ans(:,:)
- integer(i4b) :: ii, order, pe1, pe2, pe3
- type( VTKPlot_ ) :: aplot
- character(len=*), parameter :: fname="./results/"
- !!
- order=3; pe1=3; pe2=3; pe3=3
- !!
- ans = BarycentricHeirarchicalBasis_Triangle(&
- & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
- & lambda=lambda, refTriangle="UNIT")
- !!
- do ii = 1, size(ans,2)
- call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
- & filename=fname//"Pbary( order=" // tostring(order) // &
- & ", pe1="//tostring(pe1) // &
- & ", pe2="//tostring(pe2) // &
- & ", pe3="//tostring(pe3) // &
- & " )" // tostring(ii) // &
- & ".vtp", &
- & label="P")
- end do
- !!
- END BLOCK
+BLOCK
+ real(dfp), allocatable :: ans(:,:)
+ integer(i4b) :: ii, order, pe1, pe2, pe3
+ type( VTKPlot_ ) :: aplot
+ character(len=*), parameter :: fname="./results/"
+ !!
+ order=3; pe1=3; pe2=3; pe3=3
+ !!
+ ans = BarycentricHeirarchicalBasis_Triangle(&
+ & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
+ & lambda=lambda, refTriangle="UNIT")
+ !!
+ do ii = 1, size(ans,2)
+ call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
+ & filename=fname//"Pbary( order=" // tostring(order) // &
+ & ", pe1="//tostring(pe1) // &
+ & ", pe2="//tostring(pe2) // &
+ & ", pe3="//tostring(pe3) // &
+ & " )" // tostring(ii) // &
+ & ".vtp", &
+ & label="P")
+ end do
+ !!
+END BLOCK
```
@@ -92,30 +92,30 @@ program main
```fortran title="order=4; pe1=4; pe2=4; pe3=4"
- BLOCK
- real(dfp), allocatable :: ans(:,:)
- integer(i4b) :: ii, order, pe1, pe2, pe3
- type( VTKPlot_ ) :: aplot
- character(len=*), parameter :: fname="./results/"
- !!
- order=4; pe1=4; pe2=4; pe3=4
- !!
- ans = BarycentricHeirarchicalBasis_Triangle(&
- & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
- & lambda=lambda, refTriangle="UNIT")
- !!
- do ii = 1, size(ans,2)
- call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
- & filename=fname//"Pbary( order=" // tostring(order) // &
- & ", pe1="//tostring(pe1) // &
- & ", pe2="//tostring(pe2) // &
- & ", pe3="//tostring(pe3) // &
- & " )" // tostring(ii) // &
- & ".vtp", &
- & label="P")
- end do
- !!
- END BLOCK
+BLOCK
+ real(dfp), allocatable :: ans(:,:)
+ integer(i4b) :: ii, order, pe1, pe2, pe3
+ type( VTKPlot_ ) :: aplot
+ character(len=*), parameter :: fname="./results/"
+ !!
+ order=4; pe1=4; pe2=4; pe3=4
+ !!
+ ans = BarycentricHeirarchicalBasis_Triangle(&
+ & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
+ & lambda=lambda, refTriangle="UNIT")
+ !!
+ do ii = 1, size(ans,2)
+ call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
+ & filename=fname//"Pbary( order=" // tostring(order) // &
+ & ", pe1="//tostring(pe1) // &
+ & ", pe2="//tostring(pe2) // &
+ & ", pe3="//tostring(pe3) // &
+ & " )" // tostring(ii) // &
+ & ".vtp", &
+ & label="P")
+ end do
+ !!
+END BLOCK
```
@@ -127,57 +127,57 @@ program main
```fortran title="order=5; pe1=5; pe2=5; pe3=5"
- BLOCK
- real(dfp), allocatable :: ans(:,:)
- integer(i4b) :: ii, order, pe1, pe2, pe3
- type( VTKPlot_ ) :: aplot
- character(len=*), parameter :: fname="./results/"
- !!
- order=5; pe1=5; pe2=5; pe3=5
- !!
- ans = BarycentricHeirarchicalBasis_Triangle(&
- & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
- & lambda=lambda, refTriangle="UNIT")
- !!
- do ii = 1, size(ans,2)
- call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
- & filename=fname//"Pbary( order=" // tostring(order) // &
- & ", pe1="//tostring(pe1) // &
- & ", pe2="//tostring(pe2) // &
- & ", pe3="//tostring(pe3) // &
- & " )" // tostring(ii) // &
- & ".vtp", &
- & label="P")
- end do
- !!
- END BLOCK
+BLOCK
+ real(dfp), allocatable :: ans(:,:)
+ integer(i4b) :: ii, order, pe1, pe2, pe3
+ type( VTKPlot_ ) :: aplot
+ character(len=*), parameter :: fname="./results/"
+ !!
+ order=5; pe1=5; pe2=5; pe3=5
+ !!
+ ans = BarycentricHeirarchicalBasis_Triangle(&
+ & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
+ & lambda=lambda, refTriangle="UNIT")
+ !!
+ do ii = 1, size(ans,2)
+ call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
+ & filename=fname//"Pbary( order=" // tostring(order) // &
+ & ", pe1="//tostring(pe1) // &
+ & ", pe2="//tostring(pe2) // &
+ & ", pe3="//tostring(pe3) // &
+ & " )" // tostring(ii) // &
+ & ".vtp", &
+ & label="P")
+ end do
+ !!
+END BLOCK
```
```fortran title="order=5; pe1=1; pe2=5; pe3=3"
- BLOCK
- real(dfp), allocatable :: ans(:,:)
- integer(i4b) :: ii, order, pe1, pe2, pe3
- type( VTKPlot_ ) :: aplot
- character(len=*), parameter :: fname="./results/"
- !!
- order=5; pe1=1; pe2=5; pe3=3
- !!
- ans = BarycentricHeirarchicalBasis_Triangle(&
- & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
- & lambda=lambda, refTriangle="UNIT")
- !!
- do ii = 1, size(ans,2)
- call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
- & filename=fname//"Pbary( order=" // tostring(order) // &
- & ", pe1="//tostring(pe1) // &
- & ", pe2="//tostring(pe2) // &
- & ", pe3="//tostring(pe3) // &
- & " )" // tostring(ii) // &
- & ".vtp", &
- & label="P")
- end do
- !!
- END BLOCK
+BLOCK
+ real(dfp), allocatable :: ans(:,:)
+ integer(i4b) :: ii, order, pe1, pe2, pe3
+ type( VTKPlot_ ) :: aplot
+ character(len=*), parameter :: fname="./results/"
+ !!
+ order=5; pe1=1; pe2=5; pe3=3
+ !!
+ ans = BarycentricHeirarchicalBasis_Triangle(&
+ & order=order, pe1=pe1, pe2=pe2, pe3=pe3, &
+ & lambda=lambda, refTriangle="UNIT")
+ !!
+ do ii = 1, size(ans,2)
+ call aplot%scatter3D(x=xij(1,:), y=xij(2, :), z=ans(:,ii), &
+ & filename=fname//"Pbary( order=" // tostring(order) // &
+ & ", pe1="//tostring(pe1) // &
+ & ", pe2="//tostring(pe2) // &
+ & ", pe3="//tostring(pe3) // &
+ & " )" // tostring(ii) // &
+ & ".vtp", &
+ & label="P")
+ end do
+ !!
+END BLOCK
```
```fortran
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistanceInPoint_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistanceInPoint_Triangle_test_1.md
index 94a56a08..0d144b69 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistanceInPoint_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistanceInPoint_Triangle_test_1.md
@@ -10,18 +10,18 @@ program main
:::
```fortran
- order=1
- x = EquidistanceInPoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=2
- x = EquidistanceInPoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=3
- x = EquidistanceInPoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
+order=1
+x = EquidistanceInPoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=2
+x = EquidistanceInPoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=3
+x = EquidistanceInPoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
```
@@ -31,7 +31,7 @@ program main
xij (order=3)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.33333 | 0.33333 | 0.00000 |
@@ -42,14 +42,14 @@ Order greater than or equal to 4.
:::
```fortran
- order=4
- x = EquidistanceInPoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=5
- x = EquidistanceInPoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
+order=4
+x = EquidistanceInPoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=5
+x = EquidistanceInPoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
```
@@ -59,7 +59,7 @@ Order greater than or equal to 4.
xij (order=4)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.25000 | 0.25000 | 0.00000 |
| 0.50000 | 0.25000 | 0.00000 |
| 0.25000 | 0.50000 | 0.00000 |
@@ -67,7 +67,7 @@ xij (order=4)=
xij (order=5)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.20000 | 0.20000 | 0.00000 |
| 0.60000 | 0.20000 | 0.00000 |
| 0.20000 | 0.60000 | 0.00000 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistancePoint_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistancePoint_Triangle_test_1.md
index be6669d9..e24e532f 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistancePoint_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_EquidistancePoint_Triangle_test_1.md
@@ -11,18 +11,18 @@ Order less than or equal to 3.
:::
```fortran
- order=1
- x = EquidistancePoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=2
- x = EquidistancePoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=3
- x = EquidistancePoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
+order=1
+x = EquidistancePoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=2
+x = EquidistancePoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=3
+x = EquidistancePoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
```
@@ -32,7 +32,7 @@ Order less than or equal to 3.
xij (order=1)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.00000 | 0.00000 | 0.00000 |
| 1.00000 | 0.00000 | 0.00000 |
| 0.00000 | 1.00000 | 0.00000 |
@@ -40,7 +40,7 @@ xij (order=1)=
xij (order=2)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.00000 | 0.00000 | 0.00000 |
| 1.00000 | 0.00000 | 0.00000 |
| 0.00000 | 1.00000 | 0.00000 |
@@ -51,7 +51,7 @@ xij (order=2)=
xij (order=3)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.00000 | 0.00000 | 0.00000 |
| 1.00000 | 0.00000 | 0.00000 |
| 0.00000 | 1.00000 | 0.00000 |
@@ -71,14 +71,14 @@ Order greater than or equal to 4.
:::
```fortran
- order=4
- x = EquidistancePoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
- order=5
- x = EquidistancePoint_Triangle( order=order )
- call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
- call blanklines(nol=2)
+order=4
+x = EquidistancePoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
+order=5
+x = EquidistancePoint_Triangle( order=order )
+call display( TRANSPOSE(x), "xij (order="//tostring(order)//")=" )
+call blanklines(nol=2)
```
@@ -88,7 +88,7 @@ Order greater than or equal to 4.
xij (order=4)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.00000 | 0.00000 | 0.00000 |
| 1.00000 | 0.00000 | 0.00000 |
| 0.00000 | 1.00000 | 0.00000 |
@@ -108,7 +108,7 @@ xij (order=4)=
xij (order=5)=
| x1 | x2 | x3 |
-|---------|---------|---------|
+| ------- | ------- | ------- |
| 0.00000 | 0.00000 | 0.00000 |
| 1.00000 | 0.00000 | 0.00000 |
| 0.00000 | 1.00000 | 0.00000 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_1.md
index 352210f0..b48e3f39 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_1.md
@@ -22,29 +22,29 @@ end program main
xij (order=5)=
-| | |
- | --- | --- |
- | 0 | 0 |
- | 1 | 0 |
- | 0 | 1 |
- | 0.2 | 0 |
- | 0.4 | 0 |
- | 0.6 | 0 |
- | 0.8 | 0 |
- | 0.8 | 0.2 |
- | 0.6 | 0.4 |
- | 0.4 | 0.6 |
- | 0.2 | 0.8 |
- | 0 | 0.8 |
- | 0 | 0.6 |
- | 0 | 0.4 |
- | 0 | 0.2 |
- | 0.2 | 0.2 |
- | 0.6 | 0.2 |
- | 0.2 | 0.6 |
- | 0.4 | 0.2 |
- | 0.4 | 0.4 |
- | 0.2 | 0.4 |
+| | |
+| --- | --- |
+| 0 | 0 |
+| 1 | 0 |
+| 0 | 1 |
+| 0.2 | 0 |
+| 0.4 | 0 |
+| 0.6 | 0 |
+| 0.8 | 0 |
+| 0.8 | 0.2 |
+| 0.6 | 0.4 |
+| 0.4 | 0.6 |
+| 0.2 | 0.8 |
+| 0 | 0.8 |
+| 0 | 0.6 |
+| 0 | 0.4 |
+| 0 | 0.2 |
+| 0.2 | 0.2 |
+| 0.6 | 0.2 |
+| 0.2 | 0.6 |
+| 0.4 | 0.2 |
+| 0.4 | 0.4 |
+| 0.2 | 0.4 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_2.md b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_2.md
index ea55ae7b..a8b5fa25 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_2.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_2.md
@@ -22,29 +22,29 @@ end program main
xij (order=5)=
-| | |
- | --- | --- |
- | 0 | 0 |
- | 1 | 0 |
- | 0 | 1 |
- | 9.54915E-02 | -2.02431E-14 |
- | 0.34549 | -3.27886E-14 |
- | 0.65451 | -3.28071E-14 |
- | 0.90451 | -2.02431E-14 |
- | 0.90451 | 9.54915E-02 |
- | 0.65451 | 0.34549 |
- | 0.34549 | 0.65451 |
- | 9.54915E-02 | 0.90451 |
- | -2.02431E-14 | 0.90451 |
- | -3.28071E-14 | 0.65451 |
- | -3.27886E-14 | 0.34549 |
- | -2.02431E-14 | 9.54915E-02 |
- | 0.14699 | 0.14699 |
- | 0.70601 | 0.14699 |
- | 0.14699 | 0.70601 |
- | 0.41667 | 0.16667 |
- | 0.41667 | 0.41667 |
- | 0.16667 | 0.41667 |
+| | |
+| ------------ | ------------ |
+| 0 | 0 |
+| 1 | 0 |
+| 0 | 1 |
+| 9.54915E-02 | -2.02431E-14 |
+| 0.34549 | -3.27886E-14 |
+| 0.65451 | -3.28071E-14 |
+| 0.90451 | -2.02431E-14 |
+| 0.90451 | 9.54915E-02 |
+| 0.65451 | 0.34549 |
+| 0.34549 | 0.65451 |
+| 9.54915E-02 | 0.90451 |
+| -2.02431E-14 | 0.90451 |
+| -3.28071E-14 | 0.65451 |
+| -3.27886E-14 | 0.34549 |
+| -2.02431E-14 | 9.54915E-02 |
+| 0.14699 | 0.14699 |
+| 0.70601 | 0.14699 |
+| 0.14699 | 0.70601 |
+| 0.41667 | 0.16667 |
+| 0.41667 | 0.41667 |
+| 0.16667 | 0.41667 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_3.md b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_3.md
index db07a1f0..263d9807 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_3.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_3.md
@@ -22,29 +22,29 @@ end program main
xij (order=5)=
-| | |
-| --- | --- |
+| | |
+| ------------ | ------------ |
| -1.85037E-16 | -1.85037E-16 |
-| 1 | -1.85037E-16 |
-| -1.85037E-16 | 1 |
-| 0.11747 | -1.4803E-16 |
-| 0.35738 | -3.70074E-17 |
-| 0.64262 | -3.70074E-17 |
-| 0.88253 | -1.29526E-16 |
-| 0.88253 | 0.11747 |
-| 0.64262 | 0.35738 |
-| 0.35738 | 0.64262 |
-| 0.11747 | 0.88253 |
-| -1.29526E-16 | 0.88253 |
-| -3.70074E-17 | 0.64262 |
-| -3.70074E-17 | 0.35738 |
-| -1.4803E-16 | 0.11747 |
-| 0.15829 | 0.15829 |
-| 0.68343 | 0.15829 |
-| 0.15829 | 0.68343 |
-| 0.4133 | 0.17339 |
-| 0.4133 | 0.4133 |
-| 0.17339 | 0.4133 |
+| 1 | -1.85037E-16 |
+| -1.85037E-16 | 1 |
+| 0.11747 | -1.4803E-16 |
+| 0.35738 | -3.70074E-17 |
+| 0.64262 | -3.70074E-17 |
+| 0.88253 | -1.29526E-16 |
+| 0.88253 | 0.11747 |
+| 0.64262 | 0.35738 |
+| 0.35738 | 0.64262 |
+| 0.11747 | 0.88253 |
+| -1.29526E-16 | 0.88253 |
+| -3.70074E-17 | 0.64262 |
+| -3.70074E-17 | 0.35738 |
+| -1.4803E-16 | 0.11747 |
+| 0.15829 | 0.15829 |
+| 0.68343 | 0.15829 |
+| 0.15829 | 0.68343 |
+| 0.4133 | 0.17339 |
+| 0.4133 | 0.4133 |
+| 0.17339 | 0.4133 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_4.md b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_4.md
index e24a6b36..a9ff49dd 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_4.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_4.md
@@ -22,29 +22,29 @@ end program main
xij (order=5)=
-| | |
-| --- | --- |
+| | |
+| ------------ | ------------ |
| -8.32667E-17 | -8.32667E-17 |
-| 1 | -8.32667E-17 |
-| -8.32667E-17 | 1 |
-| 0.11747 | -4.89901E-17 |
-| 0.35738 | -1.58335E-17 |
-| 0.64262 | -1.58335E-17 |
-| 0.88253 | -4.89901E-17 |
-| 0.88253 | 0.11747 |
-| 0.64262 | 0.35738 |
-| 0.35738 | 0.64262 |
-| 0.11747 | 0.88253 |
-| -4.89901E-17 | 0.88253 |
-| -1.58335E-17 | 0.64262 |
-| -1.58335E-17 | 0.35738 |
-| -4.89901E-17 | 0.11747 |
-| 0.15599 | 0.15599 |
-| 0.68802 | 0.15599 |
-| 0.15599 | 0.68802 |
-| 0.41807 | 0.16387 |
-| 0.41807 | 0.41807 |
-| 0.16387 | 0.41807 |
+| 1 | -8.32667E-17 |
+| -8.32667E-17 | 1 |
+| 0.11747 | -4.89901E-17 |
+| 0.35738 | -1.58335E-17 |
+| 0.64262 | -1.58335E-17 |
+| 0.88253 | -4.89901E-17 |
+| 0.88253 | 0.11747 |
+| 0.64262 | 0.35738 |
+| 0.35738 | 0.64262 |
+| 0.11747 | 0.88253 |
+| -4.89901E-17 | 0.88253 |
+| -1.58335E-17 | 0.64262 |
+| -1.58335E-17 | 0.35738 |
+| -4.89901E-17 | 0.11747 |
+| 0.15599 | 0.15599 |
+| 0.68802 | 0.15599 |
+| 0.15599 | 0.68802 |
+| 0.41807 | 0.16387 |
+| 0.41807 | 0.41807 |
+| 0.16387 | 0.41807 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_5.md b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_5.md
index e24a6b36..a9ff49dd 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_5.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_InterpolationPoint_Triangle_test_5.md
@@ -22,29 +22,29 @@ end program main
xij (order=5)=
-| | |
-| --- | --- |
+| | |
+| ------------ | ------------ |
| -8.32667E-17 | -8.32667E-17 |
-| 1 | -8.32667E-17 |
-| -8.32667E-17 | 1 |
-| 0.11747 | -4.89901E-17 |
-| 0.35738 | -1.58335E-17 |
-| 0.64262 | -1.58335E-17 |
-| 0.88253 | -4.89901E-17 |
-| 0.88253 | 0.11747 |
-| 0.64262 | 0.35738 |
-| 0.35738 | 0.64262 |
-| 0.11747 | 0.88253 |
-| -4.89901E-17 | 0.88253 |
-| -1.58335E-17 | 0.64262 |
-| -1.58335E-17 | 0.35738 |
-| -4.89901E-17 | 0.11747 |
-| 0.15599 | 0.15599 |
-| 0.68802 | 0.15599 |
-| 0.15599 | 0.68802 |
-| 0.41807 | 0.16387 |
-| 0.41807 | 0.41807 |
-| 0.16387 | 0.41807 |
+| 1 | -8.32667E-17 |
+| -8.32667E-17 | 1 |
+| 0.11747 | -4.89901E-17 |
+| 0.35738 | -1.58335E-17 |
+| 0.64262 | -1.58335E-17 |
+| 0.88253 | -4.89901E-17 |
+| 0.88253 | 0.11747 |
+| 0.64262 | 0.35738 |
+| 0.35738 | 0.64262 |
+| 0.11747 | 0.88253 |
+| -4.89901E-17 | 0.88253 |
+| -1.58335E-17 | 0.64262 |
+| -1.58335E-17 | 0.35738 |
+| -4.89901E-17 | 0.11747 |
+| 0.15599 | 0.15599 |
+| 0.68802 | 0.15599 |
+| 0.15599 | 0.68802 |
+| 0.41807 | 0.16387 |
+| 0.41807 | 0.41807 |
+| 0.16387 | 0.41807 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_1.md
index 60a632d7..7259da1b 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_1.md
@@ -21,19 +21,19 @@ end program main
degree:
-| x | y |
-| --- | --- |
+| x | y |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
coeff:
-| L1 | L2 | L3 |
-| --- | --- | --- |
-| 1 | -0 | -0 |
-| -1 | 1 | -0 |
-| -1 | 0 | 1 |
+| L1 | L2 | L3 |
+| -- | -- | -- |
+| 1 | -0 | -0 |
+| -1 | 1 | -0 |
+| -1 | 0 | 1 |
This means:
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_2.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_2.md
index 7102ade6..e89b9a58 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_2.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_2.md
@@ -21,8 +21,8 @@ end program main
degree:
-| | |
-| --- | --- |
+| | |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -32,11 +32,11 @@ degree:
coeff:
-| | | | | | |
-| --- | --- | --- | --- | --- | --- |
-| 1 | -0 | -0 | 0 | -0 | 0 |
-| -3 | -1 | -0 | 4 | -0 | 0 |
-| 2 | 2 | 0 | -4 | -0 | 0 |
-| -3 | 0 | -1 | 0 | -0 | 4 |
-| 4 | 0 | 0 | -4 | 4 | -4 |
-| 2 | 0 | 2 | 0 | 0 | -4 |
+| | | | | | |
+| -- | -- | -- | -- | -- | -- |
+| 1 | -0 | -0 | 0 | -0 | 0 |
+| -3 | -1 | -0 | 4 | -0 | 0 |
+| 2 | 2 | 0 | -4 | -0 | 0 |
+| -3 | 0 | -1 | 0 | -0 | 4 |
+| 4 | 0 | 0 | -4 | 4 | -4 |
+| 2 | 0 | 2 | 0 | 0 | -4 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_3.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_3.md
index 37246b79..3bdc9a2e 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_3.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_3.md
@@ -25,28 +25,28 @@ end program main
degree:
-| x | y |
-| --- | --- |
+| x | y |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
coeff(1):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | -- | -- |
| 1 | -1 | -1 |
coeff(2):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 1 | 0 |
coeff(3):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 0 | 1 |
This means:
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_4.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_4.md
index 6cf433db..7525a86c 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_4.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_4.md
@@ -26,28 +26,28 @@ end program main
degree:
-| x | y |
-| --- | --- |
+| x | y |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
coeff(1):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | -- | -- |
| 1 | -1 | -1 |
coeff(2):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 1 | 0 |
coeff(3):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 0 | 1 |
This means:
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_5.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_5.md
index 832e8765..50202d28 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_5.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeCoeff_Triangle_test_5.md
@@ -28,28 +28,28 @@ end program main
degree:
-| x | y |
-| --- | --- |
+| x | y |
+| - | - |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
coeff(1):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | -- | -- |
| 1 | -1 | -1 |
coeff(2):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 1 | 0 |
coeff(3):
-| | | |
-| --- | --- | --- |
+| | | |
+| - | - | - |
| 0 | 0 | 1 |
This means:
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeDegree_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeDegree_Triangle_test_1.md
index 0a394a23..44fe4ce6 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeDegree_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_LagrangeDegree_Triangle_test_1.md
@@ -26,7 +26,7 @@ end program main
ans (order=1)=
| n1 | n2 |
-|----|----|
+| -- | -- |
| 0 | 0 |
| 1 | 0 |
| 0 | 1 |
@@ -34,7 +34,7 @@ ans (order=1)=
ans (order=2)=
| n1 | n2 |
-|----|----|
+| -- | -- |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
@@ -45,7 +45,7 @@ ans (order=2)=
ans (order=3)=
| n1 | n2 |
-|----|----|
+| -- | -- |
| 0 | 0 |
| 1 | 0 |
| 2 | 0 |
diff --git a/docs/docs-api/TriangleInterpolationUtility/examples/_QuadraturePoint_Triangle_test_1.md b/docs/docs-api/TriangleInterpolationUtility/examples/_QuadraturePoint_Triangle_test_1.md
index b5f2e668..67febae3 100644
--- a/docs/docs-api/TriangleInterpolationUtility/examples/_QuadraturePoint_Triangle_test_1.md
+++ b/docs/docs-api/TriangleInterpolationUtility/examples/_QuadraturePoint_Triangle_test_1.md
@@ -26,10 +26,10 @@ end program main
xij (order=2)=
-| | | | | | |
-| --- | --- | --- | --- | --- | --- |
-| 1.11022E-16 | 5.55112E-17 | 0.5 | 0.25 | 1 | 0.5 |
-| 0 | 0.5 | 0 | 0.5 | 0 | 0.5 |
+| | | | | | |
+| ----------- | ----------- | ------- | ------- | ----------- | ----------- |
+| 1.11022E-16 | 5.55112E-17 | 0.5 | 0.25 | 1 | 0.5 |
+| 0 | 0.5 | 0 | 0.5 | 0 | 0.5 |
| 2.77778E-02 | 5.55556E-02 | 0.11111 | 0.22222 | 2.77778E-02 | 5.55556E-02 |
diff --git a/docs/docs-api/TxtFile/ConvertMarkdownToSource.md b/docs/docs-api/TxtFile/ConvertMarkdownToSource.md
new file mode 100644
index 00000000..c938b016
--- /dev/null
+++ b/docs/docs-api/TxtFile/ConvertMarkdownToSource.md
@@ -0,0 +1,23 @@
+---
+title: ConvertMarkdownToSource
+---
+
+This method reads a markdown file and extracts the Fortran code blocks, converting them into a Fortran source file.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE ConvertMarkdownToSource(obj, outfile, lang)
+ CLASS(TxtFile_), INTENT(INOUT) :: obj
+ TYPE(TxtFile_), INTENT(INOUT) :: outfile
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: lang
+ END SUBROUTINE ConvertMarkdownToSource
+END INTERFACE
+```
+
+## Example 1
+
+import EXAMPLE21 from "./examples/_ConvertMarkdownToSource_test_1.md";
+
+
diff --git a/docs/docs-api/TxtFile/Read.md b/docs/docs-api/TxtFile/Read.md
new file mode 100644
index 00000000..53907083
--- /dev/null
+++ b/docs/docs-api/TxtFile/Read.md
@@ -0,0 +1,97 @@
+---
+title: Read
+---
+
+This method reads data from a file into various Fortran data types, including scalars, vectors, and instances of `IntVector_` and `RealVector_`.
+
+- We can read data from a file in a scalar variable of Integer, Real, String, Boolean, [IntVector](../IntVector/IntVector_.md) or [RealVector](../RealVector/RealVector_.md) type.
+- We can read data in a vector of Integer, Real, String, Boolean, IntVector, RealVector type.
+- We can read data in a matrix of Integer, Real, String.
+
+## Interface 1 (For reading scalar)
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE READ (obj, val, iostat, iomsg, &
+ ignoreComment, ignoreBlank, commentSymbol, separator)
+ CLASS(TxtFile_), INTENT(INOUT) :: obj
+ DataType, INTENT(INOUT) :: val
+ INTEGER(I4B), INTENT(OUT) :: iostat
+ CHARACTER(LEN=*), OPTIONAL, INTENT(OUT) :: iomsg
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreComment
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreBlank
+ CHARACTER(len=1), OPTIONAL, INTENT(IN) :: commentSymbol
+ CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: separator
+ END SUBROUTINE READ
+END INTERFACE
+```
+
+- In above call, DataType can be any of the following:
+ - `INTEGER(Int8|Int16|Int32|Int64)`
+ - `REAL(Real32|Real64)`
+ - `LOGICAL(LGT)`
+ - `STRING`
+ - `INTVECTOR_`
+ - `REALVECTOR_`
+
+## Interface 2 (For reading vector)
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE READ (obj, val, iostat, iomsg, &
+ ignoreComment, ignoreBlank, commentSymbol, separator)
+ CLASS(TxtFile_), INTENT(INOUT) :: obj
+ DataType, ALLOCATABLE, INTENT(INOUT) :: val(:)
+ INTEGER(I4B), OPTIONAL, INTENT(OUT) :: iostat
+ CHARACTER(LEN=*), OPTIONAL, INTENT(OUT) :: iomsg
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreComment
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreBlank
+ CHARACTER(len=1), OPTIONAL, INTENT(IN) :: commentSymbol
+ CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: separator
+ END SUBROUTINE READ
+END INTERFACE
+```
+
+- In above call, DataType can be any of the following:
+ - `INTEGER(Int8|Int16|Int32|Int64)`
+ - `REAL(Real32|Real64)`
+ - `LOGICAL(LGT)`
+ - `STRING`
+ - `INTVECTOR_`
+ - `REALVECTOR_`
+
+## Interface 3 (For reading matrix)
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE txt_Read_mat_Int8(obj, val, iostat, iomsg, &
+ ignoreComment, ignoreBlank, commentSymbol, separator)
+ CLASS(TxtFile_), INTENT(INOUT) :: obj
+ DataType, ALLOCATABLE, INTENT(INOUT) :: val(:, :)
+ INTEGER(I4B), OPTIONAL, INTENT(OUT) :: iostat
+ CHARACTER(LEN=*), OPTIONAL, INTENT(OUT) :: iomsg
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreComment
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreBlank
+ CHARACTER(len=1), OPTIONAL, INTENT(IN) :: commentSymbol
+ CHARACTER(LEN=*), OPTIONAL, INTENT(IN) :: separator
+ END SUBROUTINE txt_Read_mat_Int8
+END INTERFACE
+```
+
+- In above call, DataType can be any of the following:
+ - `INTEGER(Int8|Int16|Int32|Int64)`
+ - `REAL(Real32|Real64)`
+ - `LOGICAL(LGT)`
+ - `STRING`
+
+## Example 1 (Reading scalar values)
+
+import EXAMPLE90 from "./examples/_Read_test_1.md";
+
+
+
+## Example 2 (Reading vector values)
+
+import EXAMPLE91 from "./examples/_Read_test_2.md";
+
+
diff --git a/docs/docs-api/TxtFile/ReadLine.md b/docs/docs-api/TxtFile/ReadLine.md
new file mode 100644
index 00000000..cc376d17
--- /dev/null
+++ b/docs/docs-api/TxtFile/ReadLine.md
@@ -0,0 +1,35 @@
+---
+title: ReadLine
+---
+
+This method reads a single line from a given text file.
+
+## Interface
+
+```fortran
+INTERFACE
+ MODULE SUBROUTINE ReadLine(obj, val, iostat, iomsg, &
+ ignoreComment, ignoreBlank, commentSymbol, separator)
+ CLASS(TxtFile_), INTENT(INOUT) :: obj
+ TYPE(String), INTENT(OUT) :: val
+ INTEGER(I4B), OPTIONAL, INTENT(OUT) :: iostat
+ CHARACTER(*), OPTIONAL, INTENT(OUT) :: iomsg
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreComment
+ LOGICAL(LGT), OPTIONAL, INTENT(IN) :: ignoreBlank
+ CHARACTER(1), OPTIONAL, INTENT(IN) :: commentSymbol
+ CHARACTER(*), OPTIONAL, INTENT(IN) :: separator
+ END SUBROUTINE ReadLine
+END INTERFACE
+```
+
+## Example 1
+
+import EXAMPLE25 from "./examples/_ReadLine_test_1.md";
+
+
+
+## Example 2
+
+import EXAMPLE26 from "./examples/_ReadLine_test_2.md";
+
+
diff --git a/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.F90 b/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.F90
new file mode 100644
index 00000000..2018f5f7
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.F90
@@ -0,0 +1,25 @@
+! This code reads a markdown file and extracts the fortran code
+
+PROGRAM main
+USE TxtFile_Class
+
+IMPLICIT NONE
+
+TYPE(TxtFile_) :: srcfile, mdfile
+CHARACTER(LEN=*), PARAMETER :: mdfilename = "./files/_ConvertMarkdownToSource_testfile.md"
+CHARACTER(LEN=*), PARAMETER :: srcfilename = "./files/_ConvertMarkdownToSource_testfile.F90"
+
+CALL mdfile%Initiate(filename=mdfilename, STATUS="OLD", ACTION="READ")
+CALL mdfile%OPEN()
+
+CALL srcfile%Initiate(filename=srcfilename, status="REPLACE", &
+ ACTION="WRITE")
+
+CALL srcfile%Open()
+
+CALL mdfile%ConvertMarkdownToSource(outfile=srcfile)
+
+CALL mdfile%Deallocate()
+CALL srcfile%Deallocate()
+
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.md b/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.md
new file mode 100644
index 00000000..a668415b
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ConvertMarkdownToSource_test_1.md
@@ -0,0 +1,7 @@
+This code reads a markdown file and extracts the fortran code
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_ConvertMarkdownToSource_test_1.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.F90 b/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.F90
new file mode 100644
index 00000000..6505bcc7
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.F90
@@ -0,0 +1,41 @@
+! This example shows the usage of `GetTotalRecords` methods
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Display_Method
+USE Test_Method
+
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+INTEGER(I4B) :: ii
+CHARACTER(len=*), PARAMETER :: filename = "./files/_GetTotalRecords_test_1.txt", &
+ myname = "GetTotalRecords_test_1"
+
+! Initiate an instance of [[TxtFile_]], and then #TxtFile/Open : Open the [[TxtFile_]] file
+
+CALL obj%Initiate(filename=filename, status='OLD', action='READ')
+CALL obj%OPEN()
+
+! Returns the total number of records in the file.
+! This routine does not ignore the blank record and comments
+
+CALL IS(obj%GetTotalRecords(), 6, myname // "test-1")
+
+! The following code will excludes the comments while counting
+! the number of records.
+! `ignoreComment` and `commentSymbol` should be provided in this case
+! Note that this code will still include the blanklines as the valid record.
+
+CALL IS(obj%GetTotalRecords(ignoreComment=.TRUE., commentSymbol="#"), 5, &
+ myname // "test-2" )
+
+! The following code will ignore any blank character from the record.
+! It will also ignore the comments.
+CALL IS(obj%GetTotalRecords(ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.), 3, "test-3" )
+
+! Cleaning up.
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.md b/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.md
new file mode 100644
index 00000000..ccfe14da
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_GetTotalRecords_test_1.md
@@ -0,0 +1,7 @@
+This example shows the usage of `getTotalRecords` methods
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_GetTotalRecords_test_1.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_ReadLine_test_1.F90 b/docs/docs-api/TxtFile/examples/_ReadLine_test_1.F90
new file mode 100644
index 00000000..f8781902
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ReadLine_test_1.F90
@@ -0,0 +1,45 @@
+! In this example we create an instance of
+! TxtFile_, then we open it and write some data to it.
+! Importing modules and defining variables
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Display_Method
+
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+INTEGER(I4B) :: ii
+
+CHARACTER(len=*), PARAMETER :: filename = "./files/_ReadLine_test_1.txt"
+
+! Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
+CALL obj%Initiate(filename=filename, status='NEW', &
+ action='WRITE')
+CALL obj%OPEN()
+
+! Write a long line to the file
+aline = aline%REPEAT("hello world! ", 3)
+WRITE (obj%GetUnitNo(), "(A)") aline%chars()
+
+! Lets close the file.
+
+CALL obj%DEALLOCATE
+
+! Lets open it again with read access.
+
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Lets read the long line
+
+aline = ""
+CALL obj%ReadLine(aline)
+
+CALL Display(aline, "aline read = ")
+
+CALL obj%DEALLOCATE()
+
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_ReadLine_test_1.md b/docs/docs-api/TxtFile/examples/_ReadLine_test_1.md
new file mode 100644
index 00000000..d2dcc7f7
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ReadLine_test_1.md
@@ -0,0 +1,7 @@
+In this example we create an instance of TxtFile, then we open it and write some data to it.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_ReadLine_test_1.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_ReadLine_test_2.F90 b/docs/docs-api/TxtFile/examples/_ReadLine_test_2.F90
new file mode 100644
index 00000000..60139d85
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ReadLine_test_2.F90
@@ -0,0 +1,37 @@
+! In this example we show how to use `ReadLine` function.
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Display_Method
+
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+INTEGER(I4B) :: ii
+CHARACTER(len=*), PARAMETER :: filename = "./files/_ReadLine_test_2.txt"
+
+! Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
+
+CALL obj%Initiate(filename=filename, status='OLD', action='READ')
+CALL obj%OPEN()
+
+! Read a line/record from the buffer
+CALL obj%ReadLine(aline)
+CALL Display(aline, "line "//tostring(1)//"=")
+
+! Rewind the file
+CALL obj%REWIND()
+
+! Let us read the entire file.
+ii = 0
+DO WHILE (.NOT. obj%IsEOF())
+ CALL obj%ReadLine(aline)
+ ii = ii + 1
+ CALL Display(aline, "line #"//tostring(ii)//": ")
+END DO
+
+! Cleaning up.
+
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_ReadLine_test_2.md b/docs/docs-api/TxtFile/examples/_ReadLine_test_2.md
new file mode 100644
index 00000000..47d329e6
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_ReadLine_test_2.md
@@ -0,0 +1,7 @@
+In this example we show how to use `ReadLine` function.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_ReadLine_test_2.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_1.F90 b/docs/docs-api/TxtFile/examples/_Read_test_1.F90
new file mode 100644
index 00000000..7c1150a7
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_1.F90
@@ -0,0 +1,54 @@
+! This example shows the usage of `Read` methods to read a scalar.
+! We will read integre, real, and boolean value from a file
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Test_Method
+USE Display_Method
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+INTEGER(I4B) :: int_r0, iostat
+REAL(DFP) :: real_r0
+LOGICAL(LGT) :: bool_r0
+CHARACTER(len=*), PARAMETER :: filename = "./files/_Read_test_1.txt"
+
+! Initiate an instance of [[TxtFile_]], and then
+! Open the [[TxtFile_]] file
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Read the value in the integer.
+int_r0 = 0
+CALL obj%READ(val=int_r0, iostat=iostat)
+CALL IS(int_r0, 1, "test read scalar integer")
+
+! Read the value in the real.
+real_r0 = 0
+! CALL obj%REWIND()
+CALL obj%READ(val=real_r0, iostat=iostat)
+CALL IS(INT(real_r0, I4B), 2, "test read scalar real")
+
+! Read the value in the boolean
+bool_r0 = .FALSE.
+! CALL obj%REWIND()
+CALL obj%READ(val=bool_r0, iostat=iostat)
+CALL IS(bool_r0, .TRUE., "test read scalar boolean")
+
+! Read the value in the boolean
+bool_r0 = .TRUE.
+! CALL obj%REWIND()
+CALL obj%READ(val=bool_r0, iostat=iostat)
+CALL IS(bool_r0, .FALSE., "test read scalar boolean")
+
+! Cleaning up.
+
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_1.md b/docs/docs-api/TxtFile/examples/_Read_test_1.md
new file mode 100644
index 00000000..3c84f93a
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_1.md
@@ -0,0 +1,7 @@
+This example shows the usage of `Read` methods to read a scalar.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Read_test_1.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_2.F90 b/docs/docs-api/TxtFile/examples/_Read_test_2.F90
new file mode 100644
index 00000000..18e55c08
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_2.F90
@@ -0,0 +1,74 @@
+! This example shows the usage of `Read`
+! methods to read a vector of integer, real, and booleans.
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Test_Method
+USE Display_Method
+USE BaseType, ONLY: IntVector_, RealVector_
+USE ApproxUtility
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE IntVector_Method
+USE RealVector_Method
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./files/_Read_test_2.txt"
+
+INTEGER(I4B) :: ii
+LOGICAL(LGT) :: isok
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+TYPE(IntVector_) :: intvectorval
+TYPE(RealVector_) :: realvectorval
+INTEGER(I4B), ALLOCATABLE :: intval(:), iostat
+REAL(DFP), ALLOCATABLE :: realval(:)
+TYPE(String), ALLOCATABLE :: stringval(:)
+LOGICAL(LGT), ALLOCATABLE :: boolval(:)
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+! Initiate an instance of [[TxtFile_]], and then
+! Open the [[TxtFile_]] file
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Read the value in the integer.
+CALL obj%READ(val=intval, iostat=iostat)
+isok = ALL(intval .EQ. [1, 2, 3])
+CALL OK(isok, "test read vector of integer")
+
+! Read the value in the real.
+CALL obj%REWIND()
+CALL obj%READ(val=realval, iostat=iostat)
+isok = ALL(realval.approxeq. [1.0_DFP, 2.0_DFP, 3.0_DFP])
+CALL OK(isok, "test read vector of real")
+
+! Read the value in the string.
+CALL obj%REWIND()
+CALL obj%READ(val=stringval, iostat=iostat)
+isok = ALL(stringval .EQ. [String("1"), String("2"), String("3")])
+CALL OK(isok, "test read vector of string")
+
+! Read the value in an instance of [[IntVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=intvectorval, iostat=iostat)
+isok = ALL(Get(intvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read IntVector_")
+
+! Read the value in an instance of [[RealVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=realvectorval, iostat=iostat)
+isok = ALL(Get(realvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read RealVector_")
+
+! Read the value in vector of boolean
+CALL obj%REWIND()
+CALL obj%READ(val=boolval, iostat=iostat)
+isok = ALL(boolval .EQV. [.TRUE., .FALSE., .FALSE.])
+CALL OK(isok, "test read a vector of boolean")
+
+! Cleaning up.
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_2.md b/docs/docs-api/TxtFile/examples/_Read_test_2.md
new file mode 100644
index 00000000..72252783
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_2.md
@@ -0,0 +1,7 @@
+This example shows the usage of `Read` methods to read a vector.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Read_test_2.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_3.F90 b/docs/docs-api/TxtFile/examples/_Read_test_3.F90
new file mode 100644
index 00000000..c92cf10a
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_3.F90
@@ -0,0 +1,87 @@
+! This example shows the usage of `Read`
+! methods to read a vector of integer, real, and booleans.
+! In these examples, the files contains comments and blank lines.
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Test_Method
+USE Display_Method
+USE BaseType, ONLY: IntVector_, RealVector_
+USE ApproxUtility
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE IntVector_Method
+USE RealVector_Method
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./files/_Read_test_3.txt"
+
+INTEGER(I4B) :: ii
+LOGICAL(LGT) :: isok
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+TYPE(IntVector_) :: intvectorval
+TYPE(RealVector_) :: realvectorval
+INTEGER(I4B), ALLOCATABLE :: intval(:), iostat
+REAL(DFP), ALLOCATABLE :: realval(:)
+TYPE(String), ALLOCATABLE :: stringval(:)
+LOGICAL(LGT), ALLOCATABLE :: boolval(:)
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+! Initiate an instance of [[TxtFile_]], and then
+! Open the [[TxtFile_]] file
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Read the value in the integer.
+CALL obj%READ(val=intval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(intval .EQ. [1, 2, 3])
+CALL OK(isok, "test read vector of integer")
+
+! Read the value in the real.
+CALL obj%REWIND()
+CALL obj%READ(val=realval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(realval.approxeq. [1.0_DFP, 2.0_DFP, 3.0_DFP])
+CALL OK(isok, "test read vector of real")
+
+! Read the value in the string.
+CALL obj%REWIND()
+CALL obj%READ(val=stringval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(stringval .EQ. [String("1"), String("2"), String("3")])
+CALL OK(isok, "test read vector of string")
+
+! Read the value in an instance of [[IntVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=intvectorval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(Get(intvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read IntVector_")
+
+! Read the value in an instance of [[RealVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=realvectorval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(Get(realvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read RealVector_")
+
+! Read the value in vector of boolean
+CALL obj%REWIND()
+CALL obj%READ(val=boolval, iostat=iostat, &
+ ignoreComment=.TRUE., commentSymbol="#", &
+ ignoreBlank=.TRUE.)
+isok = ALL(boolval .EQV. [.TRUE., .FALSE., .FALSE.])
+CALL OK(isok, "test read a vector of boolean")
+
+! Cleaning up.
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_3.md b/docs/docs-api/TxtFile/examples/_Read_test_3.md
new file mode 100644
index 00000000..0f499313
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_3.md
@@ -0,0 +1,8 @@
+This example shows the usage of `Read` methods to read a vector from txt file.
+The file contains comments and blank lines.
+
+import CodeBlock from '@theme/CodeBlock';
+
+import CodeSnippet from '!!raw-loader!./_Read_test_3.F90';
+
+{CodeSnippet}
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_4.F90 b/docs/docs-api/TxtFile/examples/_Read_test_4.F90
new file mode 100644
index 00000000..b0eaee0c
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_4.F90
@@ -0,0 +1,71 @@
+! This example shows the usage of `Read`
+! methods to read a vector of integer, real, and booleans.
+! This concept is not valid for getting vectors of string
+! a vector of strings will contain the number of lines
+! in the file.
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Test_Method
+USE Display_Method
+USE BaseType, ONLY: IntVector_, RealVector_
+USE ApproxUtility
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE IntVector_Method
+USE RealVector_Method
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./files/_Read_test_4.txt"
+
+INTEGER(I4B) :: ii
+LOGICAL(LGT) :: isok
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+TYPE(IntVector_) :: intvectorval
+TYPE(RealVector_) :: realvectorval
+INTEGER(I4B), ALLOCATABLE :: intval(:), iostat
+REAL(DFP), ALLOCATABLE :: realval(:)
+LOGICAL(LGT), ALLOCATABLE :: boolval(:)
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+! Initiate an instance of [[TxtFile_]], and then
+! Open the [[TxtFile_]] file
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Read the value in the integer.
+CALL obj%READ(val=intval, iostat=iostat, separator=",")
+
+isok = ALL(intval .EQ. [1, 2, 3])
+CALL OK(isok, "test read vector of integer")
+
+! Read the value in the real.
+CALL obj%REWIND()
+CALL obj%READ(val=realval, iostat=iostat, separator=",")
+isok = ALL(realval.approxeq. [1.0_DFP, 2.0_DFP, 3.0_DFP])
+CALL OK(isok, "test read vector of real")
+
+! Read the value in an instance of [[IntVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=intvectorval, iostat=iostat, separator=",")
+isok = ALL(Get(intvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read IntVector_")
+
+! Read the value in an instance of [[RealVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=realvectorval, iostat=iostat, separator=",")
+isok = ALL(Get(realvectorval, 1_I4B) .EQ. [1, 2, 3])
+CALL OK(isok, "test read RealVector_")
+
+! Read the value in vector of boolean
+CALL obj%REWIND()
+CALL obj%READ(val=boolval, iostat=iostat, separator=",")
+isok = ALL(boolval .EQV. [.TRUE., .FALSE., .FALSE.])
+CALL OK(isok, "test read a vector of boolean")
+
+! Cleaning up.
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_Read_test_5.F90 b/docs/docs-api/TxtFile/examples/_Read_test_5.F90
new file mode 100644
index 00000000..849cdf78
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/_Read_test_5.F90
@@ -0,0 +1,66 @@
+! This example shows the usage of `Read`
+! methods to read a matrix of integer, real, and booleans.
+
+PROGRAM main
+USE TxtFile_Class
+USE String_Class
+USE GlobalData
+USE Test_Method
+USE Display_Method
+USE BaseType, ONLY: IntVector_, RealVector_
+USE ApproxUtility
+USE ExceptionHandler_Class, ONLY: e, EXCEPTION_INFORMATION
+USE IntVector_Method
+USE RealVector_Method
+
+CHARACTER(LEN=*), PARAMETER :: filename = "./files/_Read_test_5.txt"
+
+INTEGER(I4B) :: ii
+LOGICAL(LGT) :: isok
+TYPE(TxtFile_) :: obj
+TYPE(String) :: aline
+INTEGER(I4B), ALLOCATABLE :: intval(:, :), iostat
+REAL(DFP), ALLOCATABLE :: realval(:, :)
+TYPE(IntVector_), ALLOCATABLE :: intvectorval(:)
+TYPE(RealVector_), ALLOCATABLE :: realvectorval(:)
+INTEGER(I4B), PARAMETER :: intAns(2, 2) = RESHAPE([1, 2, 3, 4], [2, 2])
+REAL(DFP), PARAMETER :: realAns(2, 2) = RESHAPE([1.0_DFP, 2.0_DFP, &
+ 3.0_DFP, 4.0_DFP], [2, 2])
+
+CALL e%SetQuietMode(EXCEPTION_INFORMATION, .TRUE.)
+
+! Initiate an instance of [[TxtFile_]], and then
+! Open the [[TxtFile_]] file
+CALL obj%Initiate(filename=filename, status='OLD', &
+ action='READ')
+CALL obj%OPEN()
+
+! Read the value in the integer.
+CALL obj%READ(val=intval, iostat=iostat, separator=",")
+isok = ALL(intval .EQ. intAns)
+CALL OK(isok, "test read matrix of integer")
+! CALL Display(intval, "intval")
+
+! Read the value in the real.
+CALL obj%REWIND()
+CALL obj%READ(val=realval, iostat=iostat, separator=",")
+isok = ALL(realval.approxeq.realAns)
+CALL OK(isok, "test read matrix of real")
+
+! Read the value in an instance of [[IntVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=intvectorval, iostat=iostat, separator=",")
+isok = ALL(Get(intvectorval(1), 1_I4B) .EQ. intAns(1, :))
+isok = isok .and. ALL(Get(intvectorval(2), 2_I4B) .EQ. intAns(2, :))
+CALL OK(isok, "test read IntVector_")
+
+! Read the value in an instance of [[RealVector_]]
+CALL obj%REWIND()
+CALL obj%READ(val=realvectorval, iostat=iostat, separator=",")
+isok = ALL(Get(realvectorval(1), 1.0_DFP) .APPROXEQ. realAns(1, :))
+isok = isok .and. ALL(Get(realvectorval(2), 1.0_DFP) .EQ. realAns(2, :))
+CALL OK(isok, "test read RealVector_")
+
+! Cleaning up.
+CALL obj%DEALLOCATE()
+END PROGRAM main
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_1.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_1.md
deleted file mode 100644
index a03d4f04..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_1.md
+++ /dev/null
@@ -1,57 +0,0 @@
-In this example we create an instance of [[TxtFile_]], then we open it and write some data to it.
-
-Importing modules and defining variables
-
-```fortran
-PROGRAM main
- use easifemBase
- use easifemClasses
- TYPE(TxtFile_) :: obj
- TYPE(String) :: aline
- INTEGER(I4B) :: ii
- character(len=*), parameter :: filename="./example.txt"
-```
-
-Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
-
-```fortran
-CALL obj%Initiate(filename=filename, status='NEW', &
- & action='WRITE')
-CALL obj%Open()
-```
-
-Write a long line to the file
-
-```fortran
-aline = aline%repeat("hello world! ", 1000 )
-WRITE(obj%getUnitNo(), "(A)" ) aline%chars()
-```
-
-Lets close the file.
-
-```fortran
-CALL obj%Deallocate
-```
-
-Lets open it again with read access.
-
-```fortran
-CALL obj%Initiate(filename=filename, status='OLD', &
- & action='READ')
-CALL obj%Open()
-```
-
-Lets read the long line
-
-```fortran
-aline=""
-CALL obj%readLine( aline )
-CALL Display( aline, "aline read = ")
-```
-
-Cleaning up.
-
-```fortran
-CALL obj%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_2.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_2.md
deleted file mode 100644
index eda16455..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_2.md
+++ /dev/null
@@ -1,52 +0,0 @@
-In this example we show how to use `ReadLine` function.
-
-Importing modules and defining variables
-
-```fortran
-PROGRAM main
- use easifemBase
- use easifemClasses
- TYPE(TxtFile_) :: obj
- TYPE(String) :: aline
- INTEGER(I4B) :: ii
- character(len=*), parameter :: filename="./examples/example.txt"
-```
-
-Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
-
-```fortran
-CALL obj%Initiate(filename=filename, status='OLD', &
- & action='READ')
-CALL obj%OPEN()
-```
-
-Read a line/record from the buffer
-
-```fortran
-CALL obj%readLine(aline)
-CALL display(aline, "line "//tostring(1)//"=")
-```
-
-Rewind the file
-
-```fortran
-CALL obj%REWIND()
-```
-
-Let us read the entire file.
-
-```fortran
-ii = 0
-DO WHILE( .not. obj%isEOF() )
- CALL obj%readLine(aline)
- ii = ii + 1
- CALL display(aline, "aline "//tostring(ii)//"=")
-END DO
-```
-
-Cleaning up.
-
-```fortran
-CALL obj%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_4.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_4.md
deleted file mode 100644
index f0984d97..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_4.md
+++ /dev/null
@@ -1,48 +0,0 @@
-This example shows the usage of `getTotalRecords` methods
-
-```fortran
-PROGRAM main
-use easifemBase
-use easifemClasses
-TYPE(TxtFile_) :: obj
-TYPE(String) :: aline
-INTEGER(I4B) :: ii
-character(len=*), parameter :: filename="./examples/example.txt"
-```
-
-Initiate an instance of [[TxtFile_]], and then #TxtFile/Open : Open the [[TxtFile_]] file
-
-```fortran
-CALL obj%Initiate(filename=filename, status='OLD', &
- & action='READ')
-CALL obj%OPEN()
-```
-
-Returns the total number of records in the file.
-
-This routine does not ignore the blank record as well as comments
-
-```fortran
-CALL IS(obj%getTotalRecords(), 8, "test-1")
-```
-
-The following code will excludes the comments while counting the number of records. `ignoreComment` and `commentSymbol` should be provided in this case
-
-Note that this code will still include the blanklines as the valid record.
-
-```fortran
-CALL IS(obj%getTotalRecords(ignoreComment=.TRUE., commentSymbol="#"), 5, "test-2" )
-```
-
-The following code will ignore any blank character from the record.
-
-```fortran
-CALL IS(obj%getTotalRecords(ignoreComment=.TRUE., commentSymbol="#", ignoreBlank=.TRUE.), 4, "test-3" )
-```
-
-Cleaning up.
-
-```fortran
-CALL obj%Deallocate()
-END PROGRAM main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_5.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_5.md
deleted file mode 100644
index d371c797..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_5.md
+++ /dev/null
@@ -1,46 +0,0 @@
-This example shows the usage of `Read` methods to read a scalar.
-
-Importing modules and defining variables
-
-```fortran
-program main
- use easifemBase
- use easifemClasses
- type(txtfile_) :: obj
- type(string) :: aline
- integer(i4b) :: int_r0, iostat
- real(dfp) :: real_r0
- character(len=*), parameter :: filename="./examples/scalarval.txt"
-```
-
-Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
-
-```fortran
-call obj%initiate(filename=filename, status='OLD', &
- & action='READ')
-call obj%open()
-```
-
-Read the value in the integer.
-
-```fortran
-int_r0 = 0
-call obj%read(val=int_r0, iostat=iostat)
-call display( int_r0, "int_r0 = ")
-```
-
-Read the value in the real.
-
-```fortran
-real_r0 = 0
-call obj%rewind()
-call obj%read(val=real_r0, iostat=iostat)
-call display( real_r0, "real_r0 = ")
-```
-
-Cleaning up.
-
-```fortran
-call obj%deallocate()
-end program main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_6.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_6.md
deleted file mode 100644
index 5af2511b..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_6.md
+++ /dev/null
@@ -1,74 +0,0 @@
-This example shows the usage of `Read` methods to read a vector.
-
-Importing modules and defining variables
-
-```fortran
-program main
- use easifemBase
- use easifemClasses
- type(txtfile_) :: obj
- type(string) :: aline
- integer(i4b), allocatable :: intval(:), iostat
- real(dfp), allocatable :: realval(:)
- type(intvector_) :: intvectorval
- type(realvector_) :: realvectorval
- type(string), allocatable :: stringval(:)
- character(len=*), parameter :: filename="./examples/vectorval.txt"
- integer(i4b) :: ii
-```
-
-Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
-
-```fortran
-call obj%initiate(filename=filename, status='OLD', &
- & action='READ')
-call obj%open()
-```
-
-Read the value in the integer.
-
-```fortran
-call obj%read(val=intval, iostat=iostat)
-call display( intval, "intval = ")
-```
-
-Read the value in the real.
-
-```fortran
-call obj%rewind()
-call obj%read(val=realval, iostat=iostat)
-call display( realval, "realval = ")
-```
-
-Read the value in the string.
-
-```fortran
-call obj%rewind()
-call obj%read(val=stringval, iostat=iostat)
-DO ii = 1, size(stringval)
- call display( stringval(ii), "stringval(ii) = ")
-END DO
-```
-
-Read the value in an instance of [[IntVector_]]
-
-```fortran
-call obj%rewind()
-call obj%read(val=intvectorval, iostat=iostat)
-call display(intvectorval, "intvectorval")
-```
-
-Read the value in an instance of [[RealVector_]]
-
-```fortran
-call obj%rewind()
-call obj%read(val=realvectorval, iostat=iostat)
-call display(realvectorval, "realvectorval")
-```
-
-Cleaning up.
-
-```fortran
-call obj%deallocate()
-end program main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_7.md b/docs/docs-api/TxtFile/examples/_TxtFile_test_7.md
deleted file mode 100644
index b3b965cb..00000000
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_7.md
+++ /dev/null
@@ -1,62 +0,0 @@
-This example shows the usage of `Read` methods to read a matrix.
-
-Importing modules and defining variables
-
-```fortran
-program main
- use easifemBase
- use easifemClasses
- type(txtfile_) :: obj
- type(string) :: aline
- integer(i4b), allocatable :: intval(:,:), iostat
- real(dfp), allocatable :: realval(:,:)
- type(intvector_), allocatable :: intvectorval( : )
- type(realvector_), allocatable :: realvectorval( : )
- character(len=*), parameter :: filename="./examples/matrixval.txt"
-```
-
-Initiate an instance of [[TxtFile_]], and then Open the [[TxtFile_]] file
-
-```fortran
-call obj%initiate(filename=filename, status='OLD', &
- & action='READ')
-call obj%open()
-```
-
-Read the value in the integer.
-
-```fortran
-call obj%read(val=intval, iostat=iostat)
-call display( intval, "intval = ")
-```
-
-Read the value in the real.
-
-```fortran
-call obj%rewind()
-call obj%read(val=realval, iostat=iostat)
-call display( realval, "realval = ")
-```
-
-Read the value in a vector of [[IntVector_]].
-
-```fortran
-call obj%rewind()
-call obj%read(val=intvectorval, iostat=iostat)
-call display( intvectorval, "intvectorval = ")
-```
-
-Read the value in a vector of [[RealVector_]].
-
-```fortran
-call obj%rewind()
-call obj%read(val=realvectorval, iostat=iostat)
-call display( realvectorval, "realvectorval = ")
-```
-
-Cleaning up.
-
-```fortran
-call obj%deallocate()
-end program main
-```
diff --git a/docs/docs-api/TxtFile/examples/_TxtFile_test_3.md b/docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.F90
similarity index 73%
rename from docs/docs-api/TxtFile/examples/_TxtFile_test_3.md
rename to docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.F90
index 0c796507..adfcdda0 100644
--- a/docs/docs-api/TxtFile/examples/_TxtFile_test_3.md
+++ b/docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.F90
@@ -1,9 +1,8 @@
-This code reads a markdown file and extracts the fortran code
-```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
+
IMPLICIT NONE
TYPE(TxtFile_) :: srcfile, mdfile
CHARACTER(LEN=*), PARAMETER :: mdfilename = "./examples/TxtFile_test_1.md"
@@ -12,11 +11,9 @@ PROGRAM main
CALL mdfile%Initiate(filename=mdfilename, STATUS="OLD", ACTION="READ")
CALL mdfile%OPEN()
CALL srcfile%Initiate(filename=srcfilename, status="REPLACE", &
- & ACTION="WRITE")
-CALL srcfile%Open()
+ ACTION="WRITE")
+CALL srcfile%OPEN()
CALL mdfile%ConvertMarkdownToSource(outfile=srcfile)
-
-CALL mdfile%Deallocate()
-CALL srcfile%Deallocate()
+CALL mdfile%DEALLOCATE()
+CALL srcfile%DEALLOCATE()
END PROGRAM main
-```
diff --git a/docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.md b/docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.md
new file mode 100644
index 00000000..eb3ad965
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/files/_ConvertMarkdownToSource_testfile.md
@@ -0,0 +1,33 @@
+This file will be read by the problem ./_ConvertMarkdownToSource_test_1.F90 and converted into a fortran source file.
+
+This is a header.
+
+```fortran
+PROGRAM main
+USE easifemBase
+USE easifemClasses
+```
+
+This is a declaration code.
+
+```fortran
+IMPLICIT NONE
+TYPE(TxtFile_) :: srcfile, mdfile
+CHARACTER(LEN=*), PARAMETER :: mdfilename = "./examples/TxtFile_test_1.md"
+CHARACTER(LEN=*), PARAMETER :: srcfilename = "./examples/TxtFile_test_1.f90"
+```
+
+This is a body code.
+
+```fortran
+CALL mdfile%Initiate(filename=mdfilename, STATUS="OLD", ACTION="READ")
+CALL mdfile%OPEN()
+CALL srcfile%Initiate(filename=srcfilename, status="REPLACE", &
+ ACTION="WRITE")
+CALL srcfile%OPEN()
+CALL mdfile%ConvertMarkdownToSource(outfile=srcfile)
+
+CALL mdfile%DEALLOCATE()
+CALL srcfile%DEALLOCATE()
+END PROGRAM main
+```
diff --git a/docs/docs-api/TxtFile/examples/runner.toml b/docs/docs-api/TxtFile/examples/runner.toml
new file mode 100644
index 00000000..e69ce087
--- /dev/null
+++ b/docs/docs-api/TxtFile/examples/runner.toml
@@ -0,0 +1,3 @@
+BuildDir = "/tmp/easifem-tests/txtfile"
+BuildType = "Debug"
+TargetLibs = ["easifemClasses"]
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalEval.md b/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalEval.md
index 0cd87df3..f1b57a18 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalEval.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalEval.md
@@ -64,7 +64,7 @@ INTERFACE
END INTERFACE
```
-- N is order of polynomial to compute.
+- N is order of polynomial to compute.
- lambda is the polynomial parameter.
- x: the point at which the polynomials are to be evaluated.
- ans, the values of the Ultraspherical polynomials at the several points.
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalGaussRadauQuadrature.md b/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalGaussRadauQuadrature.md
index c89eaeaa..86c0c902 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalGaussRadauQuadrature.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/UltrasphericalGaussRadauQuadrature.md
@@ -6,7 +6,7 @@ The Gauss-Radau quadrature points consists one of the end points denoted by $a$.
So $a$ can be $\pm 1$.
-The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Ultraspherical polynomial of order n.
+The remaining $n$ points are internal to $(-1, +1)$, and they are n-zeros of Ultraspherical polynomial of order n.
Here n is the order of Ultraspherical polynomial.
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_GetUltrasphericalRecurrenceCoeff2_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_GetUltrasphericalRecurrenceCoeff2_test_1.md
index aa0600c2..b42d7a34 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_GetUltrasphericalRecurrenceCoeff2_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_GetUltrasphericalRecurrenceCoeff2_test_1.md
@@ -25,13 +25,13 @@ end program main
ans =
-| | | |
-| --- | --- | --- |
-| 1 | 0 | 0 |
-| 1.5 | 0 | 0.5 |
+| | | |
+| ------ | - | ------- |
+| 1 | 0 | 0 |
+| 1.5 | 0 | 0.5 |
| 1.6667 | 0 | 0.66667 |
-| 1.75 | 0 | 0.75 |
-| 1.8 | 0 | 0.8 |
+| 1.75 | 0 | 0.75 |
+| 1.8 | 0 | 0.8 |
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_1.md
index 254b4f3e..baa8f3ee 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_1.md
@@ -23,19 +23,19 @@ program main
```
```fortran title "Structure of D for odd N"
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D=")
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D=")
```
@@ -45,7 +45,7 @@ program main
D =
| | | | | | |
-|---------|----------|---------|---------|----------|----------|
+| ------- | -------- | ------- | ------- | -------- | -------- |
| -7.5 | 10.141 | -4.0362 | 2.2447 | -1.3499 | 0.5 |
| -1.7864 | -0 | 2.5234 | -1.1528 | 0.65355 | -0.23778 |
| 0.48495 | -1.7213 | -0 | 1.753 | -0.78636 | 0.2697 |
@@ -57,19 +57,19 @@ D =
```fortran title "Structure of D for even D"
- !!
- n = 6
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
- !!
- CALL display(MdEncode(D), "D=")
+!!
+n = 6
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
+!!
+CALL display(MdEncode(D), "D=")
```
@@ -79,7 +79,7 @@ D =
D =
| | | | | | | |
-|----------|----------|----------|---------|---------|----------|----------|
+| -------- | -------- | -------- | ------- | ------- | -------- | -------- |
| -10.5 | 14.202 | -5.669 | 3.2 | -2.05 | 1.3174 | -0.5 |
| -2.4429 | -0 | 3.4558 | -1.5986 | 0.96134 | -0.60225 | 0.22661 |
| 0.62526 | -2.2158 | -0 | 2.2667 | -1.0664 | 0.61639 | -0.2261 |
@@ -92,28 +92,28 @@ D =
```fortran
+!!
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ !!
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- error = zeros(30, 2, 1.0_DFP)
+ call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
!!
- DO n = 1, SIZE(error,1)
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
- !!
- f1val = dfunc1(pt)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
- !!
- END DO
+ D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
+ !!
+ f1val = dfunc1(pt)
!!
- CALL display( MdEncode(error), "error=")
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1val-MATMUL(D,fval)) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
@@ -123,7 +123,7 @@ D =
error=
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 1 | 17.772 |
| 2 | 21.766 |
| 5 | 30.677 |
@@ -137,18 +137,18 @@ error=
```fortran title "Define function"
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_2.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_2.md
index af2b09ec..b6dd4fb9 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_2.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalDMatrix_test_2.md
@@ -34,8 +34,8 @@ program main
```
!!! note "function"
- In this example we consider
-
+In this example we consider
+
$$
f(x) = sin(4\pi x)
$$
@@ -43,29 +43,29 @@ $$
!!! note "Structure of D"
```fortran
- !!
- n = 5
- !!
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
- !!
- CALL reallocate(e, int(n/2)+1, int(n/2)+1)
- CALL reallocate(o, int(n/2)+1, int(n/2)+1)
- CALL UltrasphericalDMatEvenOdd(n=n,D=D, e=e, o=o)
- !!
- CALL display(MdEncode(D), "D=")
- CALL display(MdEncode(e), "e=")
- CALL display(MdEncode(o), "o=")
+!!
+n = 5
+!!
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
+!!
+fval = func1(pt)
+!!
+D = UltrasphericalDMatrix(n=n, lambda=lambda, x=pt, quadType=quadType)
+!!
+CALL reallocate(e, int(n/2)+1, int(n/2)+1)
+CALL reallocate(o, int(n/2)+1, int(n/2)+1)
+CALL UltrasphericalDMatEvenOdd(n=n,D=D, e=e, o=o)
+!!
+CALL display(MdEncode(D), "D=")
+CALL display(MdEncode(e), "e=")
+CALL display(MdEncode(o), "o=")
```
!!! example "result"
- D =
+D =
| | | | | | |
|---------|----------|---------|---------|----------|----------|
@@ -97,18 +97,18 @@ $$
!!! note "Define function"
```fortran
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_1.md
index 3dfafb2f..8b381068 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_1.md
@@ -13,8 +13,8 @@ program main
```
```fortran title "Ultraspherical-Gauss"
- x = [-1.0, -0.5, 0.0, 0.5, 1.0]
- n = 5; call callme
+x = [-1.0, -0.5, 0.0, 0.5, 1.0]
+n = 5; call callme
```
@@ -22,7 +22,7 @@ program main
| P0 | P1 | P2 | P3 | P4 | P5 |
-|----|------|--------|---------|----------|--------------|
+| -- | ---- | ------ | ------- | -------- | ------------ |
| 1 | -1 | 1 | -1 | 1 | -1 |
| 1 | -0.5 | -0.125 | 0.4375 | -0.28906 | -8.98438E-02 |
| 1 | 0 | -0.5 | -0 | 0.375 | 0 |
@@ -33,12 +33,12 @@ program main
```fortran
- contains
- subroutine callme
- ans= UltrasphericalEvalAll( n=n, x=x, lambda=lambda )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= UltrasphericalEvalAll( n=n, x=x, lambda=lambda )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_2.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_2.md
index 6f6c98db..edbc95af 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_2.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalEvalAll_test_2.md
@@ -13,8 +13,8 @@ program main
```
```fortran title "Ultraspherical-Gauss"
- x = 0.5_DFP
- n = 5; call callme
+x = 0.5_DFP
+n = 5; call callme
```
@@ -22,19 +22,19 @@ program main
| P0 | P1 | P2 | P3 | P4 | P5 |
-|----|-----|--------|---------|----------|-------------|
+| -- | --- | ------ | ------- | -------- | ----------- |
| 1 | 0.5 | -0.125 | -0.4375 | -0.28906 | 8.98438E-02 |
```fortran
- contains
- subroutine callme
- ans= UltrasphericalEvalAll( n=n, x=x, lambda=lambda )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= UltrasphericalEvalAll( n=n, x=x, lambda=lambda )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussLobattoQuadrature_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussLobattoQuadrature_test_1.md
index e37ce487..c8ab678a 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussLobattoQuadrature_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussLobattoQuadrature_test_1.md
@@ -14,7 +14,7 @@ program main
```
```fortran title "order=0"
- n = 0; call callme
+n = 0; call callme
```
@@ -24,7 +24,7 @@ program main
Ultraspherical Gauss Lobatto points, n+2 = 3
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.33333 |
| -4.48639E-17 | 1.3333 |
| 1 | 0.33333 |
@@ -33,7 +33,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 3
```fortran title "order=1"
- n = 1; call callme
+n = 1; call callme
```
@@ -43,7 +43,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 3
Ultraspherical Gauss Lobatto points, n+2 = 3
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.33333 |
| -4.48639E-17 | 1.3333 |
| 1 | 0.33333 |
@@ -52,7 +52,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 3
```fortran title "order=2"
- n = 2; call callme
+n = 2; call callme
```
@@ -62,7 +62,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 3
Ultraspherical Gauss Lobatto points, n+2 = 4
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.16667 |
| -0.44721 | 0.83333 |
| 0.44721 | 0.83333 |
@@ -72,7 +72,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 4
```fortran title "order=3"
- n = 3; call callme
+n = 3; call callme
```
@@ -82,7 +82,7 @@ Ultraspherical Gauss Lobatto points, n+2 = 4
Ultraspherical Gauss Lobatto points, n+2 = 4
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.1 |
| -0.65465 | 0.54444 |
| -6.41178E-17 | 0.71111 |
@@ -93,17 +93,17 @@ Ultraspherical Gauss Lobatto points, n+2 = 4
```fortran
- contains
- subroutine callme
- call reallocate( pt, n+2, wt, n+2 )
- call UltrasphericalGaussLobattoQuadrature( n=n, &
- & pt=pt, wt=wt, lambda=lambda )
- msg="Ultraspherical Gauss Lobatto points, n+2 = " &
- & // tostring( n+2 )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+ subroutine callme
+ call reallocate( pt, n+2, wt, n+2 )
+ call UltrasphericalGaussLobattoQuadrature( n=n, &
+ & pt=pt, wt=wt, lambda=lambda )
+ msg="Ultraspherical Gauss Lobatto points, n+2 = " &
+ & // tostring( n+2 )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussQuadrature_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussQuadrature_test_1.md
index 1b475e8c..96f6b3d3 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussQuadrature_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussQuadrature_test_1.md
@@ -13,7 +13,7 @@ program main
```
```fortran
- n = 1; call callme
+n = 1; call callme
```
@@ -23,14 +23,14 @@ program main
Ultraspherical Gauss Quadrature n = 1
| pt | wt |
-|----|----|
+| -- | -- |
| 0 | 2 |
```fortran
- n = 2; call callme
+n = 2; call callme
```
@@ -40,7 +40,7 @@ Ultraspherical Gauss Quadrature n = 1
Ultraspherical Gauss Quadrature n = 2
| pt | wt |
-|----------|----|
+| -------- | -- |
| -0.57735 | 1 |
| 0.57735 | 1 |
@@ -48,7 +48,7 @@ Ultraspherical Gauss Quadrature n = 2
```fortran
- n = 3; call callme
+n = 3; call callme
```
@@ -58,7 +58,7 @@ Ultraspherical Gauss Quadrature n = 2
Ultraspherical Gauss Quadrature n = 3
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -0.7746 | 0.55556 |
| -3.38271E-17 | 0.88889 |
| 0.7746 | 0.55556 |
@@ -67,7 +67,7 @@ Ultraspherical Gauss Quadrature n = 3
```fortran
- n = 4; call callme
+n = 4; call callme
```
@@ -77,7 +77,7 @@ Ultraspherical Gauss Quadrature n = 3
Ultraspherical Gauss Quadrature n = 4
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.86114 | 0.34785 |
| -0.33998 | 0.65215 |
| 0.33998 | 0.65215 |
@@ -87,7 +87,7 @@ Ultraspherical Gauss Quadrature n = 4
```fortran
- n = 5; call callme
+n = 5; call callme
```
@@ -97,7 +97,7 @@ Ultraspherical Gauss Quadrature n = 4
Ultraspherical Gauss Quadrature n = 5
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -0.90618 | 0.23693 |
| -0.53847 | 0.47863 |
| -1.56541E-16 | 0.56889 |
@@ -108,16 +108,16 @@ Ultraspherical Gauss Quadrature n = 5
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call UltrasphericalGaussQuadrature( n=n, &
- & lambda=lambda, pt=pt, wt=wt )
- msg = "Ultraspherical Gauss Quadrature n = " // tostring( n )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call UltrasphericalGaussQuadrature( n=n, &
+ & lambda=lambda, pt=pt, wt=wt )
+ msg = "Ultraspherical Gauss Quadrature n = " // tostring( n )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussRadauQuadrature_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussRadauQuadrature_test_1.md
index 20bd3e30..acb8a570 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussRadauQuadrature_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGaussRadauQuadrature_test_1.md
@@ -14,7 +14,7 @@ program main
```
```fortran title "left, order=1"
- n = 1; a=left; call callme
+n = 1; a=left; call callme
```
@@ -24,7 +24,7 @@ program main
Ultraspherical Gauss Radau points, n+1 = 2
| | |
-|---------|-----|
+| ------- | --- |
| -1 | 0.5 |
| 0.33333 | 1.5 |
@@ -32,7 +32,7 @@ Ultraspherical Gauss Radau points, n+1 = 2
```fortran title "left, order=2"
- n = 2; a=left; call callme
+n = 2; a=left; call callme
```
@@ -42,7 +42,7 @@ Ultraspherical Gauss Radau points, n+1 = 2
Ultraspherical Gauss Radau points, n+1 = 3
| | |
-|---------|---------|
+| ------- | ------- |
| -1 | 0.22222 |
| -0.2899 | 1.025 |
| 0.6899 | 0.75281 |
@@ -51,7 +51,7 @@ Ultraspherical Gauss Radau points, n+1 = 3
```fortran title "left, order=3"
- n = 3; a=left; call callme
+n = 3; a=left; call callme
```
@@ -61,7 +61,7 @@ Ultraspherical Gauss Radau points, n+1 = 3
Ultraspherical Gauss Radau points, n+1 = 4
| | |
-|----------|---------|
+| -------- | ------- |
| -1 | 0.125 |
| -0.57532 | 0.65769 |
| 0.18107 | 0.77639 |
@@ -71,7 +71,7 @@ Ultraspherical Gauss Radau points, n+1 = 4
```fortran title "left, order=4"
- n = 4; a=left; call callme
+n = 4; a=left; call callme
```
@@ -81,7 +81,7 @@ Ultraspherical Gauss Radau points, n+1 = 4
Ultraspherical Gauss Radau points, n+1 = 5
| | |
-|----------|---------|
+| -------- | ------- |
| -1 | 8E-02 |
| -0.72048 | 0.44621 |
| -0.16718 | 0.62365 |
@@ -92,7 +92,7 @@ Ultraspherical Gauss Radau points, n+1 = 5
```fortran title "right, order=1"
- n = 4; a=right; call callme
+n = 4; a=right; call callme
```
@@ -102,7 +102,7 @@ Ultraspherical Gauss Radau points, n+1 = 5
Ultraspherical Gauss Radau points, n+1 = 5
| | |
-|----------|---------|
+| -------- | ------- |
| -0.88579 | 0.28743 |
| -0.44631 | 0.56271 |
| 0.16718 | 0.62365 |
@@ -113,17 +113,17 @@ Ultraspherical Gauss Radau points, n+1 = 5
```fortran
- contains
- subroutine callme
- call reallocate( pt, n+1, wt, n+1 )
- call UltrasphericalGaussRadauQuadrature( a=a, n=n, &
- & pt=pt, wt=wt, lambda=lambda )
- msg="Ultraspherical Gauss Radau points, n+1 = " &
- & // tostring( n+1 )
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n+1, wt, n+1 )
+ call UltrasphericalGaussRadauQuadrature( a=a, n=n, &
+ & pt=pt, wt=wt, lambda=lambda )
+ msg="Ultraspherical Gauss Radau points, n+1 = " &
+ & // tostring( n+1 )
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientCoeff_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientCoeff_test_1.md
index a0b5aef2..34202d58 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientCoeff_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientCoeff_test_1.md
@@ -25,44 +25,44 @@ program main
```
```fortran title "Plot settings"
- CALL aplot%Initiate()
- CALL aplot%Set( &
- & device="svg", &
- & filename=fname//"-%n.svg")
- CALL aplot%figure()
- CALL aplot%subplot(1,1,1)
- CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
- CALL aplot%setTicks()
- x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
+CALL aplot%Initiate()
+CALL aplot%Set( &
+ & device="svg", &
+ & filename=fname//"-%n.svg")
+CALL aplot%figure()
+CALL aplot%subplot(1,1,1)
+CALL aplot%setXYLim([-1.0_DFP, 1.0_DFP], [ -15.0_DFP, 15.0_DFP])
+CALL aplot%setTicks()
+x = linspace(-1.0_DFP, 1.0_DFP, 101_I4B)
```
```fortran title "Prepare quadratures"
- n = 20
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
+n = 20
+call reallocate( pt, n+1, wt, n+1, fval, n+1 )
+!!
+call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
```
```fortran title "UltrasphericalTransformation"
- fval = func1(pt)
- !!
- fhat = UltrasphericalTransform(n=n, lambda=lambda, &
- & coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = UltrasphericalGradientCoeff(n=n, lambda=lambda, coeff=fhat)
- !!
+fval = func1(pt)
+!!
+fhat = UltrasphericalTransform(n=n, lambda=lambda, &
+ & coeff=fval, x=pt, w=wt, quadType=quadType)
+!!
+f1hat = UltrasphericalGradientCoeff(n=n, lambda=lambda, coeff=fhat)
+!!
```
```fortran title "UltrasphericalTransformation"
- !! nodal values of derivative of function
- f1val = dfunc1(pt)
- !!
- f1hat2 = UltrasphericalTransform(n=n, lambda=lambda, &
- & coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- call display( MdEncode(f1hat .colconcat. f1hat2), "")
- !!
+!! nodal values of derivative of function
+f1val = dfunc1(pt)
+!!
+f1hat2 = UltrasphericalTransform(n=n, lambda=lambda, &
+ & coeff=f1val, x=pt, w=wt, quadType=quadType)
+!!
+call display( MdEncode(f1hat .colconcat. f1hat2), "")
+!!
```
@@ -70,7 +70,7 @@ program main
| $\tilde{f}^{(1)}_{n}$ | $\tilde{\partial f}_{n}$ |
-|-----------------------|--------------------------|
+| --------------------- | ------------------------ |
| 8.30697E-13 | 8.29555E-13 |
| -3.28493E-14 | 7.40033E-15 |
| 1.1937 | 1.1937 |
@@ -97,47 +97,47 @@ program main
```fortran title "Plotting"
- CALL aplot%plot2D( x=x,y=UltrasphericalInvTransform(n=n, lambda=lambda, &
- & x=x, coeff=f1hat), lineColor="k")
- !!
- CALL aplot%plot2D( x=x,y=UltrasphericalInvTransform(n=n, lambda=lambda, &
- & x=x, coeff=f1hat2), lineColor="b")
- !!
- CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
- CALL aplot%setLabels("x","du(x)","")
- !CALL aplot%show()
- !CALL aplot%deallocate()
+CALL aplot%plot2D( x=x,y=UltrasphericalInvTransform(n=n, lambda=lambda, &
+ & x=x, coeff=f1hat), lineColor="k")
+!!
+CALL aplot%plot2D( x=x,y=UltrasphericalInvTransform(n=n, lambda=lambda, &
+ & x=x, coeff=f1hat2), lineColor="b")
+!!
+CALL aplot%plot2D( x=x,y=dfunc1(x), pointType=PS_DOT, lineWidth=0.0_DFP )
+CALL aplot%setLabels("x","du(x)","")
+!CALL aplot%show()
+!CALL aplot%deallocate()
```
```fortran title "Prepare quadratures"
- error = zeros(30, 2, 1.0_DFP)
+error = zeros(30, 2, 1.0_DFP)
+!!
+DO n = 1, SIZE(error,1)
+ call reallocate( pt, n+1, wt, n+1, fval, n+1 )
!!
- DO n = 1, SIZE(error,1)
- call reallocate( pt, n+1, wt, n+1, fval, n+1 )
- !!
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
- !!
- fval = func1(pt)
- !!
- fhat = UltrasphericalTransform(n=n, lambda=lambda, &
- & coeff=fval, x=pt, w=wt, quadType=quadType)
- !!
- f1hat = UltrasphericalGradientCoeff(n=n, lambda=lambda, coeff=fhat)
- !!
- !! nodal values of derivative of function
- !!
- f1val = dfunc1(pt)
- !!
- f1hat2 = UltrasphericalTransform(n=n, lambda=lambda, &
- & coeff=f1val, x=pt, w=wt, quadType=quadType)
- !!
- error(n,1) = n
- error(n,2) = NORM2( ABS(f1hat-f1hat2) )
- !!
- END DO
+ call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
+ !!
+ fval = func1(pt)
+ !!
+ fhat = UltrasphericalTransform(n=n, lambda=lambda, &
+ & coeff=fval, x=pt, w=wt, quadType=quadType)
+ !!
+ f1hat = UltrasphericalGradientCoeff(n=n, lambda=lambda, coeff=fhat)
!!
- CALL display( MdEncode(error), "error=")
+ !! nodal values of derivative of function
+ !!
+ f1val = dfunc1(pt)
+ !!
+ f1hat2 = UltrasphericalTransform(n=n, lambda=lambda, &
+ & coeff=f1val, x=pt, w=wt, quadType=quadType)
+ !!
+ error(n,1) = n
+ error(n,2) = NORM2( ABS(f1hat-f1hat2) )
+ !!
+END DO
+!!
+CALL display( MdEncode(error), "error=")
```
@@ -145,7 +145,7 @@ program main
| order(n) | MAX(err) |
-|----------|-------------|
+| -------- | ----------- |
| 2 | 12.566 |
| 4 | 16.409 |
| 6 | 22.967 |
@@ -160,18 +160,18 @@ program main
```fortran title "Define function"
- contains
- elemental function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
- !!
- elemental function dfunc1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
- end function dfunc1
+contains
+elemental function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
+!!
+elemental function dfunc1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = 4.0_DFP * pi * COS(4.0_DFP * pi * x)
+end function dfunc1
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_1.md
index 5023d408..ddc8d4a8 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_1.md
@@ -30,7 +30,7 @@ end program main
| dP0 | dP1 | dP2 | dP3 |
-|-----|-----|-----|------|
+| --- | --- | --- | ---- |
| 0 | 1 | -3 | 6 |
| 0 | 1 | 0 | -1.5 |
| 0 | 1 | 3 | 6 |
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_2.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_2.md
index 7e082f2e..c33f9e44 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_2.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalGradientEvalAll_test_2.md
@@ -28,7 +28,7 @@ end program main
| P0 | P1 | P2 | P3 |
-|----|----|----|----|
+| -- | -- | -- | -- |
| 0 | 1 | -3 | 6 |
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiLobattoMatrix_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiLobattoMatrix_test_1.md
index f34ad0e1..9a651496 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiLobattoMatrix_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiLobattoMatrix_test_1.md
@@ -52,7 +52,7 @@ betaCoeff:
0.25714
0.25397
0.25253
- 0.00000
+ 0.00000
```
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiMatrix_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiMatrix_test_1.md
index aea66d97..7a30d9aa 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiMatrix_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiMatrix_test_1.md
@@ -48,7 +48,7 @@ betaCoeff:
0.33333
0.26667
0.25714
- 0.25397
+ 0.25397
```
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiRadauMatrix_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiRadauMatrix_test_1.md
index 2cbd92cc..dbface13 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiRadauMatrix_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalJacobiRadauMatrix_test_1.md
@@ -49,7 +49,7 @@ betaCoeff:
0.26667
0.25714
0.25397
- 0.00000
+ 0.00000
```
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_1.md
index 891673f2..ec8d9b8b 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_1.md
@@ -15,7 +15,7 @@ program main
```
```fortran title "Ultraspherical-Gauss"
- n = 5; quadType=Gauss; call callme
+n = 5; quadType=Gauss; call callme
```
@@ -23,7 +23,7 @@ program main
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -0.90618 | 0.23693 |
| -0.53847 | 0.47863 |
| -1.56541E-16 | 0.56889 |
@@ -34,7 +34,7 @@ program main
```fortran title "Ultraspherical-Radau-Left"
- n = 5; quadType=GaussRadauLeft; call callme
+n = 5; quadType=GaussRadauLeft; call callme
```
@@ -42,7 +42,7 @@ program main
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -1 | 8E-02 |
| -0.72048 | 0.44621 |
| -0.16718 | 0.62365 |
@@ -53,7 +53,7 @@ program main
```fortran title "Ultraspherical-Radau-Right"
- n = 5; quadType=GaussRadauRight; call callme
+n = 5; quadType=GaussRadauRight; call callme
```
@@ -61,7 +61,7 @@ program main
| pt | wt |
-|----------|---------|
+| -------- | ------- |
| -0.88579 | 0.28743 |
| -0.44631 | 0.56271 |
| 0.16718 | 0.62365 |
@@ -72,7 +72,7 @@ program main
```fortran title "Ultraspherical-Lobatto"
- n = 5; quadType=GaussLobatto; call callme
+n = 5; quadType=GaussLobatto; call callme
```
@@ -80,7 +80,7 @@ program main
| pt | wt |
-|--------------|---------|
+| ------------ | ------- |
| -1 | 0.1 |
| -0.65465 | 0.54444 |
| -6.41178E-17 | 0.71111 |
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_2.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_2.md
index 55ef80b6..a2b867b2 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_2.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalQuadrature_test_2.md
@@ -32,77 +32,77 @@ program main
!!! note "Ultraspherical-Gauss"
```fortran
- n = 5; quadType=Gauss; call callme
+n = 5; quadType=Gauss; call callme
```
!!! example "result"
- | pt | wt |
- |--------------|---------|
- | -0.90618 | 0.23693 |
- | -0.53847 | 0.47863 |
- | -1.56541E-16 | 0.56889 |
- | 0.53847 | 0.47863 |
- | 0.90618 | 0.23693 |
+| pt | wt |
+|--------------|---------|
+| -0.90618 | 0.23693 |
+| -0.53847 | 0.47863 |
+| -1.56541E-16 | 0.56889 |
+| 0.53847 | 0.47863 |
+| 0.90618 | 0.23693 |
!!! note "Ultraspherical-Radau-Left"
```fortran
- n = 5; quadType=GaussRadauLeft; call callme
+n = 5; quadType=GaussRadauLeft; call callme
```
!!! example "result"
- | pt | wt |
- |----------|---------|
- | -0.80293 | 0.31964 |
- | -0.39093 | 0.48539 |
- | 0.12405 | 0.52093 |
- | 0.60397 | 0.4169 |
- | 0.92038 | 0.20159 |
+| pt | wt |
+|----------|---------|
+| -0.80293 | 0.31964 |
+| -0.39093 | 0.48539 |
+| 0.12405 | 0.52093 |
+| 0.60397 | 0.4169 |
+| 0.92038 | 0.20159 |
!!! note "Ultraspherical-Radau-Right"
```fortran
- n = 5; quadType=GaussRadauRight; call callme
+n = 5; quadType=GaussRadauRight; call callme
```
!!! example "result"
- | pt | wt |
- |----------|---------|
- | -0.92038 | 0.20159 |
- | -0.60397 | 0.4169 |
- | -0.12405 | 0.52093 |
- | 0.39093 | 0.48539 |
- | 0.80293 | 0.31964 |
+| pt | wt |
+|----------|---------|
+| -0.92038 | 0.20159 |
+| -0.60397 | 0.4169 |
+| -0.12405 | 0.52093 |
+| 0.39093 | 0.48539 |
+| 0.80293 | 0.31964 |
!!! note "Ultraspherical-Lobatto"
```fortran
- n = 5; quadType=GaussLobatto; call callme
+n = 5; quadType=GaussLobatto; call callme
```
!!! example "result"
- | pt | wt |
- |-------------|---------|
- | -0.83022 | 0.27683 |
- | -0.46885 | 0.43175 |
- | 3.41582E-16 | 0.48762 |
- | 0.46885 | 0.43175 |
- | 0.83022 | 0.27683 |
+| pt | wt |
+|-------------|---------|
+| -0.83022 | 0.27683 |
+| -0.46885 | 0.43175 |
+| 3.41582E-16 | 0.48762 |
+| 0.46885 | 0.43175 |
+| 0.83022 | 0.27683 |
!!! settings "cleanup"
```fortran
- contains
- subroutine callme
- call reallocate( pt, n, wt, n )
- call UltrasphericalQuadrature( n=n, pt=pt, wt=wt, &
- & quadType=quadType, onlyInside=onlyInside, &
- & lambda=lambda )
- msg = "| pt | wt |"
- call display(msg%chars())
- astr = MdEncode( pt .COLCONCAT. wt )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ call reallocate( pt, n, wt, n )
+ call UltrasphericalQuadrature( n=n, pt=pt, wt=wt, &
+ & quadType=quadType, onlyInside=onlyInside, &
+ & lambda=lambda )
+ msg = "| pt | wt |"
+ call display(msg%chars())
+ astr = MdEncode( pt .COLCONCAT. wt )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_2.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_2.md
index 0113d25f..13dc9762 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_2.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_2.md
@@ -28,7 +28,7 @@ end program main
| $\tilde{u}_{n}$ | $\tilde{u}_{n}$ |
-|-----------------|-----------------|
+| --------------- | --------------- |
| -2.94751E-16 | -2.94751E-16 |
| -0.24244 | -0.24244 |
| -7.45173E-16 | -7.45173E-16 |
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_3.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_3.md
index 78195a1d..f973963f 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_3.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalTransform_test_3.md
@@ -18,36 +18,36 @@ To make quadrature points we call `UltrasphericalQuadrature` routine, and specif
:::
```fortran
- n = 10
- call reallocate( pt, n+1, wt, n+1, u, n+1 )
- call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
- & pt=pt, wt=wt, quadType=quadType )
+n = 10
+call reallocate( pt, n+1, wt, n+1, u, n+1 )
+call UltrasphericalQuadrature( n=n+1, lambda=lambda, &
+ & pt=pt, wt=wt, quadType=quadType )
```
```fortran title "UltrasphericalTransformation"
- f => func1
- !!
- do ii = 1, size(u)
- u(ii) = f(pt(ii))
- end do
- !!
- uhat = UltrasphericalTransform(n=n, lambda=lambda, &
- & coeff=u, x=pt, w=wt, quadType=quadType)
- !!
- fhat = UltrasphericalTransform(n=n, lambda=lambda, &
- & f=f, quadType=quadType)
- !!
- call OK(ALL(SOFTEQ(fhat, uhat, tol)), "n=10")
- !!
+f => func1
+!!
+do ii = 1, size(u)
+ u(ii) = f(pt(ii))
+end do
+!!
+uhat = UltrasphericalTransform(n=n, lambda=lambda, &
+ & coeff=u, x=pt, w=wt, quadType=quadType)
+!!
+fhat = UltrasphericalTransform(n=n, lambda=lambda, &
+ & f=f, quadType=quadType)
+!!
+call OK(ALL(SOFTEQ(fhat, uhat, tol)), "n=10")
+!!
```
```fortran
- contains
- pure function func1(x) result(ans)
- real(dfp), intent(in) :: x
- real(dfp) :: ans
- ans = SIN(4.0_DFP * pi * x)
- end function func1
+contains
+pure function func1(x) result(ans)
+ real(dfp), intent(in) :: x
+ real(dfp) :: ans
+ ans = SIN(4.0_DFP * pi * x)
+end function func1
```
```fortran
diff --git a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalZeros_test_1.md b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalZeros_test_1.md
index f386ac31..4411f908 100644
--- a/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalZeros_test_1.md
+++ b/docs/docs-api/UltrasphericalPolynomialUtility/_UltrasphericalZeros_test_1.md
@@ -13,7 +13,7 @@ program main
```
```fortran
- n = 1; call callme
+n = 1; call callme
```
@@ -21,14 +21,14 @@ program main
| x |
-|---|
+| - |
| 0 |
```fortran
- n = 2; call callme
+n = 2; call callme
```
@@ -38,14 +38,14 @@ program main
Zeros of T(x), n = 2
| | |
-|----------|---------|
+| -------- | ------- |
| -0.57735 | 0.57735 |
```fortran
- n = 3; call callme
+n = 3; call callme
```
@@ -55,22 +55,22 @@ Zeros of T(x), n = 2
Zeros of T(x), n = 3
| | | |
-|---------|-------------|--------|
+| ------- | ----------- | ------ |
| -0.7746 | 3.71231E-16 | 0.7746 |
```fortran
- contains
- subroutine callme
- pt = UltrasphericalZeros( n=n, lambda=lambda )
- msg = "Zeros of T(x), n = " &
- & // tostring( n )
- call display(msg%chars())
- astr = MdEncode( pt )
- call display( astr%chars(), "" )
- end subroutine
+contains
+subroutine callme
+ pt = UltrasphericalZeros( n=n, lambda=lambda )
+ msg = "Zeros of T(x), n = " &
+ & // tostring( n )
+ call display(msg%chars())
+ astr = MdEncode( pt )
+ call display( astr%chars(), "" )
+end subroutine
```
```fortran
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoMonomialExpansionAll.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoMonomialExpansionAll.md
index 50250cec..43fac4f7 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoMonomialExpansionAll.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoMonomialExpansionAll.md
@@ -22,16 +22,16 @@ END INTERFACE
- n : is the order of the polynomial
- ans(:,i) contains the coefficient of monomials for polynomial order=i-1
- for example, n=5, we have the following structure of ans.
-
- | P0 | P1 | P2 | P3 | P4 | P5 |
- |----|----|------|------|-------|-------|
- | 1 | 0 | -0.5 | -0 | 0.375 | 0 |
- | 0 | 1 | 0 | -1.5 | -0 | 1.875 |
- | 0 | 0 | 1.5 | 0 | -3.75 | -0 |
- | 0 | 0 | 0 | 2.5 | 0 | -8.75 |
- | 0 | 0 | 0 | 0 | 4.375 | 0 |
- | 0 | 0 | 0 | 0 | 0 | 7.875 |
+for example, n=5, we have the following structure of ans.
+
+| P0 | P1 | P2 | P3 | P4 | P5 |
+| -- | -- | ---- | ---- | ----- | ----- |
+| 1 | 0 | -0.5 | -0 | 0.375 | 0 |
+| 0 | 1 | 0 | -1.5 | -0 | 1.875 |
+| 0 | 0 | 1.5 | 0 | -3.75 | -0 |
+| 0 | 0 | 0 | 2.5 | 0 | -8.75 |
+| 0 | 0 | 0 | 0 | 4.375 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 7.875 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoPolynomialUtility.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoPolynomialUtility.md
index 7767e897..779ce639 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoPolynomialUtility.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/UnscaledLobattoPolynomialUtility.md
@@ -15,7 +15,6 @@ tags:
# UnscaledLobatto
-
## Methods
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_1.md
index 728cc5f8..725c8a6b 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoEvalAll` method.
+This example shows the usage of `UnscaledLobattoEvalAll` method.
This routine evaluates UnscaledLobatto polynomial upto order n, at a given point.
@@ -12,41 +12,39 @@ program main
```
```fortran
- x = -1.0_DFP
- n = 5; call callme
+x = -1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 1 | 0 | 0 | 0 | 0 | 0 |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 1 | 0 | 0 | 0 | 0 | 0 |
```fortran
- x = 1.0_DFP
- n = 5; call callme
+x = 1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 0 | 1 | 0 | 0 | 0 | 0 |
-
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 0 | 1 | 0 | 0 | 0 | 0 |
```fortran
- x = 0.5_DFP
- n = 5; call callme
+x = 0.5_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| ---- | ---- | ------ | ------- | ------------ | ----------- |
| 0.25 | 0.75 | -0.375 | -0.1875 | -2.34375E-02 | 5.85938E-02 |
-
```fortran
- contains
- subroutine callme
- ans= UnscaledLobattoEvalAll( n=n, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= UnscaledLobattoEvalAll( n=n, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_2.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_2.md
index 83585bb7..c92fb37f 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_2.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEvalAll_test_2.md
@@ -12,39 +12,39 @@ program main
```
```fortran
- x = -1.0_DFP
- n = 5; call callme
+x = -1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 1 | 0 | 0 | 0 | 0 | 0 |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 1 | 0 | 0 | 0 | 0 | 0 |
```fortran
- x = 1.0_DFP
- n = 5; call callme
+x = 1.0_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
-| 0 | 1 | 0 | 0 | 0 | 0 |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| -- | -- | -- | -- | -- | -- |
+| 0 | 1 | 0 | 0 | 0 | 0 |
```fortran
- x = 0.5_DFP
- n = 5; call callme
+x = 0.5_DFP
+n = 5; call callme
```
-| l0 | l1 | l2 | l3 | l4 | l5 |
-| --- | --- | --- | --- | --- | --- |
+| l0 | l1 | l2 | l3 | l4 | l5 |
+| ---- | ---- | -------- | -------- | ------------ | ------ |
| 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
```fortran
- contains
- subroutine callme
- ans= LobattoEvalAll( n=n, x=x )
- astr = MdEncode( ans )
- call display( astr%chars(), "" )
- end subroutine callme
+contains
+subroutine callme
+ ans= LobattoEvalAll( n=n, x=x )
+ astr = MdEncode( ans )
+ call display( astr%chars(), "" )
+end subroutine callme
```
```fortran
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_1.md
index 81c13dbf..7877d9bc 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoEval` method.
+This example shows the usage of `UnscaledLobattoEval` method.
This routine evaluates UnscaledLobatto polynomial of order n, at single point
@@ -25,4 +25,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_2.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_2.md
index 3a67e866..39e1e1e4 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_2.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoEval_test_2.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoEval` method.
+This example shows the usage of `UnscaledLobattoEval` method.
This routine evaluates UnscaledLobatto polynomial of order n, at several points.
@@ -20,4 +20,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_1.md
index 526ed9e3..b0b4bc7e 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoGradientEvalAll` method.
+This example shows the usage of `UnscaledLobattoGradientEvalAll` method.
This routine evaluates the first derivative of UnscaledLobatto polynomial upto order n, for many points
@@ -21,7 +21,7 @@ end program main
```
| | | | | | |
-|------|-----|----|------|----|-------|
+| ---- | --- | -- | ---- | -- | ----- |
| -0.5 | 0.5 | -1 | 1 | -1 | 1 |
| -0.5 | 0.5 | 0 | -0.5 | -0 | 0.375 |
| -0.5 | 0.5 | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_2.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_2.md
index bd95c0c8..eb4b4e3a 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_2.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEvalAll_test_2.md
@@ -18,5 +18,5 @@ end program main
```
| | | | | | |
-|------|-----|---|---|---|---|
+| ---- | --- | - | - | - | - |
| -0.5 | 0.5 | 1 | 1 | 1 | 1 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_1.md
index 4f823fbc..fb77f5fe 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoGradientEval` method.
+This example shows the usage of `UnscaledLobattoGradientEval` method.
This routine evaluates gradient of UnscaledLobatto polynomial of order n, at single point
@@ -25,4 +25,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_2.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_2.md
index 4ea1237d..ed75b250 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_2.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoGradientEval_test_2.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoGradientEval` method.
+This example shows the usage of `UnscaledLobattoGradientEval` method.
This routine evaluates gradient of UnscaledLobatto polynomial of order n, at several points.
@@ -20,4 +20,3 @@ program main
end subroutine callme
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoKernelEvalAll_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoKernelEvalAll_test_1.md
index 36a18acb..925d8a91 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoKernelEvalAll_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoKernelEvalAll_test_1.md
@@ -13,8 +13,8 @@ program main
end program main
```
- | | | | | | |
- | --- | --- | --- | --- | --- | --- |
- | 1 | 0 | 0 | 0 | 0 | 0 |
- | 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
- | 0 | 1 | 0 | 0 | 0 | 0 |
+| | | | | | |
+| ---- | ---- | -------- | -------- | ------------ | ------ |
+| 1 | 0 | 0 | 0 | 0 | 0 |
+| 0.25 | 0.75 | -0.45928 | -0.29646 | -4.38475E-02 | 0.1243 |
+| 0 | 1 | 0 | 0 | 0 | 0 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMassMatrix_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMassMatrix_test_1.md
index caf7a241..6b9bfc72 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMassMatrix_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMassMatrix_test_1.md
@@ -1,4 +1,4 @@
-This example shows the usage of `UnscaledLobattoMassMatrix` method.
+This example shows the usage of `UnscaledLobattoMassMatrix` method.
This routine evaluates mass matrix for lobatto polynomials.
@@ -12,54 +12,54 @@ program main
```
```fortran
- n = 0
- call callme
+n = 0
+call callme
```
| |
-|---------|
+| ------- |
| 0.66667 |
```fortran
- n = 1
- call callme
+n = 1
+call callme
```
| | |
-|---------|---------|
+| ------- | ------- |
| 0.66667 | 0.33333 |
| 0.33333 | 0.66667 |
```fortran
- n = 2
- call callme
+n = 2
+call callme
```
| | | |
-|----------|----------|----------|
+| -------- | -------- | -------- |
| 0.66667 | 0.33333 | -0.33333 |
| 0.33333 | 0.66667 | -0.33333 |
| -0.33333 | -0.33333 | 0.26667 |
```fortran
- n = 3
- call callme
+n = 3
+call callme
```
| | | | |
-|-------------|--------------|----------|--------------|
+| ----------- | ------------ | -------- | ------------ |
| 0.66667 | 0.33333 | -0.33333 | 6.66667E-02 |
| 0.33333 | 0.66667 | -0.33333 | -6.66667E-02 |
| -0.33333 | -0.33333 | 0.26667 | 0 |
| 6.66667E-02 | -6.66667E-02 | 0 | 3.80952E-02 |
```fortran
- n = 4
- call callme
+n = 4
+call callme
```
| | | | | |
-|-------------|--------------|--------------|--------------|--------------|
+| ----------- | ------------ | ------------ | ------------ | ------------ |
| 0.66667 | 0.33333 | -0.33333 | 6.66667E-02 | 0 |
| 0.33333 | 0.66667 | -0.33333 | -6.66667E-02 | 0 |
| -0.33333 | -0.33333 | 0.26667 | 0 | -1.90476E-02 |
@@ -67,17 +67,16 @@ program main
| 0 | 0 | -1.90476E-02 | 0 | 1.26984E-02 |
```fortran
- contains
- subroutine callme
- ans= UnscaledLobattoMassMatrix( n=n )
- astr = MdEncode(ans)
- CALL Display( "UnscaledLobatto mass matrix = " )
- CALL Display(astr, "" )
- call blanklines(nol=2)
- end subroutine callme
+contains
+subroutine callme
+ ans= UnscaledLobattoMassMatrix( n=n )
+ astr = MdEncode(ans)
+ CALL Display( "UnscaledLobatto mass matrix = " )
+ CALL Display(astr, "" )
+ call blanklines(nol=2)
+end subroutine callme
```
```fortran
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansionAll_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansionAll_test_1.md
index 4481659c..54c13f97 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansionAll_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansionAll_test_1.md
@@ -19,11 +19,11 @@ program main
end program main
```
-| P0 | P1 | P2 | P3 | P4 | P5 |
-|------|-----|----------|----------|---------|---------|
-| 0.5 | 0.5 | -0.5 | -0 | 0.125 | 0 |
-| -0.5 | 0.5 | 0 | -0.5 | -0 | 0.375 |
-| 0 | 0 | 0.5 | 0 | -0.75 | -0 |
-| 0 | 0 | 0 | 0.5 | 0 | -1.25 |
-| 0 | 0 | 0 | 0 | 0.625 | 0 |
-| 0 | 0 | 0 | 0 | 0 | 0.875 |
+| P0 | P1 | P2 | P3 | P4 | P5 |
+| ---- | --- | ---- | ---- | ----- | ----- |
+| 0.5 | 0.5 | -0.5 | -0 | 0.125 | 0 |
+| -0.5 | 0.5 | 0 | -0.5 | -0 | 0.375 |
+| 0 | 0 | 0.5 | 0 | -0.75 | -0 |
+| 0 | 0 | 0 | 0.5 | 0 | -1.25 |
+| 0 | 0 | 0 | 0 | 0.625 | 0 |
+| 0 | 0 | 0 | 0 | 0 | 0.875 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansion_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansion_test_1.md
index 348178c4..aa078372 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansion_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoMonomialExpansion_test_1.md
@@ -12,5 +12,5 @@ end program main
```
| x0 | x1 | x2 | x3 | x4 | x5 |
-|----|--------|----|---------|----|--------|
+| -- | ------ | -- | ------- | -- | ------ |
| 0 | 0.7955 | -0 | -2.6517 | 0 | 1.8562 |
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoStiffnessMatrix_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoStiffnessMatrix_test_1.md
index 458c41fe..cb0e8d29 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoStiffnessMatrix_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoStiffnessMatrix_test_1.md
@@ -12,33 +12,31 @@ program main
```
```fortran
- n = 0
- call callme
+n = 0
+call callme
```
| |
-|-----|
+| --- |
| 0.5 |
-
```fortran
- n = 1
- call callme
+n = 1
+call callme
```
| | |
-|------|------|
+| ---- | ---- |
| 0.5 | -0.5 |
| -0.5 | 0.5 |
-
```fortran
- n = 4
- call callme
+n = 4
+call callme
```
| | | | | |
-|------|------|---------|-----|---------|
+| ---- | ---- | ------- | --- | ------- |
| 0.5 | -0.5 | 0 | 0 | 0 |
| -0.5 | 0.5 | 0 | 0 | 0 |
| 0 | 0 | 0.66667 | 0 | 0 |
@@ -46,17 +44,16 @@ program main
| 0 | 0 | 0 | 0 | 0.28571 |
```fortran
- contains
- subroutine callme
- ans= UnscaledLobattoStiffnessMatrix( n=n )
- astr = MdEncode(ans)
- CALL Display( "UnscaledLobatto mass matrix = " )
- CALL Display(astr, "" )
- call blanklines(nol=2)
- end subroutine callme
+contains
+subroutine callme
+ ans= UnscaledLobattoStiffnessMatrix( n=n )
+ astr = MdEncode(ans)
+ CALL Display( "UnscaledLobatto mass matrix = " )
+ CALL Display(astr, "" )
+ call blanklines(nol=2)
+end subroutine callme
```
```fortran
end program main
```
-
diff --git a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoZeros_test_1.md b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoZeros_test_1.md
index f3c1b635..d00eed9d 100644
--- a/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoZeros_test_1.md
+++ b/docs/docs-api/UnscaledLobattoPolynomialUtility/_UnscaledLobattoZeros_test_1.md
@@ -12,47 +12,47 @@ program main
```
```fortran
- n = 2; call callme
+n = 2; call callme
```
| | |
-|----|---|
+| -- | - |
| -1 | 1 |
```fortran
- n = 3; call callme
+n = 3; call callme
```
| | | |
-|----|---|---|
+| -- | - | - |
| -1 | 0 | 1 |
```fortran
- n = 4; call callme
+n = 4; call callme
```
| | | | |
-|----|----------|---------|---|
+| -- | -------- | ------- | - |
| -1 | -0.44721 | 0.44721 | 1 |
```fortran
- n = 5; call callme
+n = 5; call callme
```
| | | | | |
-|----|----------|-------------|---------|---|
+| -- | -------- | ----------- | ------- | - |
| -1 | -0.65465 | 4.29344E-17 | 0.65465 | 1 |
```fortran
- contains
- subroutine callme
- pt = UnscaledLobattoZeros( n=n )
- msg = "Zeros of J(x), n = " &
- & // tostring( n )
- call display(msg%chars())
- astr = MdEncode( pt )
- call display( astr%chars(), "" )
- end subroutine
+contains
+subroutine callme
+ pt = UnscaledLobattoZeros( n=n )
+ msg = "Zeros of J(x), n = " &
+ & // tostring( n )
+ call display(msg%chars())
+ astr = MdEncode( pt )
+ call display( astr%chars(), "" )
+end subroutine
```
```fortran
diff --git a/docs/docs-api/VTKFile/VTKFile_.md b/docs/docs-api/VTKFile/VTKFile_.md
index 84ced7ab..8a2c69be 100644
--- a/docs/docs-api/VTKFile/VTKFile_.md
+++ b/docs/docs-api/VTKFile/VTKFile_.md
@@ -1,6 +1,6 @@
# Structure
-`VTKFile_` class is a child of [[XMLFile_]]. It is used for visualizing the results using `vtk` library or `paraview`. You can find more details on the [Website](https://kitware.github.io/vtk-examples/site/VTKFileFormats)
+`VTKFile_` class is a child of [[XMLFile_]]. It is used for visualizing the results using `vtk` library or `paraview`. You can find more details on the [Website](https://kitware.github.io/vtk-examples/site/VTKFileFormats)
The major motivation for XML based VTKFile was to facilitate data streaming and parallel I/O. Some features of the format include support for compression, portable binary encoding, random access, big endian and little endian byte order, multiple file representation of piece data, and new file extensions for different VTK dataset types. XML provides many features as well, especially the ability to extend a file format with application specific tags.
@@ -228,7 +228,7 @@ MODULE FUNCTION EncodeVTKDataArray( x, y, z, fmt ) RESULT( Ans )
END FUNCTION EncodeVTKDataArray
```
-- `x,y,z` can be Rank-1, Rank-2, Rank-3 of type `Int8`, `Int16`, `Int32`, `Int64`, `Real32`, and `Real64`
+- `x,y,z` can be Rank-1, Rank-2, Rank-3 of type `Int8`, `Int16`, `Int32`, `Int64`, `Real32`, and `Real64`
- `ans` is the encoded string
- The encoding of Rank-1 is "x(1) y(1) z(1) ... x(N) y(N) z(N)"
- The encoding of Rank-2 is in column major "x(1,jj) y(1, jj) z(1,jj) ... x(N,jj) y(N,jj) z(N,jj)".
@@ -441,11 +441,11 @@ END SUBROUTINE WriteVerts
**Cells** — The Cells element defines cells explicitly by specifying point connectivity and cell types. It contains three DataArray elements. The first array specifies the point `connectivity`. All the cells’ point lists are concatenated together. The second array specifies the `offset` into the connectivity array for the end of each cell. The third array specifies the `type` of each cell.
```xml
-
-
-
-
-
+
+
+
+
+
```
### WriteCells
@@ -466,11 +466,11 @@ END INTERFACE
Every dataset describes the data associated with its points and cells with PointData and CellData XML elements as follows:
```xml
-
-
-
-
-
+
+
+
+
+
```
We specify `PointData` or `CellData` by using the [[#WriteDataArrayLocationTag]]. We can write DataArray element by using [[#WriteDataArrayTag]]. The content inside the DataArray can also be written by using [[#WriteDataArrayTag]]. One can also use the [[#WriteDataArray]] method to write the content in simple way.
@@ -568,7 +568,7 @@ MODULE SUBROUTINE WriteDataArray( obj, name, x, isTuples, numberOfComponents )
END SUBROUTINE WriteDataArray
```
-- Here `x` can be a rank-1,2,3,4 array of Fortran intrinsic type Int8/Int16/Int32/Int64, Real32/Real64
+- Here `x` can be a rank-1,2,3,4 array of Fortran intrinsic type Int8/Int16/Int32/Int64, Real32/Real64
- `isTuples`
- `numberOfComponents` For rank-1 array, by default the number of components will be 1. For rank>1, the number of components will be the size of first dimension, that is, SIZE(x,1).
diff --git a/docs/docs-api/VTKFile/VTKFile_test_1.md b/docs/docs-api/VTKFile/VTKFile_test_1.md
index bcafca1a..1bddafb1 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_1.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_1.md
@@ -28,18 +28,18 @@ program main
```
```fortran
- call display(encodeVTKDataArray(i8, "ASCII"))
- call display(encodeVTKDataArray(i16, "ASCII"))
- call display(encodeVTKDataArray(i32, "ASCII"))
- call display(encodeVTKDataArray(i8, "BINARY"))
- call display(encodeVTKDataArray(i16, "BINARY"))
- call display(encodeVTKDataArray(i32, "BINARY"))
- call display(encodeVTKDataArray(r32, "ASCII"))
- call display(encodeVTKDataArray(r64, "ASCII"))
- call display(encodeVTKDataArray(r32, "BINARY"))
- call display(encodeVTKDataArray(r64, "BINARY"))
+call display(encodeVTKDataArray(i8, "ASCII"))
+call display(encodeVTKDataArray(i16, "ASCII"))
+call display(encodeVTKDataArray(i32, "ASCII"))
+call display(encodeVTKDataArray(i8, "BINARY"))
+call display(encodeVTKDataArray(i16, "BINARY"))
+call display(encodeVTKDataArray(i32, "BINARY"))
+call display(encodeVTKDataArray(r32, "ASCII"))
+call display(encodeVTKDataArray(r64, "ASCII"))
+call display(encodeVTKDataArray(r32, "BINARY"))
+call display(encodeVTKDataArray(r64, "BINARY"))
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKFile/VTKFile_test_14.md b/docs/docs-api/VTKFile/VTKFile_test_14.md
index 5b9f9857..5c641247 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_14.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_14.md
@@ -29,28 +29,28 @@ PROGRAM main
```
```fortran
- CALL Display( "Testing ExportToVTK" )
- CALL domainFile%initiate( filename="./mesh.h5", mode="READ" )
- CALL domainFile%open()
+CALL Display( "Testing ExportToVTK" )
+CALL domainFile%initiate( filename="./mesh.h5", mode="READ" )
+CALL domainFile%open()
```
!!! note "Initiate Mesh"
```fortran
- CALL obj%Initiate(hdf5=domainFile, group="/surfaceEntities_1" )
+CALL obj%Initiate(hdf5=domainFile, group="/surfaceEntities_1" )
```
!!! note ""
- Get nodal coordinates of the mesh.
+Get nodal coordinates of the mesh.
```fortran
- CALL obj%getNodeCoord(nodeCoord=nodeCoord, hdf5=domainFile, &
- & group="/nodeCoord")
+CALL obj%getNodeCoord(nodeCoord=nodeCoord, hdf5=domainFile, &
+ & group="/nodeCoord")
```
!!! note ""
- Export mesh to [[VTKFile_]] format. This will write the information of
- mesh inside the `surfaceEntities_1.vtu` file.
+Export mesh to [[VTKFile_]] format. This will write the information of
+mesh inside the `surfaceEntities_1.vtu` file.
The file will have the following properties
@@ -61,9 +61,9 @@ The file will have the following properties
Note that we have set `CloseTag` to `.false.` since we want to write more information.
```fortran
- CALL obj%ExportToVTK(vtkFile=vtkFile, nodeCoord=nodeCoord, &
- & filename="./surfaceEntities_1.vtu", OpenTag=.TRUE., &
- & Content=.TRUE., CloseTag=.FALSE.)
+CALL obj%ExportToVTK(vtkFile=vtkFile, nodeCoord=nodeCoord, &
+ & filename="./surfaceEntities_1.vtu", OpenTag=.TRUE., &
+ & Content=.TRUE., CloseTag=.FALSE.)
```
!!! note "Write node data"
@@ -71,64 +71,63 @@ Note that we have set `CloseTag` to `.false.` since we want to write more inform
Because it is nodal data, we mention location as `node`. Also we want to open the PointData tag, since we have initiated writing the data.
```fortran
- CALL vtkFile%WriteDataArray(location=String('node'), &
- & action=String('open'))
+CALL vtkFile%WriteDataArray(location=String('node'), &
+ & action=String('open'))
```
Let us prepare the noda data for pressure.
```fortran
- CALL reallocate(pressure, obj%getTotalNodes())
- CALL random_NUMBER(pressure); pressure = pressure * 10
+CALL reallocate(pressure, obj%getTotalNodes())
+CALL random_NUMBER(pressure); pressure = pressure * 10
```
Now that the data is ready, let us flush it in the [[VTKFile_]].
```fortran
- CALL vtkFile%WriteDataArray(name=String("node_data"), &
- & x=pressure, numberOfComponents=1)
+CALL vtkFile%WriteDataArray(name=String("node_data"), &
+ & x=pressure, numberOfComponents=1)
```
If you want to write more point data, then add it below.
```fortran
- CALL vtkFile%WriteDataArray(name=String("pressure"), &
- & x=pressure, numberOfComponents=1)
+CALL vtkFile%WriteDataArray(name=String("pressure"), &
+ & x=pressure, numberOfComponents=1)
```
Now that we are done with writing point data, let us close the `
` tag.
```fortran
- CALL vtkFile%WriteDataArray(location=String('node'), &
- & action=String('close'))
+CALL vtkFile%WriteDataArray(location=String('node'), &
+ & action=String('close'))
```
!!! note "Write Cell Data"
```fortran
- CALL vtkFile%WriteDataArray(location=String('cell'), &
- & action=String('open'))
+CALL vtkFile%WriteDataArray(location=String('cell'), &
+ & action=String('open'))
```
```fortran
- CALL reallocate(pressure, obj%getTotalElements())
- CALL random_NUMBER(pressure); pressure = pressure * 10
+CALL reallocate(pressure, obj%getTotalElements())
+CALL random_NUMBER(pressure); pressure = pressure * 10
```
```fortran
- CALL vtkFile%WriteDataArray(name=String("cell_data"), &
- & x=pressure, numberOfComponents=1)
+CALL vtkFile%WriteDataArray(name=String("cell_data"), &
+ & x=pressure, numberOfComponents=1)
```
```fortran
- CALL vtkFile%WriteDataArray(location=String('cell'), &
- & action=String('close'))
+CALL vtkFile%WriteDataArray(location=String('cell'), &
+ & action=String('close'))
```
-
```fortran
- CALL vtkFile%WritePiece()
- CALL vtkFile%Close()
+CALL vtkFile%WritePiece()
+CALL vtkFile%Close()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/VTKFile/VTKFile_test_2.md b/docs/docs-api/VTKFile/VTKFile_test_2.md
index ff3793a3..7ec2db79 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_2.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_2.md
@@ -28,29 +28,29 @@ PROGRAM Main
```
```fortran
- i8(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- i16(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- i32(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- i8(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
- i16(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
- i32(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
- r32(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- r32(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
- r64(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- r64(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
+i8(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
+i16(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
+i32(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
+i8(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
+i16(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
+i32(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
+r32(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
+r32(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
+r64(:, 1) = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
+r64(:, 2) = [11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
```
```fortran
- CALL Display(encodeVTKDataArray(i8, "ASCII"), "i8 :: ")
- CALL Display(encodeVTKDataArray(i8, "BINARY"), "i8 :: ")
- CALL Display(encodeVTKDataArray(i16, "ASCII"), "i16 :: ")
- CALL Display(encodeVTKDataArray(i16, "BINARY"), "i16 :: ")
- CALL Display(encodeVTKDataArray(i32, "ASCII"), "i32 :: ")
- CALL Display(encodeVTKDataArray(i32, "BINARY"), "i32 :: ")
- CALL Display(encodeVTKDataArray(r32, "ASCII"), "r32 :: ")
- CALL Display(encodeVTKDataArray(r32, "BINARY"), "r32 :: ")
- CALL Display(encodeVTKDataArray(r64, "ASCII"), "r64 :: ")
- CALL Display(encodeVTKDataArray(r64, "BINARY"), "r64 :: ")
+CALL Display(encodeVTKDataArray(i8, "ASCII"), "i8 :: ")
+CALL Display(encodeVTKDataArray(i8, "BINARY"), "i8 :: ")
+CALL Display(encodeVTKDataArray(i16, "ASCII"), "i16 :: ")
+CALL Display(encodeVTKDataArray(i16, "BINARY"), "i16 :: ")
+CALL Display(encodeVTKDataArray(i32, "ASCII"), "i32 :: ")
+CALL Display(encodeVTKDataArray(i32, "BINARY"), "i32 :: ")
+CALL Display(encodeVTKDataArray(r32, "ASCII"), "r32 :: ")
+CALL Display(encodeVTKDataArray(r32, "BINARY"), "r32 :: ")
+CALL Display(encodeVTKDataArray(r64, "ASCII"), "r64 :: ")
+CALL Display(encodeVTKDataArray(r64, "BINARY"), "r64 :: ")
```
```fortran
diff --git a/docs/docs-api/VTKFile/VTKFile_test_3.md b/docs/docs-api/VTKFile/VTKFile_test_3.md
index b6a2dc26..e7486d64 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_3.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_3.md
@@ -60,11 +60,11 @@ program main
```
```fortran
- CALL Display(encodeVTKDataArray(i8a, i8b, i8c, "ASCII"), "i8 :: ")
- CALL Display(encodeVTKDataArray(i16a, i16b, i16c, "ASCII"), "i16 :: ")
- CALL Display(encodeVTKDataArray(i32a, i32b, i32c, "ASCII"), "i32 :: ")
- CALL Display(encodeVTKDataArray(r32a, r32b, r32c, "ASCII"), "r32 :: ")
- CALL Display(encodeVTKDataArray(r64a, r64b, r64c, "ASCII"), "r64 :: ")
+CALL Display(encodeVTKDataArray(i8a, i8b, i8c, "ASCII"), "i8 :: ")
+CALL Display(encodeVTKDataArray(i16a, i16b, i16c, "ASCII"), "i16 :: ")
+CALL Display(encodeVTKDataArray(i32a, i32b, i32c, "ASCII"), "i32 :: ")
+CALL Display(encodeVTKDataArray(r32a, r32b, r32c, "ASCII"), "r32 :: ")
+CALL Display(encodeVTKDataArray(r64a, r64b, r64c, "ASCII"), "r64 :: ")
```
```fortran
diff --git a/docs/docs-api/VTKFile/VTKFile_test_4.md b/docs/docs-api/VTKFile/VTKFile_test_4.md
index 2e27fcb7..cd3b7e95 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_4.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_4.md
@@ -31,50 +31,50 @@ PROGRAM MAIN
```
!!! note ""
- Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
+Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
```fortran
- CALL aVTKfile%InitiateVTKFile( &
- & filename="./example4.vts", &
- & mode="NEW", &
- & DataFormat=VTK_ASCII, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%InitiateVTKFile( &
+ & filename="./example4.vts", &
+ & mode="NEW", &
+ & DataFormat=VTK_ASCII, &
+ & DataStructureType=VTK_StructuredGrid, &
+ & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
!!! note "Piece 1"
- In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
+In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
```fortran
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
```fortran
- xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
```
!!! note ""
- Now we create meshgrid
+Now we create meshgrid
```fortran
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
```
```fortran
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
```
!!! note ""
- Closing the piece.
+Closing the piece.
```fortran
- CALL aVTKfile%WritePiece()
+CALL aVTKfile%WritePiece()
```
!!! note "cleanup"
- Closing the file, a simple Deallocate is enough.
+Closing the file, a simple Deallocate is enough.
```fortran
CALL aVTKfile%Deallocate()
diff --git a/docs/docs-api/VTKFile/VTKFile_test_5.md b/docs/docs-api/VTKFile/VTKFile_test_5.md
index a4170d50..7cb59bc7 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_5.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_5.md
@@ -32,80 +32,80 @@ PROGRAM MAIN
```
!!! note ""
- Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
+Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
```fortran
- nx1 = 0
- nx2 = 4
- ny1 = 0
- ny2 = 1
- nz1 = 0
- nz2 = 1
- CALL aVTKfile%InitiateVTKFile( &
- & filename=filename, &
- & mode="NEW", &
- & DataFormat=VTK_ASCII, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+nx1 = 0
+nx2 = 4
+ny1 = 0
+ny2 = 1
+nz1 = 0
+nz2 = 1
+CALL aVTKfile%InitiateVTKFile( &
+ & filename=filename, &
+ & mode="NEW", &
+ & DataFormat=VTK_ASCII, &
+ & DataStructureType=VTK_StructuredGrid, &
+ & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
!!! note "Piece 1"
- In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
+In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
```fortran
- nx1 = 0
- nx2 = 2
- ny1 = 0
- ny2 = 1
- nz1 = 0
- nz2 = 1
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+nx1 = 0
+nx2 = 2
+ny1 = 0
+ny2 = 1
+nz1 = 0
+nz2 = 1
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
```fortran
- xv = linspace(0.0_DFP, 10.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+xv = linspace(0.0_DFP, 10.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
```
!!! note ""
- Now we create meshgrid
+Now we create meshgrid
```fortran
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
```
```fortran
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
```
!!! note ""
- Closing the piece.
+Closing the piece.
```fortran
- CALL aVTKfile%WritePiece()
+CALL aVTKfile%WritePiece()
```
!!! note "Piece 2"
```fortran
- nx1 = 2
- nx2 = 4
- ny1 = 0
- ny2 = 1
- nz1 = 0
- nz2 = 1
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- xv = linspace(10.0_DFP, 20.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WritePiece()
+nx1 = 2
+nx2 = 4
+ny1 = 0
+ny2 = 1
+nz1 = 0
+nz2 = 1
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+xv = linspace(10.0_DFP, 20.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WritePiece()
```
!!! note "cleanup"
- Closing the file, a simple Deallocate is enough.
+Closing the file, a simple Deallocate is enough.
```fortran
CALL aVTKfile%Deallocate()
diff --git a/docs/docs-api/VTKFile/VTKFile_test_6.md b/docs/docs-api/VTKFile/VTKFile_test_6.md
index 8133178e..d953f12f 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_6.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_6.md
@@ -31,50 +31,50 @@ PROGRAM MAIN
```
!!! note ""
- Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
+Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
```fortran
- CALL aVTKfile%InitiateVTKFile( &
- & filename="./example6.vts", &
- & mode="NEW", &
- & DataFormat=VTK_ASCII, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%InitiateVTKFile( &
+ & filename="./example6.vts", &
+ & mode="NEW", &
+ & DataFormat=VTK_ASCII, &
+ & DataStructureType=VTK_StructuredGrid, &
+ & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
!!! note "Piece 1"
- In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
+In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
```fortran
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
```fortran
- xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(1.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(1.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
```
!!! note ""
- Now we create meshgrid
+Now we create meshgrid
```fortran
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
```
```fortran
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
```
!!! note ""
- Closing the piece.
+Closing the piece.
```fortran
- CALL aVTKfile%WritePiece()
+CALL aVTKfile%WritePiece()
```
!!! note "cleanup"
- Closing the file, a simple Deallocate is enough.
+Closing the file, a simple Deallocate is enough.
```fortran
CALL aVTKfile%Deallocate()
diff --git a/docs/docs-api/VTKFile/VTKFile_test_7.md b/docs/docs-api/VTKFile/VTKFile_test_7.md
index 505e220a..41dfb3ca 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_7.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_7.md
@@ -31,56 +31,56 @@ PROGRAM MAIN
```
!!! note ""
- Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
+Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
```fortran
- CALL obj%InitiateVTKFile( &
- & filename="./example7.vts", &
- & mode="NEW", &
- & DataFormat=VTK_ASCII, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL obj%InitiateVTKFile( &
+ & filename="./example7.vts", &
+ & mode="NEW", &
+ & DataFormat=VTK_ASCII, &
+ & DataStructureType=VTK_StructuredGrid, &
+ & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
!!! note "Piece 1"
- In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
+In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
```fortran
- CALL obj%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- !!
- xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(1.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
- !!
- CALL obj%WritePoints(x=x, y=y, z=z)
- !!
+CALL obj%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+!!
+xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(1.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+!!
+CALL obj%WritePoints(x=x, y=y, z=z)
+!!
```
!!! note "PointData"
```fortran
- CALL obj%WriteDataArray( &
- & location=String("node"), &
- & action=String("open") )
- func = x**2 + y**2
- CALL obj%WriteDataArray( &
- & name=String("func"), &
- & x=func, &
- & numberOfComponents=1 )
- CALL obj%WriteDataArray( &
- & location=String("node"), &
- & action=String("close") )
+CALL obj%WriteDataArray( &
+ & location=String("node"), &
+ & action=String("open") )
+func = x**2 + y**2
+CALL obj%WriteDataArray( &
+ & name=String("func"), &
+ & x=func, &
+ & numberOfComponents=1 )
+CALL obj%WriteDataArray( &
+ & location=String("node"), &
+ & action=String("close") )
```
!!! note "Close Piece"
```fortran
- CALL obj%WritePiece()
+CALL obj%WritePiece()
```
!!! note "cleanup"
- Closing the file, a simple Deallocate is enough.
+Closing the file, a simple Deallocate is enough.
```fortran
CALL obj%Deallocate()
diff --git a/docs/docs-api/VTKFile/VTKFile_test_8.md b/docs/docs-api/VTKFile/VTKFile_test_8.md
index 61d5c9cc..8bd868ed 100644
--- a/docs/docs-api/VTKFile/VTKFile_test_8.md
+++ b/docs/docs-api/VTKFile/VTKFile_test_8.md
@@ -32,50 +32,50 @@ PROGRAM MAIN
```
!!! note ""
- Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
+Let us initiate a vtkfile for structured grid. We need to specify the WholeExtent.
```fortran
- CALL aVTKfile%InitiateVTKFile( &
- & filename=filename, &
- & mode="NEW", &
- & DataFormat=VTK_BINARY, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%InitiateVTKFile( &
+ & filename=filename, &
+ & mode="NEW", &
+ & DataFormat=VTK_BINARY, &
+ & DataStructureType=VTK_StructuredGrid, &
+ & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
!!! note "Piece 1"
- In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
+In the following we add a piece (portion of geometry defined by the extent). Note that we can specify as many piece as we want.
```fortran
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
```
```fortran
- xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
- yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
- zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
+xv = linspace(0.0_DFP, 1.0_DFP, (nx2 - nx1) + 1)
+yv = linspace(0.0_DFP, 1.0_DFP, (ny2 - ny1) + 1)
+zv = linspace(0.0_DFP, 1.0_DFP, (nz2 - nz1) + 1)
```
!!! note ""
- Now we create meshgrid
+Now we create meshgrid
```fortran
- CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
+CALL MeshGrid(x=x, y=y, z=z, xgv=xv, ygv=yv, zgv=zv)
```
```fortran
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
```
!!! note ""
- Closing the piece.
+Closing the piece.
```fortran
- CALL aVTKfile%WritePiece()
+CALL aVTKfile%WritePiece()
```
!!! note "cleanup"
- Closing the file, a simple Deallocate is enough.
+Closing the file, a simple Deallocate is enough.
```fortran
CALL aVTKfile%Deallocate()
diff --git a/docs/docs-api/VTKFile/test_VTKFile.md b/docs/docs-api/VTKFile/test_VTKFile.md
index 25b874ed..d686f3f0 100644
--- a/docs/docs-api/VTKFile/test_VTKFile.md
+++ b/docs/docs-api/VTKFile/test_VTKFile.md
@@ -9,38 +9,38 @@ contains
!----------------------------------------------------------------------------
SUBROUTINE test13
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
- & x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
- & z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY APPENDED VTS")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vts", &
- & mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- x(i, j, k) = i * 1.0_DFP
- y(i, j, k) = j * 1.0_DFP
- z(i, j, k) = k * 1.0_DFP
- v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
+& x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
+& z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY APPENDED VTS")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vts", &
+& mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
+& DataStructureType=VTK_StructuredGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+x(i, j, k) = i * 1.0_DFP
+y(i, j, k) = j * 1.0_DFP
+z(i, j, k) = k * 1.0_DFP
+v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -48,37 +48,37 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test12
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
- & x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
- & z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY VTS")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vts", mode="NEW",&
- & DataFormat=VTK_BINARY, DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- x(i, j, k) = i * 1.0_DFP
- y(i, j, k) = j * 1.0_DFP
- z(i, j, k) = k * 1.0_DFP
- v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
+& x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
+& z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY VTS")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vts", mode="NEW",&
+& DataFormat=VTK_BINARY, DataStructureType=VTK_StructuredGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+x(i, j, k) = i * 1.0_DFP
+y(i, j, k) = j * 1.0_DFP
+z(i, j, k) = k * 1.0_DFP
+v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -86,36 +86,36 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test0
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: x(nx1:nx2), y(ny1:ny2), z(nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: ASCII VTR")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vtr", mode="NEW", &
- & DataFormat=VTK_ASCII, DataStructureType=VTK_RectilinearGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: x(nx1:nx2), y(ny1:ny2), z(nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: ASCII VTR")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vtr", mode="NEW", &
+& DataFormat=VTK_ASCII, DataStructureType=VTK_RectilinearGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL RANDOM_NUMBER(x)
- CALL RANDOM_NUMBER(y)
- CALL RANDOM_NUMBER(z)
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- v(i, j, k) = x(i) * y(j) * z(k)
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- ! CALL aVTKfile%WriteDataArray(location=String('node'), &
- ! & action=String('open'))
- ! CALL aVTKfile%WriteDataArray( name=String("presssure"), x=v, &
- ! & numberOfComponents=1 )
- ! CALL aVTKfile%WriteDataArray( location=String('node'), &
- ! & action=String('close') )
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+CALL RANDOM_NUMBER(x)
+CALL RANDOM_NUMBER(y)
+CALL RANDOM_NUMBER(z)
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+v(i, j, k) = x(i) * y(j) * z(k)
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+! CALL aVTKfile%WriteDataArray(location=String('node'), &
+! & action=String('open'))
+! CALL aVTKfile%WriteDataArray( name=String("presssure"), x=v, &
+! & numberOfComponents=1 )
+! CALL aVTKfile%WriteDataArray( location=String('node'), &
+! & action=String('close') )
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -123,32 +123,32 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test10
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY APPENDED VTI")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vti", &
- & mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
- & DataStructureType=VTK_ImageData, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- v(i, j, k) = REAL(i * j * k, DFP)
- END DO
- END DO
- END DO
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY APPENDED VTI")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vti", &
+& mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
+& DataStructureType=VTK_ImageData, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+v(i, j, k) = REAL(i * j * k, DFP)
+END DO
+END DO
+END DO
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -156,31 +156,31 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test9
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY VTI")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vti", &
- & mode="NEW", DataFormat=VTK_BINARY, DataStructureType=VTK_ImageData, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- v(i, j, k) = REAL(i * j * k, DFP)
- END DO
- END DO
- END DO
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY VTI")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vti", &
+& mode="NEW", DataFormat=VTK_BINARY, DataStructureType=VTK_ImageData, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+v(i, j, k) = REAL(i * j * k, DFP)
+END DO
+END DO
+END DO
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -188,31 +188,31 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test8
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: ASCII VTI")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vti", mode="NEW", &
- & DataFormat=VTK_ASCII, DataStructureType=VTK_ImageData, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- v(i, j, k) = REAL(i * j * k, DFP)
- END DO
- END DO
- END DO
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: ASCII VTI")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vti", mode="NEW", &
+& DataFormat=VTK_ASCII, DataStructureType=VTK_ImageData, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+v(i, j, k) = REAL(i * j * k, DFP)
+END DO
+END DO
+END DO
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -220,38 +220,38 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test7
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
- & x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
- & z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY APPENDED VTS")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vts", &
- & mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
- & DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- x(i, j, k) = i * 1.0_DFP
- y(i, j, k) = j * 1.0_DFP
- z(i, j, k) = k * 1.0_DFP
- v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
+& x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
+& z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY APPENDED VTS")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary_appended.vts", &
+& mode="NEW", DataFormat=VTK_BINARY_APPENDED, &
+& DataStructureType=VTK_StructuredGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+x(i, j, k) = i * 1.0_DFP
+y(i, j, k) = j * 1.0_DFP
+z(i, j, k) = k * 1.0_DFP
+v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -259,37 +259,37 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test6
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
- & x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
- & z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: BINARY VTS")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vts", mode="NEW",&
- & DataFormat=VTK_BINARY, DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- x(i, j, k) = i * 1.0_DFP
- y(i, j, k) = j * 1.0_DFP
- z(i, j, k) = k * 1.0_DFP
- v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
+& x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
+& z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: BINARY VTS")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_binary.vts", mode="NEW",&
+& DataFormat=VTK_BINARY, DataStructureType=VTK_StructuredGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+x(i, j, k) = i * 1.0_DFP
+y(i, j, k) = j * 1.0_DFP
+z(i, j, k) = k * 1.0_DFP
+v(i, j, k) = x(i, j, k)**2 + y(i, j, k)**2 + z(i, j, k)**2
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
!----------------------------------------------------------------------------
@@ -297,35 +297,35 @@ END SUBROUTINE
!----------------------------------------------------------------------------
SUBROUTINE test5
- TYPE(VTKFile_) :: aVTKfile
- INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
- REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
- & x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
- & z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
- INTEGER(I4B) :: i, j, k
- CALL Display("TEST :: ASCII VTS")
- CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vts", mode="NEW", &
- & DataFormat=VTK_ASCII, DataStructureType=VTK_StructuredGrid, &
- & WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
- CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
- DO k = nz1, nz2
- DO j = ny1, ny2
- DO i = nx1, nx2
- x(i, j, k) = i * 1.0_DFP
- y(i, j, k) = j * 1.0_DFP
- z(i, j, k) = k * 1.0_DFP
- v(i, j, k) = REAL(i * j * k, DFP)
- END DO
- END DO
- END DO
- CALL aVTKfile%WritePoints(x=x, y=y, z=z)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('open'))
- CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
- & numberOfComponents=1)
- CALL aVTKfile%WriteDataArray(location=String('node'), &
- & action=String('close'))
- CALL aVTKfile%WritePiece()
- CALL aVTKfile%Close()
- CALL aVTKfile%Deallocate()
+TYPE(VTKFile_) :: aVTKfile
+INTEGER( I4B ), PARAMETER :: nx1=0, nx2=9, ny1=0, ny2=5, nz1=0, nz2=5
+REAL(DFP) :: xv(nx1:nx2), yv(ny1:ny2), zv(nz1:nz2), &
+& x(nx1:nx2, ny1:ny2, nz1:nz2), y(nx1:nx2, ny1:ny2, nz1:nz2), &
+& z(nx1:nx2, ny1:ny2, nz1:nz2), v(nx1:nx2, ny1:ny2, nz1:nz2)
+INTEGER(I4B) :: i, j, k
+CALL Display("TEST :: ASCII VTS")
+CALL aVTKfile%InitiateVTKFile(filename="./vtkfile_ascii.vts", mode="NEW", &
+& DataFormat=VTK_ASCII, DataStructureType=VTK_StructuredGrid, &
+& WholeExtent=[nx1, nx2, ny1, ny2, nz1, nz2])
+CALL aVTKfile%WritePiece(extent=[nx1, nx2, ny1, ny2, nz1, nz2])
+DO k = nz1, nz2
+DO j = ny1, ny2
+DO i = nx1, nx2
+x(i, j, k) = i * 1.0_DFP
+y(i, j, k) = j * 1.0_DFP
+z(i, j, k) = k * 1.0_DFP
+v(i, j, k) = REAL(i * j * k, DFP)
+END DO
+END DO
+END DO
+CALL aVTKfile%WritePoints(x=x, y=y, z=z)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('open'))
+CALL aVTKfile%WriteDataArray(name=String("presssure"), x=v, &
+& numberOfComponents=1)
+CALL aVTKfile%WriteDataArray(location=String('node'), &
+& action=String('close'))
+CALL aVTKfile%WritePiece()
+CALL aVTKfile%Close()
+CALL aVTKfile%Deallocate()
END SUBROUTINE
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_1.md b/docs/docs-api/VTKPlot/VTKPlot_test_1.md
index ec43fe4b..621fb239 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_1.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_1.md
@@ -27,16 +27,16 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- x = linspace( 0.0_DFP, 1.0_DFP, 5)
- y = linspace( 0.0_DFP, 1.0_DFP, 5)
- CALL obj%initiate( )
- CALL obj%plot( x, y, "./test_1.vts")
- CALL obj%deallocate()
+x = linspace( 0.0_DFP, 1.0_DFP, 5)
+y = linspace( 0.0_DFP, 1.0_DFP, 5)
+CALL obj%initiate( )
+CALL obj%plot( x, y, "./test_1.vts")
+CALL obj%deallocate()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_2.md b/docs/docs-api/VTKPlot/VTKPlot_test_2.md
index 987ee921..c0d55458 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_2.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_2.md
@@ -41,18 +41,18 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- x = linspace( 0.0_DFP, 1.0_DFP, 5)
- y = linspace( 0.0_DFP, 1.0_DFP, 5)
- CALL obj%initiate( )
- func => f
- CALL obj%plot( x, y, func, "./test_2.vts")
- CALL obj%deallocate()
- func => NULL()
+x = linspace( 0.0_DFP, 1.0_DFP, 5)
+y = linspace( 0.0_DFP, 1.0_DFP, 5)
+CALL obj%initiate( )
+func => f
+CALL obj%plot( x, y, func, "./test_2.vts")
+CALL obj%deallocate()
+func => NULL()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_3.md b/docs/docs-api/VTKPlot/VTKPlot_test_3.md
index cc1829d2..d631f288 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_3.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_3.md
@@ -28,17 +28,17 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- x = linspace( 0.0_DFP, 10.0_DFP, 11)
- y = linspace( 0.0_DFP, 5.0_DFP, 6)
- z = linspace( 0.0_DFP, 5.0_DFP, 6)
- CALL obj%initiate( )
- CALL obj%plot( x, y, z, "./test_3.vts")
- CALL obj%deallocate()
+x = linspace( 0.0_DFP, 10.0_DFP, 11)
+y = linspace( 0.0_DFP, 5.0_DFP, 6)
+z = linspace( 0.0_DFP, 5.0_DFP, 6)
+CALL obj%initiate( )
+CALL obj%plot( x, y, z, "./test_3.vts")
+CALL obj%deallocate()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_4.md b/docs/docs-api/VTKPlot/VTKPlot_test_4.md
index 4ff40778..f899e9fc 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_4.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_4.md
@@ -27,18 +27,18 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- CALL MeshGrid( x=x, y = y, &
- & xgv=linspace( 0.0_DFP, 1.0_DFP, 5), &
- & ygv=linspace( 0.0_DFP, 1.0_DFP, 5) &
- & )
- CALL obj%initiate( )
- CALL obj%plot( x, y, "./test_4.vts")
- CALL obj%deallocate()
+CALL MeshGrid( x=x, y = y, &
+ & xgv=linspace( 0.0_DFP, 1.0_DFP, 5), &
+ & ygv=linspace( 0.0_DFP, 1.0_DFP, 5) &
+ & )
+CALL obj%initiate( )
+CALL obj%plot( x, y, "./test_4.vts")
+CALL obj%deallocate()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_5.md b/docs/docs-api/VTKPlot/VTKPlot_test_5.md
index 7476e1de..c80ccd30 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_5.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_5.md
@@ -41,20 +41,20 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- CALL MeshGrid( x=x, y = y, &
- & xgv=linspace( 0.0_DFP, 1.0_DFP, 5), &
- & ygv=linspace( 0.0_DFP, 1.0_DFP, 5) &
- & )
- CALL obj%initiate( )
- func => f
- CALL obj%plot( x, y, func, "./test_5.vts")
- CALL obj%deallocate()
- func => NULL()
+CALL MeshGrid( x=x, y = y, &
+ & xgv=linspace( 0.0_DFP, 1.0_DFP, 5), &
+ & ygv=linspace( 0.0_DFP, 1.0_DFP, 5) &
+ & )
+CALL obj%initiate( )
+func => f
+CALL obj%plot( x, y, func, "./test_5.vts")
+CALL obj%deallocate()
+func => NULL()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_6.md b/docs/docs-api/VTKPlot/VTKPlot_test_6.md
index 420fca8f..4a4a5cc1 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_6.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_6.md
@@ -27,30 +27,30 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a two dimensional structured grid.
+Plotting a two dimensional structured grid.
```fortran
- CALL MeshGrid( x=x, y = y, z = z, &
- & xgv=linspace( 0.0_DFP, 1.0_DFP, 100), &
- & ygv=linspace( 0.0_DFP, 1.0_DFP, 100), &
- & zgv=[1.0_DFP] &
- & )
+CALL MeshGrid( x=x, y = y, z = z, &
+ & xgv=linspace( 0.0_DFP, 1.0_DFP, 100), &
+ & ygv=linspace( 0.0_DFP, 1.0_DFP, 100), &
+ & zgv=[1.0_DFP] &
+ & )
```
!!! note ""
- Now we replace z by f(x,y). In this way we get a 3D surface representing
- f(x,y).
+Now we replace z by f(x,y). In this way we get a 3D surface representing
+f(x,y).
```fortran
- z = x*(x-1) + y*(y-1)
+z = x*(x-1) + y*(y-1)
```
```fortran
- CALL obj%initiate( )
- CALL obj%plot( x, y, z, "./test_6.vts")
- CALL obj%deallocate()
+CALL obj%initiate( )
+CALL obj%plot( x, y, z, "./test_6.vts")
+CALL obj%deallocate()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VTKPlot/VTKPlot_test_7.md b/docs/docs-api/VTKPlot/VTKPlot_test_7.md
index a6bd0089..cb08e079 100644
--- a/docs/docs-api/VTKPlot/VTKPlot_test_7.md
+++ b/docs/docs-api/VTKPlot/VTKPlot_test_7.md
@@ -41,24 +41,24 @@ PROGRAM MAIN
```
!!! note ""
- Plotting a three dimensional structured grid.
+Plotting a three dimensional structured grid.
```fortran
- CALL MeshGrid( x=x, y = y, z = z, &
- & xgv=linspace( 0.0_DFP, 1.0_DFP, 50), &
- & ygv=linspace( 0.0_DFP, 1.0_DFP, 50), &
- & zgv=linspace( 0.0_DFP, 1.0_DFP, 50) &
- & )
+CALL MeshGrid( x=x, y = y, z = z, &
+ & xgv=linspace( 0.0_DFP, 1.0_DFP, 50), &
+ & ygv=linspace( 0.0_DFP, 1.0_DFP, 50), &
+ & zgv=linspace( 0.0_DFP, 1.0_DFP, 50) &
+ & )
```
```fortran
- func => f
- CALL obj%initiate( )
- CALL obj%plot( x, y, z, func, "./test_7.vts")
- CALL obj%deallocate()
- func => NULL()
+func => f
+CALL obj%initiate( )
+CALL obj%plot( x, y, z, func, "./test_7.vts")
+CALL obj%deallocate()
+func => NULL()
```
```fortran
end program
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VectorField/Import.md b/docs/docs-api/VectorField/Import.md
index 1813f1eb..de67137a 100644
--- a/docs/docs-api/VectorField/Import.md
+++ b/docs/docs-api/VectorField/Import.md
@@ -18,9 +18,9 @@ END INTERFACE
## Template
-| Variable | Data type | Value | Comment |
-| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
-| `restart`* | Char | `T` or `F` | aThe default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `spaceCompo` | Integer | | It represents the number of the number of spatial components in the field. For example, in 2D problem, velocity variable has two spatial components. |
+| Variable | Data type | Value | Comment |
+| ------------ | :-------: | :-----------------------------------------------------: | ---------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `restart`* | Char | `T` or `F` | aThe default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `spaceCompo` | Integer | | It represents the number of the number of spatial components in the field. For example, in 2D problem, velocity variable has two spatial components. |
diff --git a/docs/docs-api/VectorField/Norm2.md b/docs/docs-api/VectorField/Norm2.md
index d0eeea3c..9b7eb47b 100644
--- a/docs/docs-api/VectorField/Norm2.md
+++ b/docs/docs-api/VectorField/Norm2.md
@@ -15,4 +15,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VectorField/Set.md b/docs/docs-api/VectorField/Set.md
index ae47ea2e..721ba902 100644
--- a/docs/docs-api/VectorField/Set.md
+++ b/docs/docs-api/VectorField/Set.md
@@ -174,7 +174,7 @@ END INTERFACE
- This routine sets the selected entries.
```txt
- vector( :, globalNode ) = value( :, : )
+vector( :, globalNode ) = value( :, : )
```
## Interface 9
diff --git a/docs/docs-api/VectorField/_VectorField_test_1.md b/docs/docs-api/VectorField/_VectorField_test_1.md
index 0ef79841..6ab9cc0e 100644
--- a/docs/docs-api/VectorField/_VectorField_test_1.md
+++ b/docs/docs-api/VectorField/_VectorField_test_1.md
@@ -88,5 +88,4 @@ END PROGRAM main
.
0.00000, 0.00000,
# spaceCompo = 2
-
```
diff --git a/docs/docs-api/VectorField/_VectorField_test_2.md b/docs/docs-api/VectorField/_VectorField_test_2.md
index fffdaad3..cd858b4e 100644
--- a/docs/docs-api/VectorField/_VectorField_test_2.md
+++ b/docs/docs-api/VectorField/_VectorField_test_2.md
@@ -12,28 +12,28 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="import"
- !> start import
- CALL obj%import( hdf5=resultFile, group="/VectorField1", dom=dom )
- !> end start import
+!> start import
+CALL obj%import( hdf5=resultFile, group="/VectorField1", dom=dom )
+!> end start import
```
```fortran
- CALL obj%Display("obj = ")
+CALL obj%Display("obj = ")
```
```txt title="results"
diff --git a/docs/docs-api/VectorField/_VectorField_test_3.md b/docs/docs-api/VectorField/_VectorField_test_3.md
index df69c014..c11514a8 100644
--- a/docs/docs-api/VectorField/_VectorField_test_3.md
+++ b/docs/docs-api/VectorField/_VectorField_test_3.md
@@ -84,5 +84,4 @@ END PROGRAM main
.
0.00000, 0.00000,
# spaceCompo = 2
-
```
diff --git a/docs/docs-api/VectorFieldLis/Import.md b/docs/docs-api/VectorFieldLis/Import.md
index 1813f1eb..de67137a 100644
--- a/docs/docs-api/VectorFieldLis/Import.md
+++ b/docs/docs-api/VectorFieldLis/Import.md
@@ -18,9 +18,9 @@ END INTERFACE
## Template
-| Variable | Data type | Value | Comment |
-| ------------ | :-------: | :-----------------------------------------------------: | -----------------------------------------------------------: |
-| `restart`* | Char | `T` or `F` | aThe default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
-| `name` | String | | Name of the scalar field |
-| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
-| `spaceCompo` | Integer | | It represents the number of the number of spatial components in the field. For example, in 2D problem, velocity variable has two spatial components. |
+| Variable | Data type | Value | Comment |
+| ------------ | :-------: | :-----------------------------------------------------: | ---------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `restart`* | Char | `T` or `F` | aThe default value is False. If it is true then it represents that we are restarting the simulation, in this case more information are necessary. |
+| `name` | String | | Name of the scalar field |
+| `fieldType` | String | `NORMAL`, `CONSTANT`, `CONSTANT_SPACE`, `CONSTANT_TIME` | |
+| `spaceCompo` | Integer | | It represents the number of the number of spatial components in the field. For example, in 2D problem, velocity variable has two spatial components. |
diff --git a/docs/docs-api/VectorFieldLis/Norm2.md b/docs/docs-api/VectorFieldLis/Norm2.md
index d0eeea3c..9b7eb47b 100644
--- a/docs/docs-api/VectorFieldLis/Norm2.md
+++ b/docs/docs-api/VectorFieldLis/Norm2.md
@@ -15,4 +15,4 @@ INTERFACE
REAL(DFP) :: ans
END FUNCTION Norm2
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/VectorFieldLis/Set.md b/docs/docs-api/VectorFieldLis/Set.md
index 1ed25844..0fc21400 100644
--- a/docs/docs-api/VectorFieldLis/Set.md
+++ b/docs/docs-api/VectorFieldLis/Set.md
@@ -195,7 +195,7 @@ END INTERFACE
- This routine sets the selected entries.
```txt
- vector( :, globalNode ) = value( :, : )
+vector( :, globalNode ) = value( :, : )
```
## Interface 9
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_1.md b/docs/docs-api/VectorFieldLis/_VectorField_test_1.md
index da27bda8..9ba3629d 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_1.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_1.md
@@ -81,5 +81,5 @@ END PROGRAM main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_2.md b/docs/docs-api/VectorFieldLis/_VectorField_test_2.md
index 1cd70a13..7e7a2dfc 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_2.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_2.md
@@ -12,28 +12,28 @@ PROGRAM main
```
```fortran title="Open file for import"
- CALL FPL_INIT()
- CALL param%initiate()
- CALL resultFile%initiate( filename="./result.h5", mode="READ" )
- CALL resultFile%open()
+CALL FPL_INIT()
+CALL param%initiate()
+CALL resultFile%initiate( filename="./result.h5", mode="READ" )
+CALL resultFile%open()
```
-```fortran title="read domain"
- !> start creating domain
- CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
- CALL meshfile%open()
- CALL dom%initiate( hdf5=meshfile, group="" )
- !> end creating domain
+```fortran title="read domain"
+!> start creating domain
+CALL meshfile%initiate( filename="./mesh.h5", mode="READ" )
+CALL meshfile%open()
+CALL dom%initiate( hdf5=meshfile, group="" )
+!> end creating domain
```
```fortran title="import"
- !> start import
- CALL obj%import( hdf5=resultFile, group="/VectorField1", dom=dom )
- !> end start import
+!> start import
+CALL obj%import( hdf5=resultFile, group="/VectorField1", dom=dom )
+!> end start import
```
```fortran
- CALL obj%Display("obj = ")
+CALL obj%Display("obj = ")
```
```txt title="results"
@@ -72,7 +72,7 @@ PROGRAM main
0.00000, 0.00000,
0.00000, 0.00000,
0.00000, 0.00000,
-0.00000, 0.00000,
+0.00000, 0.00000,
```
```fortran title="Cleanup"
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_20.md b/docs/docs-api/VectorFieldLis/_VectorField_test_20.md
index 3758c455..94c07d7f 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_20.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_20.md
@@ -76,5 +76,4 @@ END PROGRAM main
----------------------------
0.313554 0.404506 0.858003
0.436763 0.300865 0.016442
-
```
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_23.md b/docs/docs-api/VectorFieldLis/_VectorField_test_23.md
index 32dd8515..2b04c45d 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_23.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_23.md
@@ -49,7 +49,6 @@ END PROGRAM main
```
```txt title="Results"
-
get value =
----------------------------
0.791074 0.366923 0.394225
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_3.md b/docs/docs-api/VectorFieldLis/_VectorField_test_3.md
index b681b137..f6c6b9b3 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_3.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_3.md
@@ -55,5 +55,5 @@ value =
-------, -------,
0.57489, 0.59881,
0.57489, 0.59881,
-0.57489, 0.59881,
+0.57489, 0.59881,
```
diff --git a/docs/docs-api/VectorFieldLis/_VectorField_test_4.md b/docs/docs-api/VectorFieldLis/_VectorField_test_4.md
index ca3fdf89..e93c0635 100644
--- a/docs/docs-api/VectorFieldLis/_VectorField_test_4.md
+++ b/docs/docs-api/VectorFieldLis/_VectorField_test_4.md
@@ -54,5 +54,5 @@ value =
0.308712, 0.462143,
0.308712, 0.462143,
0.308712, 0.462143,
-0.308712, 0.462143,
+0.308712, 0.462143,
```
diff --git a/docs/docs-api/XMLFile/index.md b/docs/docs-api/XMLFile/index.md
index 17d8f093..eed8fe1a 100644
--- a/docs/docs-api/XMLFile/index.md
+++ b/docs/docs-api/XMLFile/index.md
@@ -17,7 +17,6 @@ tags:
- todo
---
-
# XMLFile
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/_AbstractSTDBE/ApplyDirichletBC.md b/docs/docs-api/_AbstractSTDBE/ApplyDirichletBC.md
index 497f78d0..d58fdd32 100644
--- a/docs/docs-api/_AbstractSTDBE/ApplyDirichletBC.md
+++ b/docs/docs-api/_AbstractSTDBE/ApplyDirichletBC.md
@@ -8,4 +8,4 @@ INTERFACE
CLASS(AbstractSteadyStokes_), INTENT(INOUT) :: obj
END SUBROUTINE SSF_applyDirichletBC
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/_AbstractSTDBE/AssembleTanmat.md b/docs/docs-api/_AbstractSTDBE/AssembleTanmat.md
index f6618345..4b86702b 100644
--- a/docs/docs-api/_AbstractSTDBE/AssembleTanmat.md
+++ b/docs/docs-api/_AbstractSTDBE/AssembleTanmat.md
@@ -1,4 +1,3 @@
# AssembleTanmat
This method should be implemented by the child.
-
diff --git a/docs/docs-api/_AbstractSTDBE/GetVelocityDirichletBCPointer.md b/docs/docs-api/_AbstractSTDBE/GetVelocityDirichletBCPointer.md
index 970080d4..c3e1c381 100644
--- a/docs/docs-api/_AbstractSTDBE/GetVelocityDirichletBCPointer.md
+++ b/docs/docs-api/_AbstractSTDBE/GetVelocityDirichletBCPointer.md
@@ -1,6 +1,6 @@
# GetVelocityDirichletBCPointer
-This routine returns the pointer to Dirichlet boundary condition of Velocity field in [AbstractSTDBE_](AbstractSTDBE_.md) kernel, that is `obj%DBCForVelocity(dbcNo)%ptr`.
+This routine returns the pointer to Dirichlet boundary condition of Velocity field in [AbstractSTDBE_](AbstractSTDBE_.md) kernel, that is `obj%DBCForVelocity(dbcNo)%ptr`.
- After obtaining the Dirichlet boundary condition pointer, user can set the boundary condition
- `dbcNo` should be lesser than total dirichlet boundary condition
diff --git a/docs/docs-api/_AbstractSTDBE/GetVelocityNeumannBCPointer.md b/docs/docs-api/_AbstractSTDBE/GetVelocityNeumannBCPointer.md
index 155d92fa..7454f873 100644
--- a/docs/docs-api/_AbstractSTDBE/GetVelocityNeumannBCPointer.md
+++ b/docs/docs-api/_AbstractSTDBE/GetVelocityNeumannBCPointer.md
@@ -15,4 +15,3 @@ INTERFACE
END FUNCTION STDBE_GetVelocityNeumannBCPointer
END INTERFACE
```
-
diff --git a/docs/docs-api/_AbstractSTDBE/Initiate.md b/docs/docs-api/_AbstractSTDBE/Initiate.md
index 5b031e15..b063594a 100644
--- a/docs/docs-api/_AbstractSTDBE/Initiate.md
+++ b/docs/docs-api/_AbstractSTDBE/Initiate.md
@@ -2,7 +2,6 @@
This method should be implemented by the children of `AbstractSTDBE_` kernel.
-
```fortran
INTERFACE
MODULE SUBROUTINE SSF_Initiate(obj, param, dom, domains)
@@ -12,4 +11,4 @@ INTERFACE
TYPE(DomainPointer_), OPTIONAL, TARGET, INTENT(INOUT) :: domains(:)
END SUBROUTINE SSF_Initiate
END INTERFACE
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/_AbstractSTDBE/InitiateFields.md b/docs/docs-api/_AbstractSTDBE/InitiateFields.md
index 99de591e..c34b1801 100644
--- a/docs/docs-api/_AbstractSTDBE/InitiateFields.md
+++ b/docs/docs-api/_AbstractSTDBE/InitiateFields.md
@@ -8,5 +8,4 @@ INTERFACE
CLASS(AbstractSteadyStokes_), INTENT(INOUT) :: obj
END SUBROUTINE SSF_InitiateFields
END INTERFACE
-
-```
\ No newline at end of file
+```
diff --git a/docs/docs-api/_AbstractSTDBE/IsSteadyState.md b/docs/docs-api/_AbstractSTDBE/IsSteadyState.md
index 9e79f6bf..2eb7f0e2 100644
--- a/docs/docs-api/_AbstractSTDBE/IsSteadyState.md
+++ b/docs/docs-api/_AbstractSTDBE/IsSteadyState.md
@@ -1,4 +1,3 @@
# IsSteadyState
This method should be implemented by the child.
-
diff --git a/docs/docs-api/_AbstractSTDBE/Set.md b/docs/docs-api/_AbstractSTDBE/Set.md
index aec0aaf5..8430953e 100644
--- a/docs/docs-api/_AbstractSTDBE/Set.md
+++ b/docs/docs-api/_AbstractSTDBE/Set.md
@@ -13,4 +13,3 @@ END INTERFACE
```
While extending this method, child can call this routine by calling `AbstractSTDBESet` routine.
-
diff --git a/docs/docs-api/_AbstractSTDBE/Solve.md b/docs/docs-api/_AbstractSTDBE/Solve.md
index e16a22b7..2bc71a46 100644
--- a/docs/docs-api/_AbstractSTDBE/Solve.md
+++ b/docs/docs-api/_AbstractSTDBE/Solve.md
@@ -1,4 +1,3 @@
# Solve
This method should be implemented by the child.
-
diff --git a/docs/docs-api/_STDBE511/STDBE511_.md b/docs/docs-api/_STDBE511/STDBE511_.md
index 9d00a317..fa6a0035 100644
--- a/docs/docs-api/_STDBE511/STDBE511_.md
+++ b/docs/docs-api/_STDBE511/STDBE511_.md
@@ -430,7 +430,7 @@ This subroutine update the state of the kernel after convergence.
- Get `velocity0` from `velocity`
- Get `pressure0` from `pressure`
-If `reset` is true then reset `velocity`, `pressure` and `sol` to zero.
+If `reset` is true then reset `velocity`, `pressure` and `sol` to zero.
```fortran
INTERFACE
diff --git a/docs/docs-api/_STDBE511/STDBE511_test_1.md b/docs/docs-api/_STDBE511/STDBE511_test_1.md
index a5e9226d..b2fd3791 100644
--- a/docs/docs-api/_STDBE511/STDBE511_test_1.md
+++ b/docs/docs-api/_STDBE511/STDBE511_test_1.md
@@ -31,7 +31,7 @@
```
| varName | Comment |
-|:------------------------:|:----------------------------------:|
+| :----------------------: | :--------------------------------: |
| `_K0_` | permeability of the soil |
| `_PHI_` | porosity of the soil |
| `_DT_` | time step size |
@@ -62,60 +62,60 @@ PROGRAM main
## Declare variables
```fortran
- TYPE(STDBE511_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFile
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: statefile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: dom
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileName = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfilePrefix="./output"
- CHARACTER( LEN = * ), PARAMETER :: &
- & statePrefix="./state"
- INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
- INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
- INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
- INTEGER( I4B ) :: backupNumber
+TYPE(STDBE511_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFile
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: statefile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: dom
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileName = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfilePrefix="./output"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & statePrefix="./state"
+INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
+INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
+INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
+INTEGER( I4B ) :: backupNumber
```
-| var-name | comment |
-|:---------------------|:---------------------------------------------------------:|
-| `obj` | Instance of [[STDBE511_]] kernel |
-| `param` | parameters instance of [[ParameterList_]] |
-| `domainFile` | domain file [[HDF5File_]] |
-| `outfile` | output file [[HDF5File_]] |
-| `statefile` | state file [[HDF5File_]] |
-| `region` | mesh region [[MeshSelection_]] |
-| `dom` | domain [[Domain_]] |
+| var-name | comment |
+| :------------------- | :-----------------------------------------------------: |
+| `obj` | Instance of [[STDBE511_]] kernel |
+| `param` | parameters instance of [[ParameterList_]] |
+| `domainFile` | domain file [[HDF5File_]] |
+| `outfile` | output file [[HDF5File_]] |
+| `statefile` | state file [[HDF5File_]] |
+| `region` | mesh region [[MeshSelection_]] |
+| `dom` | domain [[Domain_]] |
| `dbc` | instance of dirichlet boundary condition [[NeumannBC_]] |
-| `domainFileName` | domain file name |
-| `outfilePrefix` | output file prefix |
-| `statePrefix` | state file prefix |
-| `coordinateSystem` | coordinate system |
-| `saveStateFrequency` | saving frequency for state files |
-| `writeFrequency` | write frequency for output files |
-| `backupNumber` | interal variable |
+| `domainFileName` | domain file name |
+| `outfilePrefix` | output file prefix |
+| `statePrefix` | state file prefix |
+| `coordinateSystem` | coordinate system |
+| `saveStateFrequency` | saving frequency for state files |
+| `writeFrequency` | write frequency for output files |
+| `backupNumber` | interal variable |
!!! note "Linear solver parameters"
```fortran
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
- INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
- INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
- INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
- LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
+INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
+INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
+INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
+LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
```
| var-name | comment |
-|:----------------------------|:-------------------------------------------------------:|
+| :-------------------------- | :-----------------------------------------------------: |
| `LinSolver_name` | name of linear solver |
| `KrylovSubspaceSize` | a parameter for linsol |
| `maxIter_LinSolver` | max number of iterations in linsol |
@@ -131,24 +131,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Iteration parameters"
```fortran
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
- INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: dt= _DT_
- REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
- REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
- LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
- LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
+INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: dt= _DT_
+REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
+REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
+LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
+LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
```
| var-name | comment |
-|:------------------|:-------------------------------------------------------:|
+| :---------------- | :-----------------------------------------------------: |
| `nnt` | number of nodes in time |
| `stabParamOption` | stabilization parameter option |
| `maxIter` | maximum number of iteration |
@@ -167,22 +167,22 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Materials and boundary conditions"
```fortran
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
- INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
- INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
- REAL(DFP), PARAMETER :: porosity= _PHI_
- REAL(DFP), PARAMETER :: permeability = _K0_
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
- REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
- REAL(DFP), PARAMETER :: V_TOP= _VTOP_
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
+INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
+INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
+REAL(DFP), PARAMETER :: porosity= _PHI_
+REAL(DFP), PARAMETER :: permeability = _K0_
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
+REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
+REAL(DFP), PARAMETER :: V_TOP= _VTOP_
```
| var-name | comment |
-|:--------------------------|:-----------------------------------------------:|
+| :------------------------ | :---------------------------------------------: |
| `tPorousMaterials` | total porous media |
| `tFluidMaterials` | total fluid material |
| `tDirichletBCForVelocity` | total dirichlet boundary condition for velocity |
@@ -198,10 +198,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Internal variables"
```fortran
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
- REAL( DFP ) :: t1, t2, t2t1
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
+REAL( DFP ) :: t1, t2, t2t1
```
## SetSTDBE511Param
@@ -209,45 +209,45 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
- [[STDBE511_#SetSTDBE511Param]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- !!
- CALL SetSTDBE511Param( &
- & param=param, &
- & materialInterfaces=materialInterfaces, &
- & stabParamOption=stabParamOption, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & coordinateSystem=coordinateSystem, &
- & maxIter=maxIter, &
- & atoleranceForPressure=atol_pressure, &
- & atoleranceForVelocity=atol_velocity, &
- & rtoleranceForPressure=rtol_pressure, &
- & rtoleranceForVelocity=rtol_velocity, &
- & toleranceForSteadyState=tol_steadyState, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & domainFile=domainFileName)
+CALL FPL_INIT(); CALL param%Initiate()
+!!
+CALL SetSTDBE511Param( &
+ & param=param, &
+ & materialInterfaces=materialInterfaces, &
+ & stabParamOption=stabParamOption, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & coordinateSystem=coordinateSystem, &
+ & maxIter=maxIter, &
+ & atoleranceForPressure=atol_pressure, &
+ & atoleranceForVelocity=atol_velocity, &
+ & rtoleranceForPressure=rtol_pressure, &
+ & rtoleranceForVelocity=rtol_velocity, &
+ & toleranceForSteadyState=tol_steadyState, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & domainFile=domainFileName)
```
## SetLinSolverParam
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn_LinSolver, &
- & convergenceType=convergenceType_LinSolver, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=relativeToRHS, &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn_LinSolver, &
+ & convergenceType=convergenceType_LinSolver, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=relativeToRHS, &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
## Domain/Initiate
@@ -255,16 +255,16 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
Domain for pressure and velocity field
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
- CALL domainFile%Open()
- CALL dom%Initiate(domainFile, "")
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
+CALL domainFile%Open()
+CALL dom%Initiate(domainFile, "")
+CALL domainFile%Deallocate()
```
## Debug
```fortran
- CALL param%print()
+CALL param%print()
```
!!! example "result"
diff --git a/docs/docs-api/_STDBE511/STDBE511_test_2.md b/docs/docs-api/_STDBE511/STDBE511_test_2.md
index 117aa334..71379585 100644
--- a/docs/docs-api/_STDBE511/STDBE511_test_2.md
+++ b/docs/docs-api/_STDBE511/STDBE511_test_2.md
@@ -31,7 +31,7 @@
```
| varName | Comment |
-|:------------------------:|:----------------------------------:|
+| :----------------------: | :--------------------------------: |
| `_K0_` | permeability of the soil |
| `_PHI_` | porosity of the soil |
| `_DT_` | time step size |
@@ -62,60 +62,60 @@ PROGRAM main
## Declare variables
```fortran
- TYPE(STDBE511_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFile
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: statefile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: dom
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileName = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfilePrefix="./output"
- CHARACTER( LEN = * ), PARAMETER :: &
- & statePrefix="./state"
- INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
- INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
- INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
- INTEGER( I4B ) :: backupNumber
+TYPE(STDBE511_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFile
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: statefile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: dom
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileName = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfilePrefix="./output"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & statePrefix="./state"
+INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
+INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
+INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
+INTEGER( I4B ) :: backupNumber
```
-| var-name | comment |
-|:---------------------|:---------------------------------------------------------:|
-| `obj` | Instance of [[STDBE511_]] kernel |
-| `param` | parameters instance of [[ParameterList_]] |
-| `domainFile` | domain file [[HDF5File_]] |
-| `outfile` | output file [[HDF5File_]] |
-| `statefile` | state file [[HDF5File_]] |
-| `region` | mesh region [[MeshSelection_]] |
-| `dom` | domain [[Domain_]] |
+| var-name | comment |
+| :------------------- | :-----------------------------------------------------: |
+| `obj` | Instance of [[STDBE511_]] kernel |
+| `param` | parameters instance of [[ParameterList_]] |
+| `domainFile` | domain file [[HDF5File_]] |
+| `outfile` | output file [[HDF5File_]] |
+| `statefile` | state file [[HDF5File_]] |
+| `region` | mesh region [[MeshSelection_]] |
+| `dom` | domain [[Domain_]] |
| `dbc` | instance of dirichlet boundary condition [[NeumannBC_]] |
-| `domainFileName` | domain file name |
-| `outfilePrefix` | output file prefix |
-| `statePrefix` | state file prefix |
-| `coordinateSystem` | coordinate system |
-| `saveStateFrequency` | saving frequency for state files |
-| `writeFrequency` | write frequency for output files |
-| `backupNumber` | interal variable |
+| `domainFileName` | domain file name |
+| `outfilePrefix` | output file prefix |
+| `statePrefix` | state file prefix |
+| `coordinateSystem` | coordinate system |
+| `saveStateFrequency` | saving frequency for state files |
+| `writeFrequency` | write frequency for output files |
+| `backupNumber` | interal variable |
!!! note "Linear solver parameters"
```fortran
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
- INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
- INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
- INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
- LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
+INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
+INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
+INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
+LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
```
| var-name | comment |
-|:----------------------------|:-------------------------------------------------------:|
+| :-------------------------- | :-----------------------------------------------------: |
| `LinSolver_name` | name of linear solver |
| `KrylovSubspaceSize` | a parameter for linsol |
| `maxIter_LinSolver` | max number of iterations in linsol |
@@ -131,24 +131,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Iteration parameters"
```fortran
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
- INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: dt= _DT_
- REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
- REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
- LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
- LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
+INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: dt= _DT_
+REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
+REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
+LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
+LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
```
| var-name | comment |
-|:------------------|:-------------------------------------------------------:|
+| :---------------- | :-----------------------------------------------------: |
| `nnt` | number of nodes in time |
| `stabParamOption` | stabilization parameter option |
| `maxIter` | maximum number of iteration |
@@ -167,22 +167,22 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Materials and boundary conditions"
```fortran
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
- INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
- INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
- REAL(DFP), PARAMETER :: porosity= _PHI_
- REAL(DFP), PARAMETER :: permeability = _K0_
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
- REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
- REAL(DFP), PARAMETER :: V_TOP= _VTOP_
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
+INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
+INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
+REAL(DFP), PARAMETER :: porosity= _PHI_
+REAL(DFP), PARAMETER :: permeability = _K0_
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
+REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
+REAL(DFP), PARAMETER :: V_TOP= _VTOP_
```
| var-name | comment |
-|:--------------------------|:-----------------------------------------------:|
+| :------------------------ | :---------------------------------------------: |
| `tPorousMaterials` | total porous media |
| `tFluidMaterials` | total fluid material |
| `tDirichletBCForVelocity` | total dirichlet boundary condition for velocity |
@@ -198,10 +198,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Internal variables"
```fortran
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
- REAL( DFP ) :: t1, t2, t2t1
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
+REAL( DFP ) :: t1, t2, t2t1
```
## SetSTDBE511Param
@@ -209,45 +209,45 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
- [[STDBE511_#SetSTDBE511Param]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- !!
- CALL SetSTDBE511Param( &
- & param=param, &
- & materialInterfaces=materialInterfaces, &
- & stabParamOption=stabParamOption, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & coordinateSystem=coordinateSystem, &
- & maxIter=maxIter, &
- & atoleranceForPressure=atol_pressure, &
- & atoleranceForVelocity=atol_velocity, &
- & rtoleranceForPressure=rtol_pressure, &
- & rtoleranceForVelocity=rtol_velocity, &
- & toleranceForSteadyState=tol_steadyState, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & domainFile=domainFileName)
+CALL FPL_INIT(); CALL param%Initiate()
+!!
+CALL SetSTDBE511Param( &
+ & param=param, &
+ & materialInterfaces=materialInterfaces, &
+ & stabParamOption=stabParamOption, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & coordinateSystem=coordinateSystem, &
+ & maxIter=maxIter, &
+ & atoleranceForPressure=atol_pressure, &
+ & atoleranceForVelocity=atol_velocity, &
+ & rtoleranceForPressure=rtol_pressure, &
+ & rtoleranceForVelocity=rtol_velocity, &
+ & toleranceForSteadyState=tol_steadyState, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & domainFile=domainFileName)
```
## SetLinSolverParam
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn_LinSolver, &
- & convergenceType=convergenceType_LinSolver, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=relativeToRHS, &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn_LinSolver, &
+ & convergenceType=convergenceType_LinSolver, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=relativeToRHS, &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
## Domain Initiate
@@ -255,10 +255,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
Domain for pressure and velocity field
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
- CALL domainFile%Open()
- CALL dom%Initiate(domainFile, "")
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
+CALL domainFile%Open()
+CALL dom%Initiate(domainFile, "")
+CALL domainFile%Deallocate()
```
## Initiate
@@ -266,7 +266,7 @@ Domain for pressure and velocity field
Initiate the STDBE511 kernel [[STDBE511_#Initiate]]
```fortran
- CALL obj%Initiate(param=param, dom=dom)
+CALL obj%Initiate(param=param, dom=dom)
```
## Next
diff --git a/docs/docs-api/_STDBE511/STDBE511_test_3.md b/docs/docs-api/_STDBE511/STDBE511_test_3.md
index 9b976f2f..9a22907a 100644
--- a/docs/docs-api/_STDBE511/STDBE511_test_3.md
+++ b/docs/docs-api/_STDBE511/STDBE511_test_3.md
@@ -31,7 +31,7 @@
```
| varName | Comment |
-|:------------------------:|:----------------------------------:|
+| :----------------------: | :--------------------------------: |
| `_K0_` | permeability of the soil |
| `_PHI_` | porosity of the soil |
| `_DT_` | time step size |
@@ -62,60 +62,60 @@ PROGRAM main
## Declare variables
```fortran
- TYPE(STDBE511_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFile
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: statefile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: dom
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileName = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfilePrefix="./output"
- CHARACTER( LEN = * ), PARAMETER :: &
- & statePrefix="./state"
- INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
- INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
- INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
- INTEGER( I4B ) :: backupNumber
+TYPE(STDBE511_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFile
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: statefile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: dom
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileName = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfilePrefix="./output"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & statePrefix="./state"
+INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
+INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
+INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
+INTEGER( I4B ) :: backupNumber
```
-| var-name | comment |
-|:---------------------|:---------------------------------------------------------:|
-| `obj` | Instance of [[STDBE511_]] kernel |
-| `param` | parameters instance of [[ParameterList_]] |
-| `domainFile` | domain file [[HDF5File_]] |
-| `outfile` | output file [[HDF5File_]] |
-| `statefile` | state file [[HDF5File_]] |
-| `region` | mesh region [[MeshSelection_]] |
-| `dom` | domain [[Domain_]] |
+| var-name | comment |
+| :------------------- | :-----------------------------------------------------: |
+| `obj` | Instance of [[STDBE511_]] kernel |
+| `param` | parameters instance of [[ParameterList_]] |
+| `domainFile` | domain file [[HDF5File_]] |
+| `outfile` | output file [[HDF5File_]] |
+| `statefile` | state file [[HDF5File_]] |
+| `region` | mesh region [[MeshSelection_]] |
+| `dom` | domain [[Domain_]] |
| `dbc` | instance of dirichlet boundary condition [[NeumannBC_]] |
-| `domainFileName` | domain file name |
-| `outfilePrefix` | output file prefix |
-| `statePrefix` | state file prefix |
-| `coordinateSystem` | coordinate system |
-| `saveStateFrequency` | saving frequency for state files |
-| `writeFrequency` | write frequency for output files |
-| `backupNumber` | interal variable |
+| `domainFileName` | domain file name |
+| `outfilePrefix` | output file prefix |
+| `statePrefix` | state file prefix |
+| `coordinateSystem` | coordinate system |
+| `saveStateFrequency` | saving frequency for state files |
+| `writeFrequency` | write frequency for output files |
+| `backupNumber` | interal variable |
!!! note "Linear solver parameters"
```fortran
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
- INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
- INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
- INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
- LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
+INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
+INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
+INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
+LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
```
| var-name | comment |
-|:----------------------------|:-------------------------------------------------------:|
+| :-------------------------- | :-----------------------------------------------------: |
| `LinSolver_name` | name of linear solver |
| `KrylovSubspaceSize` | a parameter for linsol |
| `maxIter_LinSolver` | max number of iterations in linsol |
@@ -131,24 +131,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Iteration parameters"
```fortran
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
- INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: dt= _DT_
- REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
- REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
- LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
- LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
+INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: dt= _DT_
+REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
+REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
+LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
+LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
```
| var-name | comment |
-|:------------------|:-------------------------------------------------------:|
+| :---------------- | :-----------------------------------------------------: |
| `nnt` | number of nodes in time |
| `stabParamOption` | stabilization parameter option |
| `maxIter` | maximum number of iteration |
@@ -167,24 +167,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Materials and boundary conditions"
```fortran
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
- INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
- INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
- REAL(DFP), PARAMETER :: porosity= _PHI_
- REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
- REAL(DFP), PARAMETER :: permeability = _K0_
- REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
- REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
- REAL(DFP), PARAMETER :: V_TOP= _VTOP_
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
+INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
+INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
+REAL(DFP), PARAMETER :: porosity= _PHI_
+REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
+REAL(DFP), PARAMETER :: permeability = _K0_
+REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
+REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
+REAL(DFP), PARAMETER :: V_TOP= _VTOP_
```
| var-name | comment |
-|:--------------------------|:-----------------------------------------------:|
+| :------------------------ | :---------------------------------------------: |
| `tPorousMaterials` | total porous media |
| `tFluidMaterials` | total fluid material |
| `tDirichletBCForVelocity` | total dirichlet boundary condition for velocity |
@@ -200,10 +200,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Internal variables"
```fortran
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
- REAL( DFP ) :: t1, t2, t2t1
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
+REAL( DFP ) :: t1, t2, t2t1
```
## SetSTDBE511Param
@@ -211,45 +211,45 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
- [[STDBE511_#SetSTDBE511Param]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- !!
- CALL SetSTDBE511Param( &
- & param=param, &
- & materialInterfaces=materialInterfaces, &
- & stabParamOption=stabParamOption, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & coordinateSystem=coordinateSystem, &
- & maxIter=maxIter, &
- & atoleranceForPressure=atol_pressure, &
- & atoleranceForVelocity=atol_velocity, &
- & rtoleranceForPressure=rtol_pressure, &
- & rtoleranceForVelocity=rtol_velocity, &
- & toleranceForSteadyState=tol_steadyState, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & domainFile=domainFileName)
+CALL FPL_INIT(); CALL param%Initiate()
+!!
+CALL SetSTDBE511Param( &
+ & param=param, &
+ & materialInterfaces=materialInterfaces, &
+ & stabParamOption=stabParamOption, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & coordinateSystem=coordinateSystem, &
+ & maxIter=maxIter, &
+ & atoleranceForPressure=atol_pressure, &
+ & atoleranceForVelocity=atol_velocity, &
+ & rtoleranceForPressure=rtol_pressure, &
+ & rtoleranceForVelocity=rtol_velocity, &
+ & toleranceForSteadyState=tol_steadyState, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & domainFile=domainFileName)
```
## SetLinSolverParam
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn_LinSolver, &
- & convergenceType=convergenceType_LinSolver, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=relativeToRHS, &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn_LinSolver, &
+ & convergenceType=convergenceType_LinSolver, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=relativeToRHS, &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
## Domain/Initiate
@@ -257,10 +257,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
Domain for pressure and velocity field
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
- CALL domainFile%Open()
- CALL dom%Initiate(domainFile, "")
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
+CALL domainFile%Open()
+CALL dom%Initiate(domainFile, "")
+CALL domainFile%Deallocate()
```
## Initiate
@@ -268,7 +268,7 @@ Domain for pressure and velocity field
Initiate the STDBE511 kernel [[STDBE511_#Initiate]]
```fortran
- CALL obj%Initiate(param=param, dom=dom)
+CALL obj%Initiate(param=param, dom=dom)
```
## AddPorousMaterial
@@ -280,34 +280,34 @@ Add Porous Material (bottom region)
- [[MeshSelection_#SetPorousMaterialParam]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
```
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_soil, &
- & porosity=porosity, &
- & permeability=permeability )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_soil, &
+ & porosity=porosity, &
+ & permeability=permeability )
```
- [[STDBE511_#AddPorousMaterial]]
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
```
Deallocate the region, so that we can use it again.
```fortran
- CALL region%Deallocate()
+CALL region%Deallocate()
```
Adding another porous medium (top part)
@@ -315,31 +315,31 @@ Adding another porous medium (top part)
Initiate region:
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[2])
```
Set porous material properties.
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_fluid, &
- & porosity=porosity_fluid, &
- & permeability=permeability_fluid )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_fluid, &
+ & porosity=porosity_fluid, &
+ & permeability=permeability_fluid )
```
Add porous material to kernel, and deallocate the region.
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- !!
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+!!
+CALL region%Deallocate()
```
## AddFluidMaterial
@@ -347,24 +347,24 @@ Add porous material to kernel, and deallocate the region.
- [[STDBE511_#AddFluidMaterial]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1,2])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
- !!
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=massdensity_fluid, &
- & dynamicViscosity=dynamicViscosity )
- !!
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region )
- !!
- CALL region%Deallocate()
- !!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1,2])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+!!
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=massdensity_fluid, &
+ & dynamicViscosity=dynamicViscosity )
+!!
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region )
+!!
+CALL region%Deallocate()
+!!
```
## Next
diff --git a/docs/docs-api/_STDBE511/STDBE511_test_4.md b/docs/docs-api/_STDBE511/STDBE511_test_4.md
index 50821569..d4a1dad4 100644
--- a/docs/docs-api/_STDBE511/STDBE511_test_4.md
+++ b/docs/docs-api/_STDBE511/STDBE511_test_4.md
@@ -31,7 +31,7 @@
```
| varName | Comment |
-|:------------------------:|:----------------------------------:|
+| :----------------------: | :--------------------------------: |
| `_K0_` | permeability of the soil |
| `_PHI_` | porosity of the soil |
| `_DT_` | time step size |
@@ -62,60 +62,60 @@ PROGRAM main
## Declare variables
```fortran
- TYPE(STDBE511_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFile
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: statefile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: dom
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileName = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfilePrefix="./output"
- CHARACTER( LEN = * ), PARAMETER :: &
- & statePrefix="./state"
- INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
- INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
- INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
- INTEGER( I4B ) :: backupNumber
+TYPE(STDBE511_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFile
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: statefile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: dom
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileName = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfilePrefix="./output"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & statePrefix="./state"
+INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
+INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
+INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
+INTEGER( I4B ) :: backupNumber
```
-| var-name | comment |
-|:---------------------|:---------------------------------------------------------:|
-| `obj` | Instance of [[STDBE511_]] kernel |
-| `param` | parameters instance of [[ParameterList_]] |
-| `domainFile` | domain file [[HDF5File_]] |
-| `outfile` | output file [[HDF5File_]] |
-| `statefile` | state file [[HDF5File_]] |
-| `region` | mesh region [[MeshSelection_]] |
-| `dom` | domain [[Domain_]] |
+| var-name | comment |
+| :------------------- | :-----------------------------------------------------: |
+| `obj` | Instance of [[STDBE511_]] kernel |
+| `param` | parameters instance of [[ParameterList_]] |
+| `domainFile` | domain file [[HDF5File_]] |
+| `outfile` | output file [[HDF5File_]] |
+| `statefile` | state file [[HDF5File_]] |
+| `region` | mesh region [[MeshSelection_]] |
+| `dom` | domain [[Domain_]] |
| `dbc` | instance of dirichlet boundary condition [[NeumannBC_]] |
-| `domainFileName` | domain file name |
-| `outfilePrefix` | output file prefix |
-| `statePrefix` | state file prefix |
-| `coordinateSystem` | coordinate system |
-| `saveStateFrequency` | saving frequency for state files |
-| `writeFrequency` | write frequency for output files |
-| `backupNumber` | interal variable |
+| `domainFileName` | domain file name |
+| `outfilePrefix` | output file prefix |
+| `statePrefix` | state file prefix |
+| `coordinateSystem` | coordinate system |
+| `saveStateFrequency` | saving frequency for state files |
+| `writeFrequency` | write frequency for output files |
+| `backupNumber` | interal variable |
!!! note "Linear solver parameters"
```fortran
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
- INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
- INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
- INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
- LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
+INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
+INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
+INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
+LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
```
| var-name | comment |
-|:----------------------------|:-------------------------------------------------------:|
+| :-------------------------- | :-----------------------------------------------------: |
| `LinSolver_name` | name of linear solver |
| `KrylovSubspaceSize` | a parameter for linsol |
| `maxIter_LinSolver` | max number of iterations in linsol |
@@ -131,24 +131,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Iteration parameters"
```fortran
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
- INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: dt= _DT_
- REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
- REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
- LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
- LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
+INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: dt= _DT_
+REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
+REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
+LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
+LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
```
| var-name | comment |
-|:------------------|:-------------------------------------------------------:|
+| :---------------- | :-----------------------------------------------------: |
| `nnt` | number of nodes in time |
| `stabParamOption` | stabilization parameter option |
| `maxIter` | maximum number of iteration |
@@ -167,24 +167,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Materials and boundary conditions"
```fortran
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
- INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
- INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
- REAL(DFP), PARAMETER :: porosity= _PHI_
- REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
- REAL(DFP), PARAMETER :: permeability = _K0_
- REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
- REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
- REAL(DFP), PARAMETER :: V_TOP= _VTOP_
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
+INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
+INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
+REAL(DFP), PARAMETER :: porosity= _PHI_
+REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
+REAL(DFP), PARAMETER :: permeability = _K0_
+REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
+REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
+REAL(DFP), PARAMETER :: V_TOP= _VTOP_
```
| var-name | comment |
-|:--------------------------|:-----------------------------------------------:|
+| :------------------------ | :---------------------------------------------: |
| `tPorousMaterials` | total porous media |
| `tFluidMaterials` | total fluid material |
| `tDirichletBCForVelocity` | total dirichlet boundary condition for velocity |
@@ -200,10 +200,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Internal variables"
```fortran
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
- REAL( DFP ) :: t1, t2, t2t1
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
+REAL( DFP ) :: t1, t2, t2t1
```
## SetSTDBE511Param
@@ -211,45 +211,45 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
- [[STDBE511_#SetSTDBE511Param]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- !!
- CALL SetSTDBE511Param( &
- & param=param, &
- & materialInterfaces=materialInterfaces, &
- & stabParamOption=stabParamOption, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & coordinateSystem=coordinateSystem, &
- & maxIter=maxIter, &
- & atoleranceForPressure=atol_pressure, &
- & atoleranceForVelocity=atol_velocity, &
- & rtoleranceForPressure=rtol_pressure, &
- & rtoleranceForVelocity=rtol_velocity, &
- & toleranceForSteadyState=tol_steadyState, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & domainFile=domainFileName)
+CALL FPL_INIT(); CALL param%Initiate()
+!!
+CALL SetSTDBE511Param( &
+ & param=param, &
+ & materialInterfaces=materialInterfaces, &
+ & stabParamOption=stabParamOption, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & coordinateSystem=coordinateSystem, &
+ & maxIter=maxIter, &
+ & atoleranceForPressure=atol_pressure, &
+ & atoleranceForVelocity=atol_velocity, &
+ & rtoleranceForPressure=rtol_pressure, &
+ & rtoleranceForVelocity=rtol_velocity, &
+ & toleranceForSteadyState=tol_steadyState, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & domainFile=domainFileName)
```
## SetLinSolverParam
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn_LinSolver, &
- & convergenceType=convergenceType_LinSolver, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=relativeToRHS, &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn_LinSolver, &
+ & convergenceType=convergenceType_LinSolver, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=relativeToRHS, &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
## Domain Initiate
@@ -257,10 +257,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
Domain for pressure and velocity field
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
- CALL domainFile%Open()
- CALL dom%Initiate(domainFile, "")
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
+CALL domainFile%Open()
+CALL dom%Initiate(domainFile, "")
+CALL domainFile%Deallocate()
```
## Initiate
@@ -268,7 +268,7 @@ Domain for pressure and velocity field
Initiate the STDBE511 kernel [[STDBE511_#Initiate]]
```fortran
- CALL obj%Initiate(param=param, dom=dom)
+CALL obj%Initiate(param=param, dom=dom)
```
## AddPorousMaterial
@@ -280,34 +280,34 @@ Add Porous Material (bottom region)
- [[MeshSelection_#SetPorousMaterialParam]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
```
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_soil, &
- & porosity=porosity, &
- & permeability=permeability )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_soil, &
+ & porosity=porosity, &
+ & permeability=permeability )
```
- [[STDBE511_#AddPorousMaterial]]
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
```
Deallocate the region, so that we can use it again.
```fortran
- CALL region%Deallocate()
+CALL region%Deallocate()
```
Adding another porous medium (top part)
@@ -315,31 +315,31 @@ Adding another porous medium (top part)
Initiate region:
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[2])
```
Set porous material properties.
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_fluid, &
- & porosity=porosity_fluid, &
- & permeability=permeability_fluid )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_fluid, &
+ & porosity=porosity_fluid, &
+ & permeability=permeability_fluid )
```
Add porous material to kernel, and deallocate the region.
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- !!
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+!!
+CALL region%Deallocate()
```
## AddFluidMaterial
@@ -347,24 +347,24 @@ Add porous material to kernel, and deallocate the region.
- [[STDBE511_#AddFluidMaterial]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1,2])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
- !!
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=massdensity_fluid, &
- & dynamicViscosity=dynamicViscosity )
- !!
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region )
- !!
- CALL region%Deallocate()
- !!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1,2])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+!!
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=massdensity_fluid, &
+ & dynamicViscosity=dynamicViscosity )
+!!
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region )
+!!
+CALL region%Deallocate()
+!!
```
## DirichletBoundaryCondition
@@ -380,84 +380,84 @@ Select the mesh boundary where $v_{x}=0$ is prescribed.
- [[MeshSelection_#Set]]
```fortran
- CALL region%Initiate( &
- & isSelectionByMeshID=.TRUE., &
- & isSelectionByNodeNum=.TRUE. )
- CALL region%Add(dim=obj%nsd-1, meshID=[1,2,6])
- CALL region%Add( &
- & nodenum=dom%getInternalNptrs( dim=obj%nsd-1, entityNum=[3,5] ) )
- CALL region%Set()
+CALL region%Initiate( &
+ & isSelectionByMeshID=.TRUE., &
+ & isSelectionByNodeNum=.TRUE. )
+CALL region%Add(dim=obj%nsd-1, meshID=[1,2,6])
+CALL region%Add( &
+ & nodenum=dom%getInternalNptrs( dim=obj%nsd-1, entityNum=[3,5] ) )
+CALL region%Set()
```
Set the parameters for dirichlet boundary condition. [[NeumannBC_#SetDirichletBCParam]]
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Add dirichlet boundary condition to kernel [[STDBE511_#AddVelocityDirichletBC]], [[STDBE511_#GetVelocityDirichletBCPointer]]
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=1, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=1, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Vy=0
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vy=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vy=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[1,2,3,4,5,6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[1,2,3,4,5,6])
+CALL region%Set()
```
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=2, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=2, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Vx=Vtop
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=V", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=V", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[4])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[4])
+CALL region%Set()
```
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=3, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=V_TOP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=3, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=V_TOP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Pressure boundary condition
@@ -465,24 +465,24 @@ Add dirichlet boundary condition to kernel [[STDBE511_#AddVelocityDirichletBC]],
Usually, we do not apply Dirichlet boundary condition for pressure.
```fortran
- IF( tDirichletBCForPressure .GT. 0 ) THEN
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="P=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- CALL region%Initiate( &
- & isSelectionByNodeNum=.TRUE. )
- CALL region%Add( nodenum=[refPressureNode])
- CALL region%Set()
- !!
- CALL obj%AddPressureDirichletBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureDirichletBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- END IF
+IF( tDirichletBCForPressure .GT. 0 ) THEN
+ CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="P=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+ CALL region%Initiate( &
+ & isSelectionByNodeNum=.TRUE. )
+ CALL region%Add( nodenum=[refPressureNode])
+ CALL region%Set()
+ !!
+ CALL obj%AddPressureDirichletBC(dbcNo=1, param=param, boundary=region)
+ CALL region%Deallocate()
+ dbc => obj%GetPressureDirichletBCPointer(dbcNo=1)
+ CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+ dbc => NULL()
+END IF
```
## Set
diff --git a/docs/docs-api/_STDBE511/STDBE511_test_5.md b/docs/docs-api/_STDBE511/STDBE511_test_5.md
index d1b7d1d0..26af602b 100644
--- a/docs/docs-api/_STDBE511/STDBE511_test_5.md
+++ b/docs/docs-api/_STDBE511/STDBE511_test_5.md
@@ -31,7 +31,7 @@
```
| varName | Comment |
-|:------------------------:|:----------------------------------:|
+| :----------------------: | :--------------------------------: |
| `_K0_` | permeability of the soil |
| `_PHI_` | porosity of the soil |
| `_DT_` | time step size |
@@ -62,60 +62,60 @@ PROGRAM main
## Declare variables
```fortran
- TYPE(STDBE511_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFile
- TYPE( HDF5File_ ) :: outfile
- TYPE( HDF5File_ ) :: statefile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: dom
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileName = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfilePrefix="./output"
- CHARACTER( LEN = * ), PARAMETER :: &
- & statePrefix="./state"
- INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
- INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
- INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
- INTEGER( I4B ) :: backupNumber
-```
-
-| var-name | comment |
-|:---------------------|:---------------------------------------------------------:|
-| `obj` | Instance of [[STDBE511_]] kernel |
-| `param` | parameters instance of [[ParameterList_]] |
-| `domainFile` | domain file [[HDF5File_]] |
-| `outfile` | output file [[HDF5File_]] |
-| `statefile` | state file [[HDF5File_]] |
-| `region` | mesh region [[MeshSelection_]] |
-| `dom` | domain [[Domain_]] |
+TYPE(STDBE511_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFile
+TYPE( HDF5File_ ) :: outfile
+TYPE( HDF5File_ ) :: statefile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: dom
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileName = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfilePrefix="./output"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & statePrefix="./state"
+INTEGER( I4B ), PARAMETER :: CoordinateSystem = KERNEL_2D
+INTEGER( I4B ), PARAMETER :: SaveStateFrequency = _SAVE_STATE_FREQ_
+INTEGER( I4B ), PARAMETER :: writeFrequency = _WRITE_FREQ_
+INTEGER( I4B ) :: backupNumber
+```
+
+| var-name | comment |
+| :------------------- | :-----------------------------------------------------: |
+| `obj` | Instance of [[STDBE511_]] kernel |
+| `param` | parameters instance of [[ParameterList_]] |
+| `domainFile` | domain file [[HDF5File_]] |
+| `outfile` | output file [[HDF5File_]] |
+| `statefile` | state file [[HDF5File_]] |
+| `region` | mesh region [[MeshSelection_]] |
+| `dom` | domain [[Domain_]] |
| `dbc` | instance of dirichlet boundary condition [[NeumannBC_]] |
-| `domainFileName` | domain file name |
-| `outfilePrefix` | output file prefix |
-| `statePrefix` | state file prefix |
-| `coordinateSystem` | coordinate system |
-| `saveStateFrequency` | saving frequency for state files |
-| `writeFrequency` | write frequency for output files |
-| `backupNumber` | interal variable |
+| `domainFileName` | domain file name |
+| `outfilePrefix` | output file prefix |
+| `statePrefix` | state file prefix |
+| `coordinateSystem` | coordinate system |
+| `saveStateFrequency` | saving frequency for state files |
+| `writeFrequency` | write frequency for output files |
+| `backupNumber` | interal variable |
!!! note "Linear solver parameters"
```fortran
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
- INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
- INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
- INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
- LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 50
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = -1
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-6
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-10
+INTEGER(I4B), PARAMETER :: preconditionOption = NO_PRECONDITION
+INTEGER(I4B), PARAMETER :: convergenceIn_LinSolver = convergenceInRes
+INTEGER(I4B), PARAMETER :: convergenceType_LinSolver = relativeConvergence
+LOGICAL( LGT ), PARAMETER :: relativeToRHS = .FALSE.
```
| var-name | comment |
-|:----------------------------|:-------------------------------------------------------:|
+| :-------------------------- | :-----------------------------------------------------: |
| `LinSolver_name` | name of linear solver |
| `KrylovSubspaceSize` | a parameter for linsol |
| `maxIter_LinSolver` | max number of iterations in linsol |
@@ -131,24 +131,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Iteration parameters"
```fortran
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
- INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: dt= _DT_
- REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
- REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
- REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
- REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
- LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
- LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER( I4B ), PARAMETER :: stabParamOption = _STAB_PARAM_OPTION_
+INTEGER( I4B ), PARAMETER :: maxIter= _MAX_ITER_
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = _TIMESTEPS_
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: dt= _DT_
+REAL(DFP), PARAMETER :: endTime=dt*TotalTimeSteps
+REAL( DFP ), PARAMETER :: atol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: rtol_Pressure=1.0D-10
+REAL( DFP ), PARAMETER :: atol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: rtol_Velocity=1.0D-6
+REAL( DFP ), PARAMETER :: tol_steadyState = 1.0E-8
+LOGICAL( LGT ), PARAMETER :: resetIteration = .FALSE.
+LOGICAL( LGT ), PARAMETER :: resetTimeStep = .FALSE.
```
| var-name | comment |
-|:------------------|:-------------------------------------------------------:|
+| :---------------- | :-----------------------------------------------------: |
| `nnt` | number of nodes in time |
| `stabParamOption` | stabilization parameter option |
| `maxIter` | maximum number of iteration |
@@ -167,24 +167,24 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Materials and boundary conditions"
```fortran
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
- INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
- INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
- REAL(DFP), PARAMETER :: porosity= _PHI_
- REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
- REAL(DFP), PARAMETER :: permeability = _K0_
- REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
- REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
- REAL(DFP), PARAMETER :: V_TOP= _VTOP_
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 2
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = _tDBC4P_
+INTEGER( I4B ), PARAMETER :: refPressureNode = _REF_PRESSURE_NODE_
+INTEGER( I4B ), PARAMETER :: materialInterfaces(1) = _MATERTIAL_INTERFACES_
+REAL(DFP), PARAMETER :: porosity= _PHI_
+REAL(DFP), PARAMETER :: porosity_fluid=1.0_DFP
+REAL(DFP), PARAMETER :: permeability = _K0_
+REAL(DFP), PARAMETER :: permeability_fluid=1.0E+30
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: massdensity_fluid = _RHO_FLUID_
+REAL(DFP), PARAMETER :: dynamicViscosity = _MU_FLUID_
+REAL(DFP), PARAMETER :: V_TOP= _VTOP_
```
| var-name | comment |
-|:--------------------------|:-----------------------------------------------:|
+| :------------------------ | :---------------------------------------------: |
| `tPorousMaterials` | total porous media |
| `tFluidMaterials` | total fluid material |
| `tDirichletBCForVelocity` | total dirichlet boundary condition for velocity |
@@ -200,10 +200,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
!!! note "Internal variables"
```fortran
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
- REAL( DFP ) :: t1, t2, t2t1
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
+REAL( DFP ) :: t1, t2, t2t1
```
## SetSTDBE511Param
@@ -211,45 +211,45 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
- [[STDBE511_#SetSTDBE511Param]]
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
- !!
- CALL SetSTDBE511Param( &
- & param=param, &
- & materialInterfaces=materialInterfaces, &
- & stabParamOption=stabParamOption, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & coordinateSystem=coordinateSystem, &
- & maxIter=maxIter, &
- & atoleranceForPressure=atol_pressure, &
- & atoleranceForVelocity=atol_velocity, &
- & rtoleranceForPressure=rtol_pressure, &
- & rtoleranceForVelocity=rtol_velocity, &
- & toleranceForSteadyState=tol_steadyState, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & domainFile=domainFileName)
+CALL FPL_INIT(); CALL param%Initiate()
+!!
+CALL SetSTDBE511Param( &
+ & param=param, &
+ & materialInterfaces=materialInterfaces, &
+ & stabParamOption=stabParamOption, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & coordinateSystem=coordinateSystem, &
+ & maxIter=maxIter, &
+ & atoleranceForPressure=atol_pressure, &
+ & atoleranceForVelocity=atol_velocity, &
+ & rtoleranceForPressure=rtol_pressure, &
+ & rtoleranceForVelocity=rtol_velocity, &
+ & toleranceForSteadyState=tol_steadyState, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & domainFile=domainFileName)
```
## SetLinSolverParam
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=preconditionOption, &
- & convergenceIn=convergenceIn_LinSolver, &
- & convergenceType=convergenceType_LinSolver, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=relativeToRHS, &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=preconditionOption, &
+ & convergenceIn=convergenceIn_LinSolver, &
+ & convergenceType=convergenceType_LinSolver, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=relativeToRHS, &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
## Domain Initiate
@@ -257,10 +257,10 @@ Currently, `NO_PRECONDITON` means diagonal preconditioning will be selected.
Domain for pressure and velocity field
```fortran
- CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
- CALL domainFile%Open()
- CALL dom%Initiate(domainFile, "")
- CALL domainFile%Deallocate()
+CALL domainFile%Initiate( filename=domainFileName, MODE="READ")
+CALL domainFile%Open()
+CALL dom%Initiate(domainFile, "")
+CALL domainFile%Deallocate()
```
## Initiate
@@ -268,7 +268,7 @@ Domain for pressure and velocity field
Initiate the STDBE511 kernel [[STDBE511_#Initiate]]
```fortran
- CALL obj%Initiate(param=param, dom=dom)
+CALL obj%Initiate(param=param, dom=dom)
```
## AddPorousMaterial
@@ -280,34 +280,34 @@ Add Porous Material (bottom region)
- [[MeshSelection_#SetPorousMaterialParam]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
```
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_soil, &
- & porosity=porosity, &
- & permeability=permeability )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_soil, &
+ & porosity=porosity, &
+ & permeability=permeability )
```
- [[STDBE511_#AddPorousMaterial]]
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
```
Deallocate the region, so that we can use it again.
```fortran
- CALL region%Deallocate()
+CALL region%Deallocate()
```
Adding another porous medium (top part)
@@ -315,31 +315,31 @@ Adding another porous medium (top part)
Initiate region:
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[2])
```
Set porous material properties.
```fortran
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_fluid, &
- & porosity=porosity_fluid, &
- & permeability=permeability_fluid )
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_fluid, &
+ & porosity=porosity_fluid, &
+ & permeability=permeability_fluid )
```
Add porous material to kernel, and deallocate the region.
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- !!
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+!!
+CALL region%Deallocate()
```
## AddFluidMaterial
@@ -347,24 +347,24 @@ Add porous material to kernel, and deallocate the region.
- [[STDBE511_#AddFluidMaterial]]
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd, meshID=[1,2])
- CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
- !!
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=massdensity_fluid, &
- & dynamicViscosity=dynamicViscosity )
- !!
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region )
- !!
- CALL region%Deallocate()
- !!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd, meshID=[1,2])
+CALL region%Add(dim=obj%nsd-1, meshID=materialInterfaces )
+!!
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=massdensity_fluid, &
+ & dynamicViscosity=dynamicViscosity )
+!!
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region )
+!!
+CALL region%Deallocate()
+!!
```
## DirichletBoundaryCondition
@@ -380,84 +380,84 @@ Select the mesh boundary where $v_{x}=0$ is prescribed.
- [[MeshSelection_#Set]]
```fortran
- CALL region%Initiate( &
- & isSelectionByMeshID=.TRUE., &
- & isSelectionByNodeNum=.TRUE. )
- CALL region%Add(dim=obj%nsd-1, meshID=[1,2,6])
- CALL region%Add( &
- & nodenum=dom%getInternalNptrs( dim=obj%nsd-1, entityNum=[3,5] ) )
- CALL region%Set()
+CALL region%Initiate( &
+ & isSelectionByMeshID=.TRUE., &
+ & isSelectionByNodeNum=.TRUE. )
+CALL region%Add(dim=obj%nsd-1, meshID=[1,2,6])
+CALL region%Add( &
+ & nodenum=dom%getInternalNptrs( dim=obj%nsd-1, entityNum=[3,5] ) )
+CALL region%Set()
```
Set the parameters for dirichlet boundary condition. [[NeumannBC_#SetDirichletBCParam]]
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Add dirichlet boundary condition to kernel [[STDBE511_#AddVelocityDirichletBC]], [[STDBE511_#GetVelocityDirichletBCPointer]]
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=1, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=1, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Vy=0
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vy=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vy=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[1,2,3,4,5,6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[1,2,3,4,5,6])
+CALL region%Set()
```
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=2, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=2, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Vx=Vtop
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=V", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=V", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[4])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[4])
+CALL region%Set()
```
```fortran
- CALL obj%AddVelocityDirichletBC(dbcNo=3, param=param, boundary=region)
- dbc => obj%GetVelocityDirichletBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=V_TOP)
- dbc => NULL()
- CALL region%Deallocate()
+CALL obj%AddVelocityDirichletBC(dbcNo=3, param=param, boundary=region)
+dbc => obj%GetVelocityDirichletBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=V_TOP)
+dbc => NULL()
+CALL region%Deallocate()
```
### Pressure boundary condition
@@ -465,24 +465,24 @@ Add dirichlet boundary condition to kernel [[STDBE511_#AddVelocityDirichletBC]],
Usually, we do not apply Dirichlet boundary condition for pressure.
```fortran
- IF( tDirichletBCForPressure .GT. 0 ) THEN
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="P=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- CALL region%Initiate( &
- & isSelectionByNodeNum=.TRUE. )
- CALL region%Add( nodenum=[refPressureNode])
- CALL region%Set()
- !!
- CALL obj%AddPressureDirichletBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureDirichletBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
- END IF
+IF( tDirichletBCForPressure .GT. 0 ) THEN
+ CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="P=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+ CALL region%Initiate( &
+ & isSelectionByNodeNum=.TRUE. )
+ CALL region%Add( nodenum=[refPressureNode])
+ CALL region%Set()
+ !!
+ CALL obj%AddPressureDirichletBC(dbcNo=1, param=param, boundary=region)
+ CALL region%Deallocate()
+ dbc => obj%GetPressureDirichletBCPointer(dbcNo=1)
+ CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+ dbc => NULL()
+END IF
```
## Set
@@ -496,95 +496,95 @@ CALL obj%Set( )
Related to output and backup
```fortran
- backupNumber = 0
- CALL outfile%Initiate(outfilePrefix//tostring(backupNumber)//'.h5', "NEW")
- CALL outfile%Open()
- CALL Display( "main debug-1" )
+backupNumber = 0
+CALL outfile%Initiate(outfilePrefix//tostring(backupNumber)//'.h5', "NEW")
+CALL outfile%Open()
+CALL Display( "main debug-1" )
```
### Loop-Start: TimeStep
```fortran
- DO its = 1, TotalTimeSteps
- CALL Display( 'TimeStep = ' // tostring(its) )
- CALL obj%setCurrentTimeStep(its)
+DO its = 1, TotalTimeSteps
+ CALL Display( 'TimeStep = ' // tostring(its) )
+ CALL obj%setCurrentTimeStep(its)
```
#### Loop-Start: Iteration
```fortran
- DO iter = 1, maxIter
- CALL Display( " Iteration = " // tostring(iter) )
- CALL obj%setIterationNumber(iter)
- CALL obj%ApplyDirichletBC()
- CALL obj%AssembleTanmat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
- CALL obj%Solve()
- convg = obj%isConverged()
- CALL obj%UpdateIteration(reset=resetIteration)
- IF( convg ) EXIT
- END DO
+DO iter = 1, maxIter
+ CALL Display( " Iteration = " // tostring(iter) )
+ CALL obj%setIterationNumber(iter)
+ CALL obj%ApplyDirichletBC()
+ CALL obj%AssembleTanmat()
+ CALL obj%AssembleRHS()
+ CALL obj%Assemble()
+ CALL obj%Solve()
+ convg = obj%isConverged()
+ CALL obj%UpdateIteration(reset=resetIteration)
+ IF( convg ) EXIT
+END DO
```
#### Loop-End: Iteration
```fortran
- IF( .not. convg ) THEN
- CALL Display( "program stopped, no convergence" )
- STOP
- END IF
+IF( .not. convg ) THEN
+ CALL Display( "program stopped, no convergence" )
+ STOP
+END IF
```
```fortran
- IF( obj%isSteadyState() .OR. its .EQ. TotalTimeSteps ) THEN
- CALL Display( 'STEADY STATE REACHED' )
- CALL statefile%Initiate(statePrefix//tostring(its)//".h5", "NEW")
- CALL statefile%Open()
- CALL obj%WriteData(statefile, "")
- CALL statefile%Deallocate()
- EXIT
- END IF
+IF( obj%isSteadyState() .OR. its .EQ. TotalTimeSteps ) THEN
+ CALL Display( 'STEADY STATE REACHED' )
+ CALL statefile%Initiate(statePrefix//tostring(its)//".h5", "NEW")
+ CALL statefile%Open()
+ CALL obj%WriteData(statefile, "")
+ CALL statefile%Deallocate()
+ EXIT
+END IF
```
```fortran
- CALL obj%Update(reset=resetTimeStep)
+CALL obj%Update(reset=resetTimeStep)
```
```fortran
- IF( MOD( its, writeFrequency ) .EQ. 0 ) THEN
- CALL obj%WriteData(outfile, "/"//tostring(its))
- END IF
+IF( MOD( its, writeFrequency ) .EQ. 0 ) THEN
+ CALL obj%WriteData(outfile, "/"//tostring(its))
+END IF
```
```fortran
- IF( MOD( its, SaveStateFrequency ) .EQ. 0 ) THEN
- backupNumber=backupNumber+1
- CALL statefile%Initiate(statePrefix//tostring(its)//".h5", "NEW")
- CALL statefile%Open()
- CALL obj%WriteData(statefile, "")
- CALL statefile%Deallocate()
- !!
- CALL outfile%Deallocate()
- CALL outfile%Initiate( &
- & outfilePrefix//tostring(backupNumber)//'.h5', "NEW")
- CALL outfile%Open()
- END IF
+IF( MOD( its, SaveStateFrequency ) .EQ. 0 ) THEN
+ backupNumber=backupNumber+1
+ CALL statefile%Initiate(statePrefix//tostring(its)//".h5", "NEW")
+ CALL statefile%Open()
+ CALL obj%WriteData(statefile, "")
+ CALL statefile%Deallocate()
+ !!
+ CALL outfile%Deallocate()
+ CALL outfile%Initiate( &
+ & outfilePrefix//tostring(backupNumber)//'.h5', "NEW")
+ CALL outfile%Open()
+END IF
```
### Loop-End: TimeStep
```fortran
- END DO
+END DO
```
!!! note "cleanup"
```fortran
- CALL outfile%Deallocate()
- CALL obj%Deallocate()
- CALL dom%Deallocate()
- CALL param%Deallocate(); CALL FPL_FINALIZE()
+CALL outfile%Deallocate()
+CALL obj%Deallocate()
+CALL dom%Deallocate()
+CALL param%Deallocate(); CALL FPL_FINALIZE()
```
```fortran
diff --git a/docs/docs-api/_STDBE511/index.md b/docs/docs-api/_STDBE511/index.md
index eb37ffa6..c976fb00 100644
--- a/docs/docs-api/_STDBE511/index.md
+++ b/docs/docs-api/_STDBE511/index.md
@@ -11,7 +11,6 @@ tags:
- kernels
---
-
# STDBE511
import DocCardList from '@theme/DocCardList';
diff --git a/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/LidDrivenCavity_test_1.md b/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/LidDrivenCavity_test_1.md
index a27ea34f..a8023fb4 100644
--- a/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/LidDrivenCavity_test_1.md
+++ b/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/LidDrivenCavity_test_1.md
@@ -11,9 +11,9 @@ This example solves a benchmark problem of LidDrivenCavity.
## Usages
!!! note ""
- IMPORT the modules.
+IMPORT the modules.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -24,318 +24,318 @@ PROGRAM main
```
!!! note ""
- Define the variables.
+Define the variables.
```fortran
- TYPE(STDarcyBrinkmann_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFileForPressure
- TYPE(HDF5File_) :: domainFileForVelocity
- TYPE( HDF5File_ ) :: outfile
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: domainForPressure
- TYPE(Domain_), TARGET :: domainForVelocity
- TYPE(DomainPointer_) :: domains(2)
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForPressure = "./mesh.h5"
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForVelocity = "./mesh.h5"
- CHARACTER( LEN = * ), PARAMETER :: &
- & outfileName="./LidDrivenCavity.output.h5"
- INTEGER(I4B), PARAMETER :: nnt = 2
- INTEGER(I4B), PARAMETER :: TotalTimeSteps = 1
- REAL(DFP), PARAMETER :: startTime=0.0_DFP
- REAL(DFP), PARAMETER :: endTime=1.0_DFP
- REAL(DFP), PARAMETER :: dt=0.01_DFP
- INTEGER( I4B ), PARAMETER :: maxIter=5
- REAL( DFP ), PARAMETER :: tol_Pressure=1.0D-8
- REAL( DFP ), PARAMETER :: tol_Velocity=1.0D-8
- INTEGER(I4B), PARAMETER :: tPorousMaterials = 1
- INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
- INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
- INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = 1
- INTEGER(I4B), PARAMETER :: maxIter_LinSolver = 20 * 100
- INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 20
- REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-8
- REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-12
- INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
- INTEGER(I4B), PARAMETER :: preconditionOption = LIS_GMRES
- REAL(DFP), PARAMETER :: porosity=1.0
- REAL(DFP), PARAMETER :: massdensity_soil=1700.0
- REAL(DFP), PARAMETER :: permeability=1.0D+20
- REAL(DFP), PARAMETER :: massdensity_fluid=1000.0
- REAL(DFP), PARAMETER :: dynamicViscosity=0.001_DFP
- REAL(DFP), PARAMETER :: V_TOP=0.001_DFP
- LOGICAL( LGT ) :: convg
- INTEGER( I4B ) :: iter
- INTEGER( I4B ) :: its
+TYPE(STDarcyBrinkmann_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFileForPressure
+TYPE(HDF5File_) :: domainFileForVelocity
+TYPE( HDF5File_ ) :: outfile
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: domainForPressure
+TYPE(Domain_), TARGET :: domainForVelocity
+TYPE(DomainPointer_) :: domains(2)
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForPressure = "./mesh.h5"
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForVelocity = "./mesh.h5"
+CHARACTER( LEN = * ), PARAMETER :: &
+ & outfileName="./LidDrivenCavity.output.h5"
+INTEGER(I4B), PARAMETER :: nnt = 2
+INTEGER(I4B), PARAMETER :: TotalTimeSteps = 1
+REAL(DFP), PARAMETER :: startTime=0.0_DFP
+REAL(DFP), PARAMETER :: endTime=1.0_DFP
+REAL(DFP), PARAMETER :: dt=0.01_DFP
+INTEGER( I4B ), PARAMETER :: maxIter=5
+REAL( DFP ), PARAMETER :: tol_Pressure=1.0D-8
+REAL( DFP ), PARAMETER :: tol_Velocity=1.0D-8
+INTEGER(I4B), PARAMETER :: tPorousMaterials = 1
+INTEGER(I4B), PARAMETER :: tFluidMaterials = 1
+INTEGER(I4B), PARAMETER :: tDirichletBCForVelocity = 3
+INTEGER(I4B), PARAMETER :: tDirichletBCForPressure = 1
+INTEGER(I4B), PARAMETER :: maxIter_LinSolver = 20 * 100
+INTEGER(I4B), PARAMETER :: KrylovSubspaceSize = 20
+REAL(DFP), PARAMETER :: rtol_LinSolver=1.0D-8
+REAL(DFP), PARAMETER :: atol_LinSolver=1.0D-12
+INTEGER(I4B), PARAMETER :: LinSolver_name = LIS_GMRES
+INTEGER(I4B), PARAMETER :: preconditionOption = LIS_GMRES
+REAL(DFP), PARAMETER :: porosity=1.0
+REAL(DFP), PARAMETER :: massdensity_soil=1700.0
+REAL(DFP), PARAMETER :: permeability=1.0D+20
+REAL(DFP), PARAMETER :: massdensity_fluid=1000.0
+REAL(DFP), PARAMETER :: dynamicViscosity=0.001_DFP
+REAL(DFP), PARAMETER :: V_TOP=0.001_DFP
+LOGICAL( LGT ) :: convg
+INTEGER( I4B ) :: iter
+INTEGER( I4B ) :: its
```
!!! note ""
- Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
+Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note "SetSTDarcyBrinkmannParam"
```fortran
- CALL SetSTDarcyBrinkmannParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & nnt=nnt, &
- & startTime=startTime, &
- & endTime=endTime, &
- & dt=dt, &
- & CoordinateSystem=KERNEL_2D, &
- & maxIter=maxIter, &
- & convergenceType=absoluteConvergence, &
- & toleranceForPressure=tol_pressure, &
- & toleranceForVelocity=tol_velocity, &
- & tPorousMaterials=tPorousMaterials, &
- & tFluidMaterials=tFluidMaterials, &
- & tDirichletBCForPressure=tDirichletBCForPressure, &
- & tDirichletBCForVelocity=tDirichletBCForVelocity, &
- & domainFileForPressure=domainFileNameForPressure, &
- & domainFileForVelocity=domainFileNameForVelocity)
+CALL SetSTDarcyBrinkmannParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=nnt, &
+ & startTime=startTime, &
+ & endTime=endTime, &
+ & dt=dt, &
+ & CoordinateSystem=KERNEL_2D, &
+ & maxIter=maxIter, &
+ & convergenceType=absoluteConvergence, &
+ & toleranceForPressure=tol_pressure, &
+ & toleranceForVelocity=tol_velocity, &
+ & tPorousMaterials=tPorousMaterials, &
+ & tFluidMaterials=tFluidMaterials, &
+ & tDirichletBCForPressure=tDirichletBCForPressure, &
+ & tDirichletBCForVelocity=tDirichletBCForVelocity, &
+ & domainFileForPressure=domainFileNameForPressure, &
+ & domainFileForVelocity=domainFileNameForVelocity)
```
!!! note "LinSolver"
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LinSolver_name,&
- & preconditionOption=NO_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=maxIter_LinSolver, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=KrylovSubspaceSize, &
- & rtol=rtol_LinSolver, &
- & atol=atol_LinSolver )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LinSolver_name,&
+ & preconditionOption=NO_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=maxIter_LinSolver, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=KrylovSubspaceSize, &
+ & rtol=rtol_LinSolver, &
+ & atol=atol_LinSolver )
```
!!! note "domainForPressure"
```fortran
- CALL domainFileForPressure%Initiate( &
- & filename=domainFileNameForPressure, &
- & MODE="READ")
- CALL domainFileForPressure%Open()
- CALL domainForPressure%Initiate(domainFileForPressure, "")
- CALL domainFileForPressure%Deallocate()
+CALL domainFileForPressure%Initiate( &
+ & filename=domainFileNameForPressure, &
+ & MODE="READ")
+CALL domainFileForPressure%Open()
+CALL domainForPressure%Initiate(domainFileForPressure, "")
+CALL domainFileForPressure%Deallocate()
```
!!! note "domainForVelocity"
```fortran
- CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
- & MODE="READ")
- CALL domainFileForVelocity%Open()
- CALL domainForVelocity%Initiate(domainFileForVelocity, "")
- CALL domainFileForVelocity%Deallocate()
+CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
+& MODE="READ")
+CALL domainFileForVelocity%Open()
+CALL domainForVelocity%Initiate(domainFileForVelocity, "")
+CALL domainFileForVelocity%Deallocate()
```
!!! note "domains"
- Packing domains in a vector of [[DomainPointer_]]
+Packing domains in a vector of [[DomainPointer_]]
```fortran
- domains(1)%ptr => domainForVelocity
- domains(2)%ptr => domainForPressure
+domains(1)%ptr => domainForVelocity
+domains(2)%ptr => domainForPressure
```
!!! note "STDarcyBrinkmann%Initiate"
```fortran
- CALL obj%Initiate(param=param, domains=domains)
+CALL obj%Initiate(param=param, domains=domains)
```
!!! note "AddPorousMaterial"
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- !!
- CALL region%Add(dim=obj%nsd, meshID=[1])
- !!
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=massdensity_soil, &
- & porosity=porosity, &
- & permeability=permeability )
- !!
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- !!
- CALL region%Deallocate()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+!!
+CALL region%Add(dim=obj%nsd, meshID=[1])
+!!
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=massdensity_soil, &
+ & porosity=porosity, &
+ & permeability=permeability )
+!!
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+!!
+CALL region%Deallocate()
```
!!! note "AddFluidMaterial"
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- !!
- CALL region%Add(dim=obj%nsd, meshID=[1])
- !!
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=massdensity_fluid, &
- & dynamicViscosity=dynamicViscosity )
- !!
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region )
- !!
- CALL region%Deallocate()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+!!
+CALL region%Add(dim=obj%nsd, meshID=[1])
+!!
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=massdensity_fluid, &
+ & dynamicViscosity=dynamicViscosity )
+!!
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region )
+!!
+CALL region%Deallocate()
```
!!! note "AddVelocityBC"
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- !!
- CALL region%Initiate( &
- & isSelectionByMeshID=.TRUE., &
- & isSelectionByNodeNum=.TRUE. )
- CALL region%Add(dim=obj%nsd-1, meshID=[1])
- CALL region%Add(nodenum=&
- & domainForVelocity%getInternalNptrs( &
- & dim=obj%nsd-1, &
- & entityNum=[2,4] ) )
- CALL region%Set()
- !!
- CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+!!
+CALL region%Initiate( &
+ & isSelectionByMeshID=.TRUE., &
+ & isSelectionByNodeNum=.TRUE. )
+CALL region%Add(dim=obj%nsd-1, meshID=[1])
+CALL region%Add(nodenum=&
+ & domainForVelocity%getInternalNptrs( &
+ & dim=obj%nsd-1, &
+ & entityNum=[2,4] ) )
+CALL region%Set()
+!!
+CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "AddVelocityBC"
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vy=0", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- !!
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[1])
- CALL region%Add(nodenum=&
- & domainForVelocity%getInternalNptrs( &
- & dim=obj%nsd-1, &
- & entityNum=[2,4] ) )
- CALL region%Set()
- !!
- CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vy=0", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+!!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[1])
+CALL region%Add(nodenum=&
+ & domainForVelocity%getInternalNptrs( &
+ & dim=obj%nsd-1, &
+ & entityNum=[2,4] ) )
+CALL region%Set()
+!!
+CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "AddVelocityBC"
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="Vx=V", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- !!
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[3])
- CALL region%Set()
- !!
- CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=V_TOP)
- dbc => NULL()
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="Vx=V", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+!!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[3])
+CALL region%Set()
+!!
+CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=V_TOP)
+dbc => NULL()
```
!!! note "AddPressureBC"
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="P=0", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
- !!
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=obj%nsd-1, meshID=[3])
- CALL region%Set()
- !!
- CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="P=0", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
+!!
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=obj%nsd-1, meshID=[3])
+CALL region%Set()
+!!
+CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetPressureBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "Set"
```fortran
- CALL obj%Set( )
- !!CALL obj%Display( 'obj: ' )
+CALL obj%Set( )
+!!CALL obj%Display( 'obj: ' )
```
```fortran
- CALL outfile%Initiate(outfileName, "NEW")
- CALL outfile%Open()
+CALL outfile%Initiate(outfileName, "NEW")
+CALL outfile%Open()
```
!!! note "AssembleTanMat"
```fortran
- DO its = 1, TotalTimeSteps
- obj%currentTimeStep = its
- CALL obj%ApplyDirichletBC()
- DO iter = 1, maxIter
- obj%iterdata%iterationNumber=iter
- CALL obj%AssembleTanmat()
- CALL obj%AssembleRHS()
- CALL obj%Assemble()
- CALL obj%Solve()
- convg = obj%isConverged()
- CALL obj%sol%Display( &
- & 'main, solution at iteration ' &
- & // tostring( iter ), &
- & unitno=10 )
- IF( convg ) THEN
- CALL obj%Update(reset=.FALSE.)
- EXIT
- ELSE
- CALL obj%UpdateIteration(reset=.FALSE.)
- END IF
- END DO
- !!
- IF( .NOT. convg ) THEN
- CALL Display( 'No convergence achieved, stopped ' )
- STOP
+DO its = 1, TotalTimeSteps
+ obj%currentTimeStep = its
+ CALL obj%ApplyDirichletBC()
+ DO iter = 1, maxIter
+ obj%iterdata%iterationNumber=iter
+ CALL obj%AssembleTanmat()
+ CALL obj%AssembleRHS()
+ CALL obj%Assemble()
+ CALL obj%Solve()
+ convg = obj%isConverged()
+ CALL obj%sol%Display( &
+ & 'main, solution at iteration ' &
+ & // tostring( iter ), &
+ & unitno=10 )
+ IF( convg ) THEN
+ CALL obj%Update(reset=.FALSE.)
+ EXIT
ELSE
- CALL obj%WriteData(outfile, "/"//tostring(its))
+ CALL obj%UpdateIteration(reset=.FALSE.)
END IF
END DO
+ !!
+ IF( .NOT. convg ) THEN
+ CALL Display( 'No convergence achieved, stopped ' )
+ STOP
+ ELSE
+ CALL obj%WriteData(outfile, "/"//tostring(its))
+ END IF
+END DO
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/paraviz.md b/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/paraviz.md
index 5c4723c6..9eb68d30 100644
--- a/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/paraviz.md
+++ b/docs/docs-api/_STDarcyBrinkmann/LidDrivenCavity/paraviz.md
@@ -10,7 +10,7 @@ tags:
# LidDrivenCavity paraview visualization
!!! note ""
- This example converts [[HDF5File_]] data into paraview format.
+This example converts [[HDF5File_]] data into paraview format.
## Modules & Classes
@@ -19,7 +19,7 @@ tags:
## Usages
!!! note ""
- IMPORT the modules.
+IMPORT the modules.
```fortran
PROGRAM main
@@ -45,146 +45,146 @@ PROGRAM main
```
```fortran
- CALL Display("domainfilenameForPressure")
- READ (*, "(A)") domainfilenameForPressure
- CALL Display("domainfilenameForVelocity")
- READ (*, "(A)") domainfilenameForVelocity
- CALL Display("outfilename")
- READ (*, "(A)") outfilename
- CALL Display("vtkfilename")
- READ (*, "(A)") vtkfilename
+CALL Display("domainfilenameForPressure")
+READ (*, "(A)") domainfilenameForPressure
+CALL Display("domainfilenameForVelocity")
+READ (*, "(A)") domainfilenameForVelocity
+CALL Display("outfilename")
+READ (*, "(A)") outfilename
+CALL Display("vtkfilename")
+READ (*, "(A)") vtkfilename
```
```fortran
- CALL domainfileForPressure%initiate( &
- & filename=domainfilenameForPressure, &
- & mode="READ")
- CALL domainfileForPressure%OPEN()
+CALL domainfileForPressure%initiate( &
+ & filename=domainfilenameForPressure, &
+ & mode="READ")
+CALL domainfileForPressure%OPEN()
```
```fortran
- CALL domainfileForVelocity( &
- & filename=domainfilenameForVelocity, &
- & mode="READ")
- CALL domainfileForVelocity%OPEN()
+CALL domainfileForVelocity( &
+ & filename=domainfilenameForVelocity, &
+ & mode="READ")
+CALL domainfileForVelocity%OPEN()
```
```fortran
- CALL outfile%initiate(filename=outfilename, mode="READ")
- CALL outfile%OPEN()
+CALL outfile%initiate(filename=outfilename, mode="READ")
+CALL outfile%OPEN()
```
```fortran
- CALL domForPressure%Initiate( &
- & hdf5=domainfileForPressure, &
- & group="")
- CALL pressure0%IMPORT( &
- & hdf5=outfile, &
- & group="1/pressure0", &
- & dom=domForPressure)
+CALL domForPressure%Initiate( &
+ & hdf5=domainfileForPressure, &
+ & group="")
+CALL pressure0%IMPORT( &
+ & hdf5=outfile, &
+ & group="1/pressure0", &
+ & dom=domForPressure)
```
```fortran
- CALL domForVelocity%Initiate( &
- & hdf5=domainfileForVelocity, &
- & group="")
- CALL velocity0%IMPORT( &
- & hdf5=outfile, &
- & group="1/velocity0", &
- & dom=domForVelocity)
+CALL domForVelocity%Initiate( &
+ & hdf5=domainfileForVelocity, &
+ & group="")
+CALL velocity0%IMPORT( &
+ & hdf5=outfile, &
+ & group="1/velocity0", &
+ & dom=domForVelocity)
```
```fortran
- CALL vtkfile%InitiateVTKFile( &
- & filename=vtkfilename, &
- & mode="NEW", &
- & DataFormat=VTK_BINARY_APPENDED, &
- & DataStructureType=VTK_UnStructuredGrid)
+CALL vtkfile%InitiateVTKFile( &
+ & filename=vtkfilename, &
+ & mode="NEW", &
+ & DataFormat=VTK_BINARY_APPENDED, &
+ & DataStructureType=VTK_UnStructuredGrid)
```
```fortran
- DO imesh = 1, domForPressure%getTotalMesh(domForPressure%getNSD())
- !!
- meshPtr => domForPressure%getMeshPointer( &
- & dim=domForPressure%getNSD(), &
- & entityNum=imesh)
- !!
- CALL meshPtr%getNodeCoord( &
- & nodeCoord=mat1, &
- & hdf5=domainfileForPressure, &
- & group="/nodeCoord")
- !!
- CALL meshPtr%ExportToVTK( &
- & vtkfile=vtkfile, &
- & nodecoord=mat1, &
- & OpenTag=.TRUE., &
- & Content=.TRUE., &
- & CloseTag=.FALSE.)
- !!
- CALL vtkFile%WriteDataArray( &
- & location=String('node'), &
- & action=String('open'))
- !!
- nptrs = meshPtr%getNptrs()
- !!
- CALL pressure0%Get( &
- & globalNode=nptrs, &
- & VALUE=vec1 )
- !!
- CALL vtkFile%WriteDataArray( &
- & name=String("pressure0"), &
- & x=vec1, numberOfComponents=1 )
- !!
- CALL vtkFile%WriteDataArray( &
- & location=String('node'), &
- & action=String('close'))
- !!
- CALL vtkfile%WritePiece()
- !!
- END DO
+DO imesh = 1, domForPressure%getTotalMesh(domForPressure%getNSD())
+ !!
+ meshPtr => domForPressure%getMeshPointer( &
+ & dim=domForPressure%getNSD(), &
+ & entityNum=imesh)
+ !!
+ CALL meshPtr%getNodeCoord( &
+ & nodeCoord=mat1, &
+ & hdf5=domainfileForPressure, &
+ & group="/nodeCoord")
+ !!
+ CALL meshPtr%ExportToVTK( &
+ & vtkfile=vtkfile, &
+ & nodecoord=mat1, &
+ & OpenTag=.TRUE., &
+ & Content=.TRUE., &
+ & CloseTag=.FALSE.)
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & location=String('node'), &
+ & action=String('open'))
+ !!
+ nptrs = meshPtr%getNptrs()
+ !!
+ CALL pressure0%Get( &
+ & globalNode=nptrs, &
+ & VALUE=vec1 )
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & name=String("pressure0"), &
+ & x=vec1, numberOfComponents=1 )
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & location=String('node'), &
+ & action=String('close'))
+ !!
+ CALL vtkfile%WritePiece()
+ !!
+END DO
```
```fortran
- DO imesh = 1, domForVelocity%getTotalMesh(domForVelocity%getNSD())
- !!
- meshPtr => domForVelocity%getMeshPointer( &
- & dim=domForVelocity%getNSD(), &
- & entityNum=imesh)
- !!
- CALL meshPtr%getNodeCoord( &
- & nodeCoord=mat1, &
- & hdf5=domainfileForVelocity, &
- & group="/nodeCoord")
- !!
- CALL meshPtr%ExportToVTK( &
- & vtkfile=vtkfile, &
- & nodecoord=mat1, &
- & OpenTag=.TRUE., &
- & Content=.TRUE., &
- & CloseTag=.FALSE.)
- !!
- CALL vtkFile%WriteDataArray( &
- & location=String('node'), &
- & action=String('open'))
- !!
- nptrs = meshPtr%getNptrs()
- !!
- CALL velocity0%Get( &
- & globalNode=nptrs, &
- & VALUE=mat1)
- !!
- CALL vtkFile%WriteDataArray( &
- & name=String("velocity0"), &
- & x=mat1, &
- & numberOfComponents=domainForVelocity%getNSD())
- !!
- CALL vtkFile%WriteDataArray( &
- & location=String('node'), &
- & action=String('close'))
- !!
- CALL vtkfile%WritePiece()
- !!
- END DO
+DO imesh = 1, domForVelocity%getTotalMesh(domForVelocity%getNSD())
+ !!
+ meshPtr => domForVelocity%getMeshPointer( &
+ & dim=domForVelocity%getNSD(), &
+ & entityNum=imesh)
+ !!
+ CALL meshPtr%getNodeCoord( &
+ & nodeCoord=mat1, &
+ & hdf5=domainfileForVelocity, &
+ & group="/nodeCoord")
+ !!
+ CALL meshPtr%ExportToVTK( &
+ & vtkfile=vtkfile, &
+ & nodecoord=mat1, &
+ & OpenTag=.TRUE., &
+ & Content=.TRUE., &
+ & CloseTag=.FALSE.)
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & location=String('node'), &
+ & action=String('open'))
+ !!
+ nptrs = meshPtr%getNptrs()
+ !!
+ CALL velocity0%Get( &
+ & globalNode=nptrs, &
+ & VALUE=mat1)
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & name=String("velocity0"), &
+ & x=mat1, &
+ & numberOfComponents=domainForVelocity%getNSD())
+ !!
+ CALL vtkFile%WriteDataArray( &
+ & location=String('node'), &
+ & action=String('close'))
+ !!
+ CALL vtkfile%WritePiece()
+ !!
+END DO
```
```fortran
diff --git a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_13.md b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_13.md
index ce639a6b..93756140 100644
--- a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_13.md
+++ b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_13.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `Set()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -11,320 +11,317 @@ PROGRAM main
```
!!! note ""
- Define the variables.
+Define the variables.
```fortran
- TYPE(STDarcyBrinkmann_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFileForPressure
- TYPE(HDF5File_) :: domainFileForVelocity
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: domainForPressure
- TYPE(Domain_), TARGET :: domainForVelocity
- TYPE(DomainPointer_) :: domains(2)
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForPressure = "./mesh_tri3.h5"
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForVelocity = "./mesh_tri6.h5"
+TYPE(STDarcyBrinkmann_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFileForPressure
+TYPE(HDF5File_) :: domainFileForVelocity
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: domainForPressure
+TYPE(Domain_), TARGET :: domainForVelocity
+TYPE(DomainPointer_) :: domains(2)
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForPressure = "./mesh_tri3.h5"
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForVelocity = "./mesh_tri6.h5"
```
!!! note ""
- Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
+Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Setting parameters for an instance of [[STDarcyBrinkmann_]].
+Setting parameters for an instance of [[STDarcyBrinkmann_]].
```fortran
- CALL SetSTDarcyBrinkmannParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & nnt=2, &
- & startTime=0.0_DFP, &
- & endTime=10.0_DFP, &
- & dt=0.001_DFP, &
- & CoordinateSystem=KERNEL_2D, &
- & tPorousMaterials=2, &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & domainFileForPressure=domainFileNameForPressure, &
- & domainFileForVelocity=domainFileNameForVelocity)
+CALL SetSTDarcyBrinkmannParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=2, &
+ & startTime=0.0_DFP, &
+ & endTime=10.0_DFP, &
+ & dt=0.001_DFP, &
+ & CoordinateSystem=KERNEL_2D, &
+ & tPorousMaterials=2, &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & domainFileForPressure=domainFileNameForPressure, &
+ & domainFileForVelocity=domainFileNameForVelocity)
```
!!! note ""
- Setting [[LinSolver_]] parameters.
-
+Setting [[LinSolver_]] parameters.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=LEFT_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=LEFT_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note ""
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
```fortran
- CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
- & MODE="READ")
- CALL domainFileForPressure%Open()
- CALL domainForPressure%Initiate(domainFileForPressure, "")
+CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
+ & MODE="READ")
+CALL domainFileForPressure%Open()
+CALL domainForPressure%Initiate(domainFileForPressure, "")
```
!!! note ""
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
```fortran
- CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
- & MODE="READ")
- CALL domainFileForVelocity%Open()
- CALL domainForVelocity%Initiate(domainFileForVelocity, "")
+CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
+& MODE="READ")
+CALL domainFileForVelocity%Open()
+CALL domainForVelocity%Initiate(domainFileForVelocity, "")
```
!!! note ""
- Packing domains in a vector of [[DomainPointer_]]
+Packing domains in a vector of [[DomainPointer_]]
```fortran
- domains(1)%ptr => domainForVelocity
- domains(2)%ptr => domainForPressure
+domains(1)%ptr => domainForVelocity
+domains(2)%ptr => domainForPressure
```
!!! note ""
- DEALLOCATE domain files
+DEALLOCATE domain files
```fortran
- CALL domainFileForPressure%Deallocate()
- CALL domainFileForVelocity%Deallocate()
+CALL domainFileForPressure%Deallocate()
+CALL domainFileForVelocity%Deallocate()
```
!!! note ""
- Initiate an instance of [[STDarcyBrinkmann_]]
+Initiate an instance of [[STDarcyBrinkmann_]]
```fortran
- CALL obj%Initiate(param=param, domains=domains)
+CALL obj%Initiate(param=param, domains=domains)
```
!!! note "porousMaterial 1"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
- CALL SetPorousMaterialParam(param=param, name="porousMaterial", &
- & massDensity=1700.0_DFP, stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
+CALL SetPorousMaterialParam(param=param, name="porousMaterial", &
+ & massDensity=1700.0_DFP, stressStrainModel="LinearPoroElasticModel")
```
Adding material parameters.
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial(materialNo=1, materialName="porousMaterial", &
- & param=param, region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial(materialNo=1, materialName="porousMaterial", &
+ & param=param, region=region)
+CALL region%Deallocate()
```
!!! note "porousMaterial 2"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
- CALL SetPorousMaterialParam(param=param, name="porousMaterial", &
- & massDensity=1700.0_DFP, stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
+CALL SetPorousMaterialParam(param=param, name="porousMaterial", &
+ & massDensity=1700.0_DFP, stressStrainModel="LinearPoroElasticModel")
```
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial(materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial(materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, region=region)
+CALL region%Deallocate()
```
!!! note "fluidMaterial 1"
- Adding a fluid material.
+Adding a fluid material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
```
!!! note "SetFluidMaterialParam"
- Setting PARAMETER for [[FluidMaterial_]]
+Setting PARAMETER for [[FluidMaterial_]]
```fortran
- CALL SetFluidMaterialParam(param=param, name="fluidMaterial", &
- & massDensity=1000.0_DFP, stressStrainModel="NewtonianFluidModel")
+CALL SetFluidMaterialParam(param=param, name="fluidMaterial", &
+ & massDensity=1000.0_DFP, stressStrainModel="NewtonianFluidModel")
```
!!! note "SetNewtonianFluidModelParam"
- Setting parameters for [[NewtonianFluidModel_]] which is a material model
+Setting parameters for [[NewtonianFluidModel_]] which is a material model
```fortran
- CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
+CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
```
Adding fluid material.
```fortran
- CALL obj%AddFluidMaterial(materialNo=1, materialName="fluidMaterial", &
- & param=param, region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial(materialNo=1, materialName="fluidMaterial", &
+ & param=param, region=region)
+CALL region%Deallocate()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
First we set the necessary parameters.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroV1", &
- & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="ZeroV1", &
+ & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
```
Now we SELECT the region, which is top and bottom boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
+CALL region%Set()
```
Now we CALL `AddVelocityBC` method of [[STDarcyBrinkmann_]]. THEN we get the POINTER to the [[NeumannBC_]] which is created by the `AddVelocityBC` method. THEN we CALL Set method on this POINTER.
```fortran
- CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
```fortran
- CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
- & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
+ & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
```
Now we SELECT the inlet region, which is the left-boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[6])
+CALL region%Set()
```
Now that we have build the inlet region, let us add it to kernel for the velocity Dirichlet boundary condition.
```fortran
- CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
Let us set the parameter for [[NeumannBC_]]
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroV2", &
- & idof=2, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="ZeroV2", &
+ & idof=2, nodalValueType=Constant, useFunction=.FALSE.)
```
Now select the region, which is the entire boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
+CALL region%Set()
```
Adding region to the kernel for setting boundary condition for velocity field.
```fortran
- CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
+Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
Define the parameters for constructing [[NeumannBC_]] instance.
```fortran
- CALL SetDirichletBCParam(param=param, name="ZeroP", &
- & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="ZeroP", &
+ & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
```
Construct an outlet region.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[3])
+CALL region%Set()
```
Add the boundary condition and outlet region of the kernel by using the method called `AddPressureBC`
```fortran
- CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP); dbc => NULL()
+CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetPressureBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP); dbc => NULL()
```
!!! success "Set"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL Display("Setting kernel")
- CALL obj%Set()
- CALL Display("Setting kernel [OK!]")
+CALL Display("Setting kernel")
+CALL obj%Set()
+CALL Display("Setting kernel [OK!]")
```
!!! note ""
- Let see the content of the kernel on the terminal screen by using `Display` method.
+Let see the content of the kernel on the terminal screen by using `Display` method.
```fortran
- CALL obj%Display("")
+CALL obj%Display("")
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_14.md b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_14.md
index f571aa9d..6783d89c 100644
--- a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_14.md
+++ b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_14.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `AssembleTanMat()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -11,353 +11,351 @@ PROGRAM main
```
!!! note ""
- Define the variables.
+Define the variables.
```fortran
- TYPE(STDarcyBrinkmann_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFileForPressure
- TYPE(HDF5File_) :: domainFileForVelocity
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: domainForPressure
- TYPE(Domain_), TARGET :: domainForVelocity
- TYPE(DomainPointer_) :: domains(2)
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForPressure = "./mesh_tri3.h5"
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForVelocity = "./mesh_tri6.h5"
+TYPE(STDarcyBrinkmann_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFileForPressure
+TYPE(HDF5File_) :: domainFileForVelocity
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: domainForPressure
+TYPE(Domain_), TARGET :: domainForVelocity
+TYPE(DomainPointer_) :: domains(2)
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForPressure = "./mesh_tri3.h5"
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForVelocity = "./mesh_tri6.h5"
```
!!! note ""
- Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
+Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Setting parameters for an instance of [[STDarcyBrinkmann_]].
+Setting parameters for an instance of [[STDarcyBrinkmann_]].
```fortran
- CALL SetSTDarcyBrinkmannParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & nnt=2, &
- & startTime=0.0_DFP, &
- & endTime=10.0_DFP, &
- & dt=0.001_DFP, &
- & CoordinateSystem=KERNEL_2D, &
- & tPorousMaterials=2, &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & domainFileForPressure=domainFileNameForPressure, &
- & domainFileForVelocity=domainFileNameForVelocity)
+CALL SetSTDarcyBrinkmannParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=2, &
+ & startTime=0.0_DFP, &
+ & endTime=10.0_DFP, &
+ & dt=0.001_DFP, &
+ & CoordinateSystem=KERNEL_2D, &
+ & tPorousMaterials=2, &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & domainFileForPressure=domainFileNameForPressure, &
+ & domainFileForVelocity=domainFileNameForVelocity)
```
!!! note ""
- Setting [[LinSolver_]] parameters.
+Setting [[LinSolver_]] parameters.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=LEFT_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=LEFT_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note "domainForPressure"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
```fortran
- CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
- & MODE="READ")
- CALL domainFileForPressure%Open()
- CALL domainForPressure%Initiate(domainFileForPressure, "")
+CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
+ & MODE="READ")
+CALL domainFileForPressure%Open()
+CALL domainForPressure%Initiate(domainFileForPressure, "")
```
!!! note "domainForVelocity"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
```fortran
- CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
- & MODE="READ")
- CALL domainFileForVelocity%Open()
- CALL domainForVelocity%Initiate(domainFileForVelocity, "")
+CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
+& MODE="READ")
+CALL domainFileForVelocity%Open()
+CALL domainForVelocity%Initiate(domainFileForVelocity, "")
```
!!! note "domains"
- Packing domains in a vector of [[DomainPointer_]]
+Packing domains in a vector of [[DomainPointer_]]
```fortran
- domains(1)%ptr => domainForVelocity
- domains(2)%ptr => domainForPressure
+domains(1)%ptr => domainForVelocity
+domains(2)%ptr => domainForPressure
```
!!! note ""
- deallocate domain files
+deallocate domain files
```fortran
- CALL domainFileForPressure%Deallocate()
- CALL domainFileForVelocity%Deallocate()
+CALL domainFileForPressure%Deallocate()
+CALL domainFileForVelocity%Deallocate()
```
!!! note "Initiate STDarcyBrinkmann"
- Initiate an instance of [[STDarcyBrinkmann_]]
+Initiate an instance of [[STDarcyBrinkmann_]]
```fortran
- CALL obj%Initiate(param=param, domains=domains)
+CALL obj%Initiate(param=param, domains=domains)
```
!!! note "porousMaterial 1"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
- CALL SetPorousMaterialParam(param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
+CALL SetPorousMaterialParam(param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
Adding material parameters.
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "porousMaterial 2"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "fluidMaterial 1"
- Adding a fluid material.
+Adding a fluid material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
```
!!! note "SetFluidMaterialParam"
- Setting PARAMETER for [[FluidMaterial_]]
+Setting PARAMETER for [[FluidMaterial_]]
```fortran
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity=0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel")
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity=0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel")
```
!!! note "SetNewtonianFluidModelParam"
- Setting parameters for [[NewtonianFluidModel_]] which is a material model
+Setting parameters for [[NewtonianFluidModel_]] which is a material model
```fortran
- CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
+CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
```
Adding fluid material.
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
First we set the necessary parameters.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now we SELECT the region, which is top and bottom boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
+CALL region%Set()
```
Now we CALL `AddVelocityBC` method of [[STDarcyBrinkmann_]]. THEN we get the POINTER to the [[NeumannBC_]] which is created by the `AddVelocityBC` method. THEN we CALL Set method on this POINTER.
```fortran
- CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
```fortran
- CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
- & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
+ & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
```
Now we SELECT the inlet region, which is the left-boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[6])
+CALL region%Set()
```
Now that we have build the inlet region, let us add it to kernel for the velocity Dirichlet boundary condition.
```fortran
- CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
Let us set the parameter for [[NeumannBC_]]
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now select the region, which is the entire boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
+CALL region%Set()
```
Adding region to the kernel for setting boundary condition for velocity field.
```fortran
- CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
+Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
Define the parameters for constructing [[NeumannBC_]] instance.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroP", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroP", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Construct an outlet region.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[3])
+CALL region%Set()
```
Add the boundary condition and outlet region of the kernel by using the method called `AddPressureBC`
```fortran
- CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetPressureBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! success "Set"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
!!! success "AssembleTanMat"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- !!CALL obj%Display('')
- CALL obj%AssembleTanmat()
+!!CALL obj%Display('')
+CALL obj%AssembleTanmat()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_15.md b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_15.md
index 082c17c8..f9e3769c 100644
--- a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_15.md
+++ b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_15.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `Assemble()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -11,353 +11,351 @@ PROGRAM main
```
!!! note ""
- Define the variables.
+Define the variables.
```fortran
- TYPE(STDarcyBrinkmann_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFileForPressure
- TYPE(HDF5File_) :: domainFileForVelocity
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: domainForPressure
- TYPE(Domain_), TARGET :: domainForVelocity
- TYPE(DomainPointer_) :: domains(2)
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForPressure = "./mesh_tri3.h5"
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForVelocity = "./mesh_tri6.h5"
+TYPE(STDarcyBrinkmann_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFileForPressure
+TYPE(HDF5File_) :: domainFileForVelocity
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: domainForPressure
+TYPE(Domain_), TARGET :: domainForVelocity
+TYPE(DomainPointer_) :: domains(2)
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForPressure = "./mesh_tri3.h5"
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForVelocity = "./mesh_tri6.h5"
```
!!! note ""
- Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
+Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Setting parameters for an instance of [[STDarcyBrinkmann_]].
+Setting parameters for an instance of [[STDarcyBrinkmann_]].
```fortran
- CALL SetSTDarcyBrinkmannParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & nnt=2, &
- & startTime=0.0_DFP, &
- & endTime=10.0_DFP, &
- & dt=0.001_DFP, &
- & CoordinateSystem=KERNEL_2D, &
- & tPorousMaterials=2, &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & domainFileForPressure=domainFileNameForPressure, &
- & domainFileForVelocity=domainFileNameForVelocity)
+CALL SetSTDarcyBrinkmannParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=2, &
+ & startTime=0.0_DFP, &
+ & endTime=10.0_DFP, &
+ & dt=0.001_DFP, &
+ & CoordinateSystem=KERNEL_2D, &
+ & tPorousMaterials=2, &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & domainFileForPressure=domainFileNameForPressure, &
+ & domainFileForVelocity=domainFileNameForVelocity)
```
!!! note ""
- Setting [[LinSolver_]] parameters.
+Setting [[LinSolver_]] parameters.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=LEFT_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=LEFT_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note "domainForPressure"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
```fortran
- CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
- & MODE="READ")
- CALL domainFileForPressure%Open()
- CALL domainForPressure%Initiate(domainFileForPressure, "")
+CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
+ & MODE="READ")
+CALL domainFileForPressure%Open()
+CALL domainForPressure%Initiate(domainFileForPressure, "")
```
!!! note "domainForVelocity"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
```fortran
- CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
- & MODE="READ")
- CALL domainFileForVelocity%Open()
- CALL domainForVelocity%Initiate(domainFileForVelocity, "")
+CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
+& MODE="READ")
+CALL domainFileForVelocity%Open()
+CALL domainForVelocity%Initiate(domainFileForVelocity, "")
```
!!! note "domains"
- Packing domains in a vector of [[DomainPointer_]]
+Packing domains in a vector of [[DomainPointer_]]
```fortran
- domains(1)%ptr => domainForVelocity
- domains(2)%ptr => domainForPressure
+domains(1)%ptr => domainForVelocity
+domains(2)%ptr => domainForPressure
```
!!! note ""
- deallocate domain files
+deallocate domain files
```fortran
- CALL domainFileForPressure%Deallocate()
- CALL domainFileForVelocity%Deallocate()
+CALL domainFileForPressure%Deallocate()
+CALL domainFileForVelocity%Deallocate()
```
!!! note "Initiate STDarcyBrinkmann"
- Initiate an instance of [[STDarcyBrinkmann_]]
+Initiate an instance of [[STDarcyBrinkmann_]]
```fortran
- CALL obj%Initiate(param=param, domains=domains)
+CALL obj%Initiate(param=param, domains=domains)
```
!!! note "porousMaterial 1"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
- CALL SetPorousMaterialParam(param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
+CALL SetPorousMaterialParam(param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
Adding material parameters.
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "porousMaterial 2"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "fluidMaterial 1"
- Adding a fluid material.
+Adding a fluid material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
```
!!! note "SetFluidMaterialParam"
- Setting PARAMETER for [[FluidMaterial_]]
+Setting PARAMETER for [[FluidMaterial_]]
```fortran
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity=0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel")
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity=0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel")
```
!!! note "SetNewtonianFluidModelParam"
- Setting parameters for [[NewtonianFluidModel_]] which is a material model
+Setting parameters for [[NewtonianFluidModel_]] which is a material model
```fortran
- CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
+CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
```
Adding fluid material.
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
First we set the necessary parameters.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now we SELECT the region, which is top and bottom boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
+CALL region%Set()
```
Now we CALL `AddVelocityBC` method of [[STDarcyBrinkmann_]]. THEN we get the POINTER to the [[NeumannBC_]] which is created by the `AddVelocityBC` method. THEN we CALL Set method on this POINTER.
```fortran
- CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
```fortran
- CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
- & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
+CALL SetDirichletBCParam(param=param, name="UpstreamV1", &
+ & idof=1, nodalValueType=Constant, useFunction=.FALSE.)
```
Now we SELECT the inlet region, which is the left-boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[6])
+CALL region%Set()
```
Now that we have build the inlet region, let us add it to kernel for the velocity Dirichlet boundary condition.
```fortran
- CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
Let us set the parameter for [[NeumannBC_]]
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now select the region, which is the entire boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
+CALL region%Set()
```
Adding region to the kernel for setting boundary condition for velocity field.
```fortran
- CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
+Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
Define the parameters for constructing [[NeumannBC_]] instance.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroP", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroP", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Construct an outlet region.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[3])
+CALL region%Set()
```
Add the boundary condition and outlet region of the kernel by using the method called `AddPressureBC`
```fortran
- CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetPressureBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! success "Set"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
!!! success "AssembleTanMat"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL obj%AssembleTanmat()
- CALL obj%AssembleRHS()
+CALL obj%AssembleTanmat()
+CALL obj%AssembleRHS()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_16.md b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_16.md
index df595e87..cf8c015f 100644
--- a/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_16.md
+++ b/docs/docs-api/_STDarcyBrinkmann/STDarcyBrinkmann_test_16.md
@@ -1,6 +1,6 @@
This example tests and demonstrates the usage of `Assemble()` method.
-``` fortran
+```fortran
PROGRAM main
USE easifemBase
USE easifemClasses
@@ -11,357 +11,355 @@ PROGRAM main
```
!!! note ""
- Define the variables.
+Define the variables.
```fortran
- TYPE(STDarcyBrinkmann_) :: obj
- TYPE(ParameterList_) :: param
- TYPE(HDF5File_) :: domainFileForPressure
- TYPE(HDF5File_) :: domainFileForVelocity
- TYPE(MeshSelection_) :: region
- TYPE(Domain_), TARGET :: domainForPressure
- TYPE(Domain_), TARGET :: domainForVelocity
- TYPE(DomainPointer_) :: domains(2)
- CLASS(DirichletBC_), POINTER :: dbc => NULL()
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForPressure = "./mesh_tri3.h5"
- CHARACTER(LEN=*), PARAMETER :: &
- & domainFileNameForVelocity = "./mesh_tri6.h5"
+TYPE(STDarcyBrinkmann_) :: obj
+TYPE(ParameterList_) :: param
+TYPE(HDF5File_) :: domainFileForPressure
+TYPE(HDF5File_) :: domainFileForVelocity
+TYPE(MeshSelection_) :: region
+TYPE(Domain_), TARGET :: domainForPressure
+TYPE(Domain_), TARGET :: domainForVelocity
+TYPE(DomainPointer_) :: domains(2)
+CLASS(DirichletBC_), POINTER :: dbc => NULL()
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForPressure = "./mesh_tri3.h5"
+CHARACTER(LEN=*), PARAMETER :: &
+ & domainFileNameForVelocity = "./mesh_tri6.h5"
```
!!! note ""
- Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
+Initiate an instance of [[ParameterList_]], param, this will be used to initiate several objects.
```fortran
- CALL FPL_INIT(); CALL param%Initiate()
+CALL FPL_INIT(); CALL param%Initiate()
```
!!! note ""
- Setting parameters for an instance of [[STDarcyBrinkmann_]].
+Setting parameters for an instance of [[STDarcyBrinkmann_]].
```fortran
- CALL SetSTDarcyBrinkmannParam( &
- & param=param, &
- & engine="NATIVE_SERIAL", &
- & nnt=2, &
- & startTime=0.0_DFP, &
- & endTime=10.0_DFP, &
- & dt=0.001_DFP, &
- & CoordinateSystem=KERNEL_2D, &
- & tPorousMaterials=2, &
- & tFluidMaterials=1, &
- & tDirichletBCForPressure=1, &
- & tDirichletBCForVelocity=3, &
- & domainFileForPressure=domainFileNameForPressure, &
- & domainFileForVelocity=domainFileNameForVelocity)
+CALL SetSTDarcyBrinkmannParam( &
+ & param=param, &
+ & engine="NATIVE_SERIAL", &
+ & nnt=2, &
+ & startTime=0.0_DFP, &
+ & endTime=10.0_DFP, &
+ & dt=0.001_DFP, &
+ & CoordinateSystem=KERNEL_2D, &
+ & tPorousMaterials=2, &
+ & tFluidMaterials=1, &
+ & tDirichletBCForPressure=1, &
+ & tDirichletBCForVelocity=3, &
+ & domainFileForPressure=domainFileNameForPressure, &
+ & domainFileForVelocity=domainFileNameForVelocity)
```
!!! note ""
- Setting [[LinSolver_]] parameters.
+Setting [[LinSolver_]] parameters.
```fortran
- CALL SetLinSolverParam( &
- & param=param, &
- & solverName=LIS_GMRES,&
- & preconditionOption=LEFT_PRECONDITION, &
- & convergenceIn=convergenceInRes, &
- & convergenceType=relativeConvergence, &
- & maxIter=100, &
- & relativeToRHS=.TRUE., &
- & KrylovSubspaceSize=20, &
- & rtol=1.0D-10, &
- & atol=1.0D-10 )
+CALL SetLinSolverParam( &
+ & param=param, &
+ & solverName=LIS_GMRES,&
+ & preconditionOption=LEFT_PRECONDITION, &
+ & convergenceIn=convergenceInRes, &
+ & convergenceType=relativeConvergence, &
+ & maxIter=100, &
+ & relativeToRHS=.TRUE., &
+ & KrylovSubspaceSize=20, &
+ & rtol=1.0D-10, &
+ & atol=1.0D-10 )
```
!!! note "domainForPressure"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for pressure variable.
```fortran
- CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
- & MODE="READ")
- CALL domainFileForPressure%Open()
- CALL domainForPressure%Initiate(domainFileForPressure, "")
+CALL domainFileForPressure%Initiate(filename=domainFileNameForPressure, &
+ & MODE="READ")
+CALL domainFileForPressure%Open()
+CALL domainForPressure%Initiate(domainFileForPressure, "")
```
!!! note "domainForVelocity"
- Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
+Initiate an [[HDF5File_]] for making [[Mesh_]] and/or [[Domain_]] for velocity variable.
```fortran
- CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
- & MODE="READ")
- CALL domainFileForVelocity%Open()
- CALL domainForVelocity%Initiate(domainFileForVelocity, "")
+CALL domainFileForVelocity%Initiate(filename=domainFileNameForVelocity, &
+& MODE="READ")
+CALL domainFileForVelocity%Open()
+CALL domainForVelocity%Initiate(domainFileForVelocity, "")
```
!!! note "domains"
- Packing domains in a vector of [[DomainPointer_]]
+Packing domains in a vector of [[DomainPointer_]]
```fortran
- domains(1)%ptr => domainForVelocity
- domains(2)%ptr => domainForPressure
+domains(1)%ptr => domainForVelocity
+domains(2)%ptr => domainForPressure
```
!!! note ""
- deallocate domain files
+deallocate domain files
```fortran
- CALL domainFileForPressure%Deallocate()
- CALL domainFileForVelocity%Deallocate()
+CALL domainFileForPressure%Deallocate()
+CALL domainFileForVelocity%Deallocate()
```
!!! note "Initiate STDarcyBrinkmann"
- Initiate an instance of [[STDarcyBrinkmann_]]
+Initiate an instance of [[STDarcyBrinkmann_]]
```fortran
- CALL obj%Initiate(param=param, domains=domains)
+CALL obj%Initiate(param=param, domains=domains)
```
!!! note "porousMaterial 1"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
- CALL SetPorousMaterialParam(param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[1])
+CALL SetPorousMaterialParam(param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
Adding material parameters.
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=1, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=1, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "porousMaterial 2"
- Adding a porous material.
+Adding a porous material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
- CALL SetPorousMaterialParam( &
- & param=param, &
- & name="porousMaterial", &
- & massdensity=1700.0_DFP, &
- & porosity=0.8_DFP, &
- & permeability=1.0D-10, &
- & stressStrainModel="LinearPoroElasticModel")
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForPressure%GetNSD(), meshID=[2])
+CALL SetPorousMaterialParam( &
+ & param=param, &
+ & name="porousMaterial", &
+ & massdensity=1700.0_DFP, &
+ & porosity=0.8_DFP, &
+ & permeability=1.0D-10, &
+ & stressStrainModel="LinearPoroElasticModel")
```
```fortran
- CALL SetLinearPoroElasticModelParam( &
- & param=param, &
- & ElasticityType=IsoLinearElasticModel, &
- & isPlaneStress=.FALSE., &
- & isPlaneStrain=.TRUE., &
- & PoissonRatio=0.3_DFP, &
- & YoungsModulus=1.0D+6)
+CALL SetLinearPoroElasticModelParam( &
+ & param=param, &
+ & ElasticityType=IsoLinearElasticModel, &
+ & isPlaneStress=.FALSE., &
+ & isPlaneStrain=.TRUE., &
+ & PoissonRatio=0.3_DFP, &
+ & YoungsModulus=1.0D+6)
```
-
```fortran
- CALL obj%AddPorousMaterial( &
- & materialNo=2, &
- & materialName="porousMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddPorousMaterial( &
+ & materialNo=2, &
+ & materialName="porousMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "fluidMaterial 1"
- Adding a fluid material.
+Adding a fluid material.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=domainForVelocity%GetNSD(), meshID=[1, 2])
```
!!! note "SetFluidMaterialParam"
- Setting PARAMETER for [[FluidMaterial_]]
+Setting PARAMETER for [[FluidMaterial_]]
```fortran
- CALL SetFluidMaterialParam( &
- & param=param, &
- & name="fluidMaterial", &
- & massDensity=1000.0_DFP, &
- & dynamicViscosity=0.001_DFP, &
- & stressStrainModel="NewtonianFluidModel")
+CALL SetFluidMaterialParam( &
+ & param=param, &
+ & name="fluidMaterial", &
+ & massDensity=1000.0_DFP, &
+ & dynamicViscosity=0.001_DFP, &
+ & stressStrainModel="NewtonianFluidModel")
```
!!! note "SetNewtonianFluidModelParam"
- Setting parameters for [[NewtonianFluidModel_]] which is a material model
+Setting parameters for [[NewtonianFluidModel_]] which is a material model
```fortran
- CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
+CALL SetNewtonianFluidModelParam(param=param, Viscosity=0.001_DFP)
```
Adding fluid material.
```fortran
- CALL obj%AddFluidMaterial( &
- & materialNo=1, &
- & materialName="fluidMaterial", &
- & param=param, &
- & region=region)
- CALL region%Deallocate()
+CALL obj%AddFluidMaterial( &
+ & materialNo=1, &
+ & materialName="fluidMaterial", &
+ & param=param, &
+ & region=region)
+CALL region%Deallocate()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing x component of the velocity.
First we set the necessary parameters.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now we SELECT the region, which is top and bottom boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5])
+CALL region%Set()
```
Now we CALL `AddVelocityBC` method of [[STDarcyBrinkmann_]]. THEN we get the POINTER to the [[NeumannBC_]] which is created by the `AddVelocityBC` method. THEN we CALL Set method on this POINTER.
```fortran
- CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
+Let us set [[NeumannBC_]] for velocity (boundary condition at the inlet). We are prescribing x component of the velocity.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="UpstreamV1", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="UpstreamV1", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now we SELECT the inlet region, which is the left-boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[6])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[6])
+CALL region%Set()
```
Now that we have build the inlet region, let us add it to kernel for the velocity Dirichlet boundary condition.
```fortran
- CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=2)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=2, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=2)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
+Let us set [[NeumannBC_]] for velocity. We are prescribing y component of the velocity.
Let us set the parameter for [[NeumannBC_]]
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroV2", &
- & idof=2, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroV2", &
+ & idof=2, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Now select the region, which is the entire boundary.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[1, 2, 4, 5, 6, 3])
+CALL region%Set()
```
Adding region to the kernel for setting boundary condition for velocity field.
```fortran
- CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetVelocityBCPointer(dbcNo=3)
- CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
+CALL obj%AddVelocityBC(dbcNo=3, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetVelocityBCPointer(dbcNo=3)
+CALL dbc%Set(ConstantNodalValue=0.1_DFP); dbc => NULL()
```
!!! note "Dirichlet boundary"
- Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
+Let us set [[NeumannBC_]] for pressure. We are prescribing zero pressure condition at the outlet.
Define the parameters for constructing [[NeumannBC_]] instance.
```fortran
- CALL SetDirichletBCParam( &
- & param=param, &
- & name="ZeroP", &
- & idof=1, &
- & nodalValueType=Constant, &
- & useFunction=.FALSE.)
+CALL SetDirichletBCParam( &
+ & param=param, &
+ & name="ZeroP", &
+ & idof=1, &
+ & nodalValueType=Constant, &
+ & useFunction=.FALSE.)
```
Construct an outlet region.
```fortran
- CALL region%Initiate(isSelectionByMeshID=.TRUE.)
- CALL region%Add(dim=1, meshID=[3])
- CALL region%Set()
+CALL region%Initiate(isSelectionByMeshID=.TRUE.)
+CALL region%Add(dim=1, meshID=[3])
+CALL region%Set()
```
Add the boundary condition and outlet region of the kernel by using the method called `AddPressureBC`
```fortran
- CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
- CALL region%Deallocate()
- dbc => obj%GetPressureBCPointer(dbcNo=1)
- CALL dbc%Set(ConstantNodalValue=0.0_DFP)
- dbc => NULL()
+CALL obj%AddPressureBC(dbcNo=1, param=param, boundary=region)
+CALL region%Deallocate()
+dbc => obj%GetPressureBCPointer(dbcNo=1)
+CALL dbc%Set(ConstantNodalValue=0.0_DFP)
+dbc => NULL()
```
!!! success "Set"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL obj%Set()
+CALL obj%Set()
```
!!! success "AssembleTanMat"
- Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
+Now that we are done with the setup, we should call `Set` method. Then, the kernel will check the data, configuration, and intiate the appropriate variables.
```fortran
- CALL obj%AssembleTanmat()
- CALL obj%Assemble()
+CALL obj%AssembleTanmat()
+CALL obj%Assemble()
```
!!! settings "Cleanup"
diff --git a/docs/docs-api/_STDarcyBrinkmann/stdbe_constructor.md b/docs/docs-api/_STDarcyBrinkmann/stdbe_constructor.md
index cf799ab0..772753dc 100644
--- a/docs/docs-api/_STDarcyBrinkmann/stdbe_constructor.md
+++ b/docs/docs-api/_STDarcyBrinkmann/stdbe_constructor.md
@@ -10,8 +10,9 @@ update: 15 Nov 2021
### CheckEssentialParam
!!! note ""
- To set the essential material parameter of [[STDarcyBrinkmann_]] instance we need to call the method called `CheckEssentialParam()`. See the example given below.
+To set the essential material parameter of [[STDarcyBrinkmann_]] instance we need to call the method called `CheckEssentialParam()`. See the example given below.
### Initiate
+
!!! note ""
- The following code demonstrates how we can initiate the `StaticLinearElastic` kernel by using `Initiate` method.
+The following code demonstrates how we can initiate the `StaticLinearElastic` kernel by using `Initiate` method.
diff --git a/docs/docs-api/_STDarcyBrinkmann/stdbe_io.md b/docs/docs-api/_STDarcyBrinkmann/stdbe_io.md
index 068f028c..cf9790ca 100644
--- a/docs/docs-api/_STDarcyBrinkmann/stdbe_io.md
+++ b/docs/docs-api/_STDarcyBrinkmann/stdbe_io.md
@@ -7,32 +7,30 @@ update: 15 Nov 2021
# STDarcyBrinkmann IO methods
-
### Import
!!! note ""
- Import the data from [[HDF5File_]] to initiate an instance of [[STDarcyBrinkmann_]]
-
-
-| Dataset | Data type | Value | Comment |
-| ------------------------------------ | :-----------: | :----------------------------------------------------------: | -----------------------------------------------------------: |
-| `domainFile` | String | | The path of the mesh file |
-| `name` | String | `StaticLinearElasticity` | It is a constant |
-| `engine` | String | `NATIVE_SERIAL` `NATIVE_OMP` `NATIVE_MPI` `PETSC` | |
-| `BasseContinuity` | String | `H1`,`H1Div`,`H1Curl`,`DG` | Continuity of shape function. |
-| `BaseInterpolation` | String | `LagrangeInterpolation`, `HermitInterpolation`, `SerendipityInterpolation`, `HierarchyInterpolation` | Interpolation of shape functions |
-| `QuadratureType` | String | `GaussLegendre` | |
-| `CoordinateSystem` | String | `1D_H`, `1D_V`,`AXISYM`, `PLANE_STRAIN`, `PLANE_STRESS`, `3D` | This variable defines the spatial dimension of the partial differential equation. |
-| `tMaterials` | Integer | | Total number of materials present in the computations |
-| | | | . |
-| `Material1` | Group dataset | / | This is a group dataset, that is, a directory. Its content depends upon the child of `Solid_` class. Please refer to the manual. |
-| `Material2` | Group dataset | / | |
-| `boundaryCondition` | Group dataset | / | |
-| `boundaryCondition/totalDirichletBC` | Integer | | Total number of Dirichlet boundary conditions |
-| `boundaryCondition/DirichletBC1`... | Group dataset | / | Dirichlet Boundary Condition 1, 2,... |
-| `Material1`... | Group dataset | / | |
-| | | | |
-| `linSolver` | Group dataset | / | This is a group dataset , that is, a directory. Its content depends upon the child of `abstractLinSolver`. Please check the manual of individual child, for more detail |
+Import the data from [[HDF5File_]] to initiate an instance of [[STDarcyBrinkmann_]]
+
+| Dataset | Data type | Value | Comment |
+| ------------------------------------ | :-----------: | :--------------------------------------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `domainFile` | String | | The path of the mesh file |
+| `name` | String | `StaticLinearElasticity` | It is a constant |
+| `engine` | String | `NATIVE_SERIAL` `NATIVE_OMP` `NATIVE_MPI` `PETSC` | |
+| `BasseContinuity` | String | `H1`,`H1Div`,`H1Curl`,`DG` | Continuity of shape function. |
+| `BaseInterpolation` | String | `LagrangeInterpolation`, `HermitInterpolation`, `SerendipityInterpolation`, `HierarchyInterpolation` | Interpolation of shape functions |
+| `QuadratureType` | String | `GaussLegendre` | |
+| `CoordinateSystem` | String | `1D_H`, `1D_V`,`AXISYM`, `PLANE_STRAIN`, `PLANE_STRESS`, `3D` | This variable defines the spatial dimension of the partial differential equation. |
+| `tMaterials` | Integer | | Total number of materials present in the computations |
+| | | | . |
+| `Material1` | Group dataset | / | This is a group dataset, that is, a directory. Its content depends upon the child of `Solid_` class. Please refer to the manual. |
+| `Material2` | Group dataset | / | |
+| `boundaryCondition` | Group dataset | / | |
+| `boundaryCondition/totalDirichletBC` | Integer | | Total number of Dirichlet boundary conditions |
+| `boundaryCondition/DirichletBC1`... | Group dataset | / | Dirichlet Boundary Condition 1, 2,... |
+| `Material1`... | Group dataset | / | |
+| | | | |
+| `linSolver` | Group dataset | / | This is a group dataset , that is, a directory. Its content depends upon the child of `abstractLinSolver`. Please check the manual of individual child, for more detail |
The **template** of `DirichletBC1` is given below.
@@ -46,71 +44,71 @@ The **template** of `DirichletBC1` is given below.
The **template** of `Boundary` , which is an instance of `MeshSelection_`, is given below.
-| Variable | Data type | Value | Comment |
-| --------------------- | :-------: | :-----------: | -----------------------------------------------------------: |
-| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
-| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
-| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
-| `isSelectionByNode` | Bool | | |
-| `PointMeshID` | | | |
-| `CurveMeshID` | | | |
-| `SurfaceMeshID` | | | |
-| `PointElemNum` | | | |
-| `CurveElemNum` | | | |
-| `SurfaceElemNum` | | | |
-| `VolumeElemNum` | | | |
-| `NodeNum` | | | |
+| Variable | Data type | Value | Comment |
+| --------------------- | :-------: | :-----------: | ---------------------------------------------------------------------: |
+| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
+| `isSelectionByElemID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
+| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
+| `isSelectionByNode` | Bool | | |
+| `PointMeshID` | | | |
+| `CurveMeshID` | | | |
+| `SurfaceMeshID` | | | |
+| `PointElemNum` | | | |
+| `CurveElemNum` | | | |
+| `SurfaceElemNum` | | | |
+| `VolumeElemNum` | | | |
+| `NodeNum` | | | |
The **template** of `Material1` is given below
-| Variable | Data type | Value | Comment |
-| ---------------------- | :-----------: | :-----------: | -----------------------------------------------------------: |
-| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
-| `isSelectionByElemNum` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
-| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
-| `isSelectionByNodeNum` | Bool | | |
-| `PointMeshID` | | | |
-| `CurveMeshID` | | | |
-| `SurfaceMeshID` | | | |
-| `VolumeMeshID` | | | |
-| `PointElemNum` | | | |
-| `CurveElemNum` | | | |
-| `SurfaceElemNum` | | | |
-| `VolumeElemNum` | | | |
-| `NodeNum` | | | |
-| `name` | String | | |
-| `massDensity` | REAL | | |
-| `stressStrainModel` | Group dataset | / | |
-| | | | |
-
-The **template** for `stressStrainModel`, which is an instance of `LinearElasticModel_` is given below.
-
-| Variable name | Data type | Value | Comment |
-| ---------------- | :-------: | :------------------------------: | -----------------------------------------------------------: |
-| `name` | String | `LinearElasticModel` | It is constant, which denotes the name of the class. |
-| `elasticityType` | String | `ISO`, `ANISO`, `ORTHO`, `TRANS` | It denotes the linear elasticity type |
-| `isPlaneStress` | String | `T`or `F` | If the problem is 2D, and plane stress then set it to .TRUE. |
+| Variable | Data type | Value | Comment |
+| ---------------------- | :-----------: | :-----------: | ---------------------------------------------------------------------: |
+| `isSelectionByMeshID` | Bool | True or False | Optional. Set it to true, if you want to select by supply `meshID` |
+| `isSelectionByElemNum` | Bool | True or False | Optional. Set it to true, if you want to select by supply `elemID` |
+| `isSelectionByBox` | Bool | True or False | Optional. Set it to true, if you want to select by supply bounding box |
+| `isSelectionByNodeNum` | Bool | | |
+| `PointMeshID` | | | |
+| `CurveMeshID` | | | |
+| `SurfaceMeshID` | | | |
+| `VolumeMeshID` | | | |
+| `PointElemNum` | | | |
+| `CurveElemNum` | | | |
+| `SurfaceElemNum` | | | |
+| `VolumeElemNum` | | | |
+| `NodeNum` | | | |
+| `name` | String | | |
+| `massDensity` | REAL | | |
+| `stressStrainModel` | Group dataset | / | |
+| | | | |
+
+The **template** for `stressStrainModel`, which is an instance of `LinearElasticModel_` is given below.
+
+| Variable name | Data type | Value | Comment |
+| ---------------- | :-------: | :------------------------------: | --------------------------------------------------------------: |
+| `name` | String | `LinearElasticModel` | It is constant, which denotes the name of the class. |
+| `elasticityType` | String | `ISO`, `ANISO`, `ORTHO`, `TRANS` | It denotes the linear elasticity type |
+| `isPlaneStress` | String | `T`or `F` | If the problem is 2D, and plane stress then set it to .TRUE. |
| `isPlaneStrain` | String | `T` or `F` | If the problem is 2D, and plane strain , then set it to .FALSE. |
-| `lambda` | REAL | | This is required when `ISO` option is selected |
-| `ShearModulus` | REAL | | This is required when `ISO` option is selected |
-| `YoungsModulus` | REAL | | This is required when `ISO` option is selected |
-| `PoissonRatio` | REAL | | This is required when `ISO` option is selected |
-| `C` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
-| `invC` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
+| `lambda` | REAL | | This is required when `ISO` option is selected |
+| `ShearModulus` | REAL | | This is required when `ISO` option is selected |
+| `YoungsModulus` | REAL | | This is required when `ISO` option is selected |
+| `PoissonRatio` | REAL | | This is required when `ISO` option is selected |
+| `C` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
+| `invC` | REAL(6,6) | | This is necessary when `ANISO` option is selected. |
The **template** of `linSolver`, which is an instance of `LinearSolver_` class, with engine type `NATIVE_SERIES` is given below.
-| Variable | Data type | Value | Comment |
-| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------: |
-| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
-| `solverName` | String | `CG` | This is a constant |
-| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | What type of preconditioning do you want to use? |
-| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | Should we check convergence in `residual` or the `solution` |
-| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | Absolute convergence or relative convergence |
-| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
-| `maxIter` | INT | | Maximum number of iterations |
-| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
-| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
-| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
-
-First we export the data to a `hdf5` file using the following commands.
\ No newline at end of file
+| Variable | Data type | Value | Comment |
+| -------------------- | :-------: | :-----------------------------------: | -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
+| `engine` | String | `NATIVE_SERIAL` | This variable helps us to create correct child of `AbstractLinSolver` class. For other children we have following values reserved : `NATIVE_OMP`,`NATIVE_MPI`,`PETSC`,`LIS_SERIAL`,`LIS_OMP`,`LIS_MPI` |
+| `solverName` | String | `CG` | This is a constant |
+| `preconditionOption` | String | `LEFT`, `RIGHT`, `LEFT_RIGHT`, `NONE` | What type of preconditioning do you want to use? |
+| `convergenceIn` | String | `RESIDUAL`, `SOLUTION` | Should we check convergence in `residual` or the `solution` |
+| `convergenceType` | String | `ABSOLUT`, `RELATIVE` | Absolute convergence or relative convergence |
+| `relativeToRHS` | Char | `T`, `F` | It is used when convergence Type is relative |
+| `maxIter` | INT | | Maximum number of iterations |
+| `KrylovSubspaceSize` | INT | | This is used when GMRES is used, you can set it to 15 to 20. |
+| `relativeTolerance` | REAL | | Tolerance for checking the relative convergence |
+| `absoluteTolerance` | REAL | | Tolerance for checking the absolute convergence |
+
+First we export the data to a `hdf5` file using the following commands.
diff --git a/docs/docs-api/_STDarcyBrinkmann/stdbe_status.md b/docs/docs-api/_STDarcyBrinkmann/stdbe_status.md
index 781af782..4bb2264e 100644
--- a/docs/docs-api/_STDarcyBrinkmann/stdbe_status.md
+++ b/docs/docs-api/_STDarcyBrinkmann/stdbe_status.md
@@ -39,7 +39,7 @@ update: 15 Nov 2021
check the validity of `setPrecondition(param)` for [[BlockMatrixField_]].
-``` fortran
+```fortran
PreconditionOption = obj%linsol%getPreconditionOption()
IF (PreconditionOption .NE. NO_PRECONDITION) THEN
ierr = param%set("BlockMatrixField/preconditionName", PRECOND_ILUD)
diff --git a/docs/docs-api/_STDarcyBrinkmann/stdbe_structure.md b/docs/docs-api/_STDarcyBrinkmann/stdbe_structure.md
index afddb7f0..b2443aa9 100644
--- a/docs/docs-api/_STDarcyBrinkmann/stdbe_structure.md
+++ b/docs/docs-api/_STDarcyBrinkmann/stdbe_structure.md
@@ -6,4 +6,3 @@ update: 15 Nov 2021
---
# STDarcyBrinkmann Structure
-
diff --git a/docs/docs-api/_STDarcyBrinkmann/stdbe_theory.md b/docs/docs-api/_STDarcyBrinkmann/stdbe_theory.md
index dcd8cd6c..1f3147bf 100644
--- a/docs/docs-api/_STDarcyBrinkmann/stdbe_theory.md
+++ b/docs/docs-api/_STDarcyBrinkmann/stdbe_theory.md
@@ -6,4 +6,3 @@ update: 15 Nov 2021
---
# STDarcyBrinkmann Theory
-
diff --git a/docs/guides/easifemGO/clean.md b/docs/guides/easifemGO/clean.md
index 5c84c2b7..40ff545f 100644
--- a/docs/guides/easifemGO/clean.md
+++ b/docs/guides/easifemGO/clean.md
@@ -3,7 +3,6 @@ sidebar_poisition: 5
title: clean
---
-
You can clean a plugin by using following command.
```bash
diff --git a/docs/guides/easifemGO/config.md b/docs/guides/easifemGO/config.md
index 8f684ca6..75ad43c3 100644
--- a/docs/guides/easifemGO/config.md
+++ b/docs/guides/easifemGO/config.md
@@ -1,6 +1,6 @@
---
sidebar_position: 2
----
+---
# Configuration
@@ -10,7 +10,7 @@ After getting the configuring files go inside the directory.
cd ${HOME}/.config/easifem
```
-There you will find a file called `easifem.toml` with the following lines.
+There you will find a file called `easifem.toml` with the following lines.
```bash
envName="dev"
@@ -36,7 +36,7 @@ Here, `envName` is the name of the active environment.
- `buildStaticLibs`: specifies whether to build static libraries or not.
- `buildSystem`: specifies the build system to be used. Currently, it should be `cmake`.
-You can modify `easifem.toml` as per your need. You can also add more environments in the configuration file as shown below.
+You can modify `easifem.toml` as per your need. You can also add more environments in the configuration file as shown below.
```bash
envName="release"
@@ -62,6 +62,6 @@ buildStaticLibs = false
buildSystem = "cmake"
```
-:::info
+:::info
When we set envName="release" in the configuration file, the active environment will be `release`.
:::
diff --git a/docs/guides/easifemGO/dev.md b/docs/guides/easifemGO/dev.md
index f1c5a4fa..8cee8562 100644
--- a/docs/guides/easifemGO/dev.md
+++ b/docs/guides/easifemGO/dev.md
@@ -5,7 +5,7 @@ title: dev
The dev subcommand is useful for developers of easifem. It allows you to rebuild base, classes library.
-How to use it:
+How to use it:
```bash
easifem dev pkgname [flags]
diff --git a/docs/guides/easifemGO/index.mdx b/docs/guides/easifemGO/index.mdx
index 33361761..75f79faf 100644
--- a/docs/guides/easifemGO/index.mdx
+++ b/docs/guides/easifemGO/index.mdx
@@ -4,7 +4,9 @@ sidebar_position: 1
# easifemGO
-The easiest and recommended way to use the easifem library is through `easifem` command line interface application. `easifem` CLI is a go application, which you can download as given below.
+The easiest and recommended way to use the easifem library is through
+`easifem` command line interface application. `easifem` CLI is a go
+application, which you can download as given below.
`easifem` is a CLI (Command Line Interface) for working with
easifem platform. It is written in Go language. It contains
@@ -29,7 +31,22 @@ Usage:
First download golang on your system by following the instruction given on the official website of [go](https://go.dev/https://go.dev/). After that run the following command.
```bash
-go install github.com/easifem/easifemGO@latest
+go install github.com/easifem/easifemGO/cmd/easifem@latest
+<<<<<<< HEAD
+```
+
+To install the development version of `easifem`, you can use the following command.
+
+```bash
+go install github.com/easifem/easifemGO/cmd/easifem@dev
+=======
+>>>>>>> d4a9b916 (updating easifemGO install)
+```
+
+To install the development version of `easifem`, you can use the following command.
+
+```bash
+go install github.com/easifem/easifemGO/cmd/easifem@dev
```
## Available Commands:
diff --git a/docs/guides/easifemGO/install.md b/docs/guides/easifemGO/install.md
index 3516756b..67691cdb 100644
--- a/docs/guides/easifemGO/install.md
+++ b/docs/guides/easifemGO/install.md
@@ -5,7 +5,7 @@ sidebar_position: 3
## TLDR
-Install subcommand is used to install plugins.
+Install subcommand is used to install plugins.
To install external dependencies of easifem you can run following.
@@ -20,7 +20,7 @@ easifem install arpack
easifem install lapack95
```
-You can also install several plugins.
+You can also install several plugins.
```bash
easifem install arpack lapack95 sparsekit superlu
@@ -33,12 +33,11 @@ easifem install base classes
```
:::info
-You can read more about the install subcommand [here](./install.md), where you can find how to install command works and how to write a configuration file for a package.
+You can read more about the install subcommand [here](./install.md), where you can find how to install command works and how to write a configuration file for a package.
:::
## Details
-
The `install` subcommand let you install the components of easifem.
To install a component (for example, base) first you should create a toml file (for example, base.toml) at `$HOME/.config/easifem/plugins`.
@@ -72,7 +71,7 @@ projectName = "easifemBase"
# following are configuration variables defined in easifemBase.
intSize = 32 # Default integer size
realSize = 64 # default real size
-maxNNE = 128 # maximum number of nodes in an element to consider
+maxNNE = 128 # maximum number of nodes in an element to consider
maxNodeToNode = 128 # maximum number of node to nodes.
maxNodeToElem = 128 # maximum number of node to element.
@@ -82,25 +81,32 @@ license = "GPL3"
# following are the build options defined for easifemBase
buildOptions = [
-"-D USE_OPENMP:BOOL=ON",
-"-D USE_PLPLOT:BOOL=ON",
-"-D USE_BLAS95:BOOL=ON",
-"-D USE_LAPACK95:BOOL=ON",
-"-D USE_FFTW:BOOL=ON",
-"-D USE_GTK:BOOL=OFF",
-"-D USE_ARPACK:BOOL=ON",
-"-D USE_PARPACK:BOOL=OFF",
-"-D USE_SUPERLU:BOOL=ON",
-"-D USE_LIS:BOOL=ON",
-"-D USE_METIS:BOOL=OFF",
-"-D USE_LUA:BOOL=ON",
-"-D USE_INT32:BOOL=ON",
-"-D USE_REAL64:BOOL=ON",
-"-D USE_COLORDISP:BOOL=ON",
+ "-D USE_OPENMP:BOOL=ON",
+ "-D USE_PLPLOT:BOOL=ON",
+ "-D USE_BLAS95:BOOL=ON",
+ "-D USE_LAPACK95:BOOL=ON",
+ "-D USE_FFTW:BOOL=ON",
+ "-D USE_GTK:BOOL=OFF",
+ "-D USE_ARPACK:BOOL=ON",
+ "-D USE_PARPACK:BOOL=OFF",
+ "-D USE_SUPERLU:BOOL=ON",
+ "-D USE_LIS:BOOL=ON",
+ "-D USE_METIS:BOOL=OFF",
+ "-D USE_LUA:BOOL=ON",
+ "-D USE_INT32:BOOL=ON",
+ "-D USE_REAL64:BOOL=ON",
+ "-D USE_COLORDISP:BOOL=ON",
]
# following are the dependencies of easifemBase
-dependencies = ["arpack", "sparsekit", "superlu", "lis", "fftw", "lapack95", "tomlf"]
+dependencies = [
+ "arpack",
+ "sparsekit",
+ "superlu",
+ "lis",
+ "fftw",
+ "lapack95",
+ "tomlf",
+]
```
-
diff --git a/docs/guides/easifemGO/run.md b/docs/guides/easifemGO/run.md
index a9ab7c23..784a3271 100644
--- a/docs/guides/easifemGO/run.md
+++ b/docs/guides/easifemGO/run.md
@@ -2,5 +2,3 @@
sidebar_position: 9
title: run
---
-
-
diff --git a/docs/guides/easifemGO/setenv.md b/docs/guides/easifemGO/setenv.md
index 0bcf251f..abd500f2 100644
--- a/docs/guides/easifemGO/setenv.md
+++ b/docs/guides/easifemGO/setenv.md
@@ -8,6 +8,5 @@ title: setenv
Currently this `subcommand` is not used.
:::info ToDo
-In the future this `subcommand` will be used to change the active environment, and to query the environment variables.
+In the future this `subcommand` will be used to change the active environment, and to query the environment variables.
:::
-
diff --git a/docs/guides/easifemGO/test.md b/docs/guides/easifemGO/test.md
index 2a870fee..e4a4b480 100644
--- a/docs/guides/easifemGO/test.md
+++ b/docs/guides/easifemGO/test.md
@@ -2,4 +2,3 @@
title: test
sidebar_position: 10
---
-
diff --git a/docs/guides/getting-started/archlinux.md b/docs/guides/getting-started/archlinux.md
index c71628d7..6f78b7a3 100644
--- a/docs/guides/getting-started/archlinux.md
+++ b/docs/guides/getting-started/archlinux.md
@@ -84,11 +84,11 @@ go install github.com/easifem/easifemgo
Now `easifemgo` is installed on your system mostly at `~/go/bin/easifemgo`
-:::info
-It is recommended that you make a symlink or alias of easifemgo with name easifem. In the following text `easifem` would mean `easifemgo`
+:::info
+It is recommended that you make a symlink or alias of easifemgo with name easifem. In the following text `easifem` would mean `easifemgo`
:::
-Check
+Check
```bash
easifem --help
diff --git a/docs/guides/getting-started/macosx.md b/docs/guides/getting-started/macosx.md
index 41edf237..519e743e 100644
--- a/docs/guides/getting-started/macosx.md
+++ b/docs/guides/getting-started/macosx.md
@@ -12,13 +12,15 @@ Following steps are performed in this section.
- Installing `easifem` command line interface.
- Set up the environment variables by using `easifem` CLI.
-- Install easifem library.
+- Install `easifem` library.
+
+:::caution
+It is recommended that you read (and follow) the steps given below to quickly install `easifem`. However, due to any reason, if you do not want to read the instruction given below, then just copy and paste the command given below.
+:::
-It is recommended that you read (and follow) the steps given below to quickly install `easifem`. However, due to any reason, if you do not want to read the instruction given below, then just copy and paste the command given below.
-
For bash/zsh shell
```bash
@@ -36,8 +38,6 @@ easifem install extpkgs base classes
For fish shell
-It is recommended that you read (and follow) the steps given below to quickly install `easifem`. However, due to any reason, if you do not want to read the instruction given below, then just copy and paste the command given below.
-
```bash
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" && \
brew update && brew upgrade && \
@@ -50,7 +50,7 @@ easifem install extpkgs base classes
-## Build from source
+## Step by step building
### Step 1: Install system dependencies
@@ -74,30 +74,38 @@ set -gx CPPFLAGS "-I/opt/homebrew/opt/libomp/include"
export LDFLAGS="-L/opt/homebrew/opt/libomp/lib"
export CPPFLAGS="-I/opt/homebrew/opt/libomp/include"
```
+
:::
### Step 2: Install `easifem` CLI
-> You can read more about easifem command line interface [here](../easifemGO)
+> You can read more about `easifem` command line interface [here](../easifemGO)
:::caution
-make sure go language is installed. If not then run `sudo pacman -S go`
+make sure go language is installed. If not then run `brew install go`
:::
+To install `easifem` command line interface, you can use the following command.
+
```bash
-go install github.com/easifem/easifemgo
+go install github.com/easifem/easifemGO/cmd/easifem@latest
```
-Now `easifemgo` is installed on your system mostly at `~/go/bin/easifemgo`
+:::tip
+To install the development version of `easifem`, you can use the following command.
+
+```bash
+go install github.com/easifem/easifemGO/cmd/easifem@dev
+```
-:::info
-It is recommended that you make a symlink or alias of easifemgo with name easifem. In the following text `easifem` would mean `easifemgo`
:::
-Check
+Now `easifem` is installed on your system, you can check the location by using the command `which easifem`.
+
+You can get the help by using the following command.
```bash
-easifem --help
+easifem help
```
### Step 3: Setting up environment variables
@@ -196,4 +204,3 @@ source $HOME/.config/easifem/easifemvar.fish
```bash
easifem install extpkgs base classes
```
-
diff --git a/docs/guides/getting-started/ubuntu.md b/docs/guides/getting-started/ubuntu.md
index f142ace7..5b71a4e3 100644
--- a/docs/guides/getting-started/ubuntu.md
+++ b/docs/guides/getting-started/ubuntu.md
@@ -83,11 +83,11 @@ go install github.com/easifem/easifemgo
Now `easifemgo` is installed on your system mostly at `~/go/bin/easifemgo`
-:::info
-It is recommended that you make a symlink or alias of easifemgo with name easifem. In the following text `easifem` would mean `easifemgo`
+:::info
+It is recommended that you make a symlink or alias of easifemgo with name easifem. In the following text `easifem` would mean `easifemgo`
:::
-Check
+Check
```bash
easifem --help
diff --git a/docs/guides/ide/_category_.json b/docs/guides/ide/_category_.json
index 3f484ec2..b79c3318 100644
--- a/docs/guides/ide/_category_.json
+++ b/docs/guides/ide/_category_.json
@@ -1,5 +1,5 @@
{
"position": 5,
"label": "IDE Integration",
- "collapsible": true,
+ "collapsible": true
}
diff --git a/docs/guides/install/__Installation_Linux.md b/docs/guides/install/__Installation_Linux.md
index 9c376a26..ab648904 100644
--- a/docs/guides/install/__Installation_Linux.md
+++ b/docs/guides/install/__Installation_Linux.md
@@ -37,7 +37,6 @@ Do you want to automatically set environment variables? 'yes' or 'no' [Y/n]:
> If you want the script to set the environment variable then press `yes` else `no`. This would be enough, and you can jump to install section.
-
However, if you like to see and set the available options by yourself then follow the following instruction.
### Install packages
@@ -63,7 +62,6 @@ sudo apt install -y gnuplot
> `gnuplot` and `gmsh` are relatively big programs. You can ignore their installation if you want.
-
### Set environment variables
**Step 1:** Go to home directory by using the following command, and check the existance of `.bashrc`
@@ -128,8 +126,8 @@ alias gfortran=/usr/bin/gfortran-10
```
- The 1st line specifies the path where easifem package will be installed, it is better to specify home the home directory
-- The 2nd and 3rd *should not be changed*, these env-vars are needed in `CMakeLists.txt` file.
-- The 4th and the 5th lines create directories, *do not change it*
+- The 2nd and 3rd _should not be changed_, these env-vars are needed in `CMakeLists.txt` file.
+- The 4th and the 5th lines create directories, _do not change it_
**Step 5** Edit `.bashrc`
@@ -150,7 +148,6 @@ source ~/.bashrc
## Installatation
-
#### CMake
#### Python
diff --git a/docs/guides/install/__Installation_MacOS.md b/docs/guides/install/__Installation_MacOS.md
index 05a00dfe..6c5459c4 100644
--- a/docs/guides/install/__Installation_MacOS.md
+++ b/docs/guides/install/__Installation_MacOS.md
@@ -1,6 +1,5 @@
-
#### CMake
#### Python
-#### Homebrew
\ No newline at end of file
+#### Homebrew
diff --git a/docs/guides/install/_category_.json b/docs/guides/install/_category_.json
index 2cec4bd8..0fa6950c 100644
--- a/docs/guides/install/_category_.json
+++ b/docs/guides/install/_category_.json
@@ -1,5 +1,5 @@
{
"position": 3,
"label": "Installation",
- "collapsible": true,
+ "collapsible": true
}
diff --git a/docs/guides/install/_include/base_cli_install.md b/docs/guides/install/_include/base_cli_install.md
index c5d4304c..9af0069b 100644
--- a/docs/guides/install/_include/base_cli_install.md
+++ b/docs/guides/install/_include/base_cli_install.md
@@ -24,29 +24,37 @@ projectName = "easifemBase"
intSize = 32 # Default integer size
realSize = 64 # default real size
-maxNNE = 128 # maximum number of nodes in an element to consider
+maxNNE = 128 # maximum number of nodes in an element to consider
maxNodeToNode = 128 # maximum number of node to nodes.
maxNodeToElem = 128 # maximum number of node to element.
runtest = true
license = "GPL3"
buildOptions = [
-"-D USE_OPENMP:BOOL=ON",
-"-D USE_PLPLOT:BOOL=ON",
-"-D USE_BLAS95:BOOL=ON",
-"-D USE_LAPACK95:BOOL=ON",
-"-D USE_FFTW:BOOL=ON",
-"-D USE_GTK:BOOL=OFF",
-"-D USE_ARPACK:BOOL=ON",
-"-D USE_PARPACK:BOOL=OFF",
-"-D USE_SUPERLU:BOOL=ON",
-"-D USE_LIS:BOOL=ON",
-"-D USE_METIS:BOOL=OFF",
-"-D USE_LUA:BOOL=ON",
-"-D USE_INT32:BOOL=ON",
-"-D USE_REAL64:BOOL=ON",
-"-D USE_COLORDISP:BOOL=ON",
+ "-D USE_OPENMP:BOOL=ON",
+ "-D USE_PLPLOT:BOOL=ON",
+ "-D USE_BLAS95:BOOL=ON",
+ "-D USE_LAPACK95:BOOL=ON",
+ "-D USE_FFTW:BOOL=ON",
+ "-D USE_GTK:BOOL=OFF",
+ "-D USE_ARPACK:BOOL=ON",
+ "-D USE_PARPACK:BOOL=OFF",
+ "-D USE_SUPERLU:BOOL=ON",
+ "-D USE_LIS:BOOL=ON",
+ "-D USE_METIS:BOOL=OFF",
+ "-D USE_LUA:BOOL=ON",
+ "-D USE_INT32:BOOL=ON",
+ "-D USE_REAL64:BOOL=ON",
+ "-D USE_COLORDISP:BOOL=ON",
]
-dependencies = ["arpack", "sparsekit", "superlu", "lis", "fftw", "lapack95", "tomlf"]
+dependencies = [
+ "arpack",
+ "sparsekit",
+ "superlu",
+ "lis",
+ "fftw",
+ "lapack95",
+ "tomlf",
+]
```
diff --git a/docs/guides/install/_include/base_cmake_install.md b/docs/guides/install/_include/base_cmake_install.md
index 32cb2f25..11c2b0bc 100644
--- a/docs/guides/install/_include/base_cmake_install.md
+++ b/docs/guides/install/_include/base_cmake_install.md
@@ -1,7 +1,7 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-easifem uses CMake build system.
+easifem uses CMake build system.
To manually install `easifem` from the source we need to perform following tasks.
1. Download the source code from git repository.
@@ -54,32 +54,32 @@ mkdir ./build
To configure the `easifemBase` library you can define following variables:
-| Variable | Type | Options | Default |
-| -------------------- | ------ | ------------------ | ------- |
-| `CMAKE_BUILD_TYPE` | `STRING` | `Release`, `Debug` | `Release` |
-| `BUILD_SHARED_LIBS` | `BOOL` | `ON`, `OFF` | `ON` |
+| Variable | Type | Options | Default |
+| ---------------------- | -------- | ------------------ | --------------- |
+| `CMAKE_BUILD_TYPE` | `STRING` | `Release`, `Debug` | `Release` |
+| `BUILD_SHARED_LIBS` | `BOOL` | `ON`, `OFF` | `ON` |
| `CMAKE_INSTALL_PREFIX` | `PATH` | Please specify | `$EASIFEM_BASE` |
-| `USE_OpenMP` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_PLPLOT` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_BLAS95` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_LAPACK95` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_FFTW` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_GTK` | `BOOL` | `ON`, `OFF` | `OFF` |
-| `USE_ARPACK` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_SUPERLU` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_LIS` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_PARPACK` | `BOOL` | `ON`, `OFF` | `OFF` |
-| `USE_METIS` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_SUPERLU` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_RAYLIB` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_GTK` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_LUA` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_GMSH_SDK` | `BOOL` | `ON`, `OFF`* | `OFF` |
-| `USE_Int32` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_Int64` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_Real32` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_Real64` | `BOOL` | `ON`, `OFF` | `ON` |
-| `USE_COLORDISP` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_OpenMP` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_PLPLOT` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_BLAS95` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_LAPACK95` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_FFTW` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_GTK` | `BOOL` | `ON`, `OFF` | `OFF` |
+| `USE_ARPACK` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_SUPERLU` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_LIS` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_PARPACK` | `BOOL` | `ON`, `OFF` | `OFF` |
+| `USE_METIS` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_SUPERLU` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_RAYLIB` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_GTK` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_LUA` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_GMSH_SDK` | `BOOL` | `ON`, `OFF`* | `OFF` |
+| `USE_Int32` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_Int64` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_Real32` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_Real64` | `BOOL` | `ON`, `OFF` | `ON` |
+| `USE_COLORDISP` | `BOOL` | `ON`, `OFF` | `ON` |
### Step-3 and 4: Build and Install
@@ -116,15 +116,15 @@ cmake -G "Ninja" -S ./ -B ./build \
### `CMAKE_BUILD_TYPE`
-If `CMAKE_BUILD_TYPE` denotes the build type of library. You can read more it at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html).
+If `CMAKE_BUILD_TYPE` denotes the build type of library. You can read more it at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html).
This variable is string type and it can take following values:
- `Release`: If `CMAKE_BUILD_TYPE` is set to `Release`, then highly optimized version of `easifemBase` is built without any debugging facility. This option should be used by the users of easifem.
- `Debug`: If `CMAKE_BUILD_TYPE` is set to `Debug`, then library is built with debugging facility. This is useful for developer of easifem. No optimization, asserts enabled, [custom debug (output) code enabled],
- debug info included in executable (so you can step through the code with a
- debugger and have address to source-file:line-number translation).
-- `RelWithDebInfo`: optimized, with debug info, but no debug (output) code or asserts.
+ debug info included in executable (so you can step through the code with a
+ debugger and have address to source-file:line-number translation).
+- `RelWithDebInfo`: optimized, with debug info, but no debug (output) code or asserts.
- `MinSizeRel`: same as Release but optimizing for size rather than speed.
You can set this option by using `--D CMAKE_BUILD_TYPE:STRING=Release`.
@@ -145,81 +145,81 @@ You can set this option by using `--D BUILD_SHARED_LIBS:BOOL=ON`.
You can set this option by using `--D CMAKE_INSTALL_PREFIX:PATH=$EASIFEM_BASE`.
-:::note Read more
+:::note Read more
You can read about `CMAKE_INSTALL_PREFIX` at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html).
:::
### `USE_OpenMP`
-- `USE_OpenMP` if set to `ON`, the `easifemBase` library is built with `OpenMP` with shared memory parallelization.
-- The default value is `ON`
+- `USE_OpenMP` if set to `ON`, the `easifemBase` library is built with `OpenMP` with shared memory parallelization.
+- The default value is `ON`
- You can set this option by using `--D USE_OpenMP:BOOL=ON`.
### `USE_PLPLOT`
-- If `USE_PLPLOT` is set to `ON`, then `PlPlot` library will be used for plotting figures. If you have set this option to `ON` then make sure you have downloaded `PlPlot` library while [building system requirements](./install-system-requirements).
+- If `USE_PLPLOT` is set to `ON`, then `PlPlot` library will be used for plotting figures. If you have set this option to `ON` then make sure you have downloaded `PlPlot` library while [building system requirements](./install-system-requirements).
- In case `USE_PlPLOT` is set to `OFF`, then `PlPlot` library will not be used for plotting figures. In this case, plotting may not be possible from `easifem` library.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_PLPLOT:BOOL=ON`.
### `USE_BLAS95`
- If `USE_BLAS95` is set to `ON`, then FORTRAN-95 interface to `BLAS` library will be used. In external packages if you have installed `BLAS95` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_BLAS95:BOOL=ON`.
### `USE_LAPACK95`
- If `USE_LAPACK95` is set to `ON`, then FORTRAN-95 interface to `LAPACK` library will be used. In external packages if you have installed `LAPACK95` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_LAPACK95:BOOL=ON`.
### `USE_FFTW`
- If `USE_FFTW` is set to `ON`, then `FFTW` library will be used for Fast Fourier Transform. `FFTW` stands for Fast Fourier Library in the West. In external packages if you have installed `FFTW` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_FFTW:BOOL=ON`.
### `USE_GTK`
- If `USE_GTK` is set to `ON`, then `GTK` library will be used for making Graphic User Interfaces. In external packages if you have installed `gtk4` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `OFF`
+- The default value is `OFF`
- You can set this option by using `--D USE_GTK:BOOL=OFF`.
### `USE_ARPACK`
- If `USE_ARPACK` is set to `ON`, then `ARPACK` library will be used for computing eigenvalues and eigenvectors of sparse matrices. In external packages if you have installed `arpack` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_ARPACK:BOOL=ON`.
### `USE_SUPERLU`
- If `USE_SUPERLU` is set to `ON`, then `superlu` library will be used for linear solver. In external packages if you have installed `superlu` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_SUPERLU:BOOL=ON`.
### `USE_LIS`
- If `USE_LIS` is set to `ON`, then `LIS` library will be used for solving system of linear equations by using iterative methods. In external packages if you have installed `lis` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_LIS:BOOL=ON`.
### `USE_PARPACK`
- If `USE_PARPACK` is set to `ON`, then parallel `ARPACK` library called `PARPACK` will be used for computing the eigenvalues and eigenvectors of large sparse matrices. In external packages if you have installed `parpack` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `OFF`
+- The default value is `OFF`
- You can set this option by using `--D USE_PARPACK:BOOL=OFF`.
### `USE_METIS`
- If `USE_METIS` is set to `ON`, then `METIS` library will be used for graph partitioning. In external packages if you have installed `metis` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `OFF`
+- The default value is `OFF`
- You can set this option by using `--D USE_METIS:BOOL=OFF`.
### `USE_SUPERLU`
- If `USE_SUPERLU` is set to `ON`, then `superlu` library will be used for linear solver. In external packages if you have installed `superlu` library, then you can set this option to `ON`, otherwise set it to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_SUPERLU:BOOL=ON`.
### `USE_RAYLIB`
@@ -251,25 +251,25 @@ An example of configuration step is given below:
### `USE_Int32`
- If `USE_Int32` is set to `ON`, then 32-bit integer numbers will be used as default integers. Please do not set this to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_Int32:BOOL=ON`.
### `USE_Int64`
- If `USE_Int64` is set to `ON`, then 64-bit integer numbers will be used as default integers. By default it is set to `OFF`.
-- The default value is `OFF`
+- The default value is `OFF`
- You can set this option by using `--D USE_Int64:BOOL=ON`.
### `USE_Real32`
- If `USE_Real32` is set to `ON`, then 32-bit real numbers will be used as default real numbers.
-- The default value is `OFF`
+- The default value is `OFF`
- You can set this option by using `--D USE_Real32:BOOL=ON`.
### `USE_Real64`
- If `USE_Real64` is set to `ON`, then 64-bit real numbers will be used as default real numbers. Please do not set this to `OFF`.
-- The default value is `ON`
+- The default value is `ON`
- You can set this option by using `--D USE_Real64:BOOL=ON`.
### `USE_COLORDISP`
@@ -277,4 +277,3 @@ An example of configuration step is given below:
- If `USE_COLORDISP` is set to `ON`, then display in terminal will be colored.
- The default value is `ON`
- You can set this option by using `--D USE_COLORDISP:BOOL=ON`.
-
diff --git a/docs/guides/install/_include/classes_cli_install.md b/docs/guides/install/_include/classes_cli_install.md
index d992b70d..0db5c7f3 100644
--- a/docs/guides/install/_include/classes_cli_install.md
+++ b/docs/guides/install/_include/classes_cli_install.md
@@ -16,9 +16,10 @@ easifem install easifem
To install easifemClasses by using you need toml configuration file. The toml configuration file is given below.
:::note Learn more about configuration
+
- You can read more about the toml configuration file [here](/guides/easifemGO/config).
- The most recent toml configuration file is located at [git repository](https://github.com/easifem/config/blob/main/plugins/classes.toml).
-:::
+ :::
```toml
name = "classes"
diff --git a/docs/guides/install/_include/classes_cmake_install.md b/docs/guides/install/_include/classes_cmake_install.md
index 7c9adbd0..1dd1293d 100644
--- a/docs/guides/install/_include/classes_cmake_install.md
+++ b/docs/guides/install/_include/classes_cmake_install.md
@@ -1,7 +1,7 @@
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-easifem uses CMake build system.
+easifem uses CMake build system.
To manually install `easifem` from the source we need to perform following tasks.
1. Download the source code from git repository.
@@ -58,7 +58,6 @@ To configure the `easifemClasses` library you can define following variables:
| `BUILD_SHARED_LIBS` | `BOOL` | `ON`, `OFF` | `ON` |
| `CMAKE_INSTALL_PREFIX` | `PATH` | Please specify | `$EASIFEM_CLASSES` |
-
An example of configuration step is given below:
```bash
@@ -77,19 +76,19 @@ After configuration, you can build and install the library by using:
cmake --build ./build --target --install
```
-## Build options
+## Build options
### `CMAKE_BUILD_TYPE`
-If `CMAKE_BUILD_TYPE` denotes the build type of library. You can read more it at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html).
+If `CMAKE_BUILD_TYPE` denotes the build type of library. You can read more it at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html).
This variable is string type and it can take following values:
- `Release`: If `CMAKE_BUILD_TYPE` is set to `Release`, then highly optimized version of `easifemBase` is built without any debugging facility. This option should be used by the users of easifem.
- `Debug`: If `CMAKE_BUILD_TYPE` is set to `Debug`, then library is built with debugging facility. This is useful for developer of easifem. No optimization, asserts enabled, [custom debug (output) code enabled],
- debug info included in executable (so you can step through the code with a
- debugger and have address to source-file:line-number translation).
-- `RelWithDebInfo`: optimized, with debug info, but no debug (output) code or asserts.
+ debug info included in executable (so you can step through the code with a
+ debugger and have address to source-file:line-number translation).
+- `RelWithDebInfo`: optimized, with debug info, but no debug (output) code or asserts.
- `MinSizeRel`: same as Release but optimizing for size rather than speed.
You can set this option by using `--D CMAKE_BUILD_TYPE:STRING=Release`.
@@ -110,6 +109,6 @@ You can set this option by using `--D BUILD_SHARED_LIBS:BOOL=ON`.
You can set this option by using `--D CMAKE_INSTALL_PREFIX:PATH=$EASIFEM_CLASSES`.
-:::note Read more
+:::note Read more
You can read about `CMAKE_INSTALL_PREFIX` at the [cmake website](https://cmake.org/cmake/help/latest/variable/CMAKE_INSTALL_PREFIX.html).
:::
diff --git a/docs/guides/install/_include/install-easifem-cli.md b/docs/guides/install/_include/install-easifem-cli.md
index fedc6699..ec20dc01 100644
--- a/docs/guides/install/_include/install-easifem-cli.md
+++ b/docs/guides/install/_include/install-easifem-cli.md
@@ -1,7 +1,3 @@
-
import EXAMPLE1 from "../../easifemGO/index.mdx";
-
-
-
diff --git a/docs/guides/install/_include/install-extpkgs.md b/docs/guides/install/_include/install-extpkgs.md
index 8c667bfd..735f75d8 100644
--- a/docs/guides/install/_include/install-extpkgs.md
+++ b/docs/guides/install/_include/install-extpkgs.md
@@ -14,7 +14,7 @@ More information about the external packages used in the easifem are given [here
Below we provide details of installing the external packages by using [easifem cli](/guides/easifemGO).
-## easifem cli
+## easifem cli
The easiest way to install the above-mentioned external packages is through `easifem` command line application (cli).
@@ -33,4 +33,3 @@ easifem install openblas superlu lis metis scotch arpack fftw gtk-fortran lapack
- The packages will be stored at `EASIFEM_SOURCE_DIR/`
- The packages will be built at `EASIFEM_BUILD_DIR/`
- The packages will be installed at `EASIFEM_INSTALL_DIR/`
-
diff --git a/docs/guides/install/_include/install-system-requirements.md b/docs/guides/install/_include/install-system-requirements.md
index 00ea9745..d9f90575 100644
--- a/docs/guides/install/_include/install-system-requirements.md
+++ b/docs/guides/install/_include/install-system-requirements.md
@@ -43,7 +43,7 @@ yay -Sy gcc gcc-fortran openmp curl git python3 cmake ninja lapack openblas hdf5
If you face any problem installing plplot with fortran binding, then follow the instruction given below.
-```bash
+```bash
mkdir -pv ~/temp
cd ~/temp
git clone https://github.com/easifem/archlinux-plplot-fortran.git
diff --git a/docs/guides/install/_include/setup-environment.md b/docs/guides/install/_include/setup-environment.md
index a31d5a1a..b68f8b2d 100644
--- a/docs/guides/install/_include/setup-environment.md
+++ b/docs/guides/install/_include/setup-environment.md
@@ -1,16 +1,16 @@
To install `easifem` you need to define following environment variables in your shell.
-- **`EASIFEM_INSTALL_DIR`**: The location of file system where easifem will be installed. For example, `/opt`, `${HOME}`, `/usr/local/`. Default location is `$HOME/.easifem/easifem/install/`.
+- **`EASIFEM_INSTALL_DIR`**: The location of file system where easifem will be installed. For example, `/opt`, `${HOME}`, `/usr/local/`. Default location is `$HOME/.easifem/easifem/install/`.
- **`EASIFEM_SOURCE_DIR`**: The location of file system where the source code of easifem will be downloaded. For example, `~/.easifem/easifem/src/`.
- **`EASIFEM_BUILD_DIR`**: The location of file system where build files will be stored. These files are necessary for installation, and after installation you can remove them if you want. Always keep your build directory separated from your source and install directory. For example, `~/.easifem/easifem/build/`.
The above-mentioned environment variables are the fundamental environment variables, which are used for defining other variables as shown in the following table.
-| Env-var name | description | example |
-| :------------------------ | :----------------------------------------------------------------------------------------------- | :---------------------------------------------- |
-| **`EASIFEM_INSTALL_DIR`** | Location of file system where EASIFEM library will install its components and external packages. | `~/.easifem/easifem/install/` |
-| **`EASIFEM_SOURCE_DIR`** | Location of file system where the source code will be downloaded. | `~/.easifem/easifem/src/` |
-| **`EASIFEM_BUILD_DIR`** | Location of file system where the build files will be stored. | `~/.easifem/easifem/build/` |
+| Env-var name | description | example |
+| :------------------------ | :----------------------------------------------------------------------------------------------- | :-------------------------------------- |
+| **`EASIFEM_INSTALL_DIR`** | Location of file system where EASIFEM library will install its components and external packages. | `~/.easifem/easifem/install/` |
+| **`EASIFEM_SOURCE_DIR`** | Location of file system where the source code will be downloaded. | `~/.easifem/easifem/src/` |
+| **`EASIFEM_BUILD_DIR`** | Location of file system where the build files will be stored. | `~/.easifem/easifem/build/` |
| **`EASIFEM_BASE`** | Location where `easifemBase` library will be installed. | `EASIFEM_BASE=EASIFEM_INSTALL_DIR/base` |
| **`EASIFEM_CLASSES`** | Location where `easifemClasses` library will be installed. | `EASIFEM_INSTALL_DIR/classes` |
| **`EASIFEM_MATERIALS`** | Location where `easifemMaterials` library will be installed. | `EASIFEM_INSTALL_DIR/materials` |
@@ -28,7 +28,7 @@ First, make sure you have successfully installed the `easifem` CLI as mentioned
You can set up the environment variables in the configuration file `easifem.toml` as mentioned [here](/guides/easifemGO/config)
-The easifem command line application creates `easifemvar.sh` and `easifemvar.fish` files (in `~/.config/easifem/`) which adds some path to `LD_LIBRARY_PATH` path. The first is useful if your shell is bash or zsh, and the latter file is useful for fish shell.
+The easifem command line application creates `easifemvar.sh` and `easifemvar.fish` files (in `~/.config/easifem/`) which adds some path to `LD_LIBRARY_PATH` path. The first is useful if your shell is bash or zsh, and the latter file is useful for fish shell.
- For `bash` and `zsh` shell, the name of the file is `easifemvar.sh`
- For `fish` shell, the name of the file is `easifemvar.fish`.
@@ -127,4 +127,3 @@ echo $EASIFEM_INSTALL_DIR
-
diff --git a/docs/guides/install/archlinux/install-easifem-base.md b/docs/guides/install/archlinux/install-easifem-base.md
index d5aef01b..34c64490 100644
--- a/docs/guides/install/archlinux/install-easifem-base.md
+++ b/docs/guides/install/archlinux/install-easifem-base.md
@@ -19,11 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
-
diff --git a/docs/guides/install/archlinux/install-easifem-classes.md b/docs/guides/install/archlinux/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/archlinux/install-easifem-classes.md
+++ b/docs/guides/install/archlinux/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/archlinux/install-extpkgs.md b/docs/guides/install/archlinux/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/archlinux/install-extpkgs.md
+++ b/docs/guides/install/archlinux/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/archlinux/install-system-requirements.md b/docs/guides/install/archlinux/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/archlinux/install-system-requirements.md
+++ b/docs/guides/install/archlinux/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/debian/install-easifem-base.md b/docs/guides/install/debian/install-easifem-base.md
index cca38528..59d4254e 100644
--- a/docs/guides/install/debian/install-easifem-base.md
+++ b/docs/guides/install/debian/install-easifem-base.md
@@ -19,10 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
diff --git a/docs/guides/install/debian/install-easifem-classes.md b/docs/guides/install/debian/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/debian/install-easifem-classes.md
+++ b/docs/guides/install/debian/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/debian/install-extpkgs.md b/docs/guides/install/debian/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/debian/install-extpkgs.md
+++ b/docs/guides/install/debian/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/debian/install-system-requirements.md b/docs/guides/install/debian/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/debian/install-system-requirements.md
+++ b/docs/guides/install/debian/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/extpkgs/ARPACK.md b/docs/guides/install/extpkgs/ARPACK.md
index 778e0e7f..c1532b10 100644
--- a/docs/guides/install/extpkgs/ARPACK.md
+++ b/docs/guides/install/extpkgs/ARPACK.md
@@ -73,10 +73,11 @@ libName = "arpack"
runtest = true
license = "GPL3"
buildOptions = [
-"-D MPI:BOOL=OFF",
-"-D ICB:BOOL=OFF",
-"-D EIGEN:BOOL=OFF",
-"-D EXAMPLES:BOOL=OFF"]
+ "-D MPI:BOOL=OFF",
+ "-D ICB:BOOL=OFF",
+ "-D EIGEN:BOOL=OFF",
+ "-D EXAMPLES:BOOL=OFF",
+]
envVars.foo = "bar"
envVars.FOO = "BAR"
```
diff --git a/docs/guides/install/extpkgs/BeFoR64.md b/docs/guides/install/extpkgs/BeFoR64.md
index 69190d57..9475e57c 100644
--- a/docs/guides/install/extpkgs/BeFoR64.md
+++ b/docs/guides/install/extpkgs/BeFoR64.md
@@ -12,7 +12,7 @@ tags:
# BeFoR64
-This library is developed by [Mr. Szaghi](https://github.com/szaghi). It is for *base64* encoding/decoding for modern Fortran projects.
+This library is developed by [Mr. Szaghi](https://github.com/szaghi). It is for _base64_ encoding/decoding for modern Fortran projects.
Modern Fortran standards (2003+) have introduced better support for strings manipulations. Exploiting such new Fortran capabilities, BeFoR64 provides an easy to use module library for encoding and decoding Fortran types (binary internal representation) in ascii-base64-encoded string.
diff --git a/docs/guides/install/extpkgs/FFTW.md b/docs/guides/install/extpkgs/FFTW.md
index 1e5523f4..65f4a74a 100644
--- a/docs/guides/install/extpkgs/FFTW.md
+++ b/docs/guides/install/extpkgs/FFTW.md
@@ -8,7 +8,6 @@ tags:
- extpkgs
---
-
# FFTW
FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data (as well as of even/odd data, that is, the discrete cosine/sine transforms or DCT/DST).
@@ -45,17 +44,18 @@ buildStaticLibs = true
libName = "fftw"
runtest = true
license = "GPL3"
-buildOptions = ["-D BUILD_TESTS:BOOL=ON",
-"-D ENABLE_OPENMP:BOOL=ON",
-"-D ENABLE_THREADS:BOOL=ON",
-"-D WITH_COMBINED_THREADS:BOOL=OFF",
-"-D ENABLE_FLOAT:BOOL=OFF",
-"-D ENABLE_LONG_DOUBLE:BOOL=OFF",
-"-D ENABLE_QUAD_PRECISION:BOOL=OFF",
-"-D ENABLE_SSE:BOOL=OFF",
-"-D ENABLE_SSE2:BOOL=OFF",
-"-D ENABLE_AVX:BOOL=OFF",
-"-D ENABLE_AVX2:BOOL=OFF",
-"-D DISABLE_FORTRAN:BOOL=OFF",
+buildOptions = [
+ "-D BUILD_TESTS:BOOL=ON",
+ "-D ENABLE_OPENMP:BOOL=ON",
+ "-D ENABLE_THREADS:BOOL=ON",
+ "-D WITH_COMBINED_THREADS:BOOL=OFF",
+ "-D ENABLE_FLOAT:BOOL=OFF",
+ "-D ENABLE_LONG_DOUBLE:BOOL=OFF",
+ "-D ENABLE_QUAD_PRECISION:BOOL=OFF",
+ "-D ENABLE_SSE:BOOL=OFF",
+ "-D ENABLE_SSE2:BOOL=OFF",
+ "-D ENABLE_AVX:BOOL=OFF",
+ "-D ENABLE_AVX2:BOOL=OFF",
+ "-D DISABLE_FORTRAN:BOOL=OFF",
]
```
diff --git a/docs/guides/install/extpkgs/LAPACK95.md b/docs/guides/install/extpkgs/LAPACK95.md
index d0759466..da77721c 100644
--- a/docs/guides/install/extpkgs/LAPACK95.md
+++ b/docs/guides/install/extpkgs/LAPACK95.md
@@ -10,7 +10,7 @@ tags:
# LAPACK95
-LAPACK95 is a Fortran-95 (modern-fortran) interface to LAPACK. The repository is located [here](https://github.com/vickysharma0812/LAPACK95), which is a fork of [scivision's Lapack95 library](https://github.com/scivision/LAPACK95).
+LAPACK95 is a Fortran-95 (modern-fortran) interface to LAPACK. The repository is located [here](https://github.com/vickysharma0812/LAPACK95), which is a fork of [scivision's Lapack95 library](https://github.com/scivision/LAPACK95).
:::note
The reason of this forked version is to facilitate the building of LAPACK95 by using CMake (and Meson) build system.
@@ -34,12 +34,12 @@ This repository is forked mainly for easing the integration of Lapack95 with EAS
Following options are defined:
-| Option | Value | Default |
-| :--- | :---: | ---: |
-| `-DUSE_OPENMP=`| `ON` and `OFF` to enable and disable openmp | `ON` |
-| `-DCMAKE_BUILD_TYPE=`| `Release` or `Debug` for release or debug build-type | `Release` |
-| `BUILD_SHARED_LIBS=` | `ON` or `OFF` to build shared or static library | `ON` |
-| `-DCMAKE_INSTALL_PREFIX=` | The location of the installation directory | `${EASIFEM_EXTPKGS}` |
+| Option | Value | Default |
+| :------------------------ | :--------------------------------------------------: | -------------------: |
+| `-DUSE_OPENMP=` | `ON` and `OFF` to enable and disable openmp | `ON` |
+| `-DCMAKE_BUILD_TYPE=` | `Release` or `Debug` for release or debug build-type | `Release` |
+| `BUILD_SHARED_LIBS=` | `ON` or `OFF` to build shared or static library | `ON` |
+| `-DCMAKE_INSTALL_PREFIX=` | The location of the installation directory | `${EASIFEM_EXTPKGS}` |
```sh
git clone https://github.com/vickysharma0812/LAPACK95.git
@@ -95,4 +95,3 @@ libName = "LAPACK95"
runtest = true
license = "GPL3"
```
-
diff --git a/docs/guides/install/extpkgs/LIS.md b/docs/guides/install/extpkgs/LIS.md
index 38b71f2f..fcec169d 100644
--- a/docs/guides/install/extpkgs/LIS.md
+++ b/docs/guides/install/extpkgs/LIS.md
@@ -45,6 +45,11 @@ buildStaticLibs = false
libName = "lis"
runtest = true
license = "GPL3"
-buildOptions = ["--enable-omp", "--enable-f90", "--enable-shared", "--enable-saamg"]
+buildOptions = [
+ "--enable-omp",
+ "--enable-f90",
+ "--enable-shared",
+ "--enable-saamg",
+]
# envVars.CC = "gcc-14"
```
diff --git a/docs/guides/install/extpkgs/PENF.md b/docs/guides/install/extpkgs/PENF.md
index 02ab1f82..415905d3 100644
--- a/docs/guides/install/extpkgs/PENF.md
+++ b/docs/guides/install/extpkgs/PENF.md
@@ -12,4 +12,4 @@ tags:
# PENF
-PENF is developed by [Mr. Szaghi](https://github.com/szaghi). This library tries to exploit code portability for modern (2003+) Fortran projects. It is a pure Fortran library for achieving portable codes for modern Fortran projects. It provides many number-to-string and vice-versa facilities. [Read more](https://github.com/szaghi/PENF/tree/master/src)
+PENF is developed by [Mr. Szaghi](https://github.com/szaghi). This library tries to exploit code portability for modern (2003+) Fortran projects. It is a pure Fortran library for achieving portable codes for modern Fortran projects. It provides many number-to-string and vice-versa facilities. [Read more](https://github.com/szaghi/PENF/tree/master/src)
diff --git a/docs/guides/install/extpkgs/Sparsekit.md b/docs/guides/install/extpkgs/Sparsekit.md
index 2b04cf01..6817dc23 100644
--- a/docs/guides/install/extpkgs/Sparsekit.md
+++ b/docs/guides/install/extpkgs/Sparsekit.md
@@ -20,11 +20,11 @@ EASIFEM uses the forked library which is located at the [gitHub.](https://github
Following options are defined:
-| Option | Value | Default |
-| :--- | :---: | ---: |
-| `-DCMAKE_BUILD_TYPE=`| `Release` or `Debug` for release or debug build-type | `Release` |
-| `BUILD_SHARED_LIBS=` | `ON` or `OFF` to build shared or static library | `ON` |
-| `-DCMAKE_INSTALL_PREFIX=` | The location of the installation directory | `${EASIFEM_EXTPKGS}` |
+| Option | Value | Default |
+| :------------------------ | :--------------------------------------------------: | -------------------: |
+| `-DCMAKE_BUILD_TYPE=` | `Release` or `Debug` for release or debug build-type | `Release` |
+| `BUILD_SHARED_LIBS=` | `ON` or `OFF` to build shared or static library | `ON` |
+| `-DCMAKE_INSTALL_PREFIX=` | The location of the installation directory | `${EASIFEM_EXTPKGS}` |
```sh
git clone https://github.com/vickysharma0812/Sparsekit.git
diff --git a/docs/guides/install/extpkgs/StringiFor.md b/docs/guides/install/extpkgs/StringiFor.md
index 98ed9cd2..103ed33b 100644
--- a/docs/guides/install/extpkgs/StringiFor.md
+++ b/docs/guides/install/extpkgs/StringiFor.md
@@ -12,4 +12,4 @@ tags:
# StringiFor
-This library is also a fortran project of [Mr. Szaghi](https://github.com/szaghi). This library makes an attempt to define string data type for handling characters in an object oriented way. [Read more](https://github.com/szaghi/StringiFor)
+This library is also a fortran project of [Mr. Szaghi](https://github.com/szaghi). This library makes an attempt to define string data type for handling characters in an object oriented way. [Read more](https://github.com/szaghi/StringiFor)
diff --git a/docs/guides/install/extpkgs/SuperLU.md b/docs/guides/install/extpkgs/SuperLU.md
index 0847f872..d055acd7 100644
--- a/docs/guides/install/extpkgs/SuperLU.md
+++ b/docs/guides/install/extpkgs/SuperLU.md
@@ -32,7 +32,6 @@ cmake --build $build_dir --target install
## Toml configuration for easifem
```toml
-
name = "superlu"
isExtPkg = true
isActive = true
@@ -45,14 +44,14 @@ libName = "superlu"
runtest = true
license = "GPL3"
buildOptions = [
-"-D TPL_ENABLE_METISLIB:BOOL=OFF",
-"-D enable_single:BOOL=ON",
-"-D enable_double:BOOL=ON",
-"-D enable_complex:BOOL=ON",
-"-D enable_complex16:BOOL=ON",
-"-D enable_matlabmex:BOOL=OFF",
-"-D enable_doc:BOOL=OFF",
-"-D enable_examples:BOOL=OFF",
-"-D enable_tests:BOOL=ON"]
-
+ "-D TPL_ENABLE_METISLIB:BOOL=OFF",
+ "-D enable_single:BOOL=ON",
+ "-D enable_double:BOOL=ON",
+ "-D enable_complex:BOOL=ON",
+ "-D enable_complex16:BOOL=ON",
+ "-D enable_matlabmex:BOOL=OFF",
+ "-D enable_doc:BOOL=OFF",
+ "-D enable_examples:BOOL=OFF",
+ "-D enable_tests:BOOL=ON",
+]
```
diff --git a/docs/guides/install/extpkgs/extpkgs.table.js b/docs/guides/install/extpkgs/extpkgs.table.js
index bfa64437..2ec08833 100644
--- a/docs/guides/install/extpkgs/extpkgs.table.js
+++ b/docs/guides/install/extpkgs/extpkgs.table.js
@@ -113,19 +113,18 @@ export const columns = [
accessorKey: "description",
className: "pester-data-table left",
cell: ({ cell, row: { original } }) => (
- {cell.getValue()}
- {"🚀 More..."}
-
+
+ {cell.getValue()}{" "}
+
+ {"🚀 More..."}
+
),
-
},
{
header: "Command",
accessorKey: "cmd",
className: "pester-data-table left",
- cell: ({ cell, row: { original } }) => (
- {cell.getValue()}
- ),
+ cell: ({ cell, row: { original } }) => {cell.getValue()},
},
];
diff --git a/docs/guides/install/fedora/install-easifem-base.md b/docs/guides/install/fedora/install-easifem-base.md
index cca38528..59d4254e 100644
--- a/docs/guides/install/fedora/install-easifem-base.md
+++ b/docs/guides/install/fedora/install-easifem-base.md
@@ -19,10 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
diff --git a/docs/guides/install/fedora/install-easifem-classes.md b/docs/guides/install/fedora/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/fedora/install-easifem-classes.md
+++ b/docs/guides/install/fedora/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/fedora/install-extpkgs.md b/docs/guides/install/fedora/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/fedora/install-extpkgs.md
+++ b/docs/guides/install/fedora/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/fedora/install-system-requirements.md b/docs/guides/install/fedora/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/fedora/install-system-requirements.md
+++ b/docs/guides/install/fedora/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/macos/install-easifem-base.md b/docs/guides/install/macos/install-easifem-base.md
index f93a4c53..59d4254e 100644
--- a/docs/guides/install/macos/install-easifem-base.md
+++ b/docs/guides/install/macos/install-easifem-base.md
@@ -19,11 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
-
diff --git a/docs/guides/install/macos/install-easifem-classes.md b/docs/guides/install/macos/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/macos/install-easifem-classes.md
+++ b/docs/guides/install/macos/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/macos/install-extpkgs.md b/docs/guides/install/macos/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/macos/install-extpkgs.md
+++ b/docs/guides/install/macos/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/macos/install-system-requirements.md b/docs/guides/install/macos/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/macos/install-system-requirements.md
+++ b/docs/guides/install/macos/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/redhat/install-easifem-base.md b/docs/guides/install/redhat/install-easifem-base.md
index cca38528..59d4254e 100644
--- a/docs/guides/install/redhat/install-easifem-base.md
+++ b/docs/guides/install/redhat/install-easifem-base.md
@@ -19,10 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
diff --git a/docs/guides/install/redhat/install-easifem-classes.md b/docs/guides/install/redhat/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/redhat/install-easifem-classes.md
+++ b/docs/guides/install/redhat/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/redhat/install-extpkgs.md b/docs/guides/install/redhat/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/redhat/install-extpkgs.md
+++ b/docs/guides/install/redhat/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/redhat/install-system-requirements.md b/docs/guides/install/redhat/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/redhat/install-system-requirements.md
+++ b/docs/guides/install/redhat/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/ubuntu/install-easifem-base.md b/docs/guides/install/ubuntu/install-easifem-base.md
index cca38528..59d4254e 100644
--- a/docs/guides/install/ubuntu/install-easifem-base.md
+++ b/docs/guides/install/ubuntu/install-easifem-base.md
@@ -19,10 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
diff --git a/docs/guides/install/ubuntu/install-easifem-classes.md b/docs/guides/install/ubuntu/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/ubuntu/install-easifem-classes.md
+++ b/docs/guides/install/ubuntu/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/ubuntu/install-extpkgs.md b/docs/guides/install/ubuntu/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/ubuntu/install-extpkgs.md
+++ b/docs/guides/install/ubuntu/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/ubuntu/install-system-requirements.md b/docs/guides/install/ubuntu/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/ubuntu/install-system-requirements.md
+++ b/docs/guides/install/ubuntu/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/install/windows/install-easifem-base.md b/docs/guides/install/windows/install-easifem-base.md
index cca38528..59d4254e 100644
--- a/docs/guides/install/windows/install-easifem-base.md
+++ b/docs/guides/install/windows/install-easifem-base.md
@@ -19,10 +19,8 @@ import EXAMPLE20 from "../_include/base_cli_install.md";
-
## Using CMake
import EXAMPLE81 from "../_include/base_cmake_install.md";
-
diff --git a/docs/guides/install/windows/install-easifem-classes.md b/docs/guides/install/windows/install-easifem-classes.md
index 123db384..e7e1ca99 100644
--- a/docs/guides/install/windows/install-easifem-classes.md
+++ b/docs/guides/install/windows/install-easifem-classes.md
@@ -16,7 +16,6 @@ Before installing the `easifemClasses` library please make sure that you have in
## easifem CLI (recommended method)
-
import EXAMPLE19 from "../_include/classes_cli_install.md";
@@ -26,5 +25,3 @@ import EXAMPLE19 from "../_include/classes_cli_install.md";
import EXAMPLE81 from "../_include/classes_cmake_install.md";
-
-
diff --git a/docs/guides/install/windows/install-extpkgs.md b/docs/guides/install/windows/install-extpkgs.md
index 56398609..29221cc5 100644
--- a/docs/guides/install/windows/install-extpkgs.md
+++ b/docs/guides/install/windows/install-extpkgs.md
@@ -4,7 +4,6 @@ sidebar_position: 5
# External packages
-
import EXAMPLE8 from "../_include/install-extpkgs.md";
diff --git a/docs/guides/install/windows/install-system-requirements.md b/docs/guides/install/windows/install-system-requirements.md
index 13e774ba..c83284a0 100644
--- a/docs/guides/install/windows/install-system-requirements.md
+++ b/docs/guides/install/windows/install-system-requirements.md
@@ -4,7 +4,6 @@ sidebar_position: 2
# System requirements
-
import EXAMPLE8 from "../_include/install-system-requirements.md";
diff --git a/docs/guides/programming-basics/intrinsic-data-types/advance-routine.md b/docs/guides/programming-basics/intrinsic-data-types/advance-routine.md
index 7245dae6..f4b53d28 100644
--- a/docs/guides/programming-basics/intrinsic-data-types/advance-routine.md
+++ b/docs/guides/programming-basics/intrinsic-data-types/advance-routine.md
@@ -1 +1 @@
-# Advance topics in routine
+# Advance topics in routine
diff --git a/docs/guides/programming-fem/finiteElementSpaces/_category_.json b/docs/guides/programming-fem/finiteElementSpaces/_category_.json
index 1291cc26..886592b7 100644
--- a/docs/guides/programming-fem/finiteElementSpaces/_category_.json
+++ b/docs/guides/programming-fem/finiteElementSpaces/_category_.json
@@ -2,4 +2,4 @@
"position": 4,
"label": "Finite Element Spaces",
"collapsible": true
-}
\ No newline at end of file
+}
diff --git a/docs/guides/programming-fem/quadraturePoints/_category_.json b/docs/guides/programming-fem/quadraturePoints/_category_.json
index 2fda4eb2..1871acf0 100644
--- a/docs/guides/programming-fem/quadraturePoints/_category_.json
+++ b/docs/guides/programming-fem/quadraturePoints/_category_.json
@@ -2,4 +2,4 @@
"position": 3,
"label": "Quadrature Points",
"collapsible": true
-}
\ No newline at end of file
+}
diff --git a/docs/guides/programming-fem/quadraturePoints/hexahedron.md b/docs/guides/programming-fem/quadraturePoints/hexahedron.md
index 8c257a69..7be0c5e1 100644
--- a/docs/guides/programming-fem/quadraturePoints/hexahedron.md
+++ b/docs/guides/programming-fem/quadraturePoints/hexahedron.md
@@ -29,12 +29,12 @@ CALL display(mdencode(obj), "ans: ")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
+| | | | | | | | | |
+| -- | -------- | -------- | -------- | -------- | -------- | -------- | -------- | ------- |
+| x1 | -0.57735 | -0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | 0.57735 | 0.57735 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
## Isotropic Gauss-Legendre points on unit Hexahedron
@@ -57,12 +57,12 @@ CALL display(mdencode(obj) , "")
END PROGRAM main
```
-| | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- |
+| | | | | | | | | |
+| -- | ------- | ------- | ------- | ------- | ------- | ------- | ------- | ------- |
| x1 | 0.21132 | 0.21132 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.78868 | 0.78868 |
| x2 | 0.21132 | 0.21132 | 0.78868 | 0.78868 | 0.21132 | 0.21132 | 0.78868 | 0.78868 |
| x3 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 | 0.21132 | 0.78868 |
-| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
+| w | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 | 0.125 |
## Anisotropic Gauss-Legendre points on biunit Hexahedron
@@ -91,9 +91,9 @@ END PROGRAM main
You can specify different order of accuracy (p,q,r) and different types of quadrature points (by using quadratureType1, quadratureType2, quadratureType3) in x, y, and z directions.
:::
-| | | | | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
-| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
+| | | | | | | | | | | | | |
+| -- | -------- | -------- | -------- | ------- | ----------- | ----------- | ----------- | ----------- | -------- | -------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | -0.7746 | 3.64292E-16 | 3.46945E-16 | 3.46945E-16 | 3.88578E-16 | 0.7746 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 | -0.57735 | -0.57735 | 0.57735 | 0.57735 |
+| x3 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.88889 | 0.88889 | 0.55556 | 0.55556 | 0.55556 | 0.55556 |
diff --git a/docs/guides/programming-fem/quadraturePoints/line.md b/docs/guides/programming-fem/quadraturePoints/line.md
index 196d8458..774cf33b 100644
--- a/docs/guides/programming-fem/quadraturePoints/line.md
+++ b/docs/guides/programming-fem/quadraturePoints/line.md
@@ -32,7 +32,6 @@ END PROGRAM main
```bash title="results"
-
# points :
-------------------------------
-0.774597 0.000000 0.774597
@@ -67,7 +66,6 @@ END PROGRAM main
```bash title="results"
-
# points :
----------------------------
0.112702 0.500000 0.887298
@@ -102,13 +100,11 @@ END PROGRAM main
```bash title="results"
-
# points :
--------------------------------------
-1.00000 -0.44721 0.44721 1.00000
0.16667 0.83333 0.83333 0.16667
# txi :1
-
```
@@ -138,7 +134,6 @@ END PROGRAM main
```bash title="results"
-
# points :
--------------------------------------
-1.00000 -0.57532 0.18107 0.82282
diff --git a/docs/guides/programming-fem/quadraturePoints/quadrangle.md b/docs/guides/programming-fem/quadraturePoints/quadrangle.md
index 8360facf..40eb4f30 100644
--- a/docs/guides/programming-fem/quadraturePoints/quadrangle.md
+++ b/docs/guides/programming-fem/quadraturePoints/quadrangle.md
@@ -27,11 +27,11 @@ END PROGRAM main
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | -0.7746 | 1.8735E-16 | 1.66533E-16 | 1.66533E-16 | 0.7746 | 0.7746 | 0.7746 |
-| x2 | -0.7746 | 2.22045E-16 | 0.7746 | -0.7746 | 1.66533E-16 | 0.7746 | -0.7746 | 1.80411E-16 | 0.7746 |
-| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
+| | | | | | | | | | |
+| -- | ------- | ----------- | ------- | ---------- | ----------- | ----------- | ------- | ----------- | ------- |
+| x1 | -0.7746 | -0.7746 | -0.7746 | 1.8735E-16 | 1.66533E-16 | 1.66533E-16 | 0.7746 | 0.7746 | 0.7746 |
+| x2 | -0.7746 | 2.22045E-16 | 0.7746 | -0.7746 | 1.66533E-16 | 0.7746 | -0.7746 | 1.80411E-16 | 0.7746 |
+| w | 0.30864 | 0.49383 | 0.30864 | 0.49383 | 0.79012 | 0.49383 | 0.30864 | 0.49383 | 0.30864 |
@@ -68,11 +68,11 @@ END PROGRAM main
See results
-| | | | | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
-| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
-| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
-| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
+| | | | | | | | | | |
+| -- | ----------- | ------- | ----------- | ------- | ------- | ------- | ----------- | ------- | ----------- |
+| x1 | 0.1127 | 0.1127 | 0.1127 | 0.5 | 0.5 | 0.5 | 0.8873 | 0.8873 | 0.8873 |
+| x2 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 | 0.1127 | 0.5 | 0.8873 |
+| w | 7.71605E-02 | 0.12346 | 7.71605E-02 | 0.12346 | 0.19753 | 0.12346 | 7.71605E-02 | 0.12346 | 7.71605E-02 |
@@ -104,11 +104,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
-| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
-| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
+| | | | | | | |
+| -- | -------- | ------- | ----------- | ----------- | -------- | ------- |
+| x1 | -0.7746 | -0.7746 | 3.60822E-16 | 3.33067E-16 | 0.7746 | 0.7746 |
+| x2 | -0.57735 | 0.57735 | -0.57735 | 0.57735 | -0.57735 | 0.57735 |
+| w | 0.55556 | 0.55556 | 0.88889 | 0.88889 | 0.55556 | 0.55556 |
diff --git a/docs/guides/programming-fem/quadraturePoints/triangle.md b/docs/guides/programming-fem/quadraturePoints/triangle.md
index fd6f9ea0..490a744c 100644
--- a/docs/guides/programming-fem/quadraturePoints/triangle.md
+++ b/docs/guides/programming-fem/quadraturePoints/triangle.md
@@ -31,11 +31,11 @@ In the case of triangle `quadratureType` is ineffective, that is, we do not use
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | 9.15762E-02 | 0.81685 | 9.15762E-02 | 0.44595 | 0.44595 | 0.1081 |
-| x2 | 9.15762E-02 | 9.15762E-02 | 0.81685 | 0.1081 | 0.44595 | 0.44595 |
-| w | 5.49759E-02 | 5.49759E-02 | 5.49759E-02 | 0.11169 | 0.11169 | 0.11169 |
+| | | | | | | |
+| -- | ----------- | ----------- | ----------- | ------- | ------- | ------- |
+| x1 | 9.15762E-02 | 0.81685 | 9.15762E-02 | 0.44595 | 0.44595 | 0.1081 |
+| x2 | 9.15762E-02 | 9.15762E-02 | 0.81685 | 0.1081 | 0.44595 | 0.44595 |
+| w | 5.49759E-02 | 5.49759E-02 | 5.49759E-02 | 0.11169 | 0.11169 | 0.11169 |
@@ -63,11 +63,11 @@ END PROGRAM main
See results
-| | | | | | | |
-| --- | --- | --- | --- | --- | --- | --- |
-| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
-| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
-| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
+| | | | | | | |
+| -- | -------- | -------- | -------- | -------- | ------- | -------- |
+| x1 | -0.81685 | 0.6337 | -0.81685 | -0.1081 | -0.1081 | -0.78379 |
+| x2 | -0.81685 | -0.81685 | 0.6337 | -0.78379 | -0.1081 | -0.1081 |
+| w | 0.2199 | 0.2199 | 0.2199 | 0.44676 | 0.44676 | 0.44676 |
diff --git a/docs/guides/programming-fem/referenceElement/_category_.json b/docs/guides/programming-fem/referenceElement/_category_.json
index 0bb30a65..ae3ccbbc 100644
--- a/docs/guides/programming-fem/referenceElement/_category_.json
+++ b/docs/guides/programming-fem/referenceElement/_category_.json
@@ -2,4 +2,4 @@
"position": 2,
"label": "Reference Element",
"collapsible": true
-}
\ No newline at end of file
+}
diff --git a/docs/guides/programming-fem/referenceElement/referenceElement-easifemBase.md b/docs/guides/programming-fem/referenceElement/referenceElement-easifemBase.md
index 28c91342..6b9ba0fd 100644
--- a/docs/guides/programming-fem/referenceElement/referenceElement-easifemBase.md
+++ b/docs/guides/programming-fem/referenceElement/referenceElement-easifemBase.md
@@ -1,6 +1,6 @@
---
sidebar_position: 2
----
+---
# ReferenceElement in easifemBase
diff --git a/docs/guides/using-easifem/_category_.json b/docs/guides/using-easifem/_category_.json
index 3490e844..51f8b322 100644
--- a/docs/guides/using-easifem/_category_.json
+++ b/docs/guides/using-easifem/_category_.json
@@ -1,5 +1,5 @@
{
"position": 4,
"label": "Working with easifem",
- "collapsible": true,
+ "collapsible": true
}
diff --git a/docs/partials/_install-index-backup.mdx b/docs/partials/_install-index-backup.mdx
deleted file mode 100644
index 74f675f0..00000000
--- a/docs/partials/_install-index-backup.mdx
+++ /dev/null
@@ -1,26 +0,0 @@
-import { Code } from 'react-feather';
-
-
-The details of each step can be found by clicking following links.
-
-
-
-
- } />
- } />
- } />
- } />
- } />
- } />
- } />
- } />
-
-
-
-
-
- } />
- } />
- } />
-
-
diff --git a/docusaurus.config.js b/docusaurus.config.js
index b6154492..f52d1877 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -84,27 +84,21 @@ function create_doc_plugin({
];
}
-const { webpackPlugin } = require("./plugins/webpack-plugin.cjs");
const tailwindPlugin = require("./plugins/tailwind-plugin.cjs");
const docs_plugins = docs.map((doc) => create_doc_plugin(doc));
const plugins = [
tailwindPlugin,
...docs_plugins,
- webpackPlugin,
["drawio", {}],
- // [
- // 'docusaurus-plugin-content-gists',
- // {
- // enabled: true,
- // verbose: true,
- // personalAccessToken: process.env.GITHUB_PERSONAL_ACCESS_TOKEN,
- // },
- // ],
];
/** @type {import('@docusaurus/types').Config} */
const config = {
+ future: { v4: true },
+ future: {
+ v4: true,
+ },
...meta,
plugins,
trailingSlash: false,
@@ -126,6 +120,7 @@ const config = {
id: "blog",
routeBasePath: "/blog",
},
+ // commenting the theme
theme: {
customCss: [
require.resolve("./src/css/custom.css"),
@@ -216,14 +211,6 @@ const config = {
label: "easifemClasses",
href: "https://www.easifem.com/guides/getting-started/easifemClasses",
},
- {
- label: "easifemMaterials",
- href: "https://www.easifem.com/guides/getting-started/easifemMaterials",
- },
- {
- label: "easifemKernels",
- href: "https://www.easifem.com/guides/getting-started/easifemKernels",
- },
],
},
{
@@ -278,7 +265,8 @@ const config = {
},
prism: {
additionalLanguages: ["fortran", "bash", "python", "toml", "cmake"],
- theme: require("./src/plugins/prism_themes/tokyonight_night"),
+ theme: require("./src/plugins/prism_themes/catppuccin-latte"),
+ darkTheme: require("./src/plugins/prism_themes/catppuccin-mocha"),
magicComments: [
{
className: "theme-code-block-highlighted-line",
@@ -306,23 +294,6 @@ const config = {
contextualSearch: false,
},
}),
- // webpack: {
- // jsLoader: (isServer) => ({
- // loader: require.resolve('swc-loader'),
- // options: {
- // jsc: {
- // parser: {
- // syntax: 'typescript',
- // tsx: true,
- // },
- // target: 'es2017',
- // },
- // module: {
- // type: isServer ? 'commonjs' : 'es6',
- // },
- // },
- // }),
- // },
};
module.exports = config;
diff --git a/dprint.json b/dprint.json
index f68ed518..06ca4ba8 100644
--- a/dprint.json
+++ b/dprint.json
@@ -1,16 +1,10 @@
{
- "typescript": {
- },
- "json": {
- },
- "markdown": {
- },
- "toml": {
- },
- "excludes": [
- "**/node_modules",
- "**/*-lock.json"
- ],
+ "incremental": true,
+ "typescript": {},
+ "json": {},
+ "markdown": {},
+ "toml": {},
+ "excludes": ["**/node_modules", "**/*-lock.json"],
"plugins": [
"https://plugins.dprint.dev/typescript-0.88.6.wasm",
"https://plugins.dprint.dev/json-0.19.1.wasm",
diff --git a/ltex-utils-settings.json b/ltex-utils-settings.json
deleted file mode 100644
index e30c3a8f..00000000
--- a/ltex-utils-settings.json
+++ /dev/null
@@ -1 +0,0 @@
-{"disabledRules":{"en-US":["PROFANITY","PASSIVE_VOICE","EN_QUOTES","UPPERCASE_SENTENCE_START"],"en-GB":["PROFANITY","PASSIVE_VOICE"]},"langs":["en-US","en-GB"]}
\ No newline at end of file
diff --git a/package.json b/package.json
index f1efef35..876a7d89 100644
--- a/package.json
+++ b/package.json
@@ -4,8 +4,8 @@
"private": true,
"scripts": {
"docusaurus": "docusaurus",
- "start": "docusaurus start",
- "dev": "docusaurus start",
+ "start": "docusaurus start --no-open",
+ "dev": "docusaurus start --no-open",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
@@ -15,13 +15,20 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
- "@docusaurus/core": "3.7.0",
- "@docusaurus/preset-classic": "3.7.0",
- "@docusaurus/theme-common": "3.7.0",
- "@fluentui/react-icons": "^2.0.235",
+ "@algolia/client-search": "^4.20.0",
+ "@docusaurus/core": "^3.8.0",
+ "@docusaurus/faster": "^3.8.0",
+ "@docusaurus/module-type-aliases": "^3.8.0",
+ "@docusaurus/plugin-client-redirects": "^3.8.0",
+ "@docusaurus/plugin-content-docs": "^3.8.0",
+ "@docusaurus/plugin-css-cascade-layers": "^3.8.0",
+ "@docusaurus/preset-classic": "^3.8.0",
+ "@docusaurus/theme-common": "^3.8.0",
+ "@fluentui/react-icons": "^2.0.271",
"@mdx-js/react": "^3.1.0",
- "@types/react": "^19.0.0",
- "clsx": "^1.2.1",
+ "@tanstack/react-table": "latest",
+ "@types/react": "^18.2.0",
+ "clsx": "^2.1.1",
"docusaurus-plugin-drawio": "^0.4.0",
"dotenv": "^16.4.5",
"hast-util-is-element": "^1.1.0",
@@ -30,18 +37,18 @@
"prism-react-renderer": "^2.3.1",
"prismjs": "^1.29.0",
"raw-loader": "^4.0.2",
- "react": "^19.0.0",
- "react-dom": "^19.0.0",
+ "react": "^18.2.0",
+ "react-dom": "^18.2.0",
"react-feather": "^2.0.10",
- "@tanstack/react-table": "latest",
+ "react-loadable": "^5.5.0",
"rehype-katex": "^7.0.0",
- "remark-math": "^6.0.0"
+ "remark-math": "^6.0.0",
+ "search-insights": "^2.8.0"
},
"devDependencies": {
- "@docusaurus/module-type-aliases": "3.7.0",
- "@docusaurus/tsconfig": "3.7.0",
- "@docusaurus/types": "3.7.0",
- "@swc/core": "^1.4.13",
+ "@docusaurus/tsconfig": "^3.8.0",
+ "@docusaurus/types": "^3.8.0",
+ "@radix-ui/react-select": "^2.1.1",
"@typescript-eslint/eslint-plugin": "^5.62.0",
"@typescript-eslint/parser": "^5.62.0",
"autoprefixer": "^10.4.19",
@@ -54,18 +61,16 @@
"pascal-case": "^3.1.2",
"path-browserify": "^1.0.1",
"postcss": "^8.4.38",
- "prettier": "^2.8.8",
- "prettier-plugin-tailwindcss": "^0.2.8",
+ "prettier": "^3.4.2",
+ "prettier-plugin-tailwindcss": "^0.6.11",
"process": "^0.11.10",
"react-markdown": "^8.0.7",
"stream-browserify": "^3.0.0",
- "swc-loader": "^0.2.6",
- "tailwindcss": "^3.4.3",
- "typedoc": "^0.26.6",
- "typedoc-plugin-markdown": "^4.2.5",
+ "tailwindcss": "^3.4.17",
+ "typedoc": "^0.28.0",
+ "typedoc-plugin-markdown": "^4.6.4",
"typescript": "^5.1",
- "url": "^0.11.3",
- "@radix-ui/react-select": "^2.1.1"
+ "url": "^0.11.4"
},
"browserslist": {
"production": [
diff --git a/plugins/tailwind-plugin.cjs b/plugins/tailwind-plugin.cjs
index 1e6a04c2..ef46293f 100644
--- a/plugins/tailwind-plugin.cjs
+++ b/plugins/tailwind-plugin.cjs
@@ -1,11 +1,12 @@
function tailwindPlugin(context, options) {
return {
- name: 'tailwind-plugin',
+ name: "tailwind-plugin",
configurePostCss(postcssOptions) {
postcssOptions.plugins = [
- require('postcss-import'),
- require('tailwindcss'),
- require('autoprefixer'),
+ require("postcss-import"),
+ require("tailwindcss/nesting"),
+ require("tailwindcss"),
+ require("autoprefixer"),
];
return postcssOptions;
},
diff --git a/plugins/ui-kit-reference-plugin.cjs b/plugins/ui-kit-reference-plugin.cjs
index 1d1ec40e..2b4f49d0 100644
--- a/plugins/ui-kit-reference-plugin.cjs
+++ b/plugins/ui-kit-reference-plugin.cjs
@@ -1,7 +1,7 @@
const DEFAULT_CONFIG = {
- entryPoints: [require.resolve('@dytesdk/ui-kit/dist/types/exports.d.ts')],
- tsconfig: 'tsconfig.ui-kit.json',
- out: 'ui-kit/reference',
+ entryPoints: [require.resolve("@dytesdk/ui-kit/dist/types/exports.d.ts")],
+ tsconfig: "tsconfig.ui-kit.json",
+ out: "ui-kit/reference",
};
function getReferencePlugin(config) {
@@ -10,11 +10,11 @@ function getReferencePlugin(config) {
// multi plugin support
options.id = options.out;
- return ['docusaurus-plugin-typedoc', options];
+ return ["docusaurus-plugin-typedoc", options];
}
module.exports = [
getReferencePlugin(),
- getReferencePlugin({ out: 'react-ui-kit/reference' }),
- getReferencePlugin({ out: 'angular-ui-kit/reference' }),
+ getReferencePlugin({ out: "react-ui-kit/reference" }),
+ getReferencePlugin({ out: "angular-ui-kit/reference" }),
];
diff --git a/plugins/webpack-plugin.cjs b/plugins/webpack-plugin.cjs
index 3e4d9ef3..c1b5c495 100644
--- a/plugins/webpack-plugin.cjs
+++ b/plugins/webpack-plugin.cjs
@@ -1,10 +1,8 @@
-/* eslint-disable */
-const { ProvidePlugin } = require('webpack');
-
+const { ProvidePlugin } = require("webpack");
function webpackPlugin(context, options) {
return {
- name: 'webpack-plugin',
- configureWebpack(config) {
+ name: "webpack-plugin",
+ configureWebpack(config, isServer, { currentBundler }) {
return {
module: {
rules: [
@@ -17,20 +15,20 @@ function webpackPlugin(context, options) {
],
},
plugins: [
- new ProvidePlugin({
- process: require.resolve('process/browser'),
+ new currentBundler.instance.ProvidePlugin({
+ process: require.resolve("process/browser"),
}),
],
resolve: {
fallback: {
- stream: require.resolve('stream-browserify'),
- path: require.resolve('path-browserify'),
- buffer: require.resolve('buffer/'),
- url: require.resolve('url'),
+ stream: require.resolve("stream-browserify"),
+ path: require.resolve("path-browserify"),
+ buffer: require.resolve("buffer/"),
+ url: require.resolve("url"),
crypto: false,
},
alias: {
- process: 'process/browser.js',
+ process: "process/browser.js",
},
},
};
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
deleted file mode 100644
index 976670e9..00000000
--- a/pnpm-lock.yaml
+++ /dev/null
@@ -1,15670 +0,0 @@
-lockfileVersion: '9.0'
-
-settings:
- autoInstallPeers: true
- excludeLinksFromLockfile: false
-
-importers:
-
- .:
- dependencies:
- '@docusaurus/core':
- specifier: 3.7.0
- version: 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/preset-classic':
- specifier: 3.7.0
- version: 3.7.0(@algolia/client-search@5.19.0)(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)(typescript@5.2.2)
- '@docusaurus/theme-common':
- specifier: 3.7.0
- version: 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@fluentui/react-icons':
- specifier: ^2.0.235
- version: 2.0.300(react@19.1.0)
- '@mdx-js/react':
- specifier: ^3.1.0
- version: 3.1.0(@types/react@19.1.3)(react@19.1.0)
- '@tanstack/react-table':
- specifier: latest
- version: 8.21.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@types/react':
- specifier: ^19.0.0
- version: 19.1.3
- clsx:
- specifier: ^1.2.1
- version: 1.2.1
- docusaurus-plugin-drawio:
- specifier: ^0.4.0
- version: 0.4.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- dotenv:
- specifier: ^16.4.5
- version: 16.4.5
- hast-util-is-element:
- specifier: ^1.1.0
- version: 1.1.0
- param-case:
- specifier: ^3.0.4
- version: 3.0.4
- patch-package:
- specifier: ^6.5.1
- version: 6.5.1
- prism-react-renderer:
- specifier: ^2.3.1
- version: 2.3.1(react@19.1.0)
- prismjs:
- specifier: ^1.29.0
- version: 1.29.0
- raw-loader:
- specifier: ^4.0.2
- version: 4.0.2(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- react:
- specifier: ^19.0.0
- version: 19.1.0
- react-dom:
- specifier: ^19.0.0
- version: 19.1.0(react@19.1.0)
- react-feather:
- specifier: ^2.0.10
- version: 2.0.10(react@19.1.0)
- rehype-katex:
- specifier: ^7.0.0
- version: 7.0.0
- remark-math:
- specifier: ^6.0.0
- version: 6.0.0
- devDependencies:
- '@docusaurus/module-type-aliases':
- specifier: 3.7.0
- version: 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/tsconfig':
- specifier: 3.7.0
- version: 3.7.0
- '@docusaurus/types':
- specifier: 3.7.0
- version: 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-select':
- specifier: ^2.1.1
- version: 2.2.4(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@swc/core':
- specifier: ^1.4.13
- version: 1.4.13(@swc/helpers@0.5.17)
- '@typescript-eslint/eslint-plugin':
- specifier: ^5.62.0
- version: 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.2.2))(eslint@8.57.0)(typescript@5.2.2)
- '@typescript-eslint/parser':
- specifier: ^5.62.0
- version: 5.62.0(eslint@8.57.0)(typescript@5.2.2)
- autoprefixer:
- specifier: ^10.4.19
- version: 10.4.19(postcss@8.4.38)
- buffer:
- specifier: ^6.0.3
- version: 6.0.3
- docusaurus-plugin-typedoc:
- specifier: ^0.18.0
- version: 0.18.0(typedoc-plugin-markdown@4.2.5(typedoc@0.26.6(typescript@5.2.2)))(typedoc@0.26.6(typescript@5.2.2))
- eslint:
- specifier: ^8.57.0
- version: 8.57.0
- eslint-config-prettier:
- specifier: ^8.10.0
- version: 8.10.0(eslint@8.57.0)
- eslint-plugin-prettier:
- specifier: ^4.2.1
- version: 4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@2.8.8)
- js-yaml:
- specifier: ^4.1.0
- version: 4.1.0
- pascal-case:
- specifier: ^3.1.2
- version: 3.1.2
- path-browserify:
- specifier: ^1.0.1
- version: 1.0.1
- postcss:
- specifier: ^8.4.38
- version: 8.4.38
- prettier:
- specifier: ^2.8.8
- version: 2.8.8
- prettier-plugin-tailwindcss:
- specifier: ^0.2.8
- version: 0.2.8(prettier@2.8.8)
- process:
- specifier: ^0.11.10
- version: 0.11.10
- react-markdown:
- specifier: ^8.0.7
- version: 8.0.7(@types/react@19.1.3)(react@19.1.0)
- stream-browserify:
- specifier: ^3.0.0
- version: 3.0.0
- swc-loader:
- specifier: ^0.2.6
- version: 0.2.6(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- tailwindcss:
- specifier: ^3.4.3
- version: 3.4.17
- typedoc:
- specifier: ^0.26.6
- version: 0.26.6(typescript@5.2.2)
- typedoc-plugin-markdown:
- specifier: ^4.2.5
- version: 4.2.5(typedoc@0.26.6(typescript@5.2.2))
- typescript:
- specifier: ^5.1
- version: 5.2.2
- url:
- specifier: ^0.11.3
- version: 0.11.3
-
-packages:
-
- '@aashutoshrathi/word-wrap@1.2.6':
- resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
- engines: {node: '>=0.10.0'}
-
- '@algolia/autocomplete-core@1.17.7':
- resolution: {integrity: sha512-BjiPOW6ks90UKl7TwMv7oNQMnzU+t/wk9mgIDi6b1tXpUek7MW0lbNOUHpvam9pe3lVCf4xPFT+lK7s+e+fs7Q==}
-
- '@algolia/autocomplete-plugin-algolia-insights@1.17.7':
- resolution: {integrity: sha512-Jca5Ude6yUOuyzjnz57og7Et3aXjbwCSDf/8onLHSQgw1qW3ALl9mrMWaXb5FmPVkV3EtkD2F/+NkT6VHyPu9A==}
- peerDependencies:
- search-insights: '>= 1 < 3'
-
- '@algolia/autocomplete-preset-algolia@1.17.7':
- resolution: {integrity: sha512-ggOQ950+nwbWROq2MOCIL71RE0DdQZsceqrg32UqnhDz8FlO9rL8ONHNsI2R1MH0tkgVIDKI/D0sMiUchsFdWA==}
- peerDependencies:
- '@algolia/client-search': '>= 4.9.1 < 6'
- algoliasearch: '>= 4.9.1 < 6'
-
- '@algolia/autocomplete-shared@1.17.7':
- resolution: {integrity: sha512-o/1Vurr42U/qskRSuhBH+VKxMvkkUVTLU6WZQr+L5lGZZLYWyhdzWjW0iGXY7EkwRTjBqvN2EsR81yCTGV/kmg==}
- peerDependencies:
- '@algolia/client-search': '>= 4.9.1 < 6'
- algoliasearch: '>= 4.9.1 < 6'
-
- '@algolia/client-abtesting@5.19.0':
- resolution: {integrity: sha512-dMHwy2+nBL0SnIsC1iHvkBao64h4z+roGelOz11cxrDBrAdASxLxmfVMop8gmodQ2yZSacX0Rzevtxa+9SqxCw==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-analytics@5.19.0':
- resolution: {integrity: sha512-CDW4RwnCHzU10upPJqS6N6YwDpDHno7w6/qXT9KPbPbt8szIIzCHrva4O9KIfx1OhdsHzfGSI5hMAiOOYl4DEQ==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-common@5.19.0':
- resolution: {integrity: sha512-2ERRbICHXvtj5kfFpY5r8qu9pJII/NAHsdgUXnUitQFwPdPL7wXiupcvZJC7DSntOnE8AE0lM7oDsPhrJfj5nQ==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-insights@5.19.0':
- resolution: {integrity: sha512-xPOiGjo6I9mfjdJO7Y+p035aWePcbsItizIp+qVyfkfZiGgD+TbNxM12g7QhFAHIkx/mlYaocxPY/TmwPzTe+A==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-personalization@5.19.0':
- resolution: {integrity: sha512-B9eoce/fk8NLboGje+pMr72pw+PV7c5Z01On477heTZ7jkxoZ4X92dobeGuEQop61cJ93Gaevd1of4mBr4hu2A==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-query-suggestions@5.19.0':
- resolution: {integrity: sha512-6fcP8d4S8XRDtVogrDvmSM6g5g6DndLc0pEm1GCKe9/ZkAzCmM3ZmW1wFYYPxdjMeifWy1vVEDMJK7sbE4W7MA==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/client-search@5.19.0':
- resolution: {integrity: sha512-Ctg3xXD/1VtcwmkulR5+cKGOMj4r0wC49Y/KZdGQcqpydKn+e86F6l3tb3utLJQVq4lpEJud6kdRykFgcNsp8Q==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/events@4.0.1':
- resolution: {integrity: sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==}
-
- '@algolia/ingestion@1.19.0':
- resolution: {integrity: sha512-LO7w1MDV+ZLESwfPmXkp+KLeYeFrYEgtbCZG6buWjddhYraPQ9MuQWLhLLiaMlKxZ/sZvFTcZYuyI6Jx4WBhcg==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/monitoring@1.19.0':
- resolution: {integrity: sha512-Mg4uoS0aIKeTpu6iv6O0Hj81s8UHagi5TLm9k2mLIib4vmMtX7WgIAHAcFIaqIZp5D6s5EVy1BaDOoZ7buuJHA==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/recommend@5.19.0':
- resolution: {integrity: sha512-PbgrMTbUPlmwfJsxjFhal4XqZO2kpBNRjemLVTkUiti4w/+kzcYO4Hg5zaBgVqPwvFDNQ8JS4SS3TBBem88u+g==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/requester-browser-xhr@5.19.0':
- resolution: {integrity: sha512-GfnhnQBT23mW/VMNs7m1qyEyZzhZz093aY2x8p0era96MMyNv8+FxGek5pjVX0b57tmSCZPf4EqNCpkGcGsmbw==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/requester-fetch@5.19.0':
- resolution: {integrity: sha512-oyTt8ZJ4T4fYvW5avAnuEc6Laedcme9fAFryMD9ndUTIUe/P0kn3BuGcCLFjN3FDmdrETHSFkgPPf1hGy3sLCw==}
- engines: {node: '>= 14.0.0'}
-
- '@algolia/requester-node-http@5.19.0':
- resolution: {integrity: sha512-p6t8ue0XZNjcRiqNkb5QAM0qQRAKsCiebZ6n9JjWA+p8fWf8BvnhO55y2fO28g3GW0Imj7PrAuyBuxq8aDVQwQ==}
- engines: {node: '>= 14.0.0'}
-
- '@alloc/quick-lru@5.2.0':
- resolution: {integrity: sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==}
- engines: {node: '>=10'}
-
- '@ampproject/remapping@2.3.0':
- resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
- engines: {node: '>=6.0.0'}
-
- '@babel/code-frame@7.24.2':
- resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/code-frame@7.26.2':
- resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/compat-data@7.24.4':
- resolution: {integrity: sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/compat-data@7.26.5':
- resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/core@7.24.4':
- resolution: {integrity: sha512-MBVlMXP+kkl5394RBLSxxk/iLTeVGuXTV3cIDXavPpMMqnSnt6apKgan/U8O3USWZCWZT/TbgfEpKa4uMgN4Dg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/core@7.26.0':
- resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/generator@7.24.4':
- resolution: {integrity: sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/generator@7.26.5':
- resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-annotate-as-pure@7.22.5':
- resolution: {integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-annotate-as-pure@7.25.9':
- resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15':
- resolution: {integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-compilation-targets@7.23.6':
- resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-compilation-targets@7.26.5':
- resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-create-class-features-plugin@7.24.4':
- resolution: {integrity: sha512-lG75yeuUSVu0pIcbhiYMXBXANHrpUPaOfu7ryAzskCgKUHuAxRQI5ssrtmF0X9UXldPlvT0XM/A4F44OXRt6iQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-create-class-features-plugin@7.25.9':
- resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-create-regexp-features-plugin@7.22.15':
- resolution: {integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-create-regexp-features-plugin@7.26.3':
- resolution: {integrity: sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-define-polyfill-provider@0.6.1':
- resolution: {integrity: sha512-o7SDgTJuvx5vLKD6SFvkydkSMBvahDKGiNJzG22IZYXhiqoe9efY7zocICBgzHV4IRg5wdgl2nEL/tulKIEIbA==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- '@babel/helper-define-polyfill-provider@0.6.3':
- resolution: {integrity: sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- '@babel/helper-environment-visitor@7.22.20':
- resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-function-name@7.23.0':
- resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-hoist-variables@7.22.5':
- resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-member-expression-to-functions@7.23.0':
- resolution: {integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-member-expression-to-functions@7.25.9':
- resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-module-imports@7.24.3':
- resolution: {integrity: sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-module-imports@7.25.9':
- resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-module-transforms@7.23.3':
- resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-module-transforms@7.26.0':
- resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-optimise-call-expression@7.22.5':
- resolution: {integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-optimise-call-expression@7.25.9':
- resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-plugin-utils@7.24.0':
- resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-plugin-utils@7.26.5':
- resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-remap-async-to-generator@7.22.20':
- resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-remap-async-to-generator@7.25.9':
- resolution: {integrity: sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-replace-supers@7.24.1':
- resolution: {integrity: sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-replace-supers@7.26.5':
- resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/helper-simple-access@7.22.5':
- resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-skip-transparent-expression-wrappers@7.22.5':
- resolution: {integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
- resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-split-export-declaration@7.22.6':
- resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-string-parser@7.24.1':
- resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-string-parser@7.25.9':
- resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-validator-identifier@7.22.20':
- resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-validator-identifier@7.25.9':
- resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-validator-option@7.23.5':
- resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-validator-option@7.25.9':
- resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-wrap-function@7.22.20':
- resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helper-wrap-function@7.25.9':
- resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helpers@7.24.4':
- resolution: {integrity: sha512-FewdlZbSiwaVGlgT1DPANDuCHaDMiOo+D/IDYRFYjHOuv66xMSJ7fQwwODwRNAPkADIO/z1EoF/l2BCWlWABDw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/helpers@7.26.0':
- resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/highlight@7.24.2':
- resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/parser@7.24.4':
- resolution: {integrity: sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==}
- engines: {node: '>=6.0.0'}
- hasBin: true
-
- '@babel/parser@7.26.5':
- resolution: {integrity: sha512-SRJ4jYmXRqV1/Xc+TIVG84WjHBXKlxO9sHQnA2Pf12QQEAp1LOh6kDzNHXcUnbH1QI0FDoPPVOt+vyUDucxpaw==}
- engines: {node: '>=6.0.0'}
- hasBin: true
-
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.4':
- resolution: {integrity: sha512-qpl6vOOEEzTLLcsuqYYo8yDtrTocmu2xkGvgNebvPjT9DTtfFYGmgDqY+rBYXNlqL4s9qLDn6xkrJv4RxAPiTA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9':
- resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9':
- resolution: {integrity: sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1':
- resolution: {integrity: sha512-y4HqEnkelJIOQGd+3g1bTeKsA5c6qM7eOn7VggGVbBc0y8MLSKHacwcIE2PplNlQSj0PqS9rrXL/nkPVK+kUNg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9':
- resolution: {integrity: sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1':
- resolution: {integrity: sha512-Hj791Ii4ci8HqnaKHAlLNs+zaLXb0EzSDhiAWp5VNlyvCNymYfacs64pxTxbH1znW/NcArSmwpmG9IKE/TUVVQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.13.0
-
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9':
- resolution: {integrity: sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.13.0
-
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1':
- resolution: {integrity: sha512-m9m/fXsXLiHfwdgydIFnpk+7jlVbnvlK5B2EKiPdLUb6WX654ZaaEWJUjk8TftRbZpK0XibovlLWX4KIZhV6jw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9':
- resolution: {integrity: sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2':
- resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-async-generators@7.8.4':
- resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-class-properties@7.12.13':
- resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-class-static-block@7.14.5':
- resolution: {integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-dynamic-import@7.8.3':
- resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-export-namespace-from@7.8.3':
- resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-assertions@7.24.1':
- resolution: {integrity: sha512-IuwnI5XnuF189t91XbxmXeCDz3qs6iDRO7GJ++wcfgeXNs/8FmIlKcpDSXNVyuLQxlwvskmI3Ct73wUODkJBlQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-assertions@7.26.0':
- resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-attributes@7.24.1':
- resolution: {integrity: sha512-zhQTMH0X2nVLnb04tz+s7AMuasX8U0FnpE+nHTOhSOINjWMnopoZTxtIKsd45n4GQ/HIZLyfIpoul8e2m0DnRA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-attributes@7.26.0':
- resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-import-meta@7.10.4':
- resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-json-strings@7.8.3':
- resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-jsx@7.24.1':
- resolution: {integrity: sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-jsx@7.25.9':
- resolution: {integrity: sha512-ld6oezHQMZsZfp6pWtbjaNDF2tiiCYYDqQszHt5VV437lewP9aSi2Of99CK0D0XB21k7FLgnLcmQKyKzynfeAA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-logical-assignment-operators@7.10.4':
- resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3':
- resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-numeric-separator@7.10.4':
- resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-object-rest-spread@7.8.3':
- resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-optional-catch-binding@7.8.3':
- resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-optional-chaining@7.8.3':
- resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-private-property-in-object@7.14.5':
- resolution: {integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-top-level-await@7.14.5':
- resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-typescript@7.24.1':
- resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-typescript@7.25.9':
- resolution: {integrity: sha512-hjMgRy5hb8uJJjUcdWunWVcoi9bGpJp8p5Ol1229PoN6aytsLwNMgmdftO23wnCLMfVmTwZDWMPNq/D1SY60JQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-syntax-unicode-sets-regex@7.18.6':
- resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-arrow-functions@7.24.1':
- resolution: {integrity: sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-arrow-functions@7.25.9':
- resolution: {integrity: sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-async-generator-functions@7.24.3':
- resolution: {integrity: sha512-Qe26CMYVjpQxJ8zxM1340JFNjZaF+ISWpr1Kt/jGo+ZTUzKkfw/pphEWbRCb+lmSM6k/TOgfYLvmbHkUQ0asIg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-async-generator-functions@7.25.9':
- resolution: {integrity: sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-async-to-generator@7.24.1':
- resolution: {integrity: sha512-AawPptitRXp1y0n4ilKcGbRYWfbbzFWz2NqNu7dacYDtFtz0CMjG64b3LQsb3KIgnf4/obcUL78hfaOS7iCUfw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-async-to-generator@7.25.9':
- resolution: {integrity: sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-block-scoped-functions@7.24.1':
- resolution: {integrity: sha512-TWWC18OShZutrv9C6mye1xwtam+uNi2bnTOCBUd5sZxyHOiWbU6ztSROofIMrK84uweEZC219POICK/sTYwfgg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-block-scoped-functions@7.26.5':
- resolution: {integrity: sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-block-scoping@7.24.4':
- resolution: {integrity: sha512-nIFUZIpGKDf9O9ttyRXpHFpKC+X3Y5mtshZONuEUYBomAKoM4y029Jr+uB1bHGPhNmK8YXHevDtKDOLmtRrp6g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-block-scoping@7.25.9':
- resolution: {integrity: sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-class-properties@7.24.1':
- resolution: {integrity: sha512-OMLCXi0NqvJfORTaPQBwqLXHhb93wkBKZ4aNwMl6WtehO7ar+cmp+89iPEQPqxAnxsOKTaMcs3POz3rKayJ72g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-class-properties@7.25.9':
- resolution: {integrity: sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-class-static-block@7.24.4':
- resolution: {integrity: sha512-B8q7Pz870Hz/q9UgP8InNpY01CSLDSCyqX7zcRuv3FcPl87A2G17lASroHWaCtbdIcbYzOZ7kWmXFKbijMSmFg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.12.0
-
- '@babel/plugin-transform-class-static-block@7.26.0':
- resolution: {integrity: sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.12.0
-
- '@babel/plugin-transform-classes@7.24.1':
- resolution: {integrity: sha512-ZTIe3W7UejJd3/3R4p7ScyyOoafetUShSf4kCqV0O7F/RiHxVj/wRaRnQlrGwflvcehNA8M42HkAiEDYZu2F1Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-classes@7.25.9':
- resolution: {integrity: sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-computed-properties@7.24.1':
- resolution: {integrity: sha512-5pJGVIUfJpOS+pAqBQd+QMaTD2vCL/HcePooON6pDpHgRp4gNRmzyHTPIkXntwKsq3ayUFVfJaIKPw2pOkOcTw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-computed-properties@7.25.9':
- resolution: {integrity: sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-destructuring@7.24.1':
- resolution: {integrity: sha512-ow8jciWqNxR3RYbSNVuF4U2Jx130nwnBnhRw6N6h1bOejNkABmcI5X5oz29K4alWX7vf1C+o6gtKXikzRKkVdw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-destructuring@7.25.9':
- resolution: {integrity: sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-dotall-regex@7.24.1':
- resolution: {integrity: sha512-p7uUxgSoZwZ2lPNMzUkqCts3xlp8n+o05ikjy7gbtFJSt9gdU88jAmtfmOxHM14noQXBxfgzf2yRWECiNVhTCw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-dotall-regex@7.25.9':
- resolution: {integrity: sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-duplicate-keys@7.24.1':
- resolution: {integrity: sha512-msyzuUnvsjsaSaocV6L7ErfNsa5nDWL1XKNnDePLgmz+WdU4w/J8+AxBMrWfi9m4IxfL5sZQKUPQKDQeeAT6lA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-duplicate-keys@7.25.9':
- resolution: {integrity: sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9':
- resolution: {integrity: sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-dynamic-import@7.24.1':
- resolution: {integrity: sha512-av2gdSTyXcJVdI+8aFZsCAtR29xJt0S5tas+Ef8NvBNmD1a+N/3ecMLeMBgfcK+xzsjdLDT6oHt+DFPyeqUbDA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-dynamic-import@7.25.9':
- resolution: {integrity: sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-exponentiation-operator@7.24.1':
- resolution: {integrity: sha512-U1yX13dVBSwS23DEAqU+Z/PkwE9/m7QQy8Y9/+Tdb8UWYaGNDYwTLi19wqIAiROr8sXVum9A/rtiH5H0boUcTw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-exponentiation-operator@7.26.3':
- resolution: {integrity: sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-export-namespace-from@7.24.1':
- resolution: {integrity: sha512-Ft38m/KFOyzKw2UaJFkWG9QnHPG/Q/2SkOrRk4pNBPg5IPZ+dOxcmkK5IyuBcxiNPyyYowPGUReyBvrvZs7IlQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-export-namespace-from@7.25.9':
- resolution: {integrity: sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-for-of@7.24.1':
- resolution: {integrity: sha512-OxBdcnF04bpdQdR3i4giHZNZQn7cm8RQKcSwA17wAAqEELo1ZOwp5FFgeptWUQXFyT9kwHo10aqqauYkRZPCAg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-for-of@7.25.9':
- resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-function-name@7.24.1':
- resolution: {integrity: sha512-BXmDZpPlh7jwicKArQASrj8n22/w6iymRnvHYYd2zO30DbE277JO20/7yXJT3QxDPtiQiOxQBbZH4TpivNXIxA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-function-name@7.25.9':
- resolution: {integrity: sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-json-strings@7.24.1':
- resolution: {integrity: sha512-U7RMFmRvoasscrIFy5xA4gIp8iWnWubnKkKuUGJjsuOH7GfbMkB+XZzeslx2kLdEGdOJDamEmCqOks6e8nv8DQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-json-strings@7.25.9':
- resolution: {integrity: sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-literals@7.24.1':
- resolution: {integrity: sha512-zn9pwz8U7nCqOYIiBaOxoQOtYmMODXTJnkxG4AtX8fPmnCRYWBOHD0qcpwS9e2VDSp1zNJYpdnFMIKb8jmwu6g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-literals@7.25.9':
- resolution: {integrity: sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-logical-assignment-operators@7.24.1':
- resolution: {integrity: sha512-OhN6J4Bpz+hIBqItTeWJujDOfNP+unqv/NJgyhlpSqgBTPm37KkMmZV6SYcOj+pnDbdcl1qRGV/ZiIjX9Iy34w==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-logical-assignment-operators@7.25.9':
- resolution: {integrity: sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-member-expression-literals@7.24.1':
- resolution: {integrity: sha512-4ojai0KysTWXzHseJKa1XPNXKRbuUrhkOPY4rEGeR+7ChlJVKxFa3H3Bz+7tWaGKgJAXUWKOGmltN+u9B3+CVg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-member-expression-literals@7.25.9':
- resolution: {integrity: sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-amd@7.24.1':
- resolution: {integrity: sha512-lAxNHi4HVtjnHd5Rxg3D5t99Xm6H7b04hUS7EHIXcUl2EV4yl1gWdqZrNzXnSrHveL9qMdbODlLF55mvgjAfaQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-amd@7.25.9':
- resolution: {integrity: sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-commonjs@7.24.1':
- resolution: {integrity: sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-commonjs@7.26.3':
- resolution: {integrity: sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-systemjs@7.24.1':
- resolution: {integrity: sha512-mqQ3Zh9vFO1Tpmlt8QPnbwGHzNz3lpNEMxQb1kAemn/erstyqw1r9KeOlOfo3y6xAnFEcOv2tSyrXfmMk+/YZA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-systemjs@7.25.9':
- resolution: {integrity: sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-umd@7.24.1':
- resolution: {integrity: sha512-tuA3lpPj+5ITfcCluy6nWonSL7RvaG0AOTeAuvXqEKS34lnLzXpDb0dcP6K8jD0zWZFNDVly90AGFJPnm4fOYg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-modules-umd@7.25.9':
- resolution: {integrity: sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-named-capturing-groups-regex@7.22.5':
- resolution: {integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-named-capturing-groups-regex@7.25.9':
- resolution: {integrity: sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-new-target@7.24.1':
- resolution: {integrity: sha512-/rurytBM34hYy0HKZQyA0nHbQgQNFm4Q/BOc9Hflxi2X3twRof7NaE5W46j4kQitm7SvACVRXsa6N/tSZxvPug==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-new-target@7.25.9':
- resolution: {integrity: sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-nullish-coalescing-operator@7.24.1':
- resolution: {integrity: sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-nullish-coalescing-operator@7.26.6':
- resolution: {integrity: sha512-CKW8Vu+uUZneQCPtXmSBUC6NCAUdya26hWCElAWh5mVSlSRsmiCPUUDKb3Z0szng1hiAJa098Hkhg9o4SE35Qw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-numeric-separator@7.24.1':
- resolution: {integrity: sha512-7GAsGlK4cNL2OExJH1DzmDeKnRv/LXq0eLUSvudrehVA5Rgg4bIrqEUW29FbKMBRT0ztSqisv7kjP+XIC4ZMNw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-numeric-separator@7.25.9':
- resolution: {integrity: sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-object-rest-spread@7.24.1':
- resolution: {integrity: sha512-XjD5f0YqOtebto4HGISLNfiNMTTs6tbkFf2TOqJlYKYmbo+mN9Dnpl4SRoofiziuOWMIyq3sZEUqLo3hLITFEA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-object-rest-spread@7.25.9':
- resolution: {integrity: sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-object-super@7.24.1':
- resolution: {integrity: sha512-oKJqR3TeI5hSLRxudMjFQ9re9fBVUU0GICqM3J1mi8MqlhVr6hC/ZN4ttAyMuQR6EZZIY6h/exe5swqGNNIkWQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-object-super@7.25.9':
- resolution: {integrity: sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-optional-catch-binding@7.24.1':
- resolution: {integrity: sha512-oBTH7oURV4Y+3EUrf6cWn1OHio3qG/PVwO5J03iSJmBg6m2EhKjkAu/xuaXaYwWW9miYtvbWv4LNf0AmR43LUA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-optional-catch-binding@7.25.9':
- resolution: {integrity: sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-optional-chaining@7.24.1':
- resolution: {integrity: sha512-n03wmDt+987qXwAgcBlnUUivrZBPZ8z1plL0YvgQalLm+ZE5BMhGm94jhxXtA1wzv1Cu2aaOv1BM9vbVttrzSg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-optional-chaining@7.25.9':
- resolution: {integrity: sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-parameters@7.24.1':
- resolution: {integrity: sha512-8Jl6V24g+Uw5OGPeWNKrKqXPDw2YDjLc53ojwfMcKwlEoETKU9rU0mHUtcg9JntWI/QYzGAXNWEcVHZ+fR+XXg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-parameters@7.25.9':
- resolution: {integrity: sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-private-methods@7.24.1':
- resolution: {integrity: sha512-tGvisebwBO5em4PaYNqt4fkw56K2VALsAbAakY0FjTYqJp7gfdrgr7YX76Or8/cpik0W6+tj3rZ0uHU9Oil4tw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-private-methods@7.25.9':
- resolution: {integrity: sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-private-property-in-object@7.24.1':
- resolution: {integrity: sha512-pTHxDVa0BpUbvAgX3Gat+7cSciXqUcY9j2VZKTbSB6+VQGpNgNO9ailxTGHSXlqOnX1Hcx1Enme2+yv7VqP9bg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-private-property-in-object@7.25.9':
- resolution: {integrity: sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-property-literals@7.24.1':
- resolution: {integrity: sha512-LetvD7CrHmEx0G442gOomRr66d7q8HzzGGr4PMHGr+5YIm6++Yke+jxj246rpvsbyhJwCLxcTn6zW1P1BSenqA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-property-literals@7.25.9':
- resolution: {integrity: sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-constant-elements@7.24.1':
- resolution: {integrity: sha512-QXp1U9x0R7tkiGB0FOk8o74jhnap0FlZ5gNkRIWdG3eP+SvMFg118e1zaWewDzgABb106QSKpVsD3Wgd8t6ifA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-display-name@7.24.1':
- resolution: {integrity: sha512-mvoQg2f9p2qlpDQRBC7M3c3XTr0k7cp/0+kFKKO/7Gtu0LSw16eKB+Fabe2bDT/UpsyasTBBkAnbdsLrkD5XMw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-display-name@7.25.9':
- resolution: {integrity: sha512-KJfMlYIUxQB1CJfO3e0+h0ZHWOTLCPP115Awhaz8U0Zpq36Gl/cXlpoyMRnUWlhNUBAzldnCiAZNvCDj7CrKxQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-jsx-development@7.22.5':
- resolution: {integrity: sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-jsx-development@7.25.9':
- resolution: {integrity: sha512-9mj6rm7XVYs4mdLIpbZnHOYdpW42uoiBCTVowg7sP1thUOiANgMb4UtpRivR0pp5iL+ocvUv7X4mZgFRpJEzGw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-jsx@7.23.4':
- resolution: {integrity: sha512-5xOpoPguCZCRbo/JeHlloSkTA8Bld1J/E1/kLfD1nsuiW1m8tduTA1ERCgIZokDflX/IBzKcqR3l7VlRgiIfHA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-jsx@7.25.9':
- resolution: {integrity: sha512-s5XwpQYCqGerXl+Pu6VDL3x0j2d82eiV77UJ8a2mDHAW7j9SWRqQ2y1fNo1Z74CdcYipl5Z41zvjj4Nfzq36rw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-pure-annotations@7.24.1':
- resolution: {integrity: sha512-+pWEAaDJvSm9aFvJNpLiM2+ktl2Sn2U5DdyiWdZBxmLc6+xGt88dvFqsHiAiDS+8WqUwbDfkKz9jRxK3M0k+kA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-react-pure-annotations@7.25.9':
- resolution: {integrity: sha512-KQ/Takk3T8Qzj5TppkS1be588lkbTp5uj7w6a0LeQaTMSckU/wK0oJ/pih+T690tkgI5jfmg2TqDJvd41Sj1Cg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-regenerator@7.24.1':
- resolution: {integrity: sha512-sJwZBCzIBE4t+5Q4IGLaaun5ExVMRY0lYwos/jNecjMrVCygCdph3IKv0tkP5Fc87e/1+bebAmEAGBfnRD+cnw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-regenerator@7.25.9':
- resolution: {integrity: sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-regexp-modifiers@7.26.0':
- resolution: {integrity: sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-reserved-words@7.24.1':
- resolution: {integrity: sha512-JAclqStUfIwKN15HrsQADFgeZt+wexNQ0uLhuqvqAUFoqPMjEcFCYZBhq0LUdz6dZK/mD+rErhW71fbx8RYElg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-reserved-words@7.25.9':
- resolution: {integrity: sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-runtime@7.25.9':
- resolution: {integrity: sha512-nZp7GlEl+yULJrClz0SwHPqir3lc0zsPrDHQUcxGspSL7AKrexNSEfTbfqnDNJUO13bgKyfuOLMF8Xqtu8j3YQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-shorthand-properties@7.24.1':
- resolution: {integrity: sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-shorthand-properties@7.25.9':
- resolution: {integrity: sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-spread@7.24.1':
- resolution: {integrity: sha512-KjmcIM+fxgY+KxPVbjelJC6hrH1CgtPmTvdXAfn3/a9CnWGSTY7nH4zm5+cjmWJybdcPSsD0++QssDsjcpe47g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-spread@7.25.9':
- resolution: {integrity: sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-sticky-regex@7.24.1':
- resolution: {integrity: sha512-9v0f1bRXgPVcPrngOQvLXeGNNVLc8UjMVfebo9ka0WF3/7+aVUHmaJVT3sa0XCzEFioPfPHZiOcYG9qOsH63cw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-sticky-regex@7.25.9':
- resolution: {integrity: sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-template-literals@7.24.1':
- resolution: {integrity: sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-template-literals@7.25.9':
- resolution: {integrity: sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-typeof-symbol@7.24.1':
- resolution: {integrity: sha512-CBfU4l/A+KruSUoW+vTQthwcAdwuqbpRNB8HQKlZABwHRhsdHZ9fezp4Sn18PeAlYxTNiLMlx4xUBV3AWfg1BA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-typeof-symbol@7.25.9':
- resolution: {integrity: sha512-v61XqUMiueJROUv66BVIOi0Fv/CUuZuZMl5NkRoCVxLAnMexZ0A3kMe7vvZ0nulxMuMp0Mk6S5hNh48yki08ZA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-typescript@7.24.4':
- resolution: {integrity: sha512-79t3CQ8+oBGk/80SQ8MN3Bs3obf83zJ0YZjDmDaEZN8MqhMI760apl5z6a20kFeMXBwJX99VpKT8CKxEBp5H1g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-typescript@7.26.5':
- resolution: {integrity: sha512-GJhPO0y8SD5EYVCy2Zr+9dSZcEgaSmq5BLR0Oc25TOEhC+ba49vUAGZFjy8v79z9E1mdldq4x9d1xgh4L1d5dQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-escapes@7.24.1':
- resolution: {integrity: sha512-RlkVIcWT4TLI96zM660S877E7beKlQw7Ig+wqkKBiWfj0zH5Q4h50q6er4wzZKRNSYpfo6ILJ+hrJAGSX2qcNw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-escapes@7.25.9':
- resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-property-regex@7.24.1':
- resolution: {integrity: sha512-Ss4VvlfYV5huWApFsF8/Sq0oXnGO+jB+rijFEFugTd3cwSObUSnUi88djgR5528Csl0uKlrI331kRqe56Ov2Ng==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-property-regex@7.25.9':
- resolution: {integrity: sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-regex@7.24.1':
- resolution: {integrity: sha512-2A/94wgZgxfTsiLaQ2E36XAOdcZmGAaEEgVmxQWwZXWkGhvoHbaqXcKnU8zny4ycpu3vNqg0L/PcCiYtHtA13g==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-regex@7.25.9':
- resolution: {integrity: sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/plugin-transform-unicode-sets-regex@7.24.1':
- resolution: {integrity: sha512-fqj4WuzzS+ukpgerpAoOnMfQXwUHFxXUZUE84oL2Kao2N8uSlvcpnAidKASgsNgzZHBsHWvcm8s9FPWUhAb8fA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/plugin-transform-unicode-sets-regex@7.25.9':
- resolution: {integrity: sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0
-
- '@babel/preset-env@7.24.4':
- resolution: {integrity: sha512-7Kl6cSmYkak0FK/FXjSEnLJ1N9T/WA2RkMhu17gZ/dsxKJUuTYNIylahPTzqpLyJN4WhDif8X0XK1R8Wsguo/A==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/preset-env@7.26.0':
- resolution: {integrity: sha512-H84Fxq0CQJNdPFT2DrfnylZ3cf5K43rGfWK4LJGPpjKHiZlk0/RzwEus3PDDZZg+/Er7lCA03MVacueUuXdzfw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/preset-modules@0.1.6-no-external-plugins':
- resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
- peerDependencies:
- '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
-
- '@babel/preset-react@7.24.1':
- resolution: {integrity: sha512-eFa8up2/8cZXLIpkafhaADTXSnl7IsUFCYenRWrARBz0/qZwcT0RBXpys0LJU4+WfPoF2ZG6ew6s2V6izMCwRA==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/preset-react@7.26.3':
- resolution: {integrity: sha512-Nl03d6T9ky516DGK2YMxrTqvnpUW63TnJMOMonj+Zae0JiPC5BC9xPMSL6L8fiSpA5vP88qfygavVQvnLp+6Cw==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/preset-typescript@7.24.1':
- resolution: {integrity: sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/preset-typescript@7.26.0':
- resolution: {integrity: sha512-NMk1IGZ5I/oHhoXEElcm+xUnL/szL6xflkFZmoEU9xj1qSJXpiS7rsspYo92B4DRCDvZn2erT5LdsCeXAKNCkg==}
- engines: {node: '>=6.9.0'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@babel/regjsgen@0.8.0':
- resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==}
-
- '@babel/runtime-corejs3@7.26.0':
- resolution: {integrity: sha512-YXHu5lN8kJCb1LOb9PgV6pvak43X2h4HvRApcN5SdWeaItQOzfn1hgP6jasD6KWQyJDBxrVmA9o9OivlnNJK/w==}
- engines: {node: '>=6.9.0'}
-
- '@babel/runtime@7.24.4':
- resolution: {integrity: sha512-dkxf7+hn8mFBwKjs9bvBlArzLVxVbS8usaPUDd5p2a9JCL9tB8OaOVN1isD4+Xyk4ns89/xeOmbQvgdK7IIVdA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/runtime@7.26.0':
- resolution: {integrity: sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==}
- engines: {node: '>=6.9.0'}
-
- '@babel/runtime@7.27.1':
- resolution: {integrity: sha512-1x3D2xEk2fRo3PAhwQwu5UubzgiVWSXTBfWpVd2Mx2AzRqJuDJCsgaDVZ7HB5iGzDW1Hl1sWN2mFyKjmR9uAog==}
- engines: {node: '>=6.9.0'}
-
- '@babel/template@7.24.0':
- resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==}
- engines: {node: '>=6.9.0'}
-
- '@babel/template@7.25.9':
- resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==}
- engines: {node: '>=6.9.0'}
-
- '@babel/traverse@7.24.1':
- resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/traverse@7.26.5':
- resolution: {integrity: sha512-rkOSPOw+AXbgtwUga3U4u8RpoK9FEFWBNAlTpcnkLFjL5CT+oyHNuUUC/xx6XefEJ16r38r8Bc/lfp6rYuHeJQ==}
- engines: {node: '>=6.9.0'}
-
- '@babel/types@7.24.0':
- resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==}
- engines: {node: '>=6.9.0'}
-
- '@babel/types@7.26.5':
- resolution: {integrity: sha512-L6mZmwFDK6Cjh1nRCLXpa6no13ZIioJDz7mdkzHv399pThrTa/k0nUlNaenOeh2kWu/iaOQYElEpKPUswUa9Vg==}
- engines: {node: '>=6.9.0'}
-
- '@colors/colors@1.5.0':
- resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
- engines: {node: '>=0.1.90'}
-
- '@csstools/cascade-layer-name-parser@2.0.4':
- resolution: {integrity: sha512-7DFHlPuIxviKYZrOiwVU/PiHLm3lLUR23OMuEEtfEOQTOp9hzQ2JjdY6X5H18RVuUPJqSCI+qNnD5iOLMVE0bA==}
- engines: {node: '>=18'}
- peerDependencies:
- '@csstools/css-parser-algorithms': ^3.0.4
- '@csstools/css-tokenizer': ^3.0.3
-
- '@csstools/color-helpers@5.0.1':
- resolution: {integrity: sha512-MKtmkA0BX87PKaO1NFRTFH+UnkgnmySQOvNxJubsadusqPEC2aJ9MOQiMceZJJ6oitUl/i0L6u0M1IrmAOmgBA==}
- engines: {node: '>=18'}
-
- '@csstools/css-calc@2.1.1':
- resolution: {integrity: sha512-rL7kaUnTkL9K+Cvo2pnCieqNpTKgQzy5f+N+5Iuko9HAoasP+xgprVh7KN/MaJVvVL1l0EzQq2MoqBHKSrDrag==}
- engines: {node: '>=18'}
- peerDependencies:
- '@csstools/css-parser-algorithms': ^3.0.4
- '@csstools/css-tokenizer': ^3.0.3
-
- '@csstools/css-color-parser@3.0.7':
- resolution: {integrity: sha512-nkMp2mTICw32uE5NN+EsJ4f5N+IGFeCFu4bGpiKgb2Pq/7J/MpyLBeQ5ry4KKtRFZaYs6sTmcMYrSRIyj5DFKA==}
- engines: {node: '>=18'}
- peerDependencies:
- '@csstools/css-parser-algorithms': ^3.0.4
- '@csstools/css-tokenizer': ^3.0.3
-
- '@csstools/css-parser-algorithms@3.0.4':
- resolution: {integrity: sha512-Up7rBoV77rv29d3uKHUIVubz1BTcgyUK72IvCQAbfbMv584xHcGKCKbWh7i8hPrRJ7qU4Y8IO3IY9m+iTB7P3A==}
- engines: {node: '>=18'}
- peerDependencies:
- '@csstools/css-tokenizer': ^3.0.3
-
- '@csstools/css-tokenizer@3.0.3':
- resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==}
- engines: {node: '>=18'}
-
- '@csstools/media-query-list-parser@4.0.2':
- resolution: {integrity: sha512-EUos465uvVvMJehckATTlNqGj4UJWkTmdWuDMjqvSUkjGpmOyFZBVwb4knxCm/k2GMTXY+c/5RkdndzFYWeX5A==}
- engines: {node: '>=18'}
- peerDependencies:
- '@csstools/css-parser-algorithms': ^3.0.4
- '@csstools/css-tokenizer': ^3.0.3
-
- '@csstools/postcss-cascade-layers@5.0.1':
- resolution: {integrity: sha512-XOfhI7GShVcKiKwmPAnWSqd2tBR0uxt+runAxttbSp/LY2U16yAVPmAf7e9q4JJ0d+xMNmpwNDLBXnmRCl3HMQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-color-function@4.0.7':
- resolution: {integrity: sha512-aDHYmhNIHR6iLw4ElWhf+tRqqaXwKnMl0YsQ/X105Zc4dQwe6yJpMrTN6BwOoESrkDjOYMOfORviSSLeDTJkdQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-color-mix-function@3.0.7':
- resolution: {integrity: sha512-e68Nev4CxZYCLcrfWhHH4u/N1YocOfTmw67/kVX5Rb7rnguqqLyxPjhHWjSBX8o4bmyuukmNf3wrUSU3//kT7g==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-content-alt-text@2.0.4':
- resolution: {integrity: sha512-YItlZUOuZJCBlRaCf8Aucc1lgN41qYGALMly0qQllrxYJhiyzlI6RxOTMUvtWk+KhS8GphMDsDhKQ7KTPfEMSw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-exponential-functions@2.0.6':
- resolution: {integrity: sha512-IgJA5DQsQLu/upA3HcdvC6xEMR051ufebBTIXZ5E9/9iiaA7juXWz1ceYj814lnDYP/7eWjZnw0grRJlX4eI6g==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-font-format-keywords@4.0.0':
- resolution: {integrity: sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-gamut-mapping@2.0.7':
- resolution: {integrity: sha512-gzFEZPoOkY0HqGdyeBXR3JP218Owr683u7KOZazTK7tQZBE8s2yhg06W1tshOqk7R7SWvw9gkw2TQogKpIW8Xw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-gradients-interpolation-method@5.0.7':
- resolution: {integrity: sha512-WgEyBeg6glUeTdS2XT7qeTFBthTJuXlS9GFro/DVomj7W7WMTamAwpoP4oQCq/0Ki2gvfRYFi/uZtmRE14/DFA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-hwb-function@4.0.7':
- resolution: {integrity: sha512-LKYqjO+wGwDCfNIEllessCBWfR4MS/sS1WXO+j00KKyOjm7jDW2L6jzUmqASEiv/kkJO39GcoIOvTTfB3yeBUA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-ic-unit@4.0.0':
- resolution: {integrity: sha512-9QT5TDGgx7wD3EEMN3BSUG6ckb6Eh5gSPT5kZoVtUuAonfPmLDJyPhqR4ntPpMYhUKAMVKAg3I/AgzqHMSeLhA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-initial@2.0.0':
- resolution: {integrity: sha512-dv2lNUKR+JV+OOhZm9paWzYBXOCi+rJPqJ2cJuhh9xd8USVrd0cBEPczla81HNOyThMQWeCcdln3gZkQV2kYxA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-is-pseudo-class@5.0.1':
- resolution: {integrity: sha512-JLp3POui4S1auhDR0n8wHd/zTOWmMsmK3nQd3hhL6FhWPaox5W7j1se6zXOG/aP07wV2ww0lxbKYGwbBszOtfQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-light-dark-function@2.0.7':
- resolution: {integrity: sha512-ZZ0rwlanYKOHekyIPaU+sVm3BEHCe+Ha0/px+bmHe62n0Uc1lL34vbwrLYn6ote8PHlsqzKeTQdIejQCJ05tfw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-logical-float-and-clear@3.0.0':
- resolution: {integrity: sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-logical-overflow@2.0.0':
- resolution: {integrity: sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-logical-overscroll-behavior@2.0.0':
- resolution: {integrity: sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-logical-resize@3.0.0':
- resolution: {integrity: sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-logical-viewport-units@3.0.3':
- resolution: {integrity: sha512-OC1IlG/yoGJdi0Y+7duz/kU/beCwO+Gua01sD6GtOtLi7ByQUpcIqs7UE/xuRPay4cHgOMatWdnDdsIDjnWpPw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-media-minmax@2.0.6':
- resolution: {integrity: sha512-J1+4Fr2W3pLZsfxkFazK+9kr96LhEYqoeBszLmFjb6AjYs+g9oDAw3J5oQignLKk3rC9XHW+ebPTZ9FaW5u5pg==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4':
- resolution: {integrity: sha512-AnGjVslHMm5xw9keusQYvjVWvuS7KWK+OJagaG0+m9QnIjZsrysD2kJP/tr/UJIyYtMCtu8OkUd+Rajb4DqtIQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-nested-calc@4.0.0':
- resolution: {integrity: sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-normalize-display-values@4.0.0':
- resolution: {integrity: sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-oklab-function@4.0.7':
- resolution: {integrity: sha512-I6WFQIbEKG2IO3vhaMGZDkucbCaUSXMxvHNzDdnfsTCF5tc0UlV3Oe2AhamatQoKFjBi75dSEMrgWq3+RegsOQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-progressive-custom-properties@4.0.0':
- resolution: {integrity: sha512-XQPtROaQjomnvLUSy/bALTR5VCtTVUFwYs1SblvYgLSeTo2a/bMNwUwo2piXw5rTv/FEYiy5yPSXBqg9OKUx7Q==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-random-function@1.0.2':
- resolution: {integrity: sha512-vBCT6JvgdEkvRc91NFoNrLjgGtkLWt47GKT6E2UDn3nd8ZkMBiziQ1Md1OiKoSsgzxsSnGKG3RVdhlbdZEkHjA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-relative-color-syntax@3.0.7':
- resolution: {integrity: sha512-apbT31vsJVd18MabfPOnE977xgct5B1I+Jpf+Munw3n6kKb1MMuUmGGH+PT9Hm/fFs6fe61Q/EWnkrb4bNoNQw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-scope-pseudo-class@4.0.1':
- resolution: {integrity: sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-sign-functions@1.1.1':
- resolution: {integrity: sha512-MslYkZCeMQDxetNkfmmQYgKCy4c+w9pPDfgOBCJOo/RI1RveEUdZQYtOfrC6cIZB7sD7/PHr2VGOcMXlZawrnA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-stepped-value-functions@4.0.6':
- resolution: {integrity: sha512-/dwlO9w8vfKgiADxpxUbZOWlL5zKoRIsCymYoh1IPuBsXODKanKnfuZRr32DEqT0//3Av1VjfNZU9yhxtEfIeA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-text-decoration-shorthand@4.0.1':
- resolution: {integrity: sha512-xPZIikbx6jyzWvhms27uugIc0I4ykH4keRvoa3rxX5K7lEhkbd54rjj/dv60qOCTisoS+3bmwJTeyV1VNBrXaw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-trigonometric-functions@4.0.6':
- resolution: {integrity: sha512-c4Y1D2Why/PeccaSouXnTt6WcNHJkoJRidV2VW9s5gJ97cNxnLgQ4Qj8qOqkIR9VmTQKJyNcbF4hy79ZQnWD7A==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/postcss-unset-value@4.0.0':
- resolution: {integrity: sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@csstools/selector-resolve-nested@3.0.0':
- resolution: {integrity: sha512-ZoK24Yku6VJU1gS79a5PFmC8yn3wIapiKmPgun0hZgEI5AOqgH2kiPRsPz1qkGv4HL+wuDLH83yQyk6inMYrJQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss-selector-parser: ^7.0.0
-
- '@csstools/selector-specificity@5.0.0':
- resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss-selector-parser: ^7.0.0
-
- '@csstools/utilities@2.0.0':
- resolution: {integrity: sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- '@discoveryjs/json-ext@0.5.7':
- resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==}
- engines: {node: '>=10.0.0'}
-
- '@docsearch/css@3.8.2':
- resolution: {integrity: sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==}
-
- '@docsearch/react@3.8.2':
- resolution: {integrity: sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==}
- peerDependencies:
- '@types/react': '>= 16.8.0 < 19.0.0'
- react: '>= 16.8.0 < 19.0.0'
- react-dom: '>= 16.8.0 < 19.0.0'
- search-insights: '>= 1 < 3'
- peerDependenciesMeta:
- '@types/react':
- optional: true
- react:
- optional: true
- react-dom:
- optional: true
- search-insights:
- optional: true
-
- '@docusaurus/babel@3.7.0':
- resolution: {integrity: sha512-0H5uoJLm14S/oKV3Keihxvh8RV+vrid+6Gv+2qhuzbqHanawga8tYnsdpjEyt36ucJjqlby2/Md2ObWjA02UXQ==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/bundler@3.7.0':
- resolution: {integrity: sha512-CUUT9VlSGukrCU5ctZucykvgCISivct+cby28wJwCC/fkQFgAHRp/GKv2tx38ZmXb7nacrKzFTcp++f9txUYGg==}
- engines: {node: '>=18.0'}
- peerDependencies:
- '@docusaurus/faster': '*'
- peerDependenciesMeta:
- '@docusaurus/faster':
- optional: true
-
- '@docusaurus/core@3.7.0':
- resolution: {integrity: sha512-b0fUmaL+JbzDIQaamzpAFpTviiaU4cX3Qz8cuo14+HGBCwa0evEK0UYCBFY3n4cLzL8Op1BueeroUD2LYAIHbQ==}
- engines: {node: '>=18.0'}
- hasBin: true
- peerDependencies:
- '@mdx-js/react': ^3.0.0
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/cssnano-preset@3.7.0':
- resolution: {integrity: sha512-X9GYgruZBSOozg4w4dzv9uOz8oK/EpPVQXkp0MM6Tsgp/nRIU9hJzJ0Pxg1aRa3xCeEQTOimZHcocQFlLwYajQ==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/logger@3.7.0':
- resolution: {integrity: sha512-z7g62X7bYxCYmeNNuO9jmzxLQG95q9QxINCwpboVcNff3SJiHJbGrarxxOVMVmAh1MsrSfxWkVGv4P41ktnFsA==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/mdx-loader@3.7.0':
- resolution: {integrity: sha512-OFBG6oMjZzc78/U3WNPSHs2W9ZJ723ewAcvVJaqS0VgyeUfmzUV8f1sv+iUHA0DtwiR5T5FjOxj6nzEE8LY6VA==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/module-type-aliases@3.7.0':
- resolution: {integrity: sha512-g7WdPqDNaqA60CmBrr0cORTrsOit77hbsTj7xE2l71YhBn79sxdm7WMK7wfhcaafkbpIh7jv5ef5TOpf1Xv9Lg==}
- peerDependencies:
- react: '*'
- react-dom: '*'
-
- '@docusaurus/plugin-content-blog@3.7.0':
- resolution: {integrity: sha512-EFLgEz6tGHYWdPU0rK8tSscZwx+AsyuBW/r+tNig2kbccHYGUJmZtYN38GjAa3Fda4NU+6wqUO5kTXQSRBQD3g==}
- engines: {node: '>=18.0'}
- peerDependencies:
- '@docusaurus/plugin-content-docs': '*'
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-content-docs@3.7.0':
- resolution: {integrity: sha512-GXg5V7kC9FZE4FkUZA8oo/NrlRb06UwuICzI6tcbzj0+TVgjq/mpUXXzSgKzMS82YByi4dY2Q808njcBCyy6tQ==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-content-pages@3.7.0':
- resolution: {integrity: sha512-YJSU3tjIJf032/Aeao8SZjFOrXJbz/FACMveSMjLyMH4itQyZ2XgUIzt4y+1ISvvk5zrW4DABVT2awTCqBkx0Q==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-debug@3.7.0':
- resolution: {integrity: sha512-Qgg+IjG/z4svtbCNyTocjIwvNTNEwgRjSXXSJkKVG0oWoH0eX/HAPiu+TS1HBwRPQV+tTYPWLrUypYFepfujZA==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-google-analytics@3.7.0':
- resolution: {integrity: sha512-otIqiRV/jka6Snjf+AqB360XCeSv7lQC+DKYW+EUZf6XbuE8utz5PeUQ8VuOcD8Bk5zvT1MC4JKcd5zPfDuMWA==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-google-gtag@3.7.0':
- resolution: {integrity: sha512-M3vrMct1tY65ModbyeDaMoA+fNJTSPe5qmchhAbtqhDD/iALri0g9LrEpIOwNaoLmm6lO88sfBUADQrSRSGSWA==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-google-tag-manager@3.7.0':
- resolution: {integrity: sha512-X8U78nb8eiMiPNg3jb9zDIVuuo/rE1LjGDGu+5m5CX4UBZzjMy+klOY2fNya6x8ACyE/L3K2erO1ErheP55W/w==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-sitemap@3.7.0':
- resolution: {integrity: sha512-bTRT9YLZ/8I/wYWKMQke18+PF9MV8Qub34Sku6aw/vlZ/U+kuEuRpQ8bTcNOjaTSfYsWkK4tTwDMHK2p5S86cA==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/plugin-svgr@3.7.0':
- resolution: {integrity: sha512-HByXIZTbc4GV5VAUkZ2DXtXv1Qdlnpk3IpuImwSnEzCDBkUMYcec5282hPjn6skZqB25M1TYCmWS91UbhBGxQg==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/preset-classic@3.7.0':
- resolution: {integrity: sha512-nPHj8AxDLAaQXs+O6+BwILFuhiWbjfQWrdw2tifOClQoNfuXDjfjogee6zfx6NGHWqshR23LrcN115DmkHC91Q==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/react-loadable@6.0.0':
- resolution: {integrity: sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==}
- peerDependencies:
- react: '*'
-
- '@docusaurus/theme-classic@3.7.0':
- resolution: {integrity: sha512-MnLxG39WcvLCl4eUzHr0gNcpHQfWoGqzADCly54aqCofQX6UozOS9Th4RK3ARbM9m7zIRv3qbhggI53dQtx/hQ==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/theme-common@3.7.0':
- resolution: {integrity: sha512-8eJ5X0y+gWDsURZnBfH0WabdNm8XMCXHv8ENy/3Z/oQKwaB/EHt5lP9VsTDTf36lKEp0V6DjzjFyFIB+CetL0A==}
- engines: {node: '>=18.0'}
- peerDependencies:
- '@docusaurus/plugin-content-docs': '*'
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/theme-search-algolia@3.7.0':
- resolution: {integrity: sha512-Al/j5OdzwRU1m3falm+sYy9AaB93S1XF1Lgk9Yc6amp80dNxJVplQdQTR4cYdzkGtuQqbzUA8+kaoYYO0RbK6g==}
- engines: {node: '>=18.0'}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/theme-translations@3.7.0':
- resolution: {integrity: sha512-Ewq3bEraWDmienM6eaNK7fx+/lHMtGDHQyd1O+4+3EsDxxUmrzPkV7Ct3nBWTuE0MsoZr3yNwQVKjllzCMuU3g==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/tsconfig@3.7.0':
- resolution: {integrity: sha512-vRsyj3yUZCjscgfgcFYjIsTcAru/4h4YH2/XAE8Rs7wWdnng98PgWKvP5ovVc4rmRpRg2WChVW0uOy2xHDvDBQ==}
-
- '@docusaurus/types@3.7.0':
- resolution: {integrity: sha512-kOmZg5RRqJfH31m+6ZpnwVbkqMJrPOG5t0IOl4i/+3ruXyNfWzZ0lVtVrD0u4ONc/0NOsS9sWYaxxWNkH1LdLQ==}
- peerDependencies:
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
-
- '@docusaurus/utils-common@3.7.0':
- resolution: {integrity: sha512-IZeyIfCfXy0Mevj6bWNg7DG7B8G+S6o6JVpddikZtWyxJguiQ7JYr0SIZ0qWd8pGNuMyVwriWmbWqMnK7Y5PwA==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/utils-validation@3.7.0':
- resolution: {integrity: sha512-w8eiKk8mRdN+bNfeZqC4nyFoxNyI1/VExMKAzD9tqpJfLLbsa46Wfn5wcKH761g9WkKh36RtFV49iL9lh1DYBA==}
- engines: {node: '>=18.0'}
-
- '@docusaurus/utils@3.7.0':
- resolution: {integrity: sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==}
- engines: {node: '>=18.0'}
-
- '@emotion/hash@0.9.1':
- resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==}
-
- '@eslint-community/eslint-utils@4.4.0':
- resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
-
- '@eslint-community/regexpp@4.10.0':
- resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==}
- engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
-
- '@eslint/eslintrc@2.1.4':
- resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- '@eslint/js@8.57.0':
- resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- '@floating-ui/core@1.6.0':
- resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==}
-
- '@floating-ui/dom@1.6.3':
- resolution: {integrity: sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==}
-
- '@floating-ui/react-dom@2.1.2':
- resolution: {integrity: sha512-06okr5cgPzMNBy+Ycse2A6udMi4bqwW/zgBF/rwjcNqWkyr82Mcg8b0vjX8OJpZFy/FKjJmw6wV7t44kK6kW7A==}
- peerDependencies:
- react: '>=16.8.0'
- react-dom: '>=16.8.0'
-
- '@floating-ui/utils@0.2.9':
- resolution: {integrity: sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==}
-
- '@fluentui/react-icons@2.0.300':
- resolution: {integrity: sha512-NyeeklHWwK8IOqP4joErsHMek6+adVtWwYpEEKE9XuphxCRqMqZ9ZUerNB7OyjKnJELZ3lD/uCsSoeSbzBlnjQ==}
- peerDependencies:
- react: '>=16.8.0 <19.0.0'
-
- '@griffel/core@1.15.3':
- resolution: {integrity: sha512-5ksBpOjFJ75HijGehQ06Ri9cQjhd/rqQ0N/jJzXDDXQFYdOOzib/QL7BXNwhkLtTyHvN391cD4/BqcTdynfLUg==}
-
- '@griffel/react@1.5.21':
- resolution: {integrity: sha512-7wuY9uFSt/0E7kLAKX//ue8NILx0IGoOtIx6WVuavEUFJXPCrvFn4uCDgnJC0211LZtJ+XH7zZGPNUtSb7nijw==}
- peerDependencies:
- react: '>=16.8.0 <19.0.0'
-
- '@griffel/style-types@1.0.4':
- resolution: {integrity: sha512-geZomjQTIHXoQZFFB811PUMXYAr8LuBNOMPcR2YJAl1pslbHYYiZKCa2FgZCw00hnQFP4uB4JIJ2CiPJqKZYmw==}
-
- '@hapi/hoek@9.3.0':
- resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
-
- '@hapi/topo@5.1.0':
- resolution: {integrity: sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==}
-
- '@humanwhocodes/config-array@0.11.14':
- resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==}
- engines: {node: '>=10.10.0'}
-
- '@humanwhocodes/module-importer@1.0.1':
- resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
- engines: {node: '>=12.22'}
-
- '@humanwhocodes/object-schema@2.0.3':
- resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
-
- '@isaacs/cliui@8.0.2':
- resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
- engines: {node: '>=12'}
-
- '@jest/schemas@29.6.3':
- resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- '@jest/types@29.6.3':
- resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- '@jridgewell/gen-mapping@0.3.5':
- resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
- engines: {node: '>=6.0.0'}
-
- '@jridgewell/resolve-uri@3.1.2':
- resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
- engines: {node: '>=6.0.0'}
-
- '@jridgewell/set-array@1.2.1':
- resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
- engines: {node: '>=6.0.0'}
-
- '@jridgewell/source-map@0.3.6':
- resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
-
- '@jridgewell/sourcemap-codec@1.4.15':
- resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
-
- '@jridgewell/trace-mapping@0.3.25':
- resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
-
- '@leichtgewicht/ip-codec@2.0.5':
- resolution: {integrity: sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==}
-
- '@mdx-js/mdx@3.0.1':
- resolution: {integrity: sha512-eIQ4QTrOWyL3LWEe/bu6Taqzq2HQvHcyTMaOrI95P2/LmJE7AsfPfgJGuFLPVqBUE1BC1rik3VIhU+s9u72arA==}
-
- '@mdx-js/react@3.1.0':
- resolution: {integrity: sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==}
- peerDependencies:
- '@types/react': '>=16'
- react: '>=16'
-
- '@nodelib/fs.scandir@2.1.5':
- resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
- engines: {node: '>= 8'}
-
- '@nodelib/fs.stat@2.0.5':
- resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
- engines: {node: '>= 8'}
-
- '@nodelib/fs.walk@1.2.8':
- resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
- engines: {node: '>= 8'}
-
- '@pkgjs/parseargs@0.11.0':
- resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
- engines: {node: '>=14'}
-
- '@pnpm/config.env-replace@1.1.0':
- resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==}
- engines: {node: '>=12.22.0'}
-
- '@pnpm/network.ca-file@1.0.2':
- resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==}
- engines: {node: '>=12.22.0'}
-
- '@pnpm/npm-conf@2.2.2':
- resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==}
- engines: {node: '>=12'}
-
- '@polka/url@1.0.0-next.25':
- resolution: {integrity: sha512-j7P6Rgr3mmtdkeDGTe0E/aYyWEWVtc5yFXtHCRHs28/jptDEWfaVOc5T7cblqy1XKPPfCxJc/8DwQ5YgLOZOVQ==}
-
- '@radix-ui/number@1.1.1':
- resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==}
-
- '@radix-ui/primitive@1.1.2':
- resolution: {integrity: sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==}
-
- '@radix-ui/react-arrow@1.1.6':
- resolution: {integrity: sha512-2JMfHJf/eVnwq+2dewT3C0acmCWD3XiVA1Da+jTDqo342UlU13WvXtqHhG+yJw5JeQmu4ue2eMy6gcEArLBlcw==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-collection@1.1.6':
- resolution: {integrity: sha512-PbhRFK4lIEw9ADonj48tiYWzkllz81TM7KVYyyMMw2cwHO7D5h4XKEblL8NlaRisTK3QTe6tBEhDccFUryxHBQ==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-compose-refs@1.1.2':
- resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-context@1.1.2':
- resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-direction@1.1.1':
- resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-dismissable-layer@1.1.9':
- resolution: {integrity: sha512-way197PiTvNp+WBP7svMJasHl+vibhWGQDb6Mgf5mhEWJkgb85z7Lfl9TUdkqpWsf8GRNmoopx9ZxCyDzmgRMQ==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-focus-guards@1.1.2':
- resolution: {integrity: sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-focus-scope@1.1.6':
- resolution: {integrity: sha512-r9zpYNUQY+2jWHWZGyddQLL9YHkM/XvSFHVcWs7bdVuxMAnCwTAuy6Pf47Z4nw7dYcUou1vg/VgjjrrH03VeBw==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-id@1.1.1':
- resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-popper@1.2.6':
- resolution: {integrity: sha512-7iqXaOWIjDBfIG7aq8CUEeCSsQMLFdn7VEE8TaFz704DtEzpPHR7w/uuzRflvKgltqSAImgcmxQ7fFX3X7wasg==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-portal@1.1.8':
- resolution: {integrity: sha512-hQsTUIn7p7fxCPvao/q6wpbxmCwgLrlz+nOrJgC+RwfZqWY/WN+UMqkXzrtKbPrF82P43eCTl3ekeKuyAQbFeg==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-primitive@2.1.2':
- resolution: {integrity: sha512-uHa+l/lKfxuDD2zjN/0peM/RhhSmRjr5YWdk/37EnSv1nJ88uvG85DPexSm8HdFQROd2VdERJ6ynXbkCFi+APw==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-select@2.2.4':
- resolution: {integrity: sha512-/OOm58Gil4Ev5zT8LyVzqfBcij4dTHYdeyuF5lMHZ2bIp0Lk9oETocYiJ5QC0dHekEQnK6L/FNJCceeb4AkZ6Q==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/react-slot@1.2.2':
- resolution: {integrity: sha512-y7TBO4xN4Y94FvcWIOIh18fM4R1A8S4q1jhoz4PNzOoHsFcN8pogcFmZrTYAm4F9VRUrWP/Mw7xSKybIeRI+CQ==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-callback-ref@1.1.1':
- resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-controllable-state@1.2.2':
- resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-effect-event@0.0.2':
- resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-escape-keydown@1.1.1':
- resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-layout-effect@1.1.1':
- resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-previous@1.1.1':
- resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-rect@1.1.1':
- resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-use-size@1.1.1':
- resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- '@radix-ui/react-visually-hidden@1.2.2':
- resolution: {integrity: sha512-ORCmRUbNiZIv6uV5mhFrhsIKw4UX/N3syZtyqvry61tbGm4JlgQuSn0hk5TwCARsCjkcnuRkSdCE3xfb+ADHew==}
- peerDependencies:
- '@types/react': '*'
- '@types/react-dom': '*'
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
- '@types/react-dom':
- optional: true
-
- '@radix-ui/rect@1.1.1':
- resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==}
-
- '@shikijs/core@1.14.1':
- resolution: {integrity: sha512-KyHIIpKNaT20FtFPFjCQB5WVSTpLR/n+jQXhWHWVUMm9MaOaG9BGOG0MSyt7yA4+Lm+4c9rTc03tt3nYzeYSfw==}
-
- '@sideway/address@4.1.5':
- resolution: {integrity: sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==}
-
- '@sideway/formula@3.0.1':
- resolution: {integrity: sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==}
-
- '@sideway/pinpoint@2.0.0':
- resolution: {integrity: sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==}
-
- '@sinclair/typebox@0.27.8':
- resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==}
-
- '@sindresorhus/is@4.6.0':
- resolution: {integrity: sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==}
- engines: {node: '>=10'}
-
- '@sindresorhus/is@5.6.0':
- resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==}
- engines: {node: '>=14.16'}
-
- '@slorber/react-helmet-async@1.3.0':
- resolution: {integrity: sha512-e9/OK8VhwUSc67diWI8Rb3I0YgI9/SBQtnhe9aEuK6MhZm7ntZZimXgwXnd8W96YTmSOb9M4d8LwhRZyhWr/1A==}
- peerDependencies:
- react: ^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- react-dom: ^16.6.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
-
- '@slorber/remark-comment@1.0.0':
- resolution: {integrity: sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==}
-
- '@svgr/babel-plugin-add-jsx-attribute@8.0.0':
- resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-remove-jsx-attribute@8.0.0':
- resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0':
- resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0':
- resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-svg-dynamic-title@8.0.0':
- resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-svg-em-dimensions@8.0.0':
- resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-transform-react-native-svg@8.1.0':
- resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-plugin-transform-svg-component@8.0.0':
- resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==}
- engines: {node: '>=12'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/babel-preset@8.1.0':
- resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==}
- engines: {node: '>=14'}
- peerDependencies:
- '@babel/core': ^7.0.0-0
-
- '@svgr/core@8.1.0':
- resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==}
- engines: {node: '>=14'}
-
- '@svgr/hast-util-to-babel-ast@8.0.0':
- resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==}
- engines: {node: '>=14'}
-
- '@svgr/plugin-jsx@8.1.0':
- resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==}
- engines: {node: '>=14'}
- peerDependencies:
- '@svgr/core': '*'
-
- '@svgr/plugin-svgo@8.1.0':
- resolution: {integrity: sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==}
- engines: {node: '>=14'}
- peerDependencies:
- '@svgr/core': '*'
-
- '@svgr/webpack@8.1.0':
- resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==}
- engines: {node: '>=14'}
-
- '@swc/core-darwin-arm64@1.4.13':
- resolution: {integrity: sha512-36P72FLpm5iq85IvoEjBvi22DiqkkEIanJ1M0E8bkxcFHUbjBrYfPY9T6cpPyK5oQqkaTBvNAc3j1BlVD6IH6w==}
- engines: {node: '>=10'}
- cpu: [arm64]
- os: [darwin]
-
- '@swc/core-darwin-x64@1.4.13':
- resolution: {integrity: sha512-ye7OgKpDdyA8AMIVVdmD1ICDaFXgoEXORnVO8bBHyul0WN71yUBZMX+YxEx2lpWtiftA2vY/1MAuOR80vHkBCw==}
- engines: {node: '>=10'}
- cpu: [x64]
- os: [darwin]
-
- '@swc/core-linux-arm-gnueabihf@1.4.13':
- resolution: {integrity: sha512-+x593Jlmu4c3lJtZUKRejWpV2MAij1Js5nmQLLdjo6ChR2D4B2rzj3iMiKn5gITew7fraF9t3fvXALdWh7HmUg==}
- engines: {node: '>=10'}
- cpu: [arm]
- os: [linux]
-
- '@swc/core-linux-arm64-gnu@1.4.13':
- resolution: {integrity: sha512-0x8OVw4dfyNerrs/9eZX9wNnmvwbwXSMCi+LbE6Xt1pXOIwvoLtFIXcV3NsrlkFboO3sr5UAQIwDxKqbIZA9pQ==}
- engines: {node: '>=10'}
- cpu: [arm64]
- os: [linux]
-
- '@swc/core-linux-arm64-musl@1.4.13':
- resolution: {integrity: sha512-Z9c4JiequtZvngPcxbCuAOkmWBxi2vInZbjjhD5I+Q9oiJdXUz1t2USGwsGPS41Xvk1BOA3ecK2Sn1ilY3titg==}
- engines: {node: '>=10'}
- cpu: [arm64]
- os: [linux]
-
- '@swc/core-linux-x64-gnu@1.4.13':
- resolution: {integrity: sha512-ChatHtk+vX0Ke5QG+jO+rIapw/KwZsi9MedCBHFXHH6iWF4z8d51cJeN68ykcn+vAXzjNeFNdlNy5Vbkd1zAqg==}
- engines: {node: '>=10'}
- cpu: [x64]
- os: [linux]
-
- '@swc/core-linux-x64-musl@1.4.13':
- resolution: {integrity: sha512-0Pz39YR530mXpsztwQkmEKdkkZy4fY4Smdh4pkm6Ly8Nndyo0te/l4bcAGqN24Jp7aVwF/QSy14SAtw4HRjU9g==}
- engines: {node: '>=10'}
- cpu: [x64]
- os: [linux]
-
- '@swc/core-win32-arm64-msvc@1.4.13':
- resolution: {integrity: sha512-LVZfhlD+jHcAbz5NN+gAJ1BEasB0WpcvUzcsJt0nQSRsojgzPzFjJ+fzEBnvT7SMtqKkrnVJ0OmDYeh88bDRpw==}
- engines: {node: '>=10'}
- cpu: [arm64]
- os: [win32]
-
- '@swc/core-win32-ia32-msvc@1.4.13':
- resolution: {integrity: sha512-78hxHWUvUZtWsnhcf8DKwhBcNFJw+j4y4fN2B9ioXmBWX2tIyw+BqUHOrismOtjPihaZmwe/Ok2e4qmkawE2fw==}
- engines: {node: '>=10'}
- cpu: [ia32]
- os: [win32]
-
- '@swc/core-win32-x64-msvc@1.4.13':
- resolution: {integrity: sha512-WSfy1u2Xde6jU7UpHIInCUMW98Zw9iZglddKUAvmr1obkZji5U6EX0Oca3asEJdZPFb+2lMLjt0Mh5a1YisROg==}
- engines: {node: '>=10'}
- cpu: [x64]
- os: [win32]
-
- '@swc/core@1.4.13':
- resolution: {integrity: sha512-rOtusBE+2gaeRkAJn5E4zp5yzZekZOypzSOz5ZG6P1hFbd+Cc26fWEdK6sUSnrkkvTd0Oj33KXLB/4UkbK/UHA==}
- engines: {node: '>=10'}
- peerDependencies:
- '@swc/helpers': ^0.5.0
- peerDependenciesMeta:
- '@swc/helpers':
- optional: true
-
- '@swc/counter@0.1.3':
- resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==}
-
- '@swc/helpers@0.5.17':
- resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==}
-
- '@swc/types@0.1.6':
- resolution: {integrity: sha512-/JLo/l2JsT/LRd80C3HfbmVpxOAJ11FO2RCEslFrgzLltoP9j8XIbsyDcfCt2WWyX+CM96rBoNM+IToAkFOugg==}
-
- '@szmarczak/http-timer@5.0.1':
- resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==}
- engines: {node: '>=14.16'}
-
- '@tanstack/react-table@8.21.3':
- resolution: {integrity: sha512-5nNMTSETP4ykGegmVkhjcS8tTLW6Vl4axfEGQN3v0zdHYbK4UfoqfPChclTrJ4EoK9QynqAu9oUf8VEmrpZ5Ww==}
- engines: {node: '>=12'}
- peerDependencies:
- react: '>=16.8'
- react-dom: '>=16.8'
-
- '@tanstack/table-core@8.21.3':
- resolution: {integrity: sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==}
- engines: {node: '>=12'}
-
- '@trysound/sax@0.2.0':
- resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==}
- engines: {node: '>=10.13.0'}
-
- '@types/acorn@4.0.6':
- resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
-
- '@types/body-parser@1.19.5':
- resolution: {integrity: sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==}
-
- '@types/bonjour@3.5.13':
- resolution: {integrity: sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==}
-
- '@types/connect-history-api-fallback@1.5.4':
- resolution: {integrity: sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==}
-
- '@types/connect@3.4.38':
- resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
-
- '@types/debug@4.1.12':
- resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
-
- '@types/eslint-scope@3.7.7':
- resolution: {integrity: sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==}
-
- '@types/eslint@8.56.8':
- resolution: {integrity: sha512-LdDdQVDzDXf3ijhhMnE27C5vc0QEknD8GiMR/Hi+fVbdZNfAfCy2j69m0LjUd2MAy0+kIgnOtd5ndTmDk/VWCA==}
-
- '@types/estree-jsx@1.0.5':
- resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
-
- '@types/estree@1.0.5':
- resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
-
- '@types/estree@1.0.6':
- resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
-
- '@types/express-serve-static-core@4.19.0':
- resolution: {integrity: sha512-bGyep3JqPCRry1wq+O5n7oiBgGWmeIJXPjXXCo8EK0u8duZGSYar7cGqd3ML2JUsLGeB7fmc06KYo9fLGWqPvQ==}
-
- '@types/express@4.17.21':
- resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==}
-
- '@types/gtag.js@0.0.12':
- resolution: {integrity: sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==}
-
- '@types/hast@2.3.10':
- resolution: {integrity: sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==}
-
- '@types/hast@3.0.4':
- resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
-
- '@types/history@4.7.11':
- resolution: {integrity: sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==}
-
- '@types/html-minifier-terser@6.1.0':
- resolution: {integrity: sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==}
-
- '@types/http-cache-semantics@4.0.4':
- resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==}
-
- '@types/http-errors@2.0.4':
- resolution: {integrity: sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==}
-
- '@types/http-proxy@1.17.14':
- resolution: {integrity: sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==}
-
- '@types/istanbul-lib-coverage@2.0.6':
- resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
-
- '@types/istanbul-lib-report@3.0.3':
- resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
-
- '@types/istanbul-reports@3.0.4':
- resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
-
- '@types/json-schema@7.0.15':
- resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
-
- '@types/katex@0.16.7':
- resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
-
- '@types/mdast@3.0.15':
- resolution: {integrity: sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==}
-
- '@types/mdast@4.0.3':
- resolution: {integrity: sha512-LsjtqsyF+d2/yFOYaN22dHZI1Cpwkrj+g06G8+qtUKlhovPW89YhqSnfKtMbkgmEtYpH2gydRNULd6y8mciAFg==}
-
- '@types/mdx@2.0.13':
- resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==}
-
- '@types/mime@1.3.5':
- resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==}
-
- '@types/ms@0.7.34':
- resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
-
- '@types/node-forge@1.3.11':
- resolution: {integrity: sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==}
-
- '@types/node@17.0.45':
- resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
-
- '@types/node@20.12.7':
- resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==}
-
- '@types/parse-json@4.0.2':
- resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
-
- '@types/prismjs@1.26.3':
- resolution: {integrity: sha512-A0D0aTXvjlqJ5ZILMz3rNfDBOx9hHxLZYv2by47Sm/pqW35zzjusrZTryatjN/Rf8Us2gZrJD+KeHbUSTux1Cw==}
-
- '@types/prop-types@15.7.12':
- resolution: {integrity: sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q==}
-
- '@types/qs@6.9.14':
- resolution: {integrity: sha512-5khscbd3SwWMhFqylJBLQ0zIu7c1K6Vz0uBIt915BI3zV0q1nfjRQD3RqSBcPaO6PHEF4ov/t9y89fSiyThlPA==}
-
- '@types/range-parser@1.2.7':
- resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==}
-
- '@types/react-router-config@5.0.11':
- resolution: {integrity: sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==}
-
- '@types/react-router-dom@5.3.3':
- resolution: {integrity: sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==}
-
- '@types/react-router@5.1.20':
- resolution: {integrity: sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==}
-
- '@types/react@19.1.3':
- resolution: {integrity: sha512-dLWQ+Z0CkIvK1J8+wrDPwGxEYFA4RAyHoZPxHVGspYmFVnwGSNT24cGIhFJrtfRnWVuW8X7NO52gCXmhkVUWGQ==}
-
- '@types/retry@0.12.0':
- resolution: {integrity: sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==}
-
- '@types/sax@1.2.7':
- resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==}
-
- '@types/semver@7.5.8':
- resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==}
-
- '@types/send@0.17.4':
- resolution: {integrity: sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==}
-
- '@types/serve-index@1.9.4':
- resolution: {integrity: sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==}
-
- '@types/serve-static@1.15.7':
- resolution: {integrity: sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==}
-
- '@types/sockjs@0.3.36':
- resolution: {integrity: sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==}
-
- '@types/unist@2.0.10':
- resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
-
- '@types/unist@3.0.2':
- resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==}
-
- '@types/ws@8.5.10':
- resolution: {integrity: sha512-vmQSUcfalpIq0R9q7uTo2lXs6eGIpt9wtnLdMv9LVpIjCA/+ufZRozlVoVelIYixx1ugCBKDhn89vnsEGOCx9A==}
-
- '@types/yargs-parser@21.0.3':
- resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
-
- '@types/yargs@17.0.32':
- resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==}
-
- '@typescript-eslint/eslint-plugin@5.62.0':
- resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- '@typescript-eslint/parser': ^5.0.0
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- '@typescript-eslint/parser@5.62.0':
- resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- '@typescript-eslint/scope-manager@5.62.0':
- resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- '@typescript-eslint/type-utils@5.62.0':
- resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: '*'
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- '@typescript-eslint/types@5.62.0':
- resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- '@typescript-eslint/typescript-estree@5.62.0':
- resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- typescript: '*'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- '@typescript-eslint/utils@5.62.0':
- resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
-
- '@typescript-eslint/visitor-keys@5.62.0':
- resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- '@ungap/structured-clone@1.2.0':
- resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
-
- '@webassemblyjs/ast@1.12.1':
- resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==}
-
- '@webassemblyjs/ast@1.14.1':
- resolution: {integrity: sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==}
-
- '@webassemblyjs/floating-point-hex-parser@1.11.6':
- resolution: {integrity: sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==}
-
- '@webassemblyjs/floating-point-hex-parser@1.13.2':
- resolution: {integrity: sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==}
-
- '@webassemblyjs/helper-api-error@1.11.6':
- resolution: {integrity: sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==}
-
- '@webassemblyjs/helper-api-error@1.13.2':
- resolution: {integrity: sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==}
-
- '@webassemblyjs/helper-buffer@1.12.1':
- resolution: {integrity: sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==}
-
- '@webassemblyjs/helper-buffer@1.14.1':
- resolution: {integrity: sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==}
-
- '@webassemblyjs/helper-numbers@1.11.6':
- resolution: {integrity: sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==}
-
- '@webassemblyjs/helper-numbers@1.13.2':
- resolution: {integrity: sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==}
-
- '@webassemblyjs/helper-wasm-bytecode@1.11.6':
- resolution: {integrity: sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==}
-
- '@webassemblyjs/helper-wasm-bytecode@1.13.2':
- resolution: {integrity: sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==}
-
- '@webassemblyjs/helper-wasm-section@1.12.1':
- resolution: {integrity: sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==}
-
- '@webassemblyjs/helper-wasm-section@1.14.1':
- resolution: {integrity: sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==}
-
- '@webassemblyjs/ieee754@1.11.6':
- resolution: {integrity: sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==}
-
- '@webassemblyjs/ieee754@1.13.2':
- resolution: {integrity: sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==}
-
- '@webassemblyjs/leb128@1.11.6':
- resolution: {integrity: sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==}
-
- '@webassemblyjs/leb128@1.13.2':
- resolution: {integrity: sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==}
-
- '@webassemblyjs/utf8@1.11.6':
- resolution: {integrity: sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==}
-
- '@webassemblyjs/utf8@1.13.2':
- resolution: {integrity: sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==}
-
- '@webassemblyjs/wasm-edit@1.12.1':
- resolution: {integrity: sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==}
-
- '@webassemblyjs/wasm-edit@1.14.1':
- resolution: {integrity: sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==}
-
- '@webassemblyjs/wasm-gen@1.12.1':
- resolution: {integrity: sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==}
-
- '@webassemblyjs/wasm-gen@1.14.1':
- resolution: {integrity: sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==}
-
- '@webassemblyjs/wasm-opt@1.12.1':
- resolution: {integrity: sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==}
-
- '@webassemblyjs/wasm-opt@1.14.1':
- resolution: {integrity: sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==}
-
- '@webassemblyjs/wasm-parser@1.12.1':
- resolution: {integrity: sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==}
-
- '@webassemblyjs/wasm-parser@1.14.1':
- resolution: {integrity: sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==}
-
- '@webassemblyjs/wast-printer@1.12.1':
- resolution: {integrity: sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==}
-
- '@webassemblyjs/wast-printer@1.14.1':
- resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==}
-
- '@xtuc/ieee754@1.2.0':
- resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
-
- '@xtuc/long@4.2.2':
- resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==}
-
- '@yarnpkg/lockfile@1.1.0':
- resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
-
- accepts@1.3.8:
- resolution: {integrity: sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==}
- engines: {node: '>= 0.6'}
-
- acorn-import-assertions@1.9.0:
- resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==}
- deprecated: package has been renamed to acorn-import-attributes
- peerDependencies:
- acorn: ^8
-
- acorn-jsx@5.3.2:
- resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
- peerDependencies:
- acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
-
- acorn-walk@8.3.2:
- resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==}
- engines: {node: '>=0.4.0'}
-
- acorn@8.11.3:
- resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==}
- engines: {node: '>=0.4.0'}
- hasBin: true
-
- acorn@8.14.0:
- resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==}
- engines: {node: '>=0.4.0'}
- hasBin: true
-
- address@1.2.2:
- resolution: {integrity: sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==}
- engines: {node: '>= 10.0.0'}
-
- aggregate-error@3.1.0:
- resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==}
- engines: {node: '>=8'}
-
- ajv-formats@2.1.1:
- resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==}
- peerDependencies:
- ajv: ^8.0.0
- peerDependenciesMeta:
- ajv:
- optional: true
-
- ajv-keywords@3.5.2:
- resolution: {integrity: sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==}
- peerDependencies:
- ajv: ^6.9.1
-
- ajv-keywords@5.1.0:
- resolution: {integrity: sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==}
- peerDependencies:
- ajv: ^8.8.2
-
- ajv@6.12.6:
- resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
-
- ajv@8.12.0:
- resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==}
-
- algoliasearch-helper@3.22.6:
- resolution: {integrity: sha512-F2gSb43QHyvZmvH/2hxIjbk/uFdO2MguQYTFP7J+RowMW1csjIODMobEnpLI8nbLQuzZnGZdIxl5Bpy1k9+CFQ==}
- peerDependencies:
- algoliasearch: '>= 3.1 < 6'
-
- algoliasearch@5.19.0:
- resolution: {integrity: sha512-zrLtGhC63z3sVLDDKGW+SlCRN9eJHFTgdEmoAOpsVh6wgGL1GgTTDou7tpCBjevzgIvi3AIyDAQO3Xjbg5eqZg==}
- engines: {node: '>= 14.0.0'}
-
- ansi-align@3.0.1:
- resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==}
-
- ansi-escapes@4.3.2:
- resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
- engines: {node: '>=8'}
-
- ansi-html-community@0.0.8:
- resolution: {integrity: sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==}
- engines: {'0': node >= 0.8.0}
- hasBin: true
-
- ansi-regex@5.0.1:
- resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
- engines: {node: '>=8'}
-
- ansi-regex@6.0.1:
- resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==}
- engines: {node: '>=12'}
-
- ansi-styles@3.2.1:
- resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
- engines: {node: '>=4'}
-
- ansi-styles@4.3.0:
- resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
- engines: {node: '>=8'}
-
- ansi-styles@6.2.1:
- resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==}
- engines: {node: '>=12'}
-
- any-promise@1.3.0:
- resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==}
-
- anymatch@3.1.3:
- resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
- engines: {node: '>= 8'}
-
- arg@5.0.2:
- resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==}
-
- argparse@1.0.10:
- resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
-
- argparse@2.0.1:
- resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
-
- aria-hidden@1.2.4:
- resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==}
- engines: {node: '>=10'}
-
- array-flatten@1.1.1:
- resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
-
- array-union@2.1.0:
- resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
- engines: {node: '>=8'}
-
- astring@1.8.6:
- resolution: {integrity: sha512-ISvCdHdlTDlH5IpxQJIex7BWBywFWgjJSVdwst+/iQCoEYnyOaQ95+X1JGshuBjGp6nxKUy1jMgE3zPqN7fQdg==}
- hasBin: true
-
- at-least-node@1.0.0:
- resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
- engines: {node: '>= 4.0.0'}
-
- autoprefixer@10.4.19:
- resolution: {integrity: sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==}
- engines: {node: ^10 || ^12 || >=14}
- hasBin: true
- peerDependencies:
- postcss: ^8.1.0
-
- babel-loader@9.2.1:
- resolution: {integrity: sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==}
- engines: {node: '>= 14.15.0'}
- peerDependencies:
- '@babel/core': ^7.12.0
- webpack: '>=5'
-
- babel-plugin-dynamic-import-node@2.3.3:
- resolution: {integrity: sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==}
-
- babel-plugin-polyfill-corejs2@0.4.10:
- resolution: {integrity: sha512-rpIuu//y5OX6jVU+a5BCn1R5RSZYWAl2Nar76iwaOdycqb6JPxediskWFMMl7stfwNJR4b7eiQvh5fB5TEQJTQ==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- babel-plugin-polyfill-corejs3@0.10.4:
- resolution: {integrity: sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- babel-plugin-polyfill-corejs3@0.10.6:
- resolution: {integrity: sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- babel-plugin-polyfill-regenerator@0.6.1:
- resolution: {integrity: sha512-JfTApdE++cgcTWjsiCQlLyFBMbTUft9ja17saCc93lgV33h4tuCVj7tlvu//qpLwaG+3yEz7/KhahGrUMkVq9g==}
- peerDependencies:
- '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
-
- bail@2.0.2:
- resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
-
- balanced-match@1.0.2:
- resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
-
- base64-js@1.5.1:
- resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
-
- batch@0.6.1:
- resolution: {integrity: sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==}
-
- big.js@5.2.2:
- resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==}
-
- binary-extensions@2.3.0:
- resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
- engines: {node: '>=8'}
-
- body-parser@1.20.2:
- resolution: {integrity: sha512-ml9pReCu3M61kGlqoTm2umSXTlRTuGTx0bfYj+uIUKKYycG5NtSbeetV3faSU6R7ajOPw0g/J1PvK4qNy7s5bA==}
- engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
-
- bonjour-service@1.2.1:
- resolution: {integrity: sha512-oSzCS2zV14bh2kji6vNe7vrpJYCHGvcZnlffFQ1MEoX/WOeQ/teD8SYWKR942OI3INjq8OMNJlbPK5LLLUxFDw==}
-
- boolbase@1.0.0:
- resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
-
- boxen@6.2.1:
- resolution: {integrity: sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- boxen@7.1.1:
- resolution: {integrity: sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==}
- engines: {node: '>=14.16'}
-
- brace-expansion@1.1.11:
- resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
-
- brace-expansion@2.0.1:
- resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
-
- braces@3.0.2:
- resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
- engines: {node: '>=8'}
-
- braces@3.0.3:
- resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
- engines: {node: '>=8'}
-
- browserslist@4.23.0:
- resolution: {integrity: sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==}
- engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
- hasBin: true
-
- browserslist@4.24.4:
- resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==}
- engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
- hasBin: true
-
- buffer-from@1.1.2:
- resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
-
- buffer@6.0.3:
- resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
-
- bytes@3.0.0:
- resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==}
- engines: {node: '>= 0.8'}
-
- bytes@3.1.2:
- resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
- engines: {node: '>= 0.8'}
-
- cacheable-lookup@7.0.0:
- resolution: {integrity: sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==}
- engines: {node: '>=14.16'}
-
- cacheable-request@10.2.14:
- resolution: {integrity: sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==}
- engines: {node: '>=14.16'}
-
- call-bind@1.0.7:
- resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
- engines: {node: '>= 0.4'}
-
- callsites@3.1.0:
- resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
- engines: {node: '>=6'}
-
- camel-case@4.1.2:
- resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==}
-
- camelcase-css@2.0.1:
- resolution: {integrity: sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==}
- engines: {node: '>= 6'}
-
- camelcase@6.3.0:
- resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
- engines: {node: '>=10'}
-
- camelcase@7.0.1:
- resolution: {integrity: sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==}
- engines: {node: '>=14.16'}
-
- caniuse-api@3.0.0:
- resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==}
-
- caniuse-lite@1.0.30001717:
- resolution: {integrity: sha512-auPpttCq6BDEG8ZAuHJIplGw6GODhjw+/11e7IjpnYCxZcW/ONgPs0KVBJ0d1bY3e2+7PRe5RCLyP+PfwVgkYw==}
-
- ccount@2.0.1:
- resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
-
- chalk@2.4.2:
- resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
- engines: {node: '>=4'}
-
- chalk@4.1.2:
- resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
- engines: {node: '>=10'}
-
- chalk@5.3.0:
- resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
- engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
-
- char-regex@1.0.2:
- resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
- engines: {node: '>=10'}
-
- character-entities-html4@2.1.0:
- resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
-
- character-entities-legacy@3.0.0:
- resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
-
- character-entities@2.0.2:
- resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
-
- character-reference-invalid@2.0.1:
- resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==}
-
- cheerio-select@2.1.0:
- resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==}
-
- cheerio@1.0.0-rc.12:
- resolution: {integrity: sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==}
- engines: {node: '>= 6'}
-
- chokidar@3.6.0:
- resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
- engines: {node: '>= 8.10.0'}
-
- chrome-trace-event@1.0.3:
- resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==}
- engines: {node: '>=6.0'}
-
- ci-info@2.0.0:
- resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==}
-
- ci-info@3.9.0:
- resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
- engines: {node: '>=8'}
-
- clean-css@5.3.3:
- resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==}
- engines: {node: '>= 10.0'}
-
- clean-stack@2.2.0:
- resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==}
- engines: {node: '>=6'}
-
- cli-boxes@3.0.0:
- resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==}
- engines: {node: '>=10'}
-
- cli-table3@0.6.4:
- resolution: {integrity: sha512-Lm3L0p+/npIQWNIiyF/nAn7T5dnOwR3xNTHXYEBFBFVPXzCVNZ5lqEC/1eo/EVfpDsQ1I+TX4ORPQgp+UI0CRw==}
- engines: {node: 10.* || >= 12.*}
-
- clone-deep@4.0.1:
- resolution: {integrity: sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==}
- engines: {node: '>=6'}
-
- clsx@1.2.1:
- resolution: {integrity: sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==}
- engines: {node: '>=6'}
-
- clsx@2.1.0:
- resolution: {integrity: sha512-m3iNNWpd9rl3jvvcBnu70ylMdrXt8Vlq4HYadnU5fwcOtvkSQWPmj7amUcDT2qYI7risszBjI5AUIUox9D16pg==}
- engines: {node: '>=6'}
-
- collapse-white-space@2.1.0:
- resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==}
-
- color-convert@1.9.3:
- resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
-
- color-convert@2.0.1:
- resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
- engines: {node: '>=7.0.0'}
-
- color-name@1.1.3:
- resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
-
- color-name@1.1.4:
- resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
-
- colord@2.9.3:
- resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
-
- colorette@2.0.20:
- resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
-
- combine-promises@1.2.0:
- resolution: {integrity: sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==}
- engines: {node: '>=10'}
-
- comma-separated-tokens@2.0.3:
- resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
-
- commander@10.0.1:
- resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
- engines: {node: '>=14'}
-
- commander@2.20.3:
- resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
-
- commander@4.1.1:
- resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==}
- engines: {node: '>= 6'}
-
- commander@5.1.0:
- resolution: {integrity: sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==}
- engines: {node: '>= 6'}
-
- commander@7.2.0:
- resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==}
- engines: {node: '>= 10'}
-
- commander@8.3.0:
- resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
- engines: {node: '>= 12'}
-
- common-path-prefix@3.0.0:
- resolution: {integrity: sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==}
-
- compressible@2.0.18:
- resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==}
- engines: {node: '>= 0.6'}
-
- compression@1.7.4:
- resolution: {integrity: sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==}
- engines: {node: '>= 0.8.0'}
-
- concat-map@0.0.1:
- resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
-
- config-chain@1.1.13:
- resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==}
-
- configstore@6.0.0:
- resolution: {integrity: sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==}
- engines: {node: '>=12'}
-
- connect-history-api-fallback@2.0.0:
- resolution: {integrity: sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==}
- engines: {node: '>=0.8'}
-
- consola@3.4.0:
- resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==}
- engines: {node: ^14.18.0 || >=16.10.0}
-
- content-disposition@0.5.2:
- resolution: {integrity: sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==}
- engines: {node: '>= 0.6'}
-
- content-disposition@0.5.4:
- resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==}
- engines: {node: '>= 0.6'}
-
- content-type@1.0.5:
- resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
- engines: {node: '>= 0.6'}
-
- convert-source-map@2.0.0:
- resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
-
- cookie-signature@1.0.6:
- resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==}
-
- cookie@0.6.0:
- resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==}
- engines: {node: '>= 0.6'}
-
- copy-text-to-clipboard@3.2.0:
- resolution: {integrity: sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==}
- engines: {node: '>=12'}
-
- copy-webpack-plugin@11.0.0:
- resolution: {integrity: sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==}
- engines: {node: '>= 14.15.0'}
- peerDependencies:
- webpack: ^5.1.0
-
- core-js-compat@3.36.1:
- resolution: {integrity: sha512-Dk997v9ZCt3X/npqzyGdTlq6t7lDBhZwGvV94PKzDArjp7BTRm7WlDAXYd/OWdeFHO8OChQYRJNJvUCqCbrtKA==}
-
- core-js-compat@3.40.0:
- resolution: {integrity: sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==}
-
- core-js-pure@3.36.1:
- resolution: {integrity: sha512-NXCvHvSVYSrewP0L5OhltzXeWFJLo2AL2TYnj6iLV3Bw8mM62wAQMNgUCRI6EBu6hVVpbCxmOPlxh1Ikw2PfUA==}
-
- core-js@3.36.1:
- resolution: {integrity: sha512-BTvUrwxVBezj5SZ3f10ImnX2oRByMxql3EimVqMysepbC9EeMUOpLwdy6Eoili2x6E4kf+ZUB5k/+Jv55alPfA==}
-
- core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
-
- cosmiconfig@6.0.0:
- resolution: {integrity: sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==}
- engines: {node: '>=8'}
-
- cosmiconfig@8.3.6:
- resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
- engines: {node: '>=14'}
- peerDependencies:
- typescript: '>=4.9.5'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- cross-spawn@6.0.5:
- resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==}
- engines: {node: '>=4.8'}
-
- cross-spawn@7.0.3:
- resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
- engines: {node: '>= 8'}
-
- cross-spawn@7.0.6:
- resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
- engines: {node: '>= 8'}
-
- crypto-random-string@4.0.0:
- resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==}
- engines: {node: '>=12'}
-
- css-blank-pseudo@7.0.1:
- resolution: {integrity: sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- css-declaration-sorter@7.2.0:
- resolution: {integrity: sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==}
- engines: {node: ^14 || ^16 || >=18}
- peerDependencies:
- postcss: ^8.0.9
-
- css-has-pseudo@7.0.2:
- resolution: {integrity: sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- css-loader@6.11.0:
- resolution: {integrity: sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- '@rspack/core': 0.x || 1.x
- webpack: ^5.0.0
- peerDependenciesMeta:
- '@rspack/core':
- optional: true
- webpack:
- optional: true
-
- css-minimizer-webpack-plugin@5.0.1:
- resolution: {integrity: sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==}
- engines: {node: '>= 14.15.0'}
- peerDependencies:
- '@parcel/css': '*'
- '@swc/css': '*'
- clean-css: '*'
- csso: '*'
- esbuild: '*'
- lightningcss: '*'
- webpack: ^5.0.0
- peerDependenciesMeta:
- '@parcel/css':
- optional: true
- '@swc/css':
- optional: true
- clean-css:
- optional: true
- csso:
- optional: true
- esbuild:
- optional: true
- lightningcss:
- optional: true
-
- css-prefers-color-scheme@10.0.0:
- resolution: {integrity: sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- css-select@4.3.0:
- resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
-
- css-select@5.1.0:
- resolution: {integrity: sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==}
-
- css-tree@2.2.1:
- resolution: {integrity: sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
-
- css-tree@2.3.1:
- resolution: {integrity: sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0}
-
- css-what@6.1.0:
- resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==}
- engines: {node: '>= 6'}
-
- cssdb@8.2.3:
- resolution: {integrity: sha512-9BDG5XmJrJQQnJ51VFxXCAtpZ5ebDlAREmO8sxMOVU0aSxN/gocbctjIG5LMh3WBUq+xTlb/jw2LoljBEqraTA==}
-
- cssesc@3.0.0:
- resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
- engines: {node: '>=4'}
- hasBin: true
-
- cssnano-preset-advanced@6.1.2:
- resolution: {integrity: sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- cssnano-preset-default@6.1.2:
- resolution: {integrity: sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- cssnano-utils@4.0.2:
- resolution: {integrity: sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- cssnano@6.1.2:
- resolution: {integrity: sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- csso@5.0.5:
- resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==}
- engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'}
-
- csstype@3.1.3:
- resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
-
- debounce@1.2.1:
- resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
-
- debug@2.6.9:
- resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
-
- debug@4.3.4:
- resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
- engines: {node: '>=6.0'}
- peerDependencies:
- supports-color: '*'
- peerDependenciesMeta:
- supports-color:
- optional: true
-
- decode-named-character-reference@1.0.2:
- resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
-
- decompress-response@6.0.0:
- resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
- engines: {node: '>=10'}
-
- deep-extend@0.6.0:
- resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==}
- engines: {node: '>=4.0.0'}
-
- deep-is@0.1.4:
- resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
-
- deepmerge@4.3.1:
- resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
- engines: {node: '>=0.10.0'}
-
- default-gateway@6.0.3:
- resolution: {integrity: sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==}
- engines: {node: '>= 10'}
-
- defer-to-connect@2.0.1:
- resolution: {integrity: sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==}
- engines: {node: '>=10'}
-
- define-data-property@1.1.4:
- resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
- engines: {node: '>= 0.4'}
-
- define-lazy-prop@2.0.0:
- resolution: {integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==}
- engines: {node: '>=8'}
-
- define-properties@1.2.1:
- resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
- engines: {node: '>= 0.4'}
-
- del@6.1.1:
- resolution: {integrity: sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==}
- engines: {node: '>=10'}
-
- depd@1.1.2:
- resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==}
- engines: {node: '>= 0.6'}
-
- depd@2.0.0:
- resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==}
- engines: {node: '>= 0.8'}
-
- dequal@2.0.3:
- resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
- engines: {node: '>=6'}
-
- destroy@1.2.0:
- resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
- engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
-
- detect-node-es@1.1.0:
- resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
-
- detect-node@2.1.0:
- resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
-
- detect-port-alt@1.1.6:
- resolution: {integrity: sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==}
- engines: {node: '>= 4.2.1'}
- hasBin: true
-
- detect-port@1.5.1:
- resolution: {integrity: sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==}
- hasBin: true
-
- devlop@1.1.0:
- resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
-
- didyoumean@1.2.2:
- resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==}
-
- diff@5.2.0:
- resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==}
- engines: {node: '>=0.3.1'}
-
- dir-glob@3.0.1:
- resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
- engines: {node: '>=8'}
-
- dlv@1.1.3:
- resolution: {integrity: sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==}
-
- dns-packet@5.6.1:
- resolution: {integrity: sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==}
- engines: {node: '>=6'}
-
- doctrine@3.0.0:
- resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
- engines: {node: '>=6.0.0'}
-
- docusaurus-plugin-drawio@0.4.0:
- resolution: {integrity: sha512-7y3cgtwdQ3evWY/phq/iGJectDlRzpRrKzbcBeT79o+w+OStU0noTcTOmVd/oTiylu2OJXhQWF9z+4CoxTgAtA==}
-
- docusaurus-plugin-typedoc@0.18.0:
- resolution: {integrity: sha512-kurIUu8LhVIOPT88HoeBcu0/D2GMDdg0pUYaFlqeuXT9an6Wlgvuy0C22ZMYcJUcp/gA/Mw2XdUHubsLK2M4uA==}
- peerDependencies:
- typedoc: '>=0.23.0'
- typedoc-plugin-markdown: '>=3.13.0'
-
- dom-converter@0.2.0:
- resolution: {integrity: sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==}
-
- dom-serializer@1.4.1:
- resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
-
- dom-serializer@2.0.0:
- resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
-
- domelementtype@2.3.0:
- resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
-
- domhandler@4.3.1:
- resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
- engines: {node: '>= 4'}
-
- domhandler@5.0.3:
- resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
- engines: {node: '>= 4'}
-
- domutils@2.8.0:
- resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
-
- domutils@3.1.0:
- resolution: {integrity: sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==}
-
- dot-case@3.0.4:
- resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
-
- dot-prop@6.0.1:
- resolution: {integrity: sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==}
- engines: {node: '>=10'}
-
- dotenv@16.4.5:
- resolution: {integrity: sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg==}
- engines: {node: '>=12'}
-
- duplexer@0.1.2:
- resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
-
- eastasianwidth@0.2.0:
- resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
-
- ee-first@1.1.1:
- resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
-
- electron-to-chromium@1.4.734:
- resolution: {integrity: sha512-pYfGUc+ll8AOzLbLC0lfgwkvCZIV+sKGuFFsSNuF3K3ujrmem8jIjg/t6DNq0J7biTSS1hCt/Hts0nmA3ZyprQ==}
-
- electron-to-chromium@1.5.80:
- resolution: {integrity: sha512-LTrKpW0AqIuHwmlVNV+cjFYTnXtM9K37OGhpe0ZI10ScPSxqVSryZHIY3WnCS5NSYbBODRTZyhRMS2h5FAEqAw==}
-
- emoji-regex@8.0.0:
- resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
-
- emoji-regex@9.2.2:
- resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
-
- emojilib@2.4.0:
- resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==}
-
- emojis-list@3.0.0:
- resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
- engines: {node: '>= 4'}
-
- emoticon@4.0.1:
- resolution: {integrity: sha512-dqx7eA9YaqyvYtUhJwT4rC1HIp82j5ybS1/vQ42ur+jBe17dJMwZE4+gvL1XadSFfxaPFFGt3Xsw+Y8akThDlw==}
-
- encodeurl@1.0.2:
- resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
- engines: {node: '>= 0.8'}
-
- enhanced-resolve@5.16.0:
- resolution: {integrity: sha512-O+QWCviPNSSLAD9Ucn8Awv+poAkqn3T1XY5/N7kR7rQO9yfSGWkYZDwpJ+iKF7B8rxaQKWngSqACpgzeapSyoA==}
- engines: {node: '>=10.13.0'}
-
- enhanced-resolve@5.18.0:
- resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==}
- engines: {node: '>=10.13.0'}
-
- entities@2.2.0:
- resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
-
- entities@4.5.0:
- resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
- engines: {node: '>=0.12'}
-
- error-ex@1.3.2:
- resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
-
- es-define-property@1.0.0:
- resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
- engines: {node: '>= 0.4'}
-
- es-errors@1.3.0:
- resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
- engines: {node: '>= 0.4'}
-
- es-module-lexer@1.5.0:
- resolution: {integrity: sha512-pqrTKmwEIgafsYZAGw9kszYzmagcE/n4dbgwGWLEXg7J4QFJVQRBld8j3Q3GNez79jzxZshq0bcT962QHOghjw==}
-
- escalade@3.1.2:
- resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
- engines: {node: '>=6'}
-
- escalade@3.2.0:
- resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
- engines: {node: '>=6'}
-
- escape-goat@4.0.0:
- resolution: {integrity: sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==}
- engines: {node: '>=12'}
-
- escape-html@1.0.3:
- resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
-
- escape-string-regexp@1.0.5:
- resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
- engines: {node: '>=0.8.0'}
-
- escape-string-regexp@4.0.0:
- resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
- engines: {node: '>=10'}
-
- escape-string-regexp@5.0.0:
- resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==}
- engines: {node: '>=12'}
-
- eslint-config-prettier@8.10.0:
- resolution: {integrity: sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==}
- hasBin: true
- peerDependencies:
- eslint: '>=7.0.0'
-
- eslint-plugin-prettier@4.2.1:
- resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==}
- engines: {node: '>=12.0.0'}
- peerDependencies:
- eslint: '>=7.28.0'
- eslint-config-prettier: '*'
- prettier: '>=2.0.0'
- peerDependenciesMeta:
- eslint-config-prettier:
- optional: true
-
- eslint-scope@5.1.1:
- resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
- engines: {node: '>=8.0.0'}
-
- eslint-scope@7.2.2:
- resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- eslint-visitor-keys@3.4.3:
- resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- eslint@8.57.0:
- resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
- hasBin: true
-
- espree@9.6.1:
- resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
- engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
-
- esprima@4.0.1:
- resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
- engines: {node: '>=4'}
- hasBin: true
-
- esquery@1.5.0:
- resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
- engines: {node: '>=0.10'}
-
- esrecurse@4.3.0:
- resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
- engines: {node: '>=4.0'}
-
- estraverse@4.3.0:
- resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
- engines: {node: '>=4.0'}
-
- estraverse@5.3.0:
- resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
- engines: {node: '>=4.0'}
-
- estree-util-attach-comments@3.0.0:
- resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==}
-
- estree-util-build-jsx@3.0.1:
- resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==}
-
- estree-util-is-identifier-name@3.0.0:
- resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==}
-
- estree-util-to-js@2.0.0:
- resolution: {integrity: sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==}
-
- estree-util-value-to-estree@3.1.1:
- resolution: {integrity: sha512-5mvUrF2suuv5f5cGDnDphIy4/gW86z82kl5qG6mM9z04SEQI4FB5Apmaw/TGEf3l55nLtMs5s51dmhUzvAHQCA==}
-
- estree-util-visit@2.0.0:
- resolution: {integrity: sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==}
-
- estree-walker@3.0.3:
- resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
-
- esutils@2.0.3:
- resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
- engines: {node: '>=0.10.0'}
-
- eta@2.2.0:
- resolution: {integrity: sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==}
- engines: {node: '>=6.0.0'}
-
- etag@1.8.1:
- resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
- engines: {node: '>= 0.6'}
-
- eval@0.1.8:
- resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==}
- engines: {node: '>= 0.8'}
-
- eventemitter3@4.0.7:
- resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
-
- events@3.3.0:
- resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
- engines: {node: '>=0.8.x'}
-
- execa@5.1.1:
- resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
- engines: {node: '>=10'}
-
- express@4.19.2:
- resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==}
- engines: {node: '>= 0.10.0'}
-
- extend-shallow@2.0.1:
- resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==}
- engines: {node: '>=0.10.0'}
-
- extend@3.0.2:
- resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
-
- fast-deep-equal@3.1.3:
- resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
-
- fast-diff@1.3.0:
- resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
-
- fast-glob@3.3.2:
- resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
- engines: {node: '>=8.6.0'}
-
- fast-json-stable-stringify@2.1.0:
- resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
-
- fast-levenshtein@2.0.6:
- resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
-
- fastq@1.17.1:
- resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==}
-
- fault@2.0.1:
- resolution: {integrity: sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==}
-
- faye-websocket@0.11.4:
- resolution: {integrity: sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==}
- engines: {node: '>=0.8.0'}
-
- feed@4.2.2:
- resolution: {integrity: sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==}
- engines: {node: '>=0.4.0'}
-
- figures@3.2.0:
- resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==}
- engines: {node: '>=8'}
-
- file-entry-cache@6.0.1:
- resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
- engines: {node: ^10.12.0 || >=12.0.0}
-
- file-loader@6.2.0:
- resolution: {integrity: sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- webpack: ^4.0.0 || ^5.0.0
-
- filesize@8.0.7:
- resolution: {integrity: sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==}
- engines: {node: '>= 0.4.0'}
-
- fill-range@7.0.1:
- resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
- engines: {node: '>=8'}
-
- fill-range@7.1.1:
- resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
- engines: {node: '>=8'}
-
- finalhandler@1.2.0:
- resolution: {integrity: sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==}
- engines: {node: '>= 0.8'}
-
- find-cache-dir@4.0.0:
- resolution: {integrity: sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==}
- engines: {node: '>=14.16'}
-
- find-up@3.0.0:
- resolution: {integrity: sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==}
- engines: {node: '>=6'}
-
- find-up@5.0.0:
- resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
- engines: {node: '>=10'}
-
- find-up@6.3.0:
- resolution: {integrity: sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- find-yarn-workspace-root@2.0.0:
- resolution: {integrity: sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==}
-
- flat-cache@3.2.0:
- resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
- engines: {node: ^10.12.0 || >=12.0.0}
-
- flat@5.0.2:
- resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
- hasBin: true
-
- flatted@3.3.1:
- resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
-
- follow-redirects@1.15.6:
- resolution: {integrity: sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==}
- engines: {node: '>=4.0'}
- peerDependencies:
- debug: '*'
- peerDependenciesMeta:
- debug:
- optional: true
-
- foreground-child@3.3.1:
- resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
- engines: {node: '>=14'}
-
- fork-ts-checker-webpack-plugin@6.5.3:
- resolution: {integrity: sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==}
- engines: {node: '>=10', yarn: '>=1.0.0'}
- peerDependencies:
- eslint: '>= 6'
- typescript: '>= 2.7'
- vue-template-compiler: '*'
- webpack: '>= 4'
- peerDependenciesMeta:
- eslint:
- optional: true
- vue-template-compiler:
- optional: true
-
- form-data-encoder@2.1.4:
- resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==}
- engines: {node: '>= 14.17'}
-
- format@0.2.2:
- resolution: {integrity: sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==}
- engines: {node: '>=0.4.x'}
-
- forwarded@0.2.0:
- resolution: {integrity: sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==}
- engines: {node: '>= 0.6'}
-
- fraction.js@4.3.7:
- resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==}
-
- fresh@0.5.2:
- resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==}
- engines: {node: '>= 0.6'}
-
- fs-extra@11.2.0:
- resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
- engines: {node: '>=14.14'}
-
- fs-extra@9.1.0:
- resolution: {integrity: sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==}
- engines: {node: '>=10'}
-
- fs-monkey@1.0.5:
- resolution: {integrity: sha512-8uMbBjrhzW76TYgEV27Y5E//W2f/lTFmx78P2w19FZSxarhI/798APGQyuGCwmkNxgwGRhrLfvWyLBvNtuOmew==}
-
- fs.realpath@1.0.0:
- resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
-
- fsevents@2.3.3:
- resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
- engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
- os: [darwin]
-
- function-bind@1.1.2:
- resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
-
- gensync@1.0.0-beta.2:
- resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
- engines: {node: '>=6.9.0'}
-
- get-intrinsic@1.2.4:
- resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
- engines: {node: '>= 0.4'}
-
- get-nonce@1.0.1:
- resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
- engines: {node: '>=6'}
-
- get-own-enumerable-property-symbols@3.0.2:
- resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==}
-
- get-stream@6.0.1:
- resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
- engines: {node: '>=10'}
-
- github-slugger@1.5.0:
- resolution: {integrity: sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==}
-
- glob-parent@5.1.2:
- resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
- engines: {node: '>= 6'}
-
- glob-parent@6.0.2:
- resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
- engines: {node: '>=10.13.0'}
-
- glob-to-regexp@0.4.1:
- resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
-
- glob@10.4.5:
- resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
- hasBin: true
-
- glob@7.2.3:
- resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
-
- global-dirs@3.0.1:
- resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==}
- engines: {node: '>=10'}
-
- global-modules@2.0.0:
- resolution: {integrity: sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==}
- engines: {node: '>=6'}
-
- global-prefix@3.0.0:
- resolution: {integrity: sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==}
- engines: {node: '>=6'}
-
- globals@11.12.0:
- resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
- engines: {node: '>=4'}
-
- globals@13.24.0:
- resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
- engines: {node: '>=8'}
-
- globby@11.1.0:
- resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
- engines: {node: '>=10'}
-
- globby@13.2.2:
- resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- gopd@1.0.1:
- resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
-
- got@12.6.1:
- resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==}
- engines: {node: '>=14.16'}
-
- graceful-fs@4.2.10:
- resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
-
- graceful-fs@4.2.11:
- resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
-
- graphemer@1.4.0:
- resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
-
- gray-matter@4.0.3:
- resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
- engines: {node: '>=6.0'}
-
- gzip-size@6.0.0:
- resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==}
- engines: {node: '>=10'}
-
- handle-thing@2.0.1:
- resolution: {integrity: sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==}
-
- has-flag@3.0.0:
- resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
- engines: {node: '>=4'}
-
- has-flag@4.0.0:
- resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
- engines: {node: '>=8'}
-
- has-property-descriptors@1.0.2:
- resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
-
- has-proto@1.0.3:
- resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
- engines: {node: '>= 0.4'}
-
- has-symbols@1.0.3:
- resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
- engines: {node: '>= 0.4'}
-
- has-yarn@3.0.0:
- resolution: {integrity: sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- hasown@2.0.2:
- resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
- engines: {node: '>= 0.4'}
-
- hast-util-from-dom@5.0.0:
- resolution: {integrity: sha512-d6235voAp/XR3Hh5uy7aGLbM3S4KamdW0WEgOaU1YoewnuYw4HXb5eRtv9g65m/RFGEfUY1Mw4UqCc5Y8L4Stg==}
-
- hast-util-from-html-isomorphic@2.0.0:
- resolution: {integrity: sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==}
-
- hast-util-from-html@2.0.1:
- resolution: {integrity: sha512-RXQBLMl9kjKVNkJTIO6bZyb2n+cUH8LFaSSzo82jiLT6Tfc+Pt7VQCS+/h3YwG4jaNE2TA2sdJisGWR+aJrp0g==}
-
- hast-util-from-parse5@8.0.1:
- resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==}
-
- hast-util-is-element@1.1.0:
- resolution: {integrity: sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==}
-
- hast-util-is-element@3.0.0:
- resolution: {integrity: sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==}
-
- hast-util-parse-selector@4.0.0:
- resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
-
- hast-util-raw@9.0.2:
- resolution: {integrity: sha512-PldBy71wO9Uq1kyaMch9AHIghtQvIwxBUkv823pKmkTM3oV1JxtsTNYdevMxvUHqcnOAuO65JKU2+0NOxc2ksA==}
-
- hast-util-to-estree@3.1.0:
- resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==}
-
- hast-util-to-jsx-runtime@2.3.0:
- resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==}
-
- hast-util-to-parse5@8.0.0:
- resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
-
- hast-util-to-text@4.0.1:
- resolution: {integrity: sha512-RHL7Vo2n06ZocCFWqmbyhZ1pCYX/mSKdywt9YD5U6Hquu5syV+dImCXFKLFt02JoK5QxkQFS0PoVdFdPXuPffQ==}
-
- hast-util-whitespace@2.0.1:
- resolution: {integrity: sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==}
-
- hast-util-whitespace@3.0.0:
- resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
-
- hastscript@8.0.0:
- resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==}
-
- he@1.2.0:
- resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
- hasBin: true
-
- history@4.10.1:
- resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==}
-
- hoist-non-react-statics@3.3.2:
- resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
-
- hpack.js@2.1.6:
- resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==}
-
- html-entities@2.5.2:
- resolution: {integrity: sha512-K//PSRMQk4FZ78Kyau+mZurHn3FH0Vwr+H36eE0rPbeYkRRi9YxceYPhuN60UwWorxyKHhqoAJl2OFKa4BVtaA==}
-
- html-escaper@2.0.2:
- resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
-
- html-minifier-terser@6.1.0:
- resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==}
- engines: {node: '>=12'}
- hasBin: true
-
- html-minifier-terser@7.2.0:
- resolution: {integrity: sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==}
- engines: {node: ^14.13.1 || >=16.0.0}
- hasBin: true
-
- html-tags@3.3.1:
- resolution: {integrity: sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==}
- engines: {node: '>=8'}
-
- html-void-elements@3.0.0:
- resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
-
- html-webpack-plugin@5.6.0:
- resolution: {integrity: sha512-iwaY4wzbe48AfKLZ/Cc8k0L+FKG6oSNRaZ8x5A/T/IVDGyXcbHncM9TdDa93wn0FsSm82FhTKW7f3vS61thXAw==}
- engines: {node: '>=10.13.0'}
- peerDependencies:
- '@rspack/core': 0.x || 1.x
- webpack: ^5.20.0
- peerDependenciesMeta:
- '@rspack/core':
- optional: true
- webpack:
- optional: true
-
- htmlparser2@6.1.0:
- resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==}
-
- htmlparser2@8.0.2:
- resolution: {integrity: sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==}
-
- http-cache-semantics@4.1.1:
- resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
-
- http-deceiver@1.2.7:
- resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==}
-
- http-errors@1.6.3:
- resolution: {integrity: sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==}
- engines: {node: '>= 0.6'}
-
- http-errors@2.0.0:
- resolution: {integrity: sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==}
- engines: {node: '>= 0.8'}
-
- http-parser-js@0.5.8:
- resolution: {integrity: sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==}
-
- http-proxy-middleware@2.0.6:
- resolution: {integrity: sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==}
- engines: {node: '>=12.0.0'}
- peerDependencies:
- '@types/express': ^4.17.13
- peerDependenciesMeta:
- '@types/express':
- optional: true
-
- http-proxy@1.18.1:
- resolution: {integrity: sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==}
- engines: {node: '>=8.0.0'}
-
- http2-wrapper@2.2.1:
- resolution: {integrity: sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==}
- engines: {node: '>=10.19.0'}
-
- human-signals@2.1.0:
- resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
- engines: {node: '>=10.17.0'}
-
- iconv-lite@0.4.24:
- resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
- engines: {node: '>=0.10.0'}
-
- icss-utils@5.1.0:
- resolution: {integrity: sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
-
- ieee754@1.2.1:
- resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
-
- ignore@5.3.1:
- resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==}
- engines: {node: '>= 4'}
-
- image-size@1.1.1:
- resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==}
- engines: {node: '>=16.x'}
- hasBin: true
-
- immer@9.0.21:
- resolution: {integrity: sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==}
-
- import-fresh@3.3.0:
- resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
- engines: {node: '>=6'}
-
- import-lazy@4.0.0:
- resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==}
- engines: {node: '>=8'}
-
- imurmurhash@0.1.4:
- resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
- engines: {node: '>=0.8.19'}
-
- indent-string@4.0.0:
- resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
- engines: {node: '>=8'}
-
- infima@0.2.0-alpha.45:
- resolution: {integrity: sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==}
- engines: {node: '>=12'}
-
- inflight@1.0.6:
- resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
-
- inherits@2.0.3:
- resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==}
-
- inherits@2.0.4:
- resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
-
- ini@1.3.8:
- resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
-
- ini@2.0.0:
- resolution: {integrity: sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==}
- engines: {node: '>=10'}
-
- inline-style-parser@0.1.1:
- resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==}
-
- inline-style-parser@0.2.3:
- resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==}
-
- interpret@1.4.0:
- resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==}
- engines: {node: '>= 0.10'}
-
- invariant@2.2.4:
- resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==}
-
- ipaddr.js@1.9.1:
- resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
- engines: {node: '>= 0.10'}
-
- ipaddr.js@2.1.0:
- resolution: {integrity: sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==}
- engines: {node: '>= 10'}
-
- is-alphabetical@2.0.1:
- resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==}
-
- is-alphanumerical@2.0.1:
- resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
-
- is-arrayish@0.2.1:
- resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
-
- is-binary-path@2.1.0:
- resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
- engines: {node: '>=8'}
-
- is-buffer@2.0.5:
- resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==}
- engines: {node: '>=4'}
-
- is-ci@2.0.0:
- resolution: {integrity: sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==}
- hasBin: true
-
- is-ci@3.0.1:
- resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
- hasBin: true
-
- is-core-module@2.13.1:
- resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
-
- is-decimal@2.0.1:
- resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
-
- is-docker@2.2.1:
- resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
- engines: {node: '>=8'}
- hasBin: true
-
- is-extendable@0.1.1:
- resolution: {integrity: sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==}
- engines: {node: '>=0.10.0'}
-
- is-extglob@2.1.1:
- resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
- engines: {node: '>=0.10.0'}
-
- is-fullwidth-code-point@3.0.0:
- resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
- engines: {node: '>=8'}
-
- is-glob@4.0.3:
- resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
- engines: {node: '>=0.10.0'}
-
- is-hexadecimal@2.0.1:
- resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
-
- is-installed-globally@0.4.0:
- resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==}
- engines: {node: '>=10'}
-
- is-npm@6.0.0:
- resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- is-number@7.0.0:
- resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
- engines: {node: '>=0.12.0'}
-
- is-obj@1.0.1:
- resolution: {integrity: sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==}
- engines: {node: '>=0.10.0'}
-
- is-obj@2.0.0:
- resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==}
- engines: {node: '>=8'}
-
- is-path-cwd@2.2.0:
- resolution: {integrity: sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==}
- engines: {node: '>=6'}
-
- is-path-inside@3.0.3:
- resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
- engines: {node: '>=8'}
-
- is-plain-obj@3.0.0:
- resolution: {integrity: sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==}
- engines: {node: '>=10'}
-
- is-plain-obj@4.1.0:
- resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
- engines: {node: '>=12'}
-
- is-plain-object@2.0.4:
- resolution: {integrity: sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==}
- engines: {node: '>=0.10.0'}
-
- is-reference@3.0.2:
- resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==}
-
- is-regexp@1.0.0:
- resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
- engines: {node: '>=0.10.0'}
-
- is-root@2.1.0:
- resolution: {integrity: sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==}
- engines: {node: '>=6'}
-
- is-stream@2.0.1:
- resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
- engines: {node: '>=8'}
-
- is-typedarray@1.0.0:
- resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
-
- is-wsl@2.2.0:
- resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
- engines: {node: '>=8'}
-
- is-yarn-global@0.4.1:
- resolution: {integrity: sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==}
- engines: {node: '>=12'}
-
- isarray@0.0.1:
- resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==}
-
- isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
-
- isexe@2.0.0:
- resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
-
- isobject@3.0.1:
- resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==}
- engines: {node: '>=0.10.0'}
-
- jackspeak@3.4.3:
- resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
-
- jest-util@29.7.0:
- resolution: {integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- jest-worker@27.5.1:
- resolution: {integrity: sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==}
- engines: {node: '>= 10.13.0'}
-
- jest-worker@29.7.0:
- resolution: {integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==}
- engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
-
- jiti@1.21.0:
- resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
- hasBin: true
-
- jiti@1.21.7:
- resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==}
- hasBin: true
-
- joi@17.12.3:
- resolution: {integrity: sha512-2RRziagf555owrm9IRVtdKynOBeITiDpuZqIpgwqXShPncPKNiRQoiGsl/T8SQdq+8ugRzH2LqY67irr2y/d+g==}
-
- js-tokens@4.0.0:
- resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
-
- js-yaml@3.14.1:
- resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
- hasBin: true
-
- js-yaml@4.1.0:
- resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
- hasBin: true
-
- jsesc@0.5.0:
- resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
- hasBin: true
-
- jsesc@2.5.2:
- resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
- engines: {node: '>=4'}
- hasBin: true
-
- jsesc@3.0.2:
- resolution: {integrity: sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==}
- engines: {node: '>=6'}
- hasBin: true
-
- jsesc@3.1.0:
- resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
- engines: {node: '>=6'}
- hasBin: true
-
- json-buffer@3.0.1:
- resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
-
- json-parse-even-better-errors@2.3.1:
- resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
-
- json-schema-traverse@0.4.1:
- resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
-
- json-schema-traverse@1.0.0:
- resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==}
-
- json-stable-stringify-without-jsonify@1.0.1:
- resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
-
- json5@2.2.3:
- resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
- engines: {node: '>=6'}
- hasBin: true
-
- jsonfile@6.1.0:
- resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
-
- katex@0.16.10:
- resolution: {integrity: sha512-ZiqaC04tp2O5utMsl2TEZTXxa6WSC4yo0fv5ML++D3QZv/vx2Mct0mTlRx3O+uUkjfuAgOkzsCmq5MiUEsDDdA==}
- hasBin: true
-
- keyv@4.5.4:
- resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
-
- kind-of@6.0.3:
- resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==}
- engines: {node: '>=0.10.0'}
-
- klaw-sync@6.0.0:
- resolution: {integrity: sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==}
-
- kleur@3.0.3:
- resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
- engines: {node: '>=6'}
-
- kleur@4.1.5:
- resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==}
- engines: {node: '>=6'}
-
- latest-version@7.0.0:
- resolution: {integrity: sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==}
- engines: {node: '>=14.16'}
-
- launch-editor@2.6.1:
- resolution: {integrity: sha512-eB/uXmFVpY4zezmGp5XtU21kwo7GBbKB+EQ+UZeWtGb9yAM5xt/Evk+lYH3eRNAtId+ej4u7TYPFZ07w4s7rRw==}
-
- leven@3.1.0:
- resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
- engines: {node: '>=6'}
-
- levn@0.4.1:
- resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
- engines: {node: '>= 0.8.0'}
-
- lilconfig@3.1.1:
- resolution: {integrity: sha512-O18pf7nyvHTckunPWCV1XUNXU1piu01y2b7ATJ0ppkUkk8ocqVWBrYjJBCwHDjD/ZWcfyrA0P4gKhzWGi5EINQ==}
- engines: {node: '>=14'}
-
- lilconfig@3.1.3:
- resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
- engines: {node: '>=14'}
-
- lines-and-columns@1.2.4:
- resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
-
- linkify-it@5.0.0:
- resolution: {integrity: sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==}
-
- loader-runner@4.3.0:
- resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==}
- engines: {node: '>=6.11.5'}
-
- loader-utils@2.0.4:
- resolution: {integrity: sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==}
- engines: {node: '>=8.9.0'}
-
- loader-utils@3.2.1:
- resolution: {integrity: sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==}
- engines: {node: '>= 12.13.0'}
-
- locate-path@3.0.0:
- resolution: {integrity: sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==}
- engines: {node: '>=6'}
-
- locate-path@6.0.0:
- resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
- engines: {node: '>=10'}
-
- locate-path@7.2.0:
- resolution: {integrity: sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- lodash.debounce@4.0.8:
- resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
-
- lodash.memoize@4.1.2:
- resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==}
-
- lodash.merge@4.6.2:
- resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
-
- lodash.uniq@4.5.0:
- resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==}
-
- lodash@4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
-
- longest-streak@3.1.0:
- resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
-
- loose-envify@1.4.0:
- resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
- hasBin: true
-
- lower-case@2.0.2:
- resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
-
- lowercase-keys@3.0.0:
- resolution: {integrity: sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- lru-cache@10.4.3:
- resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
-
- lru-cache@5.1.1:
- resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
-
- lru-cache@6.0.0:
- resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
- engines: {node: '>=10'}
-
- lunr@2.3.9:
- resolution: {integrity: sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==}
-
- markdown-extensions@2.0.0:
- resolution: {integrity: sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==}
- engines: {node: '>=16'}
-
- markdown-it@14.1.0:
- resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==}
- hasBin: true
-
- markdown-table@2.0.0:
- resolution: {integrity: sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==}
-
- markdown-table@3.0.3:
- resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
-
- mdast-util-definitions@5.1.2:
- resolution: {integrity: sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==}
-
- mdast-util-directive@3.0.0:
- resolution: {integrity: sha512-JUpYOqKI4mM3sZcNxmF/ox04XYFFkNwr0CFlrQIkCwbvH0xzMCqkMqAde9wRd80VAhaUrwFwKm2nxretdT1h7Q==}
-
- mdast-util-find-and-replace@3.0.1:
- resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
-
- mdast-util-from-markdown@1.3.1:
- resolution: {integrity: sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==}
-
- mdast-util-from-markdown@2.0.0:
- resolution: {integrity: sha512-n7MTOr/z+8NAX/wmhhDji8O3bRvPTV/U0oTCaZJkjhPSKTPhS3xufVhKGF8s1pJ7Ox4QgoIU7KHseh09S+9rTA==}
-
- mdast-util-frontmatter@2.0.1:
- resolution: {integrity: sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==}
-
- mdast-util-gfm-autolink-literal@2.0.0:
- resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==}
-
- mdast-util-gfm-footnote@2.0.0:
- resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==}
-
- mdast-util-gfm-strikethrough@2.0.0:
- resolution: {integrity: sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==}
-
- mdast-util-gfm-table@2.0.0:
- resolution: {integrity: sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==}
-
- mdast-util-gfm-task-list-item@2.0.0:
- resolution: {integrity: sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==}
-
- mdast-util-gfm@3.0.0:
- resolution: {integrity: sha512-dgQEX5Amaq+DuUqf26jJqSK9qgixgd6rYDHAv4aTBuA92cTknZlKpPfa86Z/s8Dj8xsAQpFfBmPUHWJBWqS4Bw==}
-
- mdast-util-math@3.0.0:
- resolution: {integrity: sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==}
-
- mdast-util-mdx-expression@2.0.0:
- resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==}
-
- mdast-util-mdx-jsx@3.1.2:
- resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==}
-
- mdast-util-mdx@3.0.0:
- resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==}
-
- mdast-util-mdxjs-esm@2.0.1:
- resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
-
- mdast-util-phrasing@4.1.0:
- resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
-
- mdast-util-to-hast@12.3.0:
- resolution: {integrity: sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==}
-
- mdast-util-to-hast@13.1.0:
- resolution: {integrity: sha512-/e2l/6+OdGp/FB+ctrJ9Avz71AN/GRH3oi/3KAx/kMnoUsD6q0woXlDT8lLEeViVKE7oZxE7RXzvO3T8kF2/sA==}
-
- mdast-util-to-markdown@2.1.0:
- resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
-
- mdast-util-to-string@3.2.0:
- resolution: {integrity: sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==}
-
- mdast-util-to-string@4.0.0:
- resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
-
- mdn-data@2.0.28:
- resolution: {integrity: sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==}
-
- mdn-data@2.0.30:
- resolution: {integrity: sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==}
-
- mdurl@2.0.0:
- resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==}
-
- media-typer@0.3.0:
- resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
- engines: {node: '>= 0.6'}
-
- memfs@3.5.3:
- resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==}
- engines: {node: '>= 4.0.0'}
-
- merge-descriptors@1.0.1:
- resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==}
-
- merge-stream@2.0.0:
- resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
-
- merge2@1.4.1:
- resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
- engines: {node: '>= 8'}
-
- methods@1.1.2:
- resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
- engines: {node: '>= 0.6'}
-
- micromark-core-commonmark@1.1.0:
- resolution: {integrity: sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==}
-
- micromark-core-commonmark@2.0.0:
- resolution: {integrity: sha512-jThOz/pVmAYUtkroV3D5c1osFXAMv9e0ypGDOIZuCeAe91/sD6BoE2Sjzt30yuXtwOYUmySOhMas/PVyh02itA==}
-
- micromark-extension-directive@3.0.0:
- resolution: {integrity: sha512-61OI07qpQrERc+0wEysLHMvoiO3s2R56x5u7glHq2Yqq6EHbH4dW25G9GfDdGCDYqA21KE6DWgNSzxSwHc2hSg==}
-
- micromark-extension-frontmatter@2.0.0:
- resolution: {integrity: sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==}
-
- micromark-extension-gfm-autolink-literal@2.0.0:
- resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==}
-
- micromark-extension-gfm-footnote@2.0.0:
- resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==}
-
- micromark-extension-gfm-strikethrough@2.0.0:
- resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==}
-
- micromark-extension-gfm-table@2.0.0:
- resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==}
-
- micromark-extension-gfm-tagfilter@2.0.0:
- resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
-
- micromark-extension-gfm-task-list-item@2.0.1:
- resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==}
-
- micromark-extension-gfm@3.0.0:
- resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
-
- micromark-extension-math@3.0.0:
- resolution: {integrity: sha512-iJ2Q28vBoEovLN5o3GO12CpqorQRYDPT+p4zW50tGwTfJB+iv/VnB6Ini+gqa24K97DwptMBBIvVX6Bjk49oyQ==}
-
- micromark-extension-mdx-expression@3.0.0:
- resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==}
-
- micromark-extension-mdx-jsx@3.0.0:
- resolution: {integrity: sha512-uvhhss8OGuzR4/N17L1JwvmJIpPhAd8oByMawEKx6NVdBCbesjH4t+vjEp3ZXft9DwvlKSD07fCeI44/N0Vf2w==}
-
- micromark-extension-mdx-md@2.0.0:
- resolution: {integrity: sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==}
-
- micromark-extension-mdxjs-esm@3.0.0:
- resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==}
-
- micromark-extension-mdxjs@3.0.0:
- resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==}
-
- micromark-factory-destination@1.1.0:
- resolution: {integrity: sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==}
-
- micromark-factory-destination@2.0.0:
- resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
-
- micromark-factory-label@1.1.0:
- resolution: {integrity: sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==}
-
- micromark-factory-label@2.0.0:
- resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
-
- micromark-factory-mdx-expression@2.0.1:
- resolution: {integrity: sha512-F0ccWIUHRLRrYp5TC9ZYXmZo+p2AM13ggbsW4T0b5CRKP8KHVRB8t4pwtBgTxtjRmwrK0Irwm7vs2JOZabHZfg==}
-
- micromark-factory-space@1.1.0:
- resolution: {integrity: sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==}
-
- micromark-factory-space@2.0.0:
- resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
-
- micromark-factory-title@1.1.0:
- resolution: {integrity: sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==}
-
- micromark-factory-title@2.0.0:
- resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
-
- micromark-factory-whitespace@1.1.0:
- resolution: {integrity: sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==}
-
- micromark-factory-whitespace@2.0.0:
- resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
-
- micromark-util-character@1.2.0:
- resolution: {integrity: sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==}
-
- micromark-util-character@2.1.0:
- resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
-
- micromark-util-chunked@1.1.0:
- resolution: {integrity: sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==}
-
- micromark-util-chunked@2.0.0:
- resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
-
- micromark-util-classify-character@1.1.0:
- resolution: {integrity: sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==}
-
- micromark-util-classify-character@2.0.0:
- resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
-
- micromark-util-combine-extensions@1.1.0:
- resolution: {integrity: sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==}
-
- micromark-util-combine-extensions@2.0.0:
- resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
-
- micromark-util-decode-numeric-character-reference@1.1.0:
- resolution: {integrity: sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==}
-
- micromark-util-decode-numeric-character-reference@2.0.1:
- resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
-
- micromark-util-decode-string@1.1.0:
- resolution: {integrity: sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==}
-
- micromark-util-decode-string@2.0.0:
- resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
-
- micromark-util-encode@1.1.0:
- resolution: {integrity: sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==}
-
- micromark-util-encode@2.0.0:
- resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
-
- micromark-util-events-to-acorn@2.0.2:
- resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==}
-
- micromark-util-html-tag-name@1.2.0:
- resolution: {integrity: sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==}
-
- micromark-util-html-tag-name@2.0.0:
- resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
-
- micromark-util-normalize-identifier@1.1.0:
- resolution: {integrity: sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==}
-
- micromark-util-normalize-identifier@2.0.0:
- resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
-
- micromark-util-resolve-all@1.1.0:
- resolution: {integrity: sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==}
-
- micromark-util-resolve-all@2.0.0:
- resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
-
- micromark-util-sanitize-uri@1.2.0:
- resolution: {integrity: sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==}
-
- micromark-util-sanitize-uri@2.0.0:
- resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
-
- micromark-util-subtokenize@1.1.0:
- resolution: {integrity: sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==}
-
- micromark-util-subtokenize@2.0.0:
- resolution: {integrity: sha512-vc93L1t+gpR3p8jxeVdaYlbV2jTYteDje19rNSS/H5dlhxUYll5Fy6vJ2cDwP8RnsXi818yGty1ayP55y3W6fg==}
-
- micromark-util-symbol@1.1.0:
- resolution: {integrity: sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==}
-
- micromark-util-symbol@2.0.0:
- resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
-
- micromark-util-types@1.1.0:
- resolution: {integrity: sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==}
-
- micromark-util-types@2.0.0:
- resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
-
- micromark@3.2.0:
- resolution: {integrity: sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==}
-
- micromark@4.0.0:
- resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
-
- micromatch@4.0.5:
- resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
- engines: {node: '>=8.6'}
-
- micromatch@4.0.8:
- resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
- engines: {node: '>=8.6'}
-
- mime-db@1.33.0:
- resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==}
- engines: {node: '>= 0.6'}
-
- mime-db@1.52.0:
- resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
- engines: {node: '>= 0.6'}
-
- mime-types@2.1.18:
- resolution: {integrity: sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==}
- engines: {node: '>= 0.6'}
-
- mime-types@2.1.35:
- resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
- engines: {node: '>= 0.6'}
-
- mime@1.6.0:
- resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==}
- engines: {node: '>=4'}
- hasBin: true
-
- mimic-fn@2.1.0:
- resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
- engines: {node: '>=6'}
-
- mimic-response@3.1.0:
- resolution: {integrity: sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==}
- engines: {node: '>=10'}
-
- mimic-response@4.0.0:
- resolution: {integrity: sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- mini-css-extract-plugin@2.9.2:
- resolution: {integrity: sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^5.0.0
-
- minimalistic-assert@1.0.1:
- resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
-
- minimatch@3.1.2:
- resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
-
- minimatch@9.0.5:
- resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
- engines: {node: '>=16 || 14 >=14.17'}
-
- minimist@1.2.8:
- resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
-
- minipass@7.1.2:
- resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
- engines: {node: '>=16 || 14 >=14.17'}
-
- mri@1.2.0:
- resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==}
- engines: {node: '>=4'}
-
- mrmime@2.0.0:
- resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==}
- engines: {node: '>=10'}
-
- ms@2.0.0:
- resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
-
- ms@2.1.2:
- resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
-
- ms@2.1.3:
- resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
-
- multicast-dns@7.2.5:
- resolution: {integrity: sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==}
- hasBin: true
-
- mz@2.7.0:
- resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
-
- nanoid@3.3.11:
- resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
- engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
- hasBin: true
-
- nanoid@3.3.7:
- resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
- engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
- hasBin: true
-
- natural-compare-lite@1.4.0:
- resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==}
-
- natural-compare@1.4.0:
- resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
-
- negotiator@0.6.3:
- resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
- engines: {node: '>= 0.6'}
-
- neo-async@2.6.2:
- resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
-
- nice-try@1.0.5:
- resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==}
-
- no-case@3.0.4:
- resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
-
- node-emoji@2.1.3:
- resolution: {integrity: sha512-E2WEOVsgs7O16zsURJ/eH8BqhF029wGpEOnv7Urwdo2wmQanOACwJQh0devF9D9RhoZru0+9JXIS0dBXIAz+lA==}
- engines: {node: '>=18'}
-
- node-forge@1.3.1:
- resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==}
- engines: {node: '>= 6.13.0'}
-
- node-releases@2.0.14:
- resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
-
- node-releases@2.0.19:
- resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
-
- normalize-path@3.0.0:
- resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
- engines: {node: '>=0.10.0'}
-
- normalize-range@0.1.2:
- resolution: {integrity: sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==}
- engines: {node: '>=0.10.0'}
-
- normalize-url@8.0.1:
- resolution: {integrity: sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==}
- engines: {node: '>=14.16'}
-
- npm-run-path@4.0.1:
- resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
- engines: {node: '>=8'}
-
- nprogress@0.2.0:
- resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==}
-
- nth-check@2.1.1:
- resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
-
- null-loader@4.0.1:
- resolution: {integrity: sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- webpack: ^4.0.0 || ^5.0.0
-
- object-assign@4.1.1:
- resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
- engines: {node: '>=0.10.0'}
-
- object-hash@3.0.0:
- resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
- engines: {node: '>= 6'}
-
- object-inspect@1.13.1:
- resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
-
- object-keys@1.1.1:
- resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
- engines: {node: '>= 0.4'}
-
- object.assign@4.1.5:
- resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
- engines: {node: '>= 0.4'}
-
- obuf@1.1.2:
- resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==}
-
- on-finished@2.4.1:
- resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==}
- engines: {node: '>= 0.8'}
-
- on-headers@1.0.2:
- resolution: {integrity: sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==}
- engines: {node: '>= 0.8'}
-
- once@1.4.0:
- resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
-
- onetime@5.1.2:
- resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
- engines: {node: '>=6'}
-
- open@7.4.2:
- resolution: {integrity: sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==}
- engines: {node: '>=8'}
-
- open@8.4.2:
- resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
- engines: {node: '>=12'}
-
- opener@1.5.2:
- resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==}
- hasBin: true
-
- optionator@0.9.3:
- resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
- engines: {node: '>= 0.8.0'}
-
- os-tmpdir@1.0.2:
- resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==}
- engines: {node: '>=0.10.0'}
-
- p-cancelable@3.0.0:
- resolution: {integrity: sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==}
- engines: {node: '>=12.20'}
-
- p-limit@2.3.0:
- resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
- engines: {node: '>=6'}
-
- p-limit@3.1.0:
- resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
- engines: {node: '>=10'}
-
- p-limit@4.0.0:
- resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- p-locate@3.0.0:
- resolution: {integrity: sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==}
- engines: {node: '>=6'}
-
- p-locate@5.0.0:
- resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
- engines: {node: '>=10'}
-
- p-locate@6.0.0:
- resolution: {integrity: sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- p-map@4.0.0:
- resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==}
- engines: {node: '>=10'}
-
- p-retry@4.6.2:
- resolution: {integrity: sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==}
- engines: {node: '>=8'}
-
- p-try@2.2.0:
- resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
- engines: {node: '>=6'}
-
- package-json-from-dist@1.0.1:
- resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
-
- package-json@8.1.1:
- resolution: {integrity: sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==}
- engines: {node: '>=14.16'}
-
- param-case@3.0.4:
- resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
-
- parent-module@1.0.1:
- resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
- engines: {node: '>=6'}
-
- parse-entities@4.0.1:
- resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==}
-
- parse-json@5.2.0:
- resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
- engines: {node: '>=8'}
-
- parse-numeric-range@1.3.0:
- resolution: {integrity: sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==}
-
- parse5-htmlparser2-tree-adapter@7.0.0:
- resolution: {integrity: sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==}
-
- parse5@7.1.2:
- resolution: {integrity: sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==}
-
- parseurl@1.3.3:
- resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==}
- engines: {node: '>= 0.8'}
-
- pascal-case@3.1.2:
- resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
-
- patch-package@6.5.1:
- resolution: {integrity: sha512-I/4Zsalfhc6bphmJTlrLoOcAF87jcxko4q0qsv4bGcurbr8IskEOtdnt9iCmsQVGL1B+iUhSQqweyTLJfCF9rA==}
- engines: {node: '>=10', npm: '>5'}
- hasBin: true
-
- path-browserify@1.0.1:
- resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
-
- path-exists@3.0.0:
- resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==}
- engines: {node: '>=4'}
-
- path-exists@4.0.0:
- resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
- engines: {node: '>=8'}
-
- path-exists@5.0.0:
- resolution: {integrity: sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- path-is-absolute@1.0.1:
- resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
- engines: {node: '>=0.10.0'}
-
- path-is-inside@1.0.2:
- resolution: {integrity: sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==}
-
- path-key@2.0.1:
- resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==}
- engines: {node: '>=4'}
-
- path-key@3.1.1:
- resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
- engines: {node: '>=8'}
-
- path-parse@1.0.7:
- resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
-
- path-scurry@1.11.1:
- resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
- engines: {node: '>=16 || 14 >=14.18'}
-
- path-to-regexp@0.1.7:
- resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==}
-
- path-to-regexp@1.8.0:
- resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==}
-
- path-to-regexp@3.3.0:
- resolution: {integrity: sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==}
-
- path-type@4.0.0:
- resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
- engines: {node: '>=8'}
-
- periscopic@3.1.0:
- resolution: {integrity: sha512-vKiQ8RRtkl9P+r/+oefh25C3fhybptkHKCZSPlcXiJux2tJF55GnEj3BVn4A5gKfq9NWWXXrxkHBwVPUfH0opw==}
-
- picocolors@1.0.0:
- resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
-
- picocolors@1.1.1:
- resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
-
- picomatch@2.3.1:
- resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
- engines: {node: '>=8.6'}
-
- pify@2.3.0:
- resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==}
- engines: {node: '>=0.10.0'}
-
- pirates@4.0.7:
- resolution: {integrity: sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==}
- engines: {node: '>= 6'}
-
- pkg-dir@7.0.0:
- resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==}
- engines: {node: '>=14.16'}
-
- pkg-up@3.1.0:
- resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==}
- engines: {node: '>=8'}
-
- postcss-attribute-case-insensitive@7.0.1:
- resolution: {integrity: sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-calc@9.0.1:
- resolution: {integrity: sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.2.2
-
- postcss-clamp@4.1.0:
- resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==}
- engines: {node: '>=7.6.0'}
- peerDependencies:
- postcss: ^8.4.6
-
- postcss-color-functional-notation@7.0.7:
- resolution: {integrity: sha512-EZvAHsvyASX63vXnyXOIynkxhaHRSsdb7z6yiXKIovGXAolW4cMZ3qoh7k3VdTsLBS6VGdksGfIo3r6+waLoOw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-color-hex-alpha@10.0.0:
- resolution: {integrity: sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-color-rebeccapurple@10.0.0:
- resolution: {integrity: sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-colormin@6.1.0:
- resolution: {integrity: sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-convert-values@6.1.0:
- resolution: {integrity: sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-custom-media@11.0.5:
- resolution: {integrity: sha512-SQHhayVNgDvSAdX9NQ/ygcDQGEY+aSF4b/96z7QUX6mqL5yl/JgG/DywcF6fW9XbnCRE+aVYk+9/nqGuzOPWeQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-custom-properties@14.0.4:
- resolution: {integrity: sha512-QnW8FCCK6q+4ierwjnmXF9Y9KF8q0JkbgVfvQEMa93x1GT8FvOiUevWCN2YLaOWyByeDX8S6VFbZEeWoAoXs2A==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-custom-selectors@8.0.4:
- resolution: {integrity: sha512-ASOXqNvDCE0dAJ/5qixxPeL1aOVGHGW2JwSy7HyjWNbnWTQCl+fDc968HY1jCmZI0+BaYT5CxsOiUhavpG/7eg==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-dir-pseudo-class@9.0.1:
- resolution: {integrity: sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-discard-comments@6.0.2:
- resolution: {integrity: sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-discard-duplicates@6.0.3:
- resolution: {integrity: sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-discard-empty@6.0.3:
- resolution: {integrity: sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-discard-overridden@6.0.2:
- resolution: {integrity: sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-discard-unused@6.0.5:
- resolution: {integrity: sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-double-position-gradients@6.0.0:
- resolution: {integrity: sha512-JkIGah3RVbdSEIrcobqj4Gzq0h53GG4uqDPsho88SgY84WnpkTpI0k50MFK/sX7XqVisZ6OqUfFnoUO6m1WWdg==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-focus-visible@10.0.1:
- resolution: {integrity: sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-focus-within@9.0.1:
- resolution: {integrity: sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-font-variant@5.0.0:
- resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==}
- peerDependencies:
- postcss: ^8.1.0
-
- postcss-gap-properties@6.0.0:
- resolution: {integrity: sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-image-set-function@7.0.0:
- resolution: {integrity: sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-import@15.1.0:
- resolution: {integrity: sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- postcss: ^8.0.0
-
- postcss-js@4.0.1:
- resolution: {integrity: sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==}
- engines: {node: ^12 || ^14 || >= 16}
- peerDependencies:
- postcss: ^8.4.21
-
- postcss-lab-function@7.0.7:
- resolution: {integrity: sha512-+ONj2bpOQfsCKZE2T9VGMyVVdGcGUpr7u3SVfvkJlvhTRmDCfY25k4Jc8fubB9DclAPR4+w8uVtDZmdRgdAHig==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-load-config@4.0.2:
- resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==}
- engines: {node: '>= 14'}
- peerDependencies:
- postcss: '>=8.0.9'
- ts-node: '>=9.0.0'
- peerDependenciesMeta:
- postcss:
- optional: true
- ts-node:
- optional: true
-
- postcss-loader@7.3.4:
- resolution: {integrity: sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==}
- engines: {node: '>= 14.15.0'}
- peerDependencies:
- postcss: ^7.0.0 || ^8.0.1
- webpack: ^5.0.0
-
- postcss-logical@8.0.0:
- resolution: {integrity: sha512-HpIdsdieClTjXLOyYdUPAX/XQASNIwdKt5hoZW08ZOAiI+tbV0ta1oclkpVkW5ANU+xJvk3KkA0FejkjGLXUkg==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-merge-idents@6.0.3:
- resolution: {integrity: sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-merge-longhand@6.0.5:
- resolution: {integrity: sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-merge-rules@6.1.1:
- resolution: {integrity: sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-minify-font-values@6.1.0:
- resolution: {integrity: sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-minify-gradients@6.0.3:
- resolution: {integrity: sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-minify-params@6.1.0:
- resolution: {integrity: sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-minify-selectors@6.0.4:
- resolution: {integrity: sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-modules-extract-imports@3.1.0:
- resolution: {integrity: sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
-
- postcss-modules-local-by-default@4.0.5:
- resolution: {integrity: sha512-6MieY7sIfTK0hYfafw1OMEG+2bg8Q1ocHCpoWLqOKj3JXlKu4G7btkmM/B7lFubYkYWmRSPLZi5chid63ZaZYw==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
-
- postcss-modules-scope@3.2.0:
- resolution: {integrity: sha512-oq+g1ssrsZOsx9M96c5w8laRmvEu9C3adDSjI8oTcbfkrTE8hx/zfyobUoWIxaKPO8bt6S62kxpw5GqypEw1QQ==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
-
- postcss-modules-values@4.0.0:
- resolution: {integrity: sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==}
- engines: {node: ^10 || ^12 || >= 14}
- peerDependencies:
- postcss: ^8.1.0
-
- postcss-nested@6.2.0:
- resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
- engines: {node: '>=12.0'}
- peerDependencies:
- postcss: ^8.2.14
-
- postcss-nesting@13.0.1:
- resolution: {integrity: sha512-VbqqHkOBOt4Uu3G8Dm8n6lU5+9cJFxiuty9+4rcoyRPO9zZS1JIs6td49VIoix3qYqELHlJIn46Oih9SAKo+yQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-normalize-charset@6.0.2:
- resolution: {integrity: sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-display-values@6.0.2:
- resolution: {integrity: sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-positions@6.0.2:
- resolution: {integrity: sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-repeat-style@6.0.2:
- resolution: {integrity: sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-string@6.0.2:
- resolution: {integrity: sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-timing-functions@6.0.2:
- resolution: {integrity: sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-unicode@6.1.0:
- resolution: {integrity: sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-url@6.0.2:
- resolution: {integrity: sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-normalize-whitespace@6.0.2:
- resolution: {integrity: sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-opacity-percentage@3.0.0:
- resolution: {integrity: sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-ordered-values@6.0.2:
- resolution: {integrity: sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-overflow-shorthand@6.0.0:
- resolution: {integrity: sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-page-break@3.0.4:
- resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==}
- peerDependencies:
- postcss: ^8
-
- postcss-place@10.0.0:
- resolution: {integrity: sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-preset-env@10.1.3:
- resolution: {integrity: sha512-9qzVhcMFU/MnwYHyYpJz4JhGku/4+xEiPTmhn0hj3IxnUYlEF9vbh7OC1KoLAnenS6Fgg43TKNp9xcuMeAi4Zw==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-pseudo-class-any-link@10.0.1:
- resolution: {integrity: sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-reduce-idents@6.0.3:
- resolution: {integrity: sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-reduce-initial@6.1.0:
- resolution: {integrity: sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-reduce-transforms@6.0.2:
- resolution: {integrity: sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-replace-overflow-wrap@4.0.0:
- resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==}
- peerDependencies:
- postcss: ^8.0.3
-
- postcss-selector-not@8.0.1:
- resolution: {integrity: sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==}
- engines: {node: '>=18'}
- peerDependencies:
- postcss: ^8.4
-
- postcss-selector-parser@6.0.16:
- resolution: {integrity: sha512-A0RVJrX+IUkVZbW3ClroRWurercFhieevHB38sr2+l9eUClMqome3LmEmnhlNy+5Mr2EYN6B2Kaw9wYdd+VHiw==}
- engines: {node: '>=4'}
-
- postcss-selector-parser@6.1.2:
- resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==}
- engines: {node: '>=4'}
-
- postcss-selector-parser@7.0.0:
- resolution: {integrity: sha512-9RbEr1Y7FFfptd/1eEdntyjMwLeghW1bHX9GWjXo19vx4ytPQhANltvVxDggzJl7mnWM+dX28kb6cyS/4iQjlQ==}
- engines: {node: '>=4'}
-
- postcss-sort-media-queries@5.2.0:
- resolution: {integrity: sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==}
- engines: {node: '>=14.0.0'}
- peerDependencies:
- postcss: ^8.4.23
-
- postcss-svgo@6.0.3:
- resolution: {integrity: sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==}
- engines: {node: ^14 || ^16 || >= 18}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-unique-selectors@6.0.4:
- resolution: {integrity: sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss-value-parser@4.2.0:
- resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
-
- postcss-zindex@6.0.2:
- resolution: {integrity: sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- postcss@8.4.38:
- resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==}
- engines: {node: ^10 || ^12 || >=14}
-
- postcss@8.5.3:
- resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==}
- engines: {node: ^10 || ^12 || >=14}
-
- prelude-ls@1.2.1:
- resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
- engines: {node: '>= 0.8.0'}
-
- prettier-linter-helpers@1.0.0:
- resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==}
- engines: {node: '>=6.0.0'}
-
- prettier-plugin-tailwindcss@0.2.8:
- resolution: {integrity: sha512-KgPcEnJeIijlMjsA6WwYgRs5rh3/q76oInqtMXBA/EMcamrcYJpyhtRhyX1ayT9hnHlHTuO8sIifHF10WuSDKg==}
- engines: {node: '>=12.17.0'}
- peerDependencies:
- '@ianvs/prettier-plugin-sort-imports': '*'
- '@prettier/plugin-pug': '*'
- '@shopify/prettier-plugin-liquid': '*'
- '@shufo/prettier-plugin-blade': '*'
- '@trivago/prettier-plugin-sort-imports': '*'
- prettier: '>=2.2.0'
- prettier-plugin-astro: '*'
- prettier-plugin-css-order: '*'
- prettier-plugin-import-sort: '*'
- prettier-plugin-jsdoc: '*'
- prettier-plugin-organize-attributes: '*'
- prettier-plugin-organize-imports: '*'
- prettier-plugin-style-order: '*'
- prettier-plugin-svelte: '*'
- prettier-plugin-twig-melody: '*'
- peerDependenciesMeta:
- '@ianvs/prettier-plugin-sort-imports':
- optional: true
- '@prettier/plugin-pug':
- optional: true
- '@shopify/prettier-plugin-liquid':
- optional: true
- '@shufo/prettier-plugin-blade':
- optional: true
- '@trivago/prettier-plugin-sort-imports':
- optional: true
- prettier-plugin-astro:
- optional: true
- prettier-plugin-css-order:
- optional: true
- prettier-plugin-import-sort:
- optional: true
- prettier-plugin-jsdoc:
- optional: true
- prettier-plugin-organize-attributes:
- optional: true
- prettier-plugin-organize-imports:
- optional: true
- prettier-plugin-style-order:
- optional: true
- prettier-plugin-svelte:
- optional: true
- prettier-plugin-twig-melody:
- optional: true
-
- prettier@2.8.8:
- resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
- engines: {node: '>=10.13.0'}
- hasBin: true
-
- pretty-error@4.0.0:
- resolution: {integrity: sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==}
-
- pretty-time@1.1.0:
- resolution: {integrity: sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==}
- engines: {node: '>=4'}
-
- prism-react-renderer@2.3.1:
- resolution: {integrity: sha512-Rdf+HzBLR7KYjzpJ1rSoxT9ioO85nZngQEoFIhL07XhtJHlCU3SOz0GJ6+qvMyQe0Se+BV3qpe6Yd/NmQF5Juw==}
- peerDependencies:
- react: '>=16.0.0'
-
- prismjs@1.29.0:
- resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==}
- engines: {node: '>=6'}
-
- process-nextick-args@2.0.1:
- resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
-
- process@0.11.10:
- resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
- engines: {node: '>= 0.6.0'}
-
- prompts@2.4.2:
- resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
- engines: {node: '>= 6'}
-
- prop-types@15.8.1:
- resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
-
- property-information@6.5.0:
- resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
-
- proto-list@1.2.4:
- resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==}
-
- proxy-addr@2.0.7:
- resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
- engines: {node: '>= 0.10'}
-
- punycode.js@2.3.1:
- resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==}
- engines: {node: '>=6'}
-
- punycode@1.4.1:
- resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==}
-
- punycode@2.3.1:
- resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
- engines: {node: '>=6'}
-
- pupa@3.1.0:
- resolution: {integrity: sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==}
- engines: {node: '>=12.20'}
-
- qs@6.11.0:
- resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==}
- engines: {node: '>=0.6'}
-
- qs@6.12.0:
- resolution: {integrity: sha512-trVZiI6RMOkO476zLGaBIzszOdFPnCCXHPG9kn0yuS1uz6xdVxPfZdB3vUig9pxPFDM9BRAgz/YUIVQ1/vuiUg==}
- engines: {node: '>=0.6'}
-
- queue-microtask@1.2.3:
- resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
-
- queue@6.0.2:
- resolution: {integrity: sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==}
-
- quick-lru@5.1.1:
- resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==}
- engines: {node: '>=10'}
-
- randombytes@2.1.0:
- resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
-
- range-parser@1.2.0:
- resolution: {integrity: sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==}
- engines: {node: '>= 0.6'}
-
- range-parser@1.2.1:
- resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
- engines: {node: '>= 0.6'}
-
- raw-body@2.5.2:
- resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==}
- engines: {node: '>= 0.8'}
-
- raw-loader@4.0.2:
- resolution: {integrity: sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- webpack: ^4.0.0 || ^5.0.0
-
- rc@1.2.8:
- resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==}
- hasBin: true
-
- react-dev-utils@12.0.1:
- resolution: {integrity: sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==}
- engines: {node: '>=14'}
- peerDependencies:
- typescript: '>=2.7'
- webpack: '>=4'
- peerDependenciesMeta:
- typescript:
- optional: true
-
- react-dom@19.1.0:
- resolution: {integrity: sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g==}
- peerDependencies:
- react: ^19.1.0
-
- react-error-overlay@6.0.11:
- resolution: {integrity: sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==}
-
- react-fast-compare@3.2.2:
- resolution: {integrity: sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==}
-
- react-feather@2.0.10:
- resolution: {integrity: sha512-BLhukwJ+Z92Nmdcs+EMw6dy1Z/VLiJTzEQACDUEnWMClhYnFykJCGWQx+NmwP/qQHGX/5CzQ+TGi8ofg2+HzVQ==}
- peerDependencies:
- react: '>=16.8.6'
-
- react-is@16.13.1:
- resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
-
- react-is@18.2.0:
- resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
-
- react-json-view-lite@1.3.0:
- resolution: {integrity: sha512-aN1biKC5v4DQkmQBlZjuMFR09MKZGMPtIg+cut8zEeg2HXd6gl2gRy0n4HMacHf0dznQgo0SVXN7eT8zV3hEuQ==}
- engines: {node: '>=14'}
- peerDependencies:
- react: ^16.13.1 || ^17.0.0 || ^18.0.0
-
- react-loadable-ssr-addon-v5-slorber@1.0.1:
- resolution: {integrity: sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==}
- engines: {node: '>=10.13.0'}
- peerDependencies:
- react-loadable: '*'
- webpack: '>=4.41.1 || 5.x'
-
- react-markdown@8.0.7:
- resolution: {integrity: sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==}
- peerDependencies:
- '@types/react': '>=16'
- react: '>=16'
-
- react-remove-scroll-bar@2.3.8:
- resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==}
- engines: {node: '>=10'}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- react-remove-scroll@2.6.3:
- resolution: {integrity: sha512-pnAi91oOk8g8ABQKGF5/M9qxmmOPxaAnopyTHYfqYEwJhyFrbbBtHuSgtKEoH0jpcxx5o3hXqH1mNd9/Oi+8iQ==}
- engines: {node: '>=10'}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- react-router-config@5.1.1:
- resolution: {integrity: sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==}
- peerDependencies:
- react: '>=15'
- react-router: '>=5'
-
- react-router-dom@5.3.4:
- resolution: {integrity: sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==}
- peerDependencies:
- react: '>=15'
-
- react-router@5.3.4:
- resolution: {integrity: sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==}
- peerDependencies:
- react: '>=15'
-
- react-style-singleton@2.2.3:
- resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==}
- engines: {node: '>=10'}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- react@19.1.0:
- resolution: {integrity: sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg==}
- engines: {node: '>=0.10.0'}
-
- read-cache@1.0.0:
- resolution: {integrity: sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==}
-
- readable-stream@2.3.8:
- resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
-
- readable-stream@3.6.2:
- resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
- engines: {node: '>= 6'}
-
- readdirp@3.6.0:
- resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
- engines: {node: '>=8.10.0'}
-
- reading-time@1.5.0:
- resolution: {integrity: sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==}
-
- rechoir@0.6.2:
- resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==}
- engines: {node: '>= 0.10'}
-
- recursive-readdir@2.2.3:
- resolution: {integrity: sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==}
- engines: {node: '>=6.0.0'}
-
- regenerate-unicode-properties@10.1.1:
- resolution: {integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==}
- engines: {node: '>=4'}
-
- regenerate-unicode-properties@10.2.0:
- resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==}
- engines: {node: '>=4'}
-
- regenerate@1.4.2:
- resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
-
- regenerator-runtime@0.14.1:
- resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
-
- regenerator-transform@0.15.2:
- resolution: {integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==}
-
- regexpu-core@5.3.2:
- resolution: {integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==}
- engines: {node: '>=4'}
-
- regexpu-core@6.2.0:
- resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==}
- engines: {node: '>=4'}
-
- registry-auth-token@5.0.2:
- resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==}
- engines: {node: '>=14'}
-
- registry-url@6.0.1:
- resolution: {integrity: sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==}
- engines: {node: '>=12'}
-
- regjsgen@0.8.0:
- resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
-
- regjsparser@0.12.0:
- resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==}
- hasBin: true
-
- regjsparser@0.9.1:
- resolution: {integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==}
- hasBin: true
-
- rehype-katex@7.0.0:
- resolution: {integrity: sha512-h8FPkGE00r2XKU+/acgqwWUlyzve1IiOKwsEkg4pDL3k48PiE0Pt+/uLtVHDVkN1yA4iurZN6UES8ivHVEQV6Q==}
-
- rehype-raw@7.0.0:
- resolution: {integrity: sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==}
-
- relateurl@0.2.7:
- resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
- engines: {node: '>= 0.10'}
-
- remark-directive@3.0.0:
- resolution: {integrity: sha512-l1UyWJ6Eg1VPU7Hm/9tt0zKtReJQNOA4+iDMAxTyZNWnJnFlbS/7zhiel/rogTLQ2vMYwDzSJa4BiVNqGlqIMA==}
-
- remark-emoji@4.0.1:
- resolution: {integrity: sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==}
- engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
-
- remark-frontmatter@5.0.0:
- resolution: {integrity: sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==}
-
- remark-gfm@4.0.0:
- resolution: {integrity: sha512-U92vJgBPkbw4Zfu/IiW2oTZLSL3Zpv+uI7My2eq8JxKgqraFdU8YUGicEJCEgSbeaG+QDFqIcwwfMTOEelPxuA==}
-
- remark-math@6.0.0:
- resolution: {integrity: sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==}
-
- remark-mdx@3.0.1:
- resolution: {integrity: sha512-3Pz3yPQ5Rht2pM5R+0J2MrGoBSrzf+tJG94N+t/ilfdh8YLyyKYtidAYwTveB20BoHAcwIopOUqhcmh2F7hGYA==}
-
- remark-parse@10.0.2:
- resolution: {integrity: sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==}
-
- remark-parse@11.0.0:
- resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
-
- remark-rehype@10.1.0:
- resolution: {integrity: sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==}
-
- remark-rehype@11.1.0:
- resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==}
-
- remark-stringify@11.0.0:
- resolution: {integrity: sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==}
-
- renderkid@3.0.0:
- resolution: {integrity: sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==}
-
- repeat-string@1.6.1:
- resolution: {integrity: sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==}
- engines: {node: '>=0.10'}
-
- require-from-string@2.0.2:
- resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==}
- engines: {node: '>=0.10.0'}
-
- require-like@0.1.2:
- resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==}
-
- requires-port@1.0.0:
- resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
-
- resolve-alpn@1.2.1:
- resolution: {integrity: sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==}
-
- resolve-from@4.0.0:
- resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
- engines: {node: '>=4'}
-
- resolve-pathname@3.0.0:
- resolution: {integrity: sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==}
-
- resolve@1.22.8:
- resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
- hasBin: true
-
- responselike@3.0.0:
- resolution: {integrity: sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==}
- engines: {node: '>=14.16'}
-
- retry@0.13.1:
- resolution: {integrity: sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==}
- engines: {node: '>= 4'}
-
- reusify@1.0.4:
- resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
- engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
-
- rimraf@2.7.1:
- resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
- hasBin: true
-
- rimraf@3.0.2:
- resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
- hasBin: true
-
- rtl-css-js@1.16.1:
- resolution: {integrity: sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==}
-
- rtlcss@4.1.1:
- resolution: {integrity: sha512-/oVHgBtnPNcggP2aVXQjSy6N1mMAfHg4GSag0QtZBlD5bdDgAHwr4pydqJGd+SUCu9260+Pjqbjwtvu7EMH1KQ==}
- engines: {node: '>=12.0.0'}
- hasBin: true
-
- run-parallel@1.2.0:
- resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
-
- sade@1.8.1:
- resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==}
- engines: {node: '>=6'}
-
- safe-buffer@5.1.2:
- resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
-
- safe-buffer@5.2.1:
- resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
-
- safer-buffer@2.1.2:
- resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
-
- sax@1.3.0:
- resolution: {integrity: sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==}
-
- scheduler@0.26.0:
- resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==}
-
- schema-utils@2.7.0:
- resolution: {integrity: sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==}
- engines: {node: '>= 8.9.0'}
-
- schema-utils@3.3.0:
- resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
- engines: {node: '>= 10.13.0'}
-
- schema-utils@4.2.0:
- resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==}
- engines: {node: '>= 12.13.0'}
-
- search-insights@2.13.0:
- resolution: {integrity: sha512-Orrsjf9trHHxFRuo9/rzm0KIWmgzE8RMlZMzuhZOJ01Rnz3D0YBAe+V6473t6/H6c7irs6Lt48brULAiRWb3Vw==}
-
- section-matter@1.0.0:
- resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
- engines: {node: '>=4'}
-
- select-hose@2.0.0:
- resolution: {integrity: sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==}
-
- selfsigned@2.4.1:
- resolution: {integrity: sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==}
- engines: {node: '>=10'}
-
- semver-diff@4.0.0:
- resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==}
- engines: {node: '>=12'}
-
- semver@5.7.2:
- resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
- hasBin: true
-
- semver@6.3.1:
- resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
- hasBin: true
-
- semver@7.6.0:
- resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
- engines: {node: '>=10'}
- hasBin: true
-
- send@0.18.0:
- resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==}
- engines: {node: '>= 0.8.0'}
-
- serialize-javascript@6.0.2:
- resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
-
- serve-handler@6.1.6:
- resolution: {integrity: sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==}
-
- serve-index@1.9.1:
- resolution: {integrity: sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==}
- engines: {node: '>= 0.8.0'}
-
- serve-static@1.15.0:
- resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==}
- engines: {node: '>= 0.8.0'}
-
- set-function-length@1.2.2:
- resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
- engines: {node: '>= 0.4'}
-
- setprototypeof@1.1.0:
- resolution: {integrity: sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==}
-
- setprototypeof@1.2.0:
- resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
-
- shallow-clone@3.0.1:
- resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==}
- engines: {node: '>=8'}
-
- shallowequal@1.1.0:
- resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==}
-
- shebang-command@1.2.0:
- resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
- engines: {node: '>=0.10.0'}
-
- shebang-command@2.0.0:
- resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
- engines: {node: '>=8'}
-
- shebang-regex@1.0.0:
- resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==}
- engines: {node: '>=0.10.0'}
-
- shebang-regex@3.0.0:
- resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
- engines: {node: '>=8'}
-
- shell-quote@1.8.1:
- resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==}
-
- shelljs@0.8.5:
- resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==}
- engines: {node: '>=4'}
- hasBin: true
-
- shiki@1.14.1:
- resolution: {integrity: sha512-FujAN40NEejeXdzPt+3sZ3F2dx1U24BY2XTY01+MG8mbxCiA2XukXdcbyMyLAHJ/1AUUnQd1tZlvIjefWWEJeA==}
-
- side-channel@1.0.6:
- resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
- engines: {node: '>= 0.4'}
-
- signal-exit@3.0.7:
- resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
-
- signal-exit@4.1.0:
- resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
- engines: {node: '>=14'}
-
- sirv@2.0.4:
- resolution: {integrity: sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==}
- engines: {node: '>= 10'}
-
- sisteransi@1.0.5:
- resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
-
- sitemap@7.1.1:
- resolution: {integrity: sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==}
- engines: {node: '>=12.0.0', npm: '>=5.6.0'}
- hasBin: true
-
- skin-tone@2.0.0:
- resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==}
- engines: {node: '>=8'}
-
- slash@2.0.0:
- resolution: {integrity: sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==}
- engines: {node: '>=6'}
-
- slash@3.0.0:
- resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
- engines: {node: '>=8'}
-
- slash@4.0.0:
- resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==}
- engines: {node: '>=12'}
-
- snake-case@3.0.4:
- resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
-
- sockjs@0.3.24:
- resolution: {integrity: sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==}
-
- sort-css-media-queries@2.2.0:
- resolution: {integrity: sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==}
- engines: {node: '>= 6.3.0'}
-
- source-map-js@1.2.0:
- resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==}
- engines: {node: '>=0.10.0'}
-
- source-map-js@1.2.1:
- resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
- engines: {node: '>=0.10.0'}
-
- source-map-support@0.5.21:
- resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
-
- source-map@0.6.1:
- resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
- engines: {node: '>=0.10.0'}
-
- source-map@0.7.4:
- resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
- engines: {node: '>= 8'}
-
- space-separated-tokens@2.0.2:
- resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
-
- spdy-transport@3.0.0:
- resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==}
-
- spdy@4.0.2:
- resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==}
- engines: {node: '>=6.0.0'}
-
- sprintf-js@1.0.3:
- resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
-
- srcset@4.0.0:
- resolution: {integrity: sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==}
- engines: {node: '>=12'}
-
- statuses@1.5.0:
- resolution: {integrity: sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==}
- engines: {node: '>= 0.6'}
-
- statuses@2.0.1:
- resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==}
- engines: {node: '>= 0.8'}
-
- std-env@3.7.0:
- resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==}
-
- stream-browserify@3.0.0:
- resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==}
-
- string-width@4.2.3:
- resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
- engines: {node: '>=8'}
-
- string-width@5.1.2:
- resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
- engines: {node: '>=12'}
-
- string_decoder@1.1.1:
- resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
-
- string_decoder@1.3.0:
- resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
-
- stringify-entities@4.0.4:
- resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
-
- stringify-object@3.3.0:
- resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==}
- engines: {node: '>=4'}
-
- strip-ansi@6.0.1:
- resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
- engines: {node: '>=8'}
-
- strip-ansi@7.1.0:
- resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==}
- engines: {node: '>=12'}
-
- strip-bom-string@1.0.0:
- resolution: {integrity: sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==}
- engines: {node: '>=0.10.0'}
-
- strip-final-newline@2.0.0:
- resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
- engines: {node: '>=6'}
-
- strip-json-comments@2.0.1:
- resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==}
- engines: {node: '>=0.10.0'}
-
- strip-json-comments@3.1.1:
- resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
- engines: {node: '>=8'}
-
- style-to-object@0.4.4:
- resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==}
-
- style-to-object@1.0.6:
- resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==}
-
- stylehacks@6.1.1:
- resolution: {integrity: sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==}
- engines: {node: ^14 || ^16 || >=18.0}
- peerDependencies:
- postcss: ^8.4.31
-
- stylis@4.3.1:
- resolution: {integrity: sha512-EQepAV+wMsIaGVGX1RECzgrcqRRU/0sYOHkeLsZ3fzHaHXZy4DaOOX0vOlGQdlsjkh3mFHAIlVimpwAs4dslyQ==}
-
- sucrase@3.35.0:
- resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
- engines: {node: '>=16 || 14 >=14.17'}
- hasBin: true
-
- supports-color@5.5.0:
- resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
- engines: {node: '>=4'}
-
- supports-color@7.2.0:
- resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
- engines: {node: '>=8'}
-
- supports-color@8.1.1:
- resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
- engines: {node: '>=10'}
-
- supports-preserve-symlinks-flag@1.0.0:
- resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
- engines: {node: '>= 0.4'}
-
- svg-parser@2.0.4:
- resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==}
-
- svgo@3.3.2:
- resolution: {integrity: sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==}
- engines: {node: '>=14.0.0'}
- hasBin: true
-
- swc-loader@0.2.6:
- resolution: {integrity: sha512-9Zi9UP2YmDpgmQVbyOPJClY0dwf58JDyDMQ7uRc4krmc72twNI2fvlBWHLqVekBpPc7h5NJkGVT1zNDxFrqhvg==}
- peerDependencies:
- '@swc/core': ^1.2.147
- webpack: '>=2'
-
- tailwindcss@3.4.17:
- resolution: {integrity: sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==}
- engines: {node: '>=14.0.0'}
- hasBin: true
-
- tapable@1.1.3:
- resolution: {integrity: sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==}
- engines: {node: '>=6'}
-
- tapable@2.2.1:
- resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
- engines: {node: '>=6'}
-
- terser-webpack-plugin@5.3.10:
- resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- '@swc/core': '*'
- esbuild: '*'
- uglify-js: '*'
- webpack: ^5.1.0
- peerDependenciesMeta:
- '@swc/core':
- optional: true
- esbuild:
- optional: true
- uglify-js:
- optional: true
-
- terser@5.30.3:
- resolution: {integrity: sha512-STdUgOUx8rLbMGO9IOwHLpCqolkDITFFQSMYYwKE1N2lY6MVSaeoi10z/EhWxRc6ybqoVmKSkhKYH/XUpl7vSA==}
- engines: {node: '>=10'}
- hasBin: true
-
- text-table@0.2.0:
- resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
-
- thenify-all@1.6.0:
- resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
- engines: {node: '>=0.8'}
-
- thenify@3.3.1:
- resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==}
-
- thunky@1.1.0:
- resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==}
-
- tiny-invariant@1.3.3:
- resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==}
-
- tiny-warning@1.0.3:
- resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
-
- tmp@0.0.33:
- resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
- engines: {node: '>=0.6.0'}
-
- to-fast-properties@2.0.0:
- resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
- engines: {node: '>=4'}
-
- to-regex-range@5.0.1:
- resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
- engines: {node: '>=8.0'}
-
- toidentifier@1.0.1:
- resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==}
- engines: {node: '>=0.6'}
-
- totalist@3.0.1:
- resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==}
- engines: {node: '>=6'}
-
- trim-lines@3.0.1:
- resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
-
- trough@2.2.0:
- resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
-
- ts-interface-checker@0.1.13:
- resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
-
- tslib@1.14.1:
- resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
-
- tslib@2.6.2:
- resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==}
-
- tslib@2.8.1:
- resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
-
- tsutils@3.21.0:
- resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
- engines: {node: '>= 6'}
- peerDependencies:
- typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
-
- type-check@0.4.0:
- resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
- engines: {node: '>= 0.8.0'}
-
- type-fest@0.20.2:
- resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
- engines: {node: '>=10'}
-
- type-fest@0.21.3:
- resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
- engines: {node: '>=10'}
-
- type-fest@1.4.0:
- resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
- engines: {node: '>=10'}
-
- type-fest@2.19.0:
- resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
- engines: {node: '>=12.20'}
-
- type-is@1.6.18:
- resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==}
- engines: {node: '>= 0.6'}
-
- typedarray-to-buffer@3.1.5:
- resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
-
- typedoc-plugin-markdown@4.2.5:
- resolution: {integrity: sha512-ZWIfc0OqwEtQfuaqbmM1kesMi/Fhc++W+5f3TDEm1Tsi28pHSoZk4WCOm4lNuN30WtEImwAHhhXC4DIWki1DiA==}
- engines: {node: '>= 18'}
- peerDependencies:
- typedoc: 0.26.x
-
- typedoc@0.26.6:
- resolution: {integrity: sha512-SfEU3SH3wHNaxhFPjaZE2kNl/NFtLNW5c1oHsg7mti7GjmUj1Roq6osBQeMd+F4kL0BoRBBr8gQAuqBlfFu8LA==}
- engines: {node: '>= 18'}
- hasBin: true
- peerDependencies:
- typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x
-
- typescript@5.2.2:
- resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==}
- engines: {node: '>=14.17'}
- hasBin: true
-
- uc.micro@2.1.0:
- resolution: {integrity: sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==}
-
- undici-types@5.26.5:
- resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==}
-
- unicode-canonical-property-names-ecmascript@2.0.0:
- resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==}
- engines: {node: '>=4'}
-
- unicode-emoji-modifier-base@1.0.0:
- resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==}
- engines: {node: '>=4'}
-
- unicode-match-property-ecmascript@2.0.0:
- resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
- engines: {node: '>=4'}
-
- unicode-match-property-value-ecmascript@2.1.0:
- resolution: {integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==}
- engines: {node: '>=4'}
-
- unicode-property-aliases-ecmascript@2.1.0:
- resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
- engines: {node: '>=4'}
-
- unified@10.1.2:
- resolution: {integrity: sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==}
-
- unified@11.0.4:
- resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==}
-
- unique-string@3.0.0:
- resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==}
- engines: {node: '>=12'}
-
- unist-util-find-after@5.0.0:
- resolution: {integrity: sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==}
-
- unist-util-generated@2.0.1:
- resolution: {integrity: sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==}
-
- unist-util-is@5.2.1:
- resolution: {integrity: sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==}
-
- unist-util-is@6.0.0:
- resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
-
- unist-util-position-from-estree@2.0.0:
- resolution: {integrity: sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==}
-
- unist-util-position@4.0.4:
- resolution: {integrity: sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==}
-
- unist-util-position@5.0.0:
- resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
-
- unist-util-remove-position@5.0.0:
- resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
-
- unist-util-stringify-position@3.0.3:
- resolution: {integrity: sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==}
-
- unist-util-stringify-position@4.0.0:
- resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
-
- unist-util-visit-parents@5.1.3:
- resolution: {integrity: sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==}
-
- unist-util-visit-parents@6.0.1:
- resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
-
- unist-util-visit@4.1.2:
- resolution: {integrity: sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==}
-
- unist-util-visit@5.0.0:
- resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
-
- universalify@2.0.1:
- resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
- engines: {node: '>= 10.0.0'}
-
- unpipe@1.0.0:
- resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==}
- engines: {node: '>= 0.8'}
-
- update-browserslist-db@1.0.13:
- resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
- hasBin: true
- peerDependencies:
- browserslist: '>= 4.21.0'
-
- update-browserslist-db@1.1.2:
- resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==}
- hasBin: true
- peerDependencies:
- browserslist: '>= 4.21.0'
-
- update-notifier@6.0.2:
- resolution: {integrity: sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==}
- engines: {node: '>=14.16'}
-
- uri-js@4.4.1:
- resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
-
- url-loader@4.1.1:
- resolution: {integrity: sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==}
- engines: {node: '>= 10.13.0'}
- peerDependencies:
- file-loader: '*'
- webpack: ^4.0.0 || ^5.0.0
- peerDependenciesMeta:
- file-loader:
- optional: true
-
- url@0.11.3:
- resolution: {integrity: sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw==}
-
- use-callback-ref@1.3.3:
- resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==}
- engines: {node: '>=10'}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- use-sidecar@1.1.3:
- resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==}
- engines: {node: '>=10'}
- peerDependencies:
- '@types/react': '*'
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- '@types/react':
- optional: true
-
- util-deprecate@1.0.2:
- resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
-
- utila@0.4.0:
- resolution: {integrity: sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==}
-
- utility-types@3.11.0:
- resolution: {integrity: sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==}
- engines: {node: '>= 4'}
-
- utils-merge@1.0.1:
- resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==}
- engines: {node: '>= 0.4.0'}
-
- uuid@8.3.2:
- resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==}
- hasBin: true
-
- uvu@0.5.6:
- resolution: {integrity: sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==}
- engines: {node: '>=8'}
- hasBin: true
-
- value-equal@1.0.1:
- resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==}
-
- vary@1.1.2:
- resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
- engines: {node: '>= 0.8'}
-
- vfile-location@5.0.2:
- resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==}
-
- vfile-message@3.1.4:
- resolution: {integrity: sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==}
-
- vfile-message@4.0.2:
- resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
-
- vfile@5.3.7:
- resolution: {integrity: sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==}
-
- vfile@6.0.1:
- resolution: {integrity: sha512-1bYqc7pt6NIADBJ98UiG0Bn/CHIVOoZ/IyEkqIruLg0mE1BKzkOXY2D6CSqQIcKqgadppE5lrxgWXJmXd7zZJw==}
-
- watchpack@2.4.1:
- resolution: {integrity: sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==}
- engines: {node: '>=10.13.0'}
-
- wbuf@1.7.3:
- resolution: {integrity: sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==}
-
- web-namespaces@2.0.1:
- resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
-
- webpack-bundle-analyzer@4.10.2:
- resolution: {integrity: sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==}
- engines: {node: '>= 10.13.0'}
- hasBin: true
-
- webpack-dev-middleware@5.3.4:
- resolution: {integrity: sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==}
- engines: {node: '>= 12.13.0'}
- peerDependencies:
- webpack: ^4.0.0 || ^5.0.0
-
- webpack-dev-server@4.15.2:
- resolution: {integrity: sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==}
- engines: {node: '>= 12.13.0'}
- hasBin: true
- peerDependencies:
- webpack: ^4.37.0 || ^5.0.0
- webpack-cli: '*'
- peerDependenciesMeta:
- webpack:
- optional: true
- webpack-cli:
- optional: true
-
- webpack-merge@5.10.0:
- resolution: {integrity: sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==}
- engines: {node: '>=10.0.0'}
-
- webpack-merge@6.0.1:
- resolution: {integrity: sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==}
- engines: {node: '>=18.0.0'}
-
- webpack-sources@3.2.3:
- resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==}
- engines: {node: '>=10.13.0'}
-
- webpack@5.91.0:
- resolution: {integrity: sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==}
- engines: {node: '>=10.13.0'}
- hasBin: true
- peerDependencies:
- webpack-cli: '*'
- peerDependenciesMeta:
- webpack-cli:
- optional: true
-
- webpack@5.97.1:
- resolution: {integrity: sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==}
- engines: {node: '>=10.13.0'}
- hasBin: true
- peerDependencies:
- webpack-cli: '*'
- peerDependenciesMeta:
- webpack-cli:
- optional: true
-
- webpackbar@6.0.1:
- resolution: {integrity: sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q==}
- engines: {node: '>=14.21.3'}
- peerDependencies:
- webpack: 3 || 4 || 5
-
- websocket-driver@0.7.4:
- resolution: {integrity: sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==}
- engines: {node: '>=0.8.0'}
-
- websocket-extensions@0.1.4:
- resolution: {integrity: sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==}
- engines: {node: '>=0.8.0'}
-
- which@1.3.1:
- resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
- hasBin: true
-
- which@2.0.2:
- resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
- engines: {node: '>= 8'}
- hasBin: true
-
- widest-line@4.0.1:
- resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==}
- engines: {node: '>=12'}
-
- wildcard@2.0.1:
- resolution: {integrity: sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==}
-
- wrap-ansi@7.0.0:
- resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
- engines: {node: '>=10'}
-
- wrap-ansi@8.1.0:
- resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
- engines: {node: '>=12'}
-
- wrappy@1.0.2:
- resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
-
- write-file-atomic@3.0.3:
- resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
-
- ws@7.5.9:
- resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==}
- engines: {node: '>=8.3.0'}
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: ^5.0.2
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
-
- ws@8.16.0:
- resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==}
- engines: {node: '>=10.0.0'}
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: '>=5.0.2'
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
-
- xdg-basedir@5.1.0:
- resolution: {integrity: sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==}
- engines: {node: '>=12'}
-
- xml-js@1.6.11:
- resolution: {integrity: sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==}
- hasBin: true
-
- yallist@3.1.1:
- resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
-
- yallist@4.0.0:
- resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
-
- yaml@1.10.2:
- resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
- engines: {node: '>= 6'}
-
- yaml@2.5.0:
- resolution: {integrity: sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==}
- engines: {node: '>= 14'}
- hasBin: true
-
- yocto-queue@0.1.0:
- resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
- engines: {node: '>=10'}
-
- yocto-queue@1.0.0:
- resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==}
- engines: {node: '>=12.20'}
-
- zwitch@2.0.4:
- resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
-
-snapshots:
-
- '@aashutoshrathi/word-wrap@1.2.6': {}
-
- '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)':
- dependencies:
- '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
- transitivePeerDependencies:
- - '@algolia/client-search'
- - algoliasearch
- - search-insights
-
- '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)':
- dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
- search-insights: 2.13.0
- transitivePeerDependencies:
- - '@algolia/client-search'
- - algoliasearch
-
- '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)':
- dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
- '@algolia/client-search': 5.19.0
- algoliasearch: 5.19.0
-
- '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)':
- dependencies:
- '@algolia/client-search': 5.19.0
- algoliasearch: 5.19.0
-
- '@algolia/client-abtesting@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/client-analytics@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/client-common@5.19.0': {}
-
- '@algolia/client-insights@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/client-personalization@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/client-query-suggestions@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/client-search@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/events@4.0.1': {}
-
- '@algolia/ingestion@1.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/monitoring@1.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/recommend@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- '@algolia/requester-browser-xhr@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
-
- '@algolia/requester-fetch@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
-
- '@algolia/requester-node-http@5.19.0':
- dependencies:
- '@algolia/client-common': 5.19.0
-
- '@alloc/quick-lru@5.2.0': {}
-
- '@ampproject/remapping@2.3.0':
- dependencies:
- '@jridgewell/gen-mapping': 0.3.5
- '@jridgewell/trace-mapping': 0.3.25
-
- '@babel/code-frame@7.24.2':
- dependencies:
- '@babel/highlight': 7.24.2
- picocolors: 1.0.0
-
- '@babel/code-frame@7.26.2':
- dependencies:
- '@babel/helper-validator-identifier': 7.25.9
- js-tokens: 4.0.0
- picocolors: 1.0.0
-
- '@babel/compat-data@7.24.4': {}
-
- '@babel/compat-data@7.26.5': {}
-
- '@babel/core@7.24.4':
- dependencies:
- '@ampproject/remapping': 2.3.0
- '@babel/code-frame': 7.24.2
- '@babel/generator': 7.24.4
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
- '@babel/helpers': 7.24.4
- '@babel/parser': 7.24.4
- '@babel/template': 7.24.0
- '@babel/traverse': 7.24.1
- '@babel/types': 7.24.0
- convert-source-map: 2.0.0
- debug: 4.3.4
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/core@7.26.0':
- dependencies:
- '@ampproject/remapping': 2.3.0
- '@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.5
- '@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
- '@babel/helpers': 7.26.0
- '@babel/parser': 7.26.5
- '@babel/template': 7.25.9
- '@babel/traverse': 7.26.5
- '@babel/types': 7.26.5
- convert-source-map: 2.0.0
- debug: 4.3.4
- gensync: 1.0.0-beta.2
- json5: 2.2.3
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/generator@7.24.4':
- dependencies:
- '@babel/types': 7.24.0
- '@jridgewell/gen-mapping': 0.3.5
- '@jridgewell/trace-mapping': 0.3.25
- jsesc: 2.5.2
-
- '@babel/generator@7.26.5':
- dependencies:
- '@babel/parser': 7.26.5
- '@babel/types': 7.26.5
- '@jridgewell/gen-mapping': 0.3.5
- '@jridgewell/trace-mapping': 0.3.25
- jsesc: 3.1.0
-
- '@babel/helper-annotate-as-pure@7.22.5':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-annotate-as-pure@7.25.9':
- dependencies:
- '@babel/types': 7.26.5
-
- '@babel/helper-builder-binary-assignment-operator-visitor@7.22.15':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-compilation-targets@7.23.6':
- dependencies:
- '@babel/compat-data': 7.24.4
- '@babel/helper-validator-option': 7.23.5
- browserslist: 4.23.0
- lru-cache: 5.1.1
- semver: 6.3.1
-
- '@babel/helper-compilation-targets@7.26.5':
- dependencies:
- '@babel/compat-data': 7.26.5
- '@babel/helper-validator-option': 7.25.9
- browserslist: 4.24.4
- lru-cache: 5.1.1
- semver: 6.3.1
-
- '@babel/helper-create-class-features-plugin@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-member-expression-to-functions': 7.23.0
- '@babel/helper-optimise-call-expression': 7.22.5
- '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4)
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- semver: 6.3.1
-
- '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-member-expression-to-functions': 7.25.9
- '@babel/helper-optimise-call-expression': 7.25.9
- '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0)
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- '@babel/traverse': 7.26.5
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- regexpu-core: 5.3.2
- semver: 6.3.1
-
- '@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.22.5
- regexpu-core: 5.3.2
- semver: 6.3.1
-
- '@babel/helper-create-regexp-features-plugin@7.26.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- regexpu-core: 6.2.0
- semver: 6.3.1
-
- '@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-plugin-utils': 7.26.5
- debug: 4.3.4
- lodash.debounce: 4.0.8
- resolve: 1.22.8
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-define-polyfill-provider@0.6.1(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-plugin-utils': 7.26.5
- debug: 4.3.4
- lodash.debounce: 4.0.8
- resolve: 1.22.8
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-define-polyfill-provider@0.6.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-plugin-utils': 7.26.5
- debug: 4.3.4
- lodash.debounce: 4.0.8
- resolve: 1.22.8
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-environment-visitor@7.22.20': {}
-
- '@babel/helper-function-name@7.23.0':
- dependencies:
- '@babel/template': 7.24.0
- '@babel/types': 7.24.0
-
- '@babel/helper-hoist-variables@7.22.5':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-member-expression-to-functions@7.23.0':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-member-expression-to-functions@7.25.9':
- dependencies:
- '@babel/traverse': 7.26.5
- '@babel/types': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-module-imports@7.24.3':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-module-imports@7.25.9':
- dependencies:
- '@babel/traverse': 7.26.5
- '@babel/types': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-module-transforms@7.23.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-module-imports': 7.24.3
- '@babel/helper-simple-access': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- '@babel/helper-validator-identifier': 7.22.20
-
- '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-imports': 7.25.9
- '@babel/helper-validator-identifier': 7.25.9
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-optimise-call-expression@7.22.5':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-optimise-call-expression@7.25.9':
- dependencies:
- '@babel/types': 7.26.5
-
- '@babel/helper-plugin-utils@7.24.0': {}
-
- '@babel/helper-plugin-utils@7.26.5': {}
-
- '@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-wrap-function': 7.22.20
-
- '@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-wrap-function': 7.25.9
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-replace-supers@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-member-expression-to-functions': 7.23.0
- '@babel/helper-optimise-call-expression': 7.22.5
-
- '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-member-expression-to-functions': 7.25.9
- '@babel/helper-optimise-call-expression': 7.25.9
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-simple-access@7.22.5':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-skip-transparent-expression-wrappers@7.22.5':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
- dependencies:
- '@babel/traverse': 7.26.5
- '@babel/types': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helper-split-export-declaration@7.22.6':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/helper-string-parser@7.24.1': {}
-
- '@babel/helper-string-parser@7.25.9': {}
-
- '@babel/helper-validator-identifier@7.22.20': {}
-
- '@babel/helper-validator-identifier@7.25.9': {}
-
- '@babel/helper-validator-option@7.23.5': {}
-
- '@babel/helper-validator-option@7.25.9': {}
-
- '@babel/helper-wrap-function@7.22.20':
- dependencies:
- '@babel/helper-function-name': 7.23.0
- '@babel/template': 7.24.0
- '@babel/types': 7.24.0
-
- '@babel/helper-wrap-function@7.25.9':
- dependencies:
- '@babel/template': 7.25.9
- '@babel/traverse': 7.26.5
- '@babel/types': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helpers@7.24.4':
- dependencies:
- '@babel/template': 7.24.0
- '@babel/traverse': 7.24.1
- '@babel/types': 7.24.0
- transitivePeerDependencies:
- - supports-color
-
- '@babel/helpers@7.26.0':
- dependencies:
- '@babel/template': 7.25.9
- '@babel/types': 7.26.5
-
- '@babel/highlight@7.24.2':
- dependencies:
- '@babel/helper-validator-identifier': 7.22.20
- chalk: 2.4.2
- js-tokens: 4.0.0
- picocolors: 1.0.0
-
- '@babel/parser@7.24.4':
- dependencies:
- '@babel/types': 7.24.0
-
- '@babel/parser@7.26.5':
- dependencies:
- '@babel/types': 7.26.5
-
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.4)
-
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
-
- '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-import-assertions@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-syntax-import-attributes@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-jsx@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-jsx@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-syntax-typescript@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-arrow-functions@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-async-generator-functions@7.24.3(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.4)
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.4)
-
- '@babel/plugin-transform-async-generator-functions@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0)
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-async-to-generator@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-module-imports': 7.24.3
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.24.4)
-
- '@babel/plugin-transform-async-to-generator@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-imports': 7.25.9
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-block-scoped-functions@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-block-scoped-functions@7.26.5(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-block-scoping@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-class-properties@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-class-properties@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-class-static-block@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.4)
-
- '@babel/plugin-transform-class-static-block@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-classes@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4)
- '@babel/helper-split-export-declaration': 7.22.6
- globals: 11.12.0
-
- '@babel/plugin-transform-classes@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0)
- '@babel/traverse': 7.26.5
- globals: 11.12.0
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-computed-properties@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/template': 7.24.0
-
- '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/template': 7.25.9
-
- '@babel/plugin-transform-destructuring@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-dotall-regex@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-duplicate-keys@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-dynamic-import@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-exponentiation-operator@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-export-namespace-from@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-for-of@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
-
- '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-function-name@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-function-name@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-json-strings@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-literals@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-literals@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-logical-assignment-operators@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.4)
-
- '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-member-expression-literals@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-modules-amd@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-modules-amd@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-modules-commonjs@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-simple-access': 7.22.5
-
- '@babel/plugin-transform-modules-commonjs@7.26.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-modules-systemjs@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-hoist-variables': 7.22.5
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-validator-identifier': 7.22.20
-
- '@babel/plugin-transform-modules-systemjs@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-validator-identifier': 7.25.9
- '@babel/traverse': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-modules-umd@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-modules-umd@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-new-target@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-nullish-coalescing-operator@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-nullish-coalescing-operator@7.26.6(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-numeric-separator@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.4)
-
- '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-object-rest-spread@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4)
-
- '@babel/plugin-transform-object-rest-spread@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.0)
-
- '@babel/plugin-transform-object-super@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-replace-supers': 7.24.1(@babel/core@7.24.4)
-
- '@babel/plugin-transform-object-super@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-optional-catch-binding@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-optional-chaining@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4)
-
- '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-parameters@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-private-methods@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-private-methods@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-private-property-in-object@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.4)
-
- '@babel/plugin-transform-private-property-in-object@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-property-literals@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-react-constant-elements@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-react-display-name@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-react-display-name@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-react-jsx-development@7.22.5(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4)
-
- '@babel/plugin-transform-react-jsx-development@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-react-jsx@7.23.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-module-imports': 7.24.3
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.4)
- '@babel/types': 7.24.0
-
- '@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-module-imports': 7.25.9
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0)
- '@babel/types': 7.26.5
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-react-pure-annotations@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-react-pure-annotations@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-regenerator@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- regenerator-transform: 0.15.2
-
- '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- regenerator-transform: 0.15.2
-
- '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-reserved-words@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-runtime@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-module-imports': 7.25.9
- '@babel/helper-plugin-utils': 7.26.5
- babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.26.0)
- babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0)
- babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.26.0)
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-shorthand-properties@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-spread@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-skip-transparent-expression-wrappers': 7.22.5
-
- '@babel/plugin-transform-spread@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-sticky-regex@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-template-literals@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-template-literals@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-typeof-symbol@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-typeof-symbol@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-typescript@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-annotate-as-pure': 7.22.5
- '@babel/helper-create-class-features-plugin': 7.24.4(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.24.4)
-
- '@babel/plugin-transform-typescript@7.26.5(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-annotate-as-pure': 7.25.9
- '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
- '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/plugin-transform-unicode-escapes@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-unicode-property-regex@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-unicode-regex@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/plugin-transform-unicode-sets-regex@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.24.4)
- '@babel/helper-plugin-utils': 7.24.0
-
- '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0)
- '@babel/helper-plugin-utils': 7.26.5
-
- '@babel/preset-env@7.24.4(@babel/core@7.24.4)':
- dependencies:
- '@babel/compat-data': 7.24.4
- '@babel/core': 7.24.4
- '@babel/helper-compilation-targets': 7.23.6
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-validator-option': 7.23.5
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.4(@babel/core@7.24.4)
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.4)
- '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.4)
- '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.4)
- '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.4)
- '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-import-assertions': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-syntax-import-attributes': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.4)
- '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.4)
- '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.4)
- '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.4)
- '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.4)
- '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.4)
- '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.4)
- '@babel/plugin-transform-arrow-functions': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-async-generator-functions': 7.24.3(@babel/core@7.24.4)
- '@babel/plugin-transform-async-to-generator': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-block-scoped-functions': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-block-scoping': 7.24.4(@babel/core@7.24.4)
- '@babel/plugin-transform-class-properties': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-class-static-block': 7.24.4(@babel/core@7.24.4)
- '@babel/plugin-transform-classes': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-computed-properties': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-destructuring': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-dotall-regex': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-duplicate-keys': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-dynamic-import': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-exponentiation-operator': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-export-namespace-from': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-for-of': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-function-name': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-json-strings': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-literals': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-logical-assignment-operators': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-member-expression-literals': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-modules-amd': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-modules-systemjs': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-modules-umd': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.24.4)
- '@babel/plugin-transform-new-target': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-nullish-coalescing-operator': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-numeric-separator': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-object-rest-spread': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-object-super': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-optional-catch-binding': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-optional-chaining': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-parameters': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-private-methods': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-private-property-in-object': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-property-literals': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-regenerator': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-reserved-words': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-shorthand-properties': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-spread': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-sticky-regex': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-template-literals': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-typeof-symbol': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-unicode-escapes': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-unicode-property-regex': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-unicode-regex': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-unicode-sets-regex': 7.24.1(@babel/core@7.24.4)
- '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.4)
- babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.24.4)
- babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.4)
- babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.24.4)
- core-js-compat: 3.36.1
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/preset-env@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/compat-data': 7.26.5
- '@babel/core': 7.26.0
- '@babel/helper-compilation-targets': 7.26.5
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-validator-option': 7.25.9
- '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.0)
- '@babel/plugin-syntax-import-assertions': 7.26.0(@babel/core@7.26.0)
- '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.0)
- '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.26.0)
- '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-block-scoped-functions': 7.26.5(@babel/core@7.26.0)
- '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-class-static-block': 7.26.0(@babel/core@7.26.0)
- '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-dotall-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-exponentiation-operator': 7.26.3(@babel/core@7.26.0)
- '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-json-strings': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0)
- '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-new-target': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.0)
- '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-object-super': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-property-literals': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-regexp-modifiers': 7.26.0(@babel/core@7.26.0)
- '@babel/plugin-transform-reserved-words': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-template-literals': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-typeof-symbol': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-unicode-escapes': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-unicode-property-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-unicode-sets-regex': 7.25.9(@babel/core@7.26.0)
- '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.26.0)
- babel-plugin-polyfill-corejs2: 0.4.10(@babel/core@7.26.0)
- babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.0)
- babel-plugin-polyfill-regenerator: 0.6.1(@babel/core@7.26.0)
- core-js-compat: 3.40.0
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/types': 7.24.0
- esutils: 2.0.3
-
- '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/types': 7.24.0
- esutils: 2.0.3
-
- '@babel/preset-react@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-validator-option': 7.23.5
- '@babel/plugin-transform-react-display-name': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-react-jsx': 7.23.4(@babel/core@7.24.4)
- '@babel/plugin-transform-react-jsx-development': 7.22.5(@babel/core@7.24.4)
- '@babel/plugin-transform-react-pure-annotations': 7.24.1(@babel/core@7.24.4)
-
- '@babel/preset-react@7.26.3(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-validator-option': 7.25.9
- '@babel/plugin-transform-react-display-name': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-react-jsx-development': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-react-pure-annotations': 7.25.9(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/preset-typescript@7.24.1(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-plugin-utils': 7.24.0
- '@babel/helper-validator-option': 7.23.5
- '@babel/plugin-syntax-jsx': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-modules-commonjs': 7.24.1(@babel/core@7.24.4)
- '@babel/plugin-transform-typescript': 7.24.4(@babel/core@7.24.4)
-
- '@babel/preset-typescript@7.26.0(@babel/core@7.26.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-plugin-utils': 7.26.5
- '@babel/helper-validator-option': 7.25.9
- '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0)
- '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0)
- '@babel/plugin-transform-typescript': 7.26.5(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- '@babel/regjsgen@0.8.0': {}
-
- '@babel/runtime-corejs3@7.26.0':
- dependencies:
- core-js-pure: 3.36.1
- regenerator-runtime: 0.14.1
-
- '@babel/runtime@7.24.4':
- dependencies:
- regenerator-runtime: 0.14.1
-
- '@babel/runtime@7.26.0':
- dependencies:
- regenerator-runtime: 0.14.1
-
- '@babel/runtime@7.27.1': {}
-
- '@babel/template@7.24.0':
- dependencies:
- '@babel/code-frame': 7.24.2
- '@babel/parser': 7.24.4
- '@babel/types': 7.24.0
-
- '@babel/template@7.25.9':
- dependencies:
- '@babel/code-frame': 7.26.2
- '@babel/parser': 7.26.5
- '@babel/types': 7.26.5
-
- '@babel/traverse@7.24.1':
- dependencies:
- '@babel/code-frame': 7.24.2
- '@babel/generator': 7.24.4
- '@babel/helper-environment-visitor': 7.22.20
- '@babel/helper-function-name': 7.23.0
- '@babel/helper-hoist-variables': 7.22.5
- '@babel/helper-split-export-declaration': 7.22.6
- '@babel/parser': 7.24.4
- '@babel/types': 7.24.0
- debug: 4.3.4
- globals: 11.12.0
- transitivePeerDependencies:
- - supports-color
-
- '@babel/traverse@7.26.5':
- dependencies:
- '@babel/code-frame': 7.26.2
- '@babel/generator': 7.26.5
- '@babel/parser': 7.26.5
- '@babel/template': 7.25.9
- '@babel/types': 7.26.5
- debug: 4.3.4
- globals: 11.12.0
- transitivePeerDependencies:
- - supports-color
-
- '@babel/types@7.24.0':
- dependencies:
- '@babel/helper-string-parser': 7.24.1
- '@babel/helper-validator-identifier': 7.22.20
- to-fast-properties: 2.0.0
-
- '@babel/types@7.26.5':
- dependencies:
- '@babel/helper-string-parser': 7.25.9
- '@babel/helper-validator-identifier': 7.25.9
-
- '@colors/colors@1.5.0':
- optional: true
-
- '@csstools/cascade-layer-name-parser@2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
-
- '@csstools/color-helpers@5.0.1': {}
-
- '@csstools/css-calc@2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
-
- '@csstools/css-color-parser@3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)':
- dependencies:
- '@csstools/color-helpers': 5.0.1
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
-
- '@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3)':
- dependencies:
- '@csstools/css-tokenizer': 3.0.3
-
- '@csstools/css-tokenizer@3.0.3': {}
-
- '@csstools/media-query-list-parser@4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
-
- '@csstools/postcss-cascade-layers@5.0.1(postcss@8.4.38)':
- dependencies:
- '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0)
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- '@csstools/postcss-color-function@4.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-color-mix-function@3.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-content-alt-text@2.0.4(postcss@8.4.38)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-exponential-functions@2.0.6(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-font-format-keywords@4.0.0(postcss@8.4.38)':
- dependencies:
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-gamut-mapping@2.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-gradients-interpolation-method@5.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-hwb-function@4.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-ic-unit@4.0.0(postcss@8.4.38)':
- dependencies:
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-initial@2.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@csstools/postcss-is-pseudo-class@5.0.1(postcss@8.4.38)':
- dependencies:
- '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0)
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- '@csstools/postcss-light-dark-function@2.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@csstools/postcss-logical-overflow@2.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@csstools/postcss-logical-resize@3.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-logical-viewport-units@3.0.3(postcss@8.4.38)':
- dependencies:
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-media-minmax@2.0.6(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- postcss: 8.4.38
-
- '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.4(postcss@8.4.38)':
- dependencies:
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- postcss: 8.4.38
-
- '@csstools/postcss-nested-calc@4.0.0(postcss@8.4.38)':
- dependencies:
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-normalize-display-values@4.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-oklab-function@4.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-progressive-custom-properties@4.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-random-function@1.0.2(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-relative-color-syntax@3.0.7(postcss@8.4.38)':
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- '@csstools/postcss-scope-pseudo-class@4.0.1(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- '@csstools/postcss-sign-functions@1.1.1(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-stepped-value-functions@4.0.6(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-text-decoration-shorthand@4.0.1(postcss@8.4.38)':
- dependencies:
- '@csstools/color-helpers': 5.0.1
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- '@csstools/postcss-trigonometric-functions@4.0.6(postcss@8.4.38)':
- dependencies:
- '@csstools/css-calc': 2.1.1(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
-
- '@csstools/postcss-unset-value@4.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@csstools/selector-resolve-nested@3.0.0(postcss-selector-parser@7.0.0)':
- dependencies:
- postcss-selector-parser: 7.0.0
-
- '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.0.0)':
- dependencies:
- postcss-selector-parser: 7.0.0
-
- '@csstools/utilities@2.0.0(postcss@8.4.38)':
- dependencies:
- postcss: 8.4.38
-
- '@discoveryjs/json-ext@0.5.7': {}
-
- '@docsearch/css@3.8.2': {}
-
- '@docsearch/react@3.8.2(@algolia/client-search@5.19.0)(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)':
- dependencies:
- '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)(search-insights@2.13.0)
- '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.19.0)(algoliasearch@5.19.0)
- '@docsearch/css': 3.8.2
- algoliasearch: 5.19.0
- optionalDependencies:
- '@types/react': 19.1.3
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- search-insights: 2.13.0
- transitivePeerDependencies:
- - '@algolia/client-search'
-
- '@docusaurus/babel@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@babel/core': 7.26.0
- '@babel/generator': 7.26.5
- '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.26.0)
- '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.26.0)
- '@babel/preset-env': 7.26.0(@babel/core@7.26.0)
- '@babel/preset-react': 7.26.3(@babel/core@7.26.0)
- '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0)
- '@babel/runtime': 7.26.0
- '@babel/runtime-corejs3': 7.26.0
- '@babel/traverse': 7.26.5
- '@docusaurus/logger': 3.7.0
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- babel-plugin-dynamic-import-node: 2.3.3
- fs-extra: 11.2.0
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - react
- - react-dom
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/bundler@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@babel/core': 7.26.0
- '@docusaurus/babel': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/cssnano-preset': 3.7.0
- '@docusaurus/logger': 3.7.0
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- babel-loader: 9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- clean-css: 5.3.3
- copy-webpack-plugin: 11.0.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- css-loader: 6.11.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- css-minimizer-webpack-plugin: 5.0.1(clean-css@5.3.3)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- cssnano: 6.1.2(postcss@8.4.38)
- file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- html-minifier-terser: 7.2.0
- mini-css-extract-plugin: 2.9.2(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- null-loader: 4.0.1(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- postcss: 8.4.38
- postcss-loader: 7.3.4(postcss@8.4.38)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- postcss-preset-env: 10.1.3(postcss@8.4.38)
- react-dev-utils: 12.0.1(eslint@8.57.0)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- terser-webpack-plugin: 5.3.10(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- tslib: 2.6.2
- url-loader: 4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- webpackbar: 6.0.1(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- transitivePeerDependencies:
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - csso
- - esbuild
- - eslint
- - lightningcss
- - react
- - react-dom
- - supports-color
- - typescript
- - uglify-js
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/core@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/babel': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/bundler': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@mdx-js/react': 3.1.0(@types/react@19.1.3)(react@19.1.0)
- boxen: 6.2.1
- chalk: 4.1.2
- chokidar: 3.6.0
- cli-table3: 0.6.4
- combine-promises: 1.2.0
- commander: 5.1.0
- core-js: 3.36.1
- del: 6.1.1
- detect-port: 1.5.1
- escape-html: 1.0.3
- eta: 2.2.0
- eval: 0.1.8
- fs-extra: 11.2.0
- html-tags: 3.3.1
- html-webpack-plugin: 5.6.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- leven: 3.1.0
- lodash: 4.17.21
- p-map: 4.0.0
- prompts: 2.4.2
- react: 19.1.0
- react-dev-utils: 12.0.1(eslint@8.57.0)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- react-dom: 19.1.0(react@19.1.0)
- react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)'
- react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.1.0)'
- react-loadable-ssr-addon-v5-slorber: 1.0.1(@docusaurus/react-loadable@6.0.0(react@19.1.0))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- react-router: 5.3.4(react@19.1.0)
- react-router-config: 5.1.1(react-router@5.3.4(react@19.1.0))(react@19.1.0)
- react-router-dom: 5.3.4(react@19.1.0)
- semver: 7.6.0
- serve-handler: 6.1.6
- shelljs: 0.8.5
- tslib: 2.6.2
- update-notifier: 6.0.2
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- webpack-bundle-analyzer: 4.10.2
- webpack-dev-server: 4.15.2(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- webpack-merge: 6.0.1
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/cssnano-preset@3.7.0':
- dependencies:
- cssnano-preset-advanced: 6.1.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-sort-media-queries: 5.2.0(postcss@8.4.38)
- tslib: 2.8.1
-
- '@docusaurus/logger@3.7.0':
- dependencies:
- chalk: 4.1.2
- tslib: 2.6.2
-
- '@docusaurus/mdx-loader@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/logger': 3.7.0
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@mdx-js/mdx': 3.0.1
- '@slorber/remark-comment': 1.0.0
- escape-html: 1.0.3
- estree-util-value-to-estree: 3.1.1
- file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- fs-extra: 11.2.0
- image-size: 1.1.1
- mdast-util-mdx: 3.0.0
- mdast-util-to-string: 4.0.0
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- rehype-raw: 7.0.0
- remark-directive: 3.0.0
- remark-emoji: 4.0.1
- remark-frontmatter: 5.0.0
- remark-gfm: 4.0.0
- stringify-object: 3.3.0
- tslib: 2.6.2
- unified: 11.0.4
- unist-util-visit: 5.0.0
- url-loader: 4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- vfile: 6.0.1
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/module-type-aliases@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@types/history': 4.7.11
- '@types/react': 19.1.3
- '@types/react-router-config': 5.0.11
- '@types/react-router-dom': 5.3.3
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)'
- react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.1.0)'
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/plugin-content-blog@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- cheerio: 1.0.0-rc.12
- feed: 4.2.2
- fs-extra: 11.2.0
- lodash: 4.17.21
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- reading-time: 1.5.0
- srcset: 4.0.0
- tslib: 2.6.2
- unist-util-visit: 5.0.0
- utility-types: 3.11.0
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@types/react-router-config': 5.0.11
- combine-promises: 1.2.0
- fs-extra: 11.2.0
- js-yaml: 4.1.0
- lodash: 4.17.21
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- utility-types: 3.11.0
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-content-pages@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- fs-extra: 11.2.0
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-debug@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- fs-extra: 11.2.0
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-json-view-lite: 1.3.0(react@19.1.0)
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-google-analytics@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-google-gtag@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@types/gtag.js': 0.0.12
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-google-tag-manager@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-sitemap@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- fs-extra: 11.2.0
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- sitemap: 7.1.1
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/plugin-svgr@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@svgr/core': 8.1.0(typescript@5.2.2)
- '@svgr/webpack': 8.1.0(typescript@5.2.2)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/preset-classic@3.7.0(@algolia/client-search@5.19.0)(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-content-pages': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-debug': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-google-analytics': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-google-gtag': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-google-tag-manager': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-sitemap': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-svgr': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/theme-classic': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/theme-search-algolia': 3.7.0(@algolia/client-search@5.19.0)(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)(typescript@5.2.2)
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- transitivePeerDependencies:
- - '@algolia/client-search'
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - '@types/react'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - search-insights
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/react-loadable@6.0.0(react@19.1.0)':
- dependencies:
- '@types/react': 19.1.3
- react: 19.1.0
-
- '@docusaurus/theme-classic@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)':
- dependencies:
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/plugin-content-blog': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/plugin-content-pages': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/theme-translations': 3.7.0
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@mdx-js/react': 3.1.0(@types/react@19.1.3)(react@19.1.0)
- clsx: 2.1.0
- copy-text-to-clipboard: 3.2.0
- infima: 0.2.0-alpha.45
- lodash: 4.17.21
- nprogress: 0.2.0
- postcss: 8.4.38
- prism-react-renderer: 2.3.1(react@19.1.0)
- prismjs: 1.29.0
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-router-dom: 5.3.4(react@19.1.0)
- rtlcss: 4.1.1
- tslib: 2.6.2
- utility-types: 3.11.0
- transitivePeerDependencies:
- - '@docusaurus/faster'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - '@types/react'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/theme-common@3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/mdx-loader': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/module-type-aliases': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@types/history': 4.7.11
- '@types/react': 19.1.3
- '@types/react-router-config': 5.0.11
- clsx: 2.1.0
- parse-numeric-range: 1.3.0
- prism-react-renderer: 2.3.1(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- utility-types: 3.11.0
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/theme-search-algolia@3.7.0(@algolia/client-search@5.19.0)(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(@types/react@19.1.3)(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)(typescript@5.2.2)':
- dependencies:
- '@docsearch/react': 3.8.2(@algolia/client-search@5.19.0)(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(search-insights@2.13.0)
- '@docusaurus/core': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/logger': 3.7.0
- '@docusaurus/plugin-content-docs': 3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2)
- '@docusaurus/theme-common': 3.7.0(@docusaurus/plugin-content-docs@3.7.0(@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0))(@swc/core@1.4.13(@swc/helpers@0.5.17))(eslint@8.57.0)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)(typescript@5.2.2))(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/theme-translations': 3.7.0
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-validation': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- algoliasearch: 5.19.0
- algoliasearch-helper: 3.22.6(algoliasearch@5.19.0)
- clsx: 2.1.0
- eta: 2.2.0
- fs-extra: 11.2.0
- lodash: 4.17.21
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- tslib: 2.6.2
- utility-types: 3.11.0
- transitivePeerDependencies:
- - '@algolia/client-search'
- - '@docusaurus/faster'
- - '@mdx-js/react'
- - '@parcel/css'
- - '@rspack/core'
- - '@swc/core'
- - '@swc/css'
- - '@types/react'
- - bufferutil
- - csso
- - debug
- - esbuild
- - eslint
- - lightningcss
- - search-insights
- - supports-color
- - typescript
- - uglify-js
- - utf-8-validate
- - vue-template-compiler
- - webpack-cli
-
- '@docusaurus/theme-translations@3.7.0':
- dependencies:
- fs-extra: 11.2.0
- tslib: 2.8.1
-
- '@docusaurus/tsconfig@3.7.0': {}
-
- '@docusaurus/types@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@mdx-js/mdx': 3.0.1
- '@types/history': 4.7.11
- '@types/react': 19.1.3
- commander: 5.1.0
- joi: 17.12.3
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-helmet-async: '@slorber/react-helmet-async@1.3.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)'
- utility-types: 3.11.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- webpack-merge: 5.10.0
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/utils-common@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - react
- - react-dom
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/utils-validation@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/logger': 3.7.0
- '@docusaurus/utils': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- fs-extra: 11.2.0
- joi: 17.12.3
- js-yaml: 4.1.0
- lodash: 4.17.21
- tslib: 2.6.2
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - react
- - react-dom
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@docusaurus/utils@3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@docusaurus/logger': 3.7.0
- '@docusaurus/types': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@docusaurus/utils-common': 3.7.0(@swc/core@1.4.13(@swc/helpers@0.5.17))(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- escape-string-regexp: 4.0.0
- file-loader: 6.2.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- fs-extra: 11.2.0
- github-slugger: 1.5.0
- globby: 11.1.0
- gray-matter: 4.0.3
- jiti: 1.21.0
- js-yaml: 4.1.0
- lodash: 4.17.21
- micromatch: 4.0.5
- prompts: 2.4.2
- resolve-pathname: 3.0.0
- shelljs: 0.8.5
- tslib: 2.6.2
- url-loader: 4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- utility-types: 3.11.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - react
- - react-dom
- - supports-color
- - uglify-js
- - webpack-cli
-
- '@emotion/hash@0.9.1': {}
-
- '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)':
- dependencies:
- eslint: 8.57.0
- eslint-visitor-keys: 3.4.3
-
- '@eslint-community/regexpp@4.10.0': {}
-
- '@eslint/eslintrc@2.1.4':
- dependencies:
- ajv: 6.12.6
- debug: 4.3.4
- espree: 9.6.1
- globals: 13.24.0
- ignore: 5.3.1
- import-fresh: 3.3.0
- js-yaml: 4.1.0
- minimatch: 3.1.2
- strip-json-comments: 3.1.1
- transitivePeerDependencies:
- - supports-color
-
- '@eslint/js@8.57.0': {}
-
- '@floating-ui/core@1.6.0':
- dependencies:
- '@floating-ui/utils': 0.2.9
-
- '@floating-ui/dom@1.6.3':
- dependencies:
- '@floating-ui/core': 1.6.0
- '@floating-ui/utils': 0.2.9
-
- '@floating-ui/react-dom@2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@floating-ui/dom': 1.6.3
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
-
- '@floating-ui/utils@0.2.9': {}
-
- '@fluentui/react-icons@2.0.300(react@19.1.0)':
- dependencies:
- '@griffel/react': 1.5.21(react@19.1.0)
- react: 19.1.0
- tslib: 2.8.1
-
- '@griffel/core@1.15.3':
- dependencies:
- '@emotion/hash': 0.9.1
- '@griffel/style-types': 1.0.4
- csstype: 3.1.3
- rtl-css-js: 1.16.1
- stylis: 4.3.1
- tslib: 2.8.1
-
- '@griffel/react@1.5.21(react@19.1.0)':
- dependencies:
- '@griffel/core': 1.15.3
- react: 19.1.0
- tslib: 2.8.1
-
- '@griffel/style-types@1.0.4':
- dependencies:
- csstype: 3.1.3
-
- '@hapi/hoek@9.3.0': {}
-
- '@hapi/topo@5.1.0':
- dependencies:
- '@hapi/hoek': 9.3.0
-
- '@humanwhocodes/config-array@0.11.14':
- dependencies:
- '@humanwhocodes/object-schema': 2.0.3
- debug: 4.3.4
- minimatch: 3.1.2
- transitivePeerDependencies:
- - supports-color
-
- '@humanwhocodes/module-importer@1.0.1': {}
-
- '@humanwhocodes/object-schema@2.0.3': {}
-
- '@isaacs/cliui@8.0.2':
- dependencies:
- string-width: 5.1.2
- string-width-cjs: string-width@4.2.3
- strip-ansi: 7.1.0
- strip-ansi-cjs: strip-ansi@6.0.1
- wrap-ansi: 8.1.0
- wrap-ansi-cjs: wrap-ansi@7.0.0
-
- '@jest/schemas@29.6.3':
- dependencies:
- '@sinclair/typebox': 0.27.8
-
- '@jest/types@29.6.3':
- dependencies:
- '@jest/schemas': 29.6.3
- '@types/istanbul-lib-coverage': 2.0.6
- '@types/istanbul-reports': 3.0.4
- '@types/node': 20.12.7
- '@types/yargs': 17.0.32
- chalk: 4.1.2
-
- '@jridgewell/gen-mapping@0.3.5':
- dependencies:
- '@jridgewell/set-array': 1.2.1
- '@jridgewell/sourcemap-codec': 1.4.15
- '@jridgewell/trace-mapping': 0.3.25
-
- '@jridgewell/resolve-uri@3.1.2': {}
-
- '@jridgewell/set-array@1.2.1': {}
-
- '@jridgewell/source-map@0.3.6':
- dependencies:
- '@jridgewell/gen-mapping': 0.3.5
- '@jridgewell/trace-mapping': 0.3.25
-
- '@jridgewell/sourcemap-codec@1.4.15': {}
-
- '@jridgewell/trace-mapping@0.3.25':
- dependencies:
- '@jridgewell/resolve-uri': 3.1.2
- '@jridgewell/sourcemap-codec': 1.4.15
-
- '@leichtgewicht/ip-codec@2.0.5': {}
-
- '@mdx-js/mdx@3.0.1':
- dependencies:
- '@types/estree': 1.0.5
- '@types/estree-jsx': 1.0.5
- '@types/hast': 3.0.4
- '@types/mdx': 2.0.13
- collapse-white-space: 2.1.0
- devlop: 1.1.0
- estree-util-build-jsx: 3.0.1
- estree-util-is-identifier-name: 3.0.0
- estree-util-to-js: 2.0.0
- estree-walker: 3.0.3
- hast-util-to-estree: 3.1.0
- hast-util-to-jsx-runtime: 2.3.0
- markdown-extensions: 2.0.0
- periscopic: 3.1.0
- remark-mdx: 3.0.1
- remark-parse: 11.0.0
- remark-rehype: 11.1.0
- source-map: 0.7.4
- unified: 11.0.4
- unist-util-position-from-estree: 2.0.0
- unist-util-stringify-position: 4.0.0
- unist-util-visit: 5.0.0
- vfile: 6.0.1
- transitivePeerDependencies:
- - supports-color
-
- '@mdx-js/react@3.1.0(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@types/mdx': 2.0.13
- '@types/react': 19.1.3
- react: 19.1.0
-
- '@nodelib/fs.scandir@2.1.5':
- dependencies:
- '@nodelib/fs.stat': 2.0.5
- run-parallel: 1.2.0
-
- '@nodelib/fs.stat@2.0.5': {}
-
- '@nodelib/fs.walk@1.2.8':
- dependencies:
- '@nodelib/fs.scandir': 2.1.5
- fastq: 1.17.1
-
- '@pkgjs/parseargs@0.11.0':
- optional: true
-
- '@pnpm/config.env-replace@1.1.0': {}
-
- '@pnpm/network.ca-file@1.0.2':
- dependencies:
- graceful-fs: 4.2.10
-
- '@pnpm/npm-conf@2.2.2':
- dependencies:
- '@pnpm/config.env-replace': 1.1.0
- '@pnpm/network.ca-file': 1.0.2
- config-chain: 1.1.13
-
- '@polka/url@1.0.0-next.25': {}
-
- '@radix-ui/number@1.1.1': {}
-
- '@radix-ui/primitive@1.1.2': {}
-
- '@radix-ui/react-arrow@1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-collection@1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-slot': 1.2.2(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-compose-refs@1.1.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-context@1.1.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-direction@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-dismissable-layer@1.1.9(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/primitive': 1.1.2
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-focus-guards@1.1.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-focus-scope@1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-id@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-popper@1.2.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@floating-ui/react-dom': 2.1.2(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-arrow': 1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-rect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-size': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/rect': 1.1.1
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-portal@1.1.8(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-primitive@2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-slot': 1.2.2(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-select@2.2.4(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/number': 1.1.1
- '@radix-ui/primitive': 1.1.2
- '@radix-ui/react-collection': 1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-context': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-direction': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-dismissable-layer': 1.1.9(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-focus-guards': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-focus-scope': 1.1.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-id': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-popper': 1.2.6(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-portal': 1.1.8(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- '@radix-ui/react-slot': 1.2.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-previous': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-visually-hidden': 1.2.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- aria-hidden: 1.2.4
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-remove-scroll: 2.6.3(@types/react@19.1.3)(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-slot@1.2.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.1.3)(react@19.1.0)
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-previous@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-rect@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/rect': 1.1.1
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-use-size@1.1.1(@types/react@19.1.3)(react@19.1.0)':
- dependencies:
- '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.1.3)(react@19.1.0)
- react: 19.1.0
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/react-visually-hidden@1.2.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@radix-ui/react-primitive': 2.1.2(@types/react@19.1.3)(react-dom@19.1.0(react@19.1.0))(react@19.1.0)
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- '@radix-ui/rect@1.1.1': {}
-
- '@shikijs/core@1.14.1':
- dependencies:
- '@types/hast': 3.0.4
-
- '@sideway/address@4.1.5':
- dependencies:
- '@hapi/hoek': 9.3.0
-
- '@sideway/formula@3.0.1': {}
-
- '@sideway/pinpoint@2.0.0': {}
-
- '@sinclair/typebox@0.27.8': {}
-
- '@sindresorhus/is@4.6.0': {}
-
- '@sindresorhus/is@5.6.0': {}
-
- '@slorber/react-helmet-async@1.3.0(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@babel/runtime': 7.27.1
- invariant: 2.2.4
- prop-types: 15.8.1
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
- react-fast-compare: 3.2.2
- shallowequal: 1.1.0
-
- '@slorber/remark-comment@1.0.0':
- dependencies:
- micromark-factory-space: 1.1.0
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
-
- '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
-
- '@svgr/babel-preset@8.1.0(@babel/core@7.24.4)':
- dependencies:
- '@babel/core': 7.24.4
- '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.24.4)
- '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.24.4)
-
- '@svgr/core@8.1.0(typescript@5.2.2)':
- dependencies:
- '@babel/core': 7.24.4
- '@svgr/babel-preset': 8.1.0(@babel/core@7.24.4)
- camelcase: 6.3.0
- cosmiconfig: 8.3.6(typescript@5.2.2)
- snake-case: 3.0.4
- transitivePeerDependencies:
- - supports-color
- - typescript
-
- '@svgr/hast-util-to-babel-ast@8.0.0':
- dependencies:
- '@babel/types': 7.24.0
- entities: 4.5.0
-
- '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.2.2))':
- dependencies:
- '@babel/core': 7.24.4
- '@svgr/babel-preset': 8.1.0(@babel/core@7.24.4)
- '@svgr/core': 8.1.0(typescript@5.2.2)
- '@svgr/hast-util-to-babel-ast': 8.0.0
- svg-parser: 2.0.4
- transitivePeerDependencies:
- - supports-color
-
- '@svgr/plugin-svgo@8.1.0(@svgr/core@8.1.0(typescript@5.2.2))(typescript@5.2.2)':
- dependencies:
- '@svgr/core': 8.1.0(typescript@5.2.2)
- cosmiconfig: 8.3.6(typescript@5.2.2)
- deepmerge: 4.3.1
- svgo: 3.3.2
- transitivePeerDependencies:
- - typescript
-
- '@svgr/webpack@8.1.0(typescript@5.2.2)':
- dependencies:
- '@babel/core': 7.24.4
- '@babel/plugin-transform-react-constant-elements': 7.24.1(@babel/core@7.24.4)
- '@babel/preset-env': 7.24.4(@babel/core@7.24.4)
- '@babel/preset-react': 7.24.1(@babel/core@7.24.4)
- '@babel/preset-typescript': 7.24.1(@babel/core@7.24.4)
- '@svgr/core': 8.1.0(typescript@5.2.2)
- '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.2.2))
- '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.2.2))(typescript@5.2.2)
- transitivePeerDependencies:
- - supports-color
- - typescript
-
- '@swc/core-darwin-arm64@1.4.13':
- optional: true
-
- '@swc/core-darwin-x64@1.4.13':
- optional: true
-
- '@swc/core-linux-arm-gnueabihf@1.4.13':
- optional: true
-
- '@swc/core-linux-arm64-gnu@1.4.13':
- optional: true
-
- '@swc/core-linux-arm64-musl@1.4.13':
- optional: true
-
- '@swc/core-linux-x64-gnu@1.4.13':
- optional: true
-
- '@swc/core-linux-x64-musl@1.4.13':
- optional: true
-
- '@swc/core-win32-arm64-msvc@1.4.13':
- optional: true
-
- '@swc/core-win32-ia32-msvc@1.4.13':
- optional: true
-
- '@swc/core-win32-x64-msvc@1.4.13':
- optional: true
-
- '@swc/core@1.4.13(@swc/helpers@0.5.17)':
- dependencies:
- '@swc/counter': 0.1.3
- '@swc/types': 0.1.6
- optionalDependencies:
- '@swc/core-darwin-arm64': 1.4.13
- '@swc/core-darwin-x64': 1.4.13
- '@swc/core-linux-arm-gnueabihf': 1.4.13
- '@swc/core-linux-arm64-gnu': 1.4.13
- '@swc/core-linux-arm64-musl': 1.4.13
- '@swc/core-linux-x64-gnu': 1.4.13
- '@swc/core-linux-x64-musl': 1.4.13
- '@swc/core-win32-arm64-msvc': 1.4.13
- '@swc/core-win32-ia32-msvc': 1.4.13
- '@swc/core-win32-x64-msvc': 1.4.13
- '@swc/helpers': 0.5.17
-
- '@swc/counter@0.1.3': {}
-
- '@swc/helpers@0.5.17':
- dependencies:
- tslib: 2.8.1
- optional: true
-
- '@swc/types@0.1.6':
- dependencies:
- '@swc/counter': 0.1.3
-
- '@szmarczak/http-timer@5.0.1':
- dependencies:
- defer-to-connect: 2.0.1
-
- '@tanstack/react-table@8.21.3(react-dom@19.1.0(react@19.1.0))(react@19.1.0)':
- dependencies:
- '@tanstack/table-core': 8.21.3
- react: 19.1.0
- react-dom: 19.1.0(react@19.1.0)
-
- '@tanstack/table-core@8.21.3': {}
-
- '@trysound/sax@0.2.0': {}
-
- '@types/acorn@4.0.6':
- dependencies:
- '@types/estree': 1.0.5
-
- '@types/body-parser@1.19.5':
- dependencies:
- '@types/connect': 3.4.38
- '@types/node': 20.12.7
-
- '@types/bonjour@3.5.13':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/connect-history-api-fallback@1.5.4':
- dependencies:
- '@types/express-serve-static-core': 4.19.0
- '@types/node': 20.12.7
-
- '@types/connect@3.4.38':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/debug@4.1.12':
- dependencies:
- '@types/ms': 0.7.34
-
- '@types/eslint-scope@3.7.7':
- dependencies:
- '@types/eslint': 8.56.8
- '@types/estree': 1.0.6
-
- '@types/eslint@8.56.8':
- dependencies:
- '@types/estree': 1.0.6
- '@types/json-schema': 7.0.15
-
- '@types/estree-jsx@1.0.5':
- dependencies:
- '@types/estree': 1.0.5
-
- '@types/estree@1.0.5': {}
-
- '@types/estree@1.0.6': {}
-
- '@types/express-serve-static-core@4.19.0':
- dependencies:
- '@types/node': 20.12.7
- '@types/qs': 6.9.14
- '@types/range-parser': 1.2.7
- '@types/send': 0.17.4
-
- '@types/express@4.17.21':
- dependencies:
- '@types/body-parser': 1.19.5
- '@types/express-serve-static-core': 4.19.0
- '@types/qs': 6.9.14
- '@types/serve-static': 1.15.7
-
- '@types/gtag.js@0.0.12': {}
-
- '@types/hast@2.3.10':
- dependencies:
- '@types/unist': 2.0.10
-
- '@types/hast@3.0.4':
- dependencies:
- '@types/unist': 3.0.2
-
- '@types/history@4.7.11': {}
-
- '@types/html-minifier-terser@6.1.0': {}
-
- '@types/http-cache-semantics@4.0.4': {}
-
- '@types/http-errors@2.0.4': {}
-
- '@types/http-proxy@1.17.14':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/istanbul-lib-coverage@2.0.6': {}
-
- '@types/istanbul-lib-report@3.0.3':
- dependencies:
- '@types/istanbul-lib-coverage': 2.0.6
-
- '@types/istanbul-reports@3.0.4':
- dependencies:
- '@types/istanbul-lib-report': 3.0.3
-
- '@types/json-schema@7.0.15': {}
-
- '@types/katex@0.16.7': {}
-
- '@types/mdast@3.0.15':
- dependencies:
- '@types/unist': 2.0.10
-
- '@types/mdast@4.0.3':
- dependencies:
- '@types/unist': 3.0.2
-
- '@types/mdx@2.0.13': {}
-
- '@types/mime@1.3.5': {}
-
- '@types/ms@0.7.34': {}
-
- '@types/node-forge@1.3.11':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/node@17.0.45': {}
-
- '@types/node@20.12.7':
- dependencies:
- undici-types: 5.26.5
-
- '@types/parse-json@4.0.2': {}
-
- '@types/prismjs@1.26.3': {}
-
- '@types/prop-types@15.7.12': {}
-
- '@types/qs@6.9.14': {}
-
- '@types/range-parser@1.2.7': {}
-
- '@types/react-router-config@5.0.11':
- dependencies:
- '@types/history': 4.7.11
- '@types/react': 19.1.3
- '@types/react-router': 5.1.20
-
- '@types/react-router-dom@5.3.3':
- dependencies:
- '@types/history': 4.7.11
- '@types/react': 19.1.3
- '@types/react-router': 5.1.20
-
- '@types/react-router@5.1.20':
- dependencies:
- '@types/history': 4.7.11
- '@types/react': 19.1.3
-
- '@types/react@19.1.3':
- dependencies:
- csstype: 3.1.3
-
- '@types/retry@0.12.0': {}
-
- '@types/sax@1.2.7':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/semver@7.5.8': {}
-
- '@types/send@0.17.4':
- dependencies:
- '@types/mime': 1.3.5
- '@types/node': 20.12.7
-
- '@types/serve-index@1.9.4':
- dependencies:
- '@types/express': 4.17.21
-
- '@types/serve-static@1.15.7':
- dependencies:
- '@types/http-errors': 2.0.4
- '@types/node': 20.12.7
- '@types/send': 0.17.4
-
- '@types/sockjs@0.3.36':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/unist@2.0.10': {}
-
- '@types/unist@3.0.2': {}
-
- '@types/ws@8.5.10':
- dependencies:
- '@types/node': 20.12.7
-
- '@types/yargs-parser@21.0.3': {}
-
- '@types/yargs@17.0.32':
- dependencies:
- '@types/yargs-parser': 21.0.3
-
- '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.2.2))(eslint@8.57.0)(typescript@5.2.2)':
- dependencies:
- '@eslint-community/regexpp': 4.10.0
- '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.2.2)
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@5.2.2)
- '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.2.2)
- debug: 4.3.4
- eslint: 8.57.0
- graphemer: 1.4.0
- ignore: 5.3.1
- natural-compare-lite: 1.4.0
- semver: 7.6.0
- tsutils: 3.21.0(typescript@5.2.2)
- optionalDependencies:
- typescript: 5.2.2
- transitivePeerDependencies:
- - supports-color
-
- '@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.2.2)':
- dependencies:
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2)
- debug: 4.3.4
- eslint: 8.57.0
- optionalDependencies:
- typescript: 5.2.2
- transitivePeerDependencies:
- - supports-color
-
- '@typescript-eslint/scope-manager@5.62.0':
- dependencies:
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/visitor-keys': 5.62.0
-
- '@typescript-eslint/type-utils@5.62.0(eslint@8.57.0)(typescript@5.2.2)':
- dependencies:
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2)
- '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.2.2)
- debug: 4.3.4
- eslint: 8.57.0
- tsutils: 3.21.0(typescript@5.2.2)
- optionalDependencies:
- typescript: 5.2.2
- transitivePeerDependencies:
- - supports-color
-
- '@typescript-eslint/types@5.62.0': {}
-
- '@typescript-eslint/typescript-estree@5.62.0(typescript@5.2.2)':
- dependencies:
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/visitor-keys': 5.62.0
- debug: 4.3.4
- globby: 11.1.0
- is-glob: 4.0.3
- semver: 7.6.0
- tsutils: 3.21.0(typescript@5.2.2)
- optionalDependencies:
- typescript: 5.2.2
- transitivePeerDependencies:
- - supports-color
-
- '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.2.2)':
- dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
- '@types/json-schema': 7.0.15
- '@types/semver': 7.5.8
- '@typescript-eslint/scope-manager': 5.62.0
- '@typescript-eslint/types': 5.62.0
- '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.2.2)
- eslint: 8.57.0
- eslint-scope: 5.1.1
- semver: 7.6.0
- transitivePeerDependencies:
- - supports-color
- - typescript
-
- '@typescript-eslint/visitor-keys@5.62.0':
- dependencies:
- '@typescript-eslint/types': 5.62.0
- eslint-visitor-keys: 3.4.3
-
- '@ungap/structured-clone@1.2.0': {}
-
- '@webassemblyjs/ast@1.12.1':
- dependencies:
- '@webassemblyjs/helper-numbers': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
-
- '@webassemblyjs/ast@1.14.1':
- dependencies:
- '@webassemblyjs/helper-numbers': 1.13.2
- '@webassemblyjs/helper-wasm-bytecode': 1.13.2
-
- '@webassemblyjs/floating-point-hex-parser@1.11.6': {}
-
- '@webassemblyjs/floating-point-hex-parser@1.13.2': {}
-
- '@webassemblyjs/helper-api-error@1.11.6': {}
-
- '@webassemblyjs/helper-api-error@1.13.2': {}
-
- '@webassemblyjs/helper-buffer@1.12.1': {}
-
- '@webassemblyjs/helper-buffer@1.14.1': {}
-
- '@webassemblyjs/helper-numbers@1.11.6':
- dependencies:
- '@webassemblyjs/floating-point-hex-parser': 1.11.6
- '@webassemblyjs/helper-api-error': 1.11.6
- '@xtuc/long': 4.2.2
-
- '@webassemblyjs/helper-numbers@1.13.2':
- dependencies:
- '@webassemblyjs/floating-point-hex-parser': 1.13.2
- '@webassemblyjs/helper-api-error': 1.13.2
- '@xtuc/long': 4.2.2
-
- '@webassemblyjs/helper-wasm-bytecode@1.11.6': {}
-
- '@webassemblyjs/helper-wasm-bytecode@1.13.2': {}
-
- '@webassemblyjs/helper-wasm-section@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/helper-buffer': 1.12.1
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/wasm-gen': 1.12.1
-
- '@webassemblyjs/helper-wasm-section@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/helper-buffer': 1.14.1
- '@webassemblyjs/helper-wasm-bytecode': 1.13.2
- '@webassemblyjs/wasm-gen': 1.14.1
-
- '@webassemblyjs/ieee754@1.11.6':
- dependencies:
- '@xtuc/ieee754': 1.2.0
-
- '@webassemblyjs/ieee754@1.13.2':
- dependencies:
- '@xtuc/ieee754': 1.2.0
-
- '@webassemblyjs/leb128@1.11.6':
- dependencies:
- '@xtuc/long': 4.2.2
-
- '@webassemblyjs/leb128@1.13.2':
- dependencies:
- '@xtuc/long': 4.2.2
-
- '@webassemblyjs/utf8@1.11.6': {}
-
- '@webassemblyjs/utf8@1.13.2': {}
-
- '@webassemblyjs/wasm-edit@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/helper-buffer': 1.12.1
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/helper-wasm-section': 1.12.1
- '@webassemblyjs/wasm-gen': 1.12.1
- '@webassemblyjs/wasm-opt': 1.12.1
- '@webassemblyjs/wasm-parser': 1.12.1
- '@webassemblyjs/wast-printer': 1.12.1
-
- '@webassemblyjs/wasm-edit@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/helper-buffer': 1.14.1
- '@webassemblyjs/helper-wasm-bytecode': 1.13.2
- '@webassemblyjs/helper-wasm-section': 1.14.1
- '@webassemblyjs/wasm-gen': 1.14.1
- '@webassemblyjs/wasm-opt': 1.14.1
- '@webassemblyjs/wasm-parser': 1.14.1
- '@webassemblyjs/wast-printer': 1.14.1
-
- '@webassemblyjs/wasm-gen@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/ieee754': 1.11.6
- '@webassemblyjs/leb128': 1.11.6
- '@webassemblyjs/utf8': 1.11.6
-
- '@webassemblyjs/wasm-gen@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/helper-wasm-bytecode': 1.13.2
- '@webassemblyjs/ieee754': 1.13.2
- '@webassemblyjs/leb128': 1.13.2
- '@webassemblyjs/utf8': 1.13.2
-
- '@webassemblyjs/wasm-opt@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/helper-buffer': 1.12.1
- '@webassemblyjs/wasm-gen': 1.12.1
- '@webassemblyjs/wasm-parser': 1.12.1
-
- '@webassemblyjs/wasm-opt@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/helper-buffer': 1.14.1
- '@webassemblyjs/wasm-gen': 1.14.1
- '@webassemblyjs/wasm-parser': 1.14.1
-
- '@webassemblyjs/wasm-parser@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/helper-api-error': 1.11.6
- '@webassemblyjs/helper-wasm-bytecode': 1.11.6
- '@webassemblyjs/ieee754': 1.11.6
- '@webassemblyjs/leb128': 1.11.6
- '@webassemblyjs/utf8': 1.11.6
-
- '@webassemblyjs/wasm-parser@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/helper-api-error': 1.13.2
- '@webassemblyjs/helper-wasm-bytecode': 1.13.2
- '@webassemblyjs/ieee754': 1.13.2
- '@webassemblyjs/leb128': 1.13.2
- '@webassemblyjs/utf8': 1.13.2
-
- '@webassemblyjs/wast-printer@1.12.1':
- dependencies:
- '@webassemblyjs/ast': 1.12.1
- '@xtuc/long': 4.2.2
-
- '@webassemblyjs/wast-printer@1.14.1':
- dependencies:
- '@webassemblyjs/ast': 1.14.1
- '@xtuc/long': 4.2.2
-
- '@xtuc/ieee754@1.2.0': {}
-
- '@xtuc/long@4.2.2': {}
-
- '@yarnpkg/lockfile@1.1.0': {}
-
- accepts@1.3.8:
- dependencies:
- mime-types: 2.1.35
- negotiator: 0.6.3
-
- acorn-import-assertions@1.9.0(acorn@8.11.3):
- dependencies:
- acorn: 8.11.3
-
- acorn-jsx@5.3.2(acorn@8.11.3):
- dependencies:
- acorn: 8.11.3
-
- acorn-walk@8.3.2: {}
-
- acorn@8.11.3: {}
-
- acorn@8.14.0: {}
-
- address@1.2.2: {}
-
- aggregate-error@3.1.0:
- dependencies:
- clean-stack: 2.2.0
- indent-string: 4.0.0
-
- ajv-formats@2.1.1(ajv@8.12.0):
- optionalDependencies:
- ajv: 8.12.0
-
- ajv-keywords@3.5.2(ajv@6.12.6):
- dependencies:
- ajv: 6.12.6
-
- ajv-keywords@5.1.0(ajv@8.12.0):
- dependencies:
- ajv: 8.12.0
- fast-deep-equal: 3.1.3
-
- ajv@6.12.6:
- dependencies:
- fast-deep-equal: 3.1.3
- fast-json-stable-stringify: 2.1.0
- json-schema-traverse: 0.4.1
- uri-js: 4.4.1
-
- ajv@8.12.0:
- dependencies:
- fast-deep-equal: 3.1.3
- json-schema-traverse: 1.0.0
- require-from-string: 2.0.2
- uri-js: 4.4.1
-
- algoliasearch-helper@3.22.6(algoliasearch@5.19.0):
- dependencies:
- '@algolia/events': 4.0.1
- algoliasearch: 5.19.0
-
- algoliasearch@5.19.0:
- dependencies:
- '@algolia/client-abtesting': 5.19.0
- '@algolia/client-analytics': 5.19.0
- '@algolia/client-common': 5.19.0
- '@algolia/client-insights': 5.19.0
- '@algolia/client-personalization': 5.19.0
- '@algolia/client-query-suggestions': 5.19.0
- '@algolia/client-search': 5.19.0
- '@algolia/ingestion': 1.19.0
- '@algolia/monitoring': 1.19.0
- '@algolia/recommend': 5.19.0
- '@algolia/requester-browser-xhr': 5.19.0
- '@algolia/requester-fetch': 5.19.0
- '@algolia/requester-node-http': 5.19.0
-
- ansi-align@3.0.1:
- dependencies:
- string-width: 4.2.3
-
- ansi-escapes@4.3.2:
- dependencies:
- type-fest: 0.21.3
-
- ansi-html-community@0.0.8: {}
-
- ansi-regex@5.0.1: {}
-
- ansi-regex@6.0.1: {}
-
- ansi-styles@3.2.1:
- dependencies:
- color-convert: 1.9.3
-
- ansi-styles@4.3.0:
- dependencies:
- color-convert: 2.0.1
-
- ansi-styles@6.2.1: {}
-
- any-promise@1.3.0: {}
-
- anymatch@3.1.3:
- dependencies:
- normalize-path: 3.0.0
- picomatch: 2.3.1
-
- arg@5.0.2: {}
-
- argparse@1.0.10:
- dependencies:
- sprintf-js: 1.0.3
-
- argparse@2.0.1: {}
-
- aria-hidden@1.2.4:
- dependencies:
- tslib: 2.8.1
-
- array-flatten@1.1.1: {}
-
- array-union@2.1.0: {}
-
- astring@1.8.6: {}
-
- at-least-node@1.0.0: {}
-
- autoprefixer@10.4.19(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- caniuse-lite: 1.0.30001717
- fraction.js: 4.3.7
- normalize-range: 0.1.2
- picocolors: 1.0.0
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- babel-loader@9.2.1(@babel/core@7.26.0)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@babel/core': 7.26.0
- find-cache-dir: 4.0.0
- schema-utils: 4.2.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- babel-plugin-dynamic-import-node@2.3.3:
- dependencies:
- object.assign: 4.1.5
-
- babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.24.4):
- dependencies:
- '@babel/compat-data': 7.24.4
- '@babel/core': 7.24.4
- '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4)
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-polyfill-corejs2@0.4.10(@babel/core@7.26.0):
- dependencies:
- '@babel/compat-data': 7.24.4
- '@babel/core': 7.26.0
- '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.26.0)
- semver: 6.3.1
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.4):
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4)
- core-js-compat: 3.36.1
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.26.0):
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0)
- core-js-compat: 3.40.0
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.24.4):
- dependencies:
- '@babel/core': 7.24.4
- '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.24.4)
- transitivePeerDependencies:
- - supports-color
-
- babel-plugin-polyfill-regenerator@0.6.1(@babel/core@7.26.0):
- dependencies:
- '@babel/core': 7.26.0
- '@babel/helper-define-polyfill-provider': 0.6.1(@babel/core@7.26.0)
- transitivePeerDependencies:
- - supports-color
-
- bail@2.0.2: {}
-
- balanced-match@1.0.2: {}
-
- base64-js@1.5.1: {}
-
- batch@0.6.1: {}
-
- big.js@5.2.2: {}
-
- binary-extensions@2.3.0: {}
-
- body-parser@1.20.2:
- dependencies:
- bytes: 3.1.2
- content-type: 1.0.5
- debug: 2.6.9
- depd: 2.0.0
- destroy: 1.2.0
- http-errors: 2.0.0
- iconv-lite: 0.4.24
- on-finished: 2.4.1
- qs: 6.11.0
- raw-body: 2.5.2
- type-is: 1.6.18
- unpipe: 1.0.0
- transitivePeerDependencies:
- - supports-color
-
- bonjour-service@1.2.1:
- dependencies:
- fast-deep-equal: 3.1.3
- multicast-dns: 7.2.5
-
- boolbase@1.0.0: {}
-
- boxen@6.2.1:
- dependencies:
- ansi-align: 3.0.1
- camelcase: 6.3.0
- chalk: 4.1.2
- cli-boxes: 3.0.0
- string-width: 5.1.2
- type-fest: 2.19.0
- widest-line: 4.0.1
- wrap-ansi: 8.1.0
-
- boxen@7.1.1:
- dependencies:
- ansi-align: 3.0.1
- camelcase: 7.0.1
- chalk: 5.3.0
- cli-boxes: 3.0.0
- string-width: 5.1.2
- type-fest: 2.19.0
- widest-line: 4.0.1
- wrap-ansi: 8.1.0
-
- brace-expansion@1.1.11:
- dependencies:
- balanced-match: 1.0.2
- concat-map: 0.0.1
-
- brace-expansion@2.0.1:
- dependencies:
- balanced-match: 1.0.2
-
- braces@3.0.2:
- dependencies:
- fill-range: 7.0.1
-
- braces@3.0.3:
- dependencies:
- fill-range: 7.1.1
-
- browserslist@4.23.0:
- dependencies:
- caniuse-lite: 1.0.30001717
- electron-to-chromium: 1.4.734
- node-releases: 2.0.14
- update-browserslist-db: 1.0.13(browserslist@4.23.0)
-
- browserslist@4.24.4:
- dependencies:
- caniuse-lite: 1.0.30001717
- electron-to-chromium: 1.5.80
- node-releases: 2.0.19
- update-browserslist-db: 1.1.2(browserslist@4.24.4)
-
- buffer-from@1.1.2: {}
-
- buffer@6.0.3:
- dependencies:
- base64-js: 1.5.1
- ieee754: 1.2.1
-
- bytes@3.0.0: {}
-
- bytes@3.1.2: {}
-
- cacheable-lookup@7.0.0: {}
-
- cacheable-request@10.2.14:
- dependencies:
- '@types/http-cache-semantics': 4.0.4
- get-stream: 6.0.1
- http-cache-semantics: 4.1.1
- keyv: 4.5.4
- mimic-response: 4.0.0
- normalize-url: 8.0.1
- responselike: 3.0.0
-
- call-bind@1.0.7:
- dependencies:
- es-define-property: 1.0.0
- es-errors: 1.3.0
- function-bind: 1.1.2
- get-intrinsic: 1.2.4
- set-function-length: 1.2.2
-
- callsites@3.1.0: {}
-
- camel-case@4.1.2:
- dependencies:
- pascal-case: 3.1.2
- tslib: 2.8.1
-
- camelcase-css@2.0.1: {}
-
- camelcase@6.3.0: {}
-
- camelcase@7.0.1: {}
-
- caniuse-api@3.0.0:
- dependencies:
- browserslist: 4.23.0
- caniuse-lite: 1.0.30001717
- lodash.memoize: 4.1.2
- lodash.uniq: 4.5.0
-
- caniuse-lite@1.0.30001717: {}
-
- ccount@2.0.1: {}
-
- chalk@2.4.2:
- dependencies:
- ansi-styles: 3.2.1
- escape-string-regexp: 1.0.5
- supports-color: 5.5.0
-
- chalk@4.1.2:
- dependencies:
- ansi-styles: 4.3.0
- supports-color: 7.2.0
-
- chalk@5.3.0: {}
-
- char-regex@1.0.2: {}
-
- character-entities-html4@2.1.0: {}
-
- character-entities-legacy@3.0.0: {}
-
- character-entities@2.0.2: {}
-
- character-reference-invalid@2.0.1: {}
-
- cheerio-select@2.1.0:
- dependencies:
- boolbase: 1.0.0
- css-select: 5.1.0
- css-what: 6.1.0
- domelementtype: 2.3.0
- domhandler: 5.0.3
- domutils: 3.1.0
-
- cheerio@1.0.0-rc.12:
- dependencies:
- cheerio-select: 2.1.0
- dom-serializer: 2.0.0
- domhandler: 5.0.3
- domutils: 3.1.0
- htmlparser2: 8.0.2
- parse5: 7.1.2
- parse5-htmlparser2-tree-adapter: 7.0.0
-
- chokidar@3.6.0:
- dependencies:
- anymatch: 3.1.3
- braces: 3.0.2
- glob-parent: 5.1.2
- is-binary-path: 2.1.0
- is-glob: 4.0.3
- normalize-path: 3.0.0
- readdirp: 3.6.0
- optionalDependencies:
- fsevents: 2.3.3
-
- chrome-trace-event@1.0.3: {}
-
- ci-info@2.0.0: {}
-
- ci-info@3.9.0: {}
-
- clean-css@5.3.3:
- dependencies:
- source-map: 0.6.1
-
- clean-stack@2.2.0: {}
-
- cli-boxes@3.0.0: {}
-
- cli-table3@0.6.4:
- dependencies:
- string-width: 4.2.3
- optionalDependencies:
- '@colors/colors': 1.5.0
-
- clone-deep@4.0.1:
- dependencies:
- is-plain-object: 2.0.4
- kind-of: 6.0.3
- shallow-clone: 3.0.1
-
- clsx@1.2.1: {}
-
- clsx@2.1.0: {}
-
- collapse-white-space@2.1.0: {}
-
- color-convert@1.9.3:
- dependencies:
- color-name: 1.1.3
-
- color-convert@2.0.1:
- dependencies:
- color-name: 1.1.4
-
- color-name@1.1.3: {}
-
- color-name@1.1.4: {}
-
- colord@2.9.3: {}
-
- colorette@2.0.20: {}
-
- combine-promises@1.2.0: {}
-
- comma-separated-tokens@2.0.3: {}
-
- commander@10.0.1: {}
-
- commander@2.20.3: {}
-
- commander@4.1.1: {}
-
- commander@5.1.0: {}
-
- commander@7.2.0: {}
-
- commander@8.3.0: {}
-
- common-path-prefix@3.0.0: {}
-
- compressible@2.0.18:
- dependencies:
- mime-db: 1.52.0
-
- compression@1.7.4:
- dependencies:
- accepts: 1.3.8
- bytes: 3.0.0
- compressible: 2.0.18
- debug: 2.6.9
- on-headers: 1.0.2
- safe-buffer: 5.1.2
- vary: 1.1.2
- transitivePeerDependencies:
- - supports-color
-
- concat-map@0.0.1: {}
-
- config-chain@1.1.13:
- dependencies:
- ini: 1.3.8
- proto-list: 1.2.4
-
- configstore@6.0.0:
- dependencies:
- dot-prop: 6.0.1
- graceful-fs: 4.2.11
- unique-string: 3.0.0
- write-file-atomic: 3.0.3
- xdg-basedir: 5.1.0
-
- connect-history-api-fallback@2.0.0: {}
-
- consola@3.4.0: {}
-
- content-disposition@0.5.2: {}
-
- content-disposition@0.5.4:
- dependencies:
- safe-buffer: 5.2.1
-
- content-type@1.0.5: {}
-
- convert-source-map@2.0.0: {}
-
- cookie-signature@1.0.6: {}
-
- cookie@0.6.0: {}
-
- copy-text-to-clipboard@3.2.0: {}
-
- copy-webpack-plugin@11.0.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- fast-glob: 3.3.2
- glob-parent: 6.0.2
- globby: 13.2.2
- normalize-path: 3.0.0
- schema-utils: 4.2.0
- serialize-javascript: 6.0.2
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- core-js-compat@3.36.1:
- dependencies:
- browserslist: 4.23.0
-
- core-js-compat@3.40.0:
- dependencies:
- browserslist: 4.24.4
-
- core-js-pure@3.36.1: {}
-
- core-js@3.36.1: {}
-
- core-util-is@1.0.3: {}
-
- cosmiconfig@6.0.0:
- dependencies:
- '@types/parse-json': 4.0.2
- import-fresh: 3.3.0
- parse-json: 5.2.0
- path-type: 4.0.0
- yaml: 1.10.2
-
- cosmiconfig@8.3.6(typescript@5.2.2):
- dependencies:
- import-fresh: 3.3.0
- js-yaml: 4.1.0
- parse-json: 5.2.0
- path-type: 4.0.0
- optionalDependencies:
- typescript: 5.2.2
-
- cross-spawn@6.0.5:
- dependencies:
- nice-try: 1.0.5
- path-key: 2.0.1
- semver: 5.7.2
- shebang-command: 1.2.0
- which: 1.3.1
-
- cross-spawn@7.0.3:
- dependencies:
- path-key: 3.1.1
- shebang-command: 2.0.0
- which: 2.0.2
-
- cross-spawn@7.0.6:
- dependencies:
- path-key: 3.1.1
- shebang-command: 2.0.0
- which: 2.0.2
-
- crypto-random-string@4.0.0:
- dependencies:
- type-fest: 1.4.0
-
- css-blank-pseudo@7.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- css-declaration-sorter@7.2.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- css-has-pseudo@7.0.2(postcss@8.4.38):
- dependencies:
- '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0)
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
- postcss-value-parser: 4.2.0
-
- css-loader@6.11.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-modules-extract-imports: 3.1.0(postcss@8.4.38)
- postcss-modules-local-by-default: 4.0.5(postcss@8.4.38)
- postcss-modules-scope: 3.2.0(postcss@8.4.38)
- postcss-modules-values: 4.0.0(postcss@8.4.38)
- postcss-value-parser: 4.2.0
- semver: 7.6.0
- optionalDependencies:
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- css-minimizer-webpack-plugin@5.0.1(clean-css@5.3.3)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@jridgewell/trace-mapping': 0.3.25
- cssnano: 6.1.2(postcss@8.4.38)
- jest-worker: 29.7.0
- postcss: 8.4.38
- schema-utils: 4.2.0
- serialize-javascript: 6.0.2
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- clean-css: 5.3.3
-
- css-prefers-color-scheme@10.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- css-select@4.3.0:
- dependencies:
- boolbase: 1.0.0
- css-what: 6.1.0
- domhandler: 4.3.1
- domutils: 2.8.0
- nth-check: 2.1.1
-
- css-select@5.1.0:
- dependencies:
- boolbase: 1.0.0
- css-what: 6.1.0
- domhandler: 5.0.3
- domutils: 3.1.0
- nth-check: 2.1.1
-
- css-tree@2.2.1:
- dependencies:
- mdn-data: 2.0.28
- source-map-js: 1.2.0
-
- css-tree@2.3.1:
- dependencies:
- mdn-data: 2.0.30
- source-map-js: 1.2.0
-
- css-what@6.1.0: {}
-
- cssdb@8.2.3: {}
-
- cssesc@3.0.0: {}
-
- cssnano-preset-advanced@6.1.2(postcss@8.4.38):
- dependencies:
- autoprefixer: 10.4.19(postcss@8.4.38)
- browserslist: 4.23.0
- cssnano-preset-default: 6.1.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-discard-unused: 6.0.5(postcss@8.4.38)
- postcss-merge-idents: 6.0.3(postcss@8.4.38)
- postcss-reduce-idents: 6.0.3(postcss@8.4.38)
- postcss-zindex: 6.0.2(postcss@8.4.38)
-
- cssnano-preset-default@6.1.2(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- css-declaration-sorter: 7.2.0(postcss@8.4.38)
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-calc: 9.0.1(postcss@8.4.38)
- postcss-colormin: 6.1.0(postcss@8.4.38)
- postcss-convert-values: 6.1.0(postcss@8.4.38)
- postcss-discard-comments: 6.0.2(postcss@8.4.38)
- postcss-discard-duplicates: 6.0.3(postcss@8.4.38)
- postcss-discard-empty: 6.0.3(postcss@8.4.38)
- postcss-discard-overridden: 6.0.2(postcss@8.4.38)
- postcss-merge-longhand: 6.0.5(postcss@8.4.38)
- postcss-merge-rules: 6.1.1(postcss@8.4.38)
- postcss-minify-font-values: 6.1.0(postcss@8.4.38)
- postcss-minify-gradients: 6.0.3(postcss@8.4.38)
- postcss-minify-params: 6.1.0(postcss@8.4.38)
- postcss-minify-selectors: 6.0.4(postcss@8.4.38)
- postcss-normalize-charset: 6.0.2(postcss@8.4.38)
- postcss-normalize-display-values: 6.0.2(postcss@8.4.38)
- postcss-normalize-positions: 6.0.2(postcss@8.4.38)
- postcss-normalize-repeat-style: 6.0.2(postcss@8.4.38)
- postcss-normalize-string: 6.0.2(postcss@8.4.38)
- postcss-normalize-timing-functions: 6.0.2(postcss@8.4.38)
- postcss-normalize-unicode: 6.1.0(postcss@8.4.38)
- postcss-normalize-url: 6.0.2(postcss@8.4.38)
- postcss-normalize-whitespace: 6.0.2(postcss@8.4.38)
- postcss-ordered-values: 6.0.2(postcss@8.4.38)
- postcss-reduce-initial: 6.1.0(postcss@8.4.38)
- postcss-reduce-transforms: 6.0.2(postcss@8.4.38)
- postcss-svgo: 6.0.3(postcss@8.4.38)
- postcss-unique-selectors: 6.0.4(postcss@8.4.38)
-
- cssnano-utils@4.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- cssnano@6.1.2(postcss@8.4.38):
- dependencies:
- cssnano-preset-default: 6.1.2(postcss@8.4.38)
- lilconfig: 3.1.1
- postcss: 8.4.38
-
- csso@5.0.5:
- dependencies:
- css-tree: 2.2.1
-
- csstype@3.1.3: {}
-
- debounce@1.2.1: {}
-
- debug@2.6.9:
- dependencies:
- ms: 2.0.0
-
- debug@4.3.4:
- dependencies:
- ms: 2.1.2
-
- decode-named-character-reference@1.0.2:
- dependencies:
- character-entities: 2.0.2
-
- decompress-response@6.0.0:
- dependencies:
- mimic-response: 3.1.0
-
- deep-extend@0.6.0: {}
-
- deep-is@0.1.4: {}
-
- deepmerge@4.3.1: {}
-
- default-gateway@6.0.3:
- dependencies:
- execa: 5.1.1
-
- defer-to-connect@2.0.1: {}
-
- define-data-property@1.1.4:
- dependencies:
- es-define-property: 1.0.0
- es-errors: 1.3.0
- gopd: 1.0.1
-
- define-lazy-prop@2.0.0: {}
-
- define-properties@1.2.1:
- dependencies:
- define-data-property: 1.1.4
- has-property-descriptors: 1.0.2
- object-keys: 1.1.1
-
- del@6.1.1:
- dependencies:
- globby: 11.1.0
- graceful-fs: 4.2.11
- is-glob: 4.0.3
- is-path-cwd: 2.2.0
- is-path-inside: 3.0.3
- p-map: 4.0.0
- rimraf: 3.0.2
- slash: 3.0.0
-
- depd@1.1.2: {}
-
- depd@2.0.0: {}
-
- dequal@2.0.3: {}
-
- destroy@1.2.0: {}
-
- detect-node-es@1.1.0: {}
-
- detect-node@2.1.0: {}
-
- detect-port-alt@1.1.6:
- dependencies:
- address: 1.2.2
- debug: 2.6.9
- transitivePeerDependencies:
- - supports-color
-
- detect-port@1.5.1:
- dependencies:
- address: 1.2.2
- debug: 4.3.4
- transitivePeerDependencies:
- - supports-color
-
- devlop@1.1.0:
- dependencies:
- dequal: 2.0.3
-
- didyoumean@1.2.2: {}
-
- diff@5.2.0: {}
-
- dir-glob@3.0.1:
- dependencies:
- path-type: 4.0.0
-
- dlv@1.1.3: {}
-
- dns-packet@5.6.1:
- dependencies:
- '@leichtgewicht/ip-codec': 2.0.5
-
- doctrine@3.0.0:
- dependencies:
- esutils: 2.0.3
-
- docusaurus-plugin-drawio@0.4.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- raw-loader: 4.0.2(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- transitivePeerDependencies:
- - webpack
-
- docusaurus-plugin-typedoc@0.18.0(typedoc-plugin-markdown@4.2.5(typedoc@0.26.6(typescript@5.2.2)))(typedoc@0.26.6(typescript@5.2.2)):
- dependencies:
- typedoc: 0.26.6(typescript@5.2.2)
- typedoc-plugin-markdown: 4.2.5(typedoc@0.26.6(typescript@5.2.2))
-
- dom-converter@0.2.0:
- dependencies:
- utila: 0.4.0
-
- dom-serializer@1.4.1:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 4.3.1
- entities: 2.2.0
-
- dom-serializer@2.0.0:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 5.0.3
- entities: 4.5.0
-
- domelementtype@2.3.0: {}
-
- domhandler@4.3.1:
- dependencies:
- domelementtype: 2.3.0
-
- domhandler@5.0.3:
- dependencies:
- domelementtype: 2.3.0
-
- domutils@2.8.0:
- dependencies:
- dom-serializer: 1.4.1
- domelementtype: 2.3.0
- domhandler: 4.3.1
-
- domutils@3.1.0:
- dependencies:
- dom-serializer: 2.0.0
- domelementtype: 2.3.0
- domhandler: 5.0.3
-
- dot-case@3.0.4:
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
-
- dot-prop@6.0.1:
- dependencies:
- is-obj: 2.0.0
-
- dotenv@16.4.5: {}
-
- duplexer@0.1.2: {}
-
- eastasianwidth@0.2.0: {}
-
- ee-first@1.1.1: {}
-
- electron-to-chromium@1.4.734: {}
-
- electron-to-chromium@1.5.80: {}
-
- emoji-regex@8.0.0: {}
-
- emoji-regex@9.2.2: {}
-
- emojilib@2.4.0: {}
-
- emojis-list@3.0.0: {}
-
- emoticon@4.0.1: {}
-
- encodeurl@1.0.2: {}
-
- enhanced-resolve@5.16.0:
- dependencies:
- graceful-fs: 4.2.11
- tapable: 2.2.1
-
- enhanced-resolve@5.18.0:
- dependencies:
- graceful-fs: 4.2.11
- tapable: 2.2.1
-
- entities@2.2.0: {}
-
- entities@4.5.0: {}
-
- error-ex@1.3.2:
- dependencies:
- is-arrayish: 0.2.1
-
- es-define-property@1.0.0:
- dependencies:
- get-intrinsic: 1.2.4
-
- es-errors@1.3.0: {}
-
- es-module-lexer@1.5.0: {}
-
- escalade@3.1.2: {}
-
- escalade@3.2.0: {}
-
- escape-goat@4.0.0: {}
-
- escape-html@1.0.3: {}
-
- escape-string-regexp@1.0.5: {}
-
- escape-string-regexp@4.0.0: {}
-
- escape-string-regexp@5.0.0: {}
-
- eslint-config-prettier@8.10.0(eslint@8.57.0):
- dependencies:
- eslint: 8.57.0
-
- eslint-plugin-prettier@4.2.1(eslint-config-prettier@8.10.0(eslint@8.57.0))(eslint@8.57.0)(prettier@2.8.8):
- dependencies:
- eslint: 8.57.0
- prettier: 2.8.8
- prettier-linter-helpers: 1.0.0
- optionalDependencies:
- eslint-config-prettier: 8.10.0(eslint@8.57.0)
-
- eslint-scope@5.1.1:
- dependencies:
- esrecurse: 4.3.0
- estraverse: 4.3.0
-
- eslint-scope@7.2.2:
- dependencies:
- esrecurse: 4.3.0
- estraverse: 5.3.0
-
- eslint-visitor-keys@3.4.3: {}
-
- eslint@8.57.0:
- dependencies:
- '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
- '@eslint-community/regexpp': 4.10.0
- '@eslint/eslintrc': 2.1.4
- '@eslint/js': 8.57.0
- '@humanwhocodes/config-array': 0.11.14
- '@humanwhocodes/module-importer': 1.0.1
- '@nodelib/fs.walk': 1.2.8
- '@ungap/structured-clone': 1.2.0
- ajv: 6.12.6
- chalk: 4.1.2
- cross-spawn: 7.0.3
- debug: 4.3.4
- doctrine: 3.0.0
- escape-string-regexp: 4.0.0
- eslint-scope: 7.2.2
- eslint-visitor-keys: 3.4.3
- espree: 9.6.1
- esquery: 1.5.0
- esutils: 2.0.3
- fast-deep-equal: 3.1.3
- file-entry-cache: 6.0.1
- find-up: 5.0.0
- glob-parent: 6.0.2
- globals: 13.24.0
- graphemer: 1.4.0
- ignore: 5.3.1
- imurmurhash: 0.1.4
- is-glob: 4.0.3
- is-path-inside: 3.0.3
- js-yaml: 4.1.0
- json-stable-stringify-without-jsonify: 1.0.1
- levn: 0.4.1
- lodash.merge: 4.6.2
- minimatch: 3.1.2
- natural-compare: 1.4.0
- optionator: 0.9.3
- strip-ansi: 6.0.1
- text-table: 0.2.0
- transitivePeerDependencies:
- - supports-color
-
- espree@9.6.1:
- dependencies:
- acorn: 8.11.3
- acorn-jsx: 5.3.2(acorn@8.11.3)
- eslint-visitor-keys: 3.4.3
-
- esprima@4.0.1: {}
-
- esquery@1.5.0:
- dependencies:
- estraverse: 5.3.0
-
- esrecurse@4.3.0:
- dependencies:
- estraverse: 5.3.0
-
- estraverse@4.3.0: {}
-
- estraverse@5.3.0: {}
-
- estree-util-attach-comments@3.0.0:
- dependencies:
- '@types/estree': 1.0.5
-
- estree-util-build-jsx@3.0.1:
- dependencies:
- '@types/estree-jsx': 1.0.5
- devlop: 1.1.0
- estree-util-is-identifier-name: 3.0.0
- estree-walker: 3.0.3
-
- estree-util-is-identifier-name@3.0.0: {}
-
- estree-util-to-js@2.0.0:
- dependencies:
- '@types/estree-jsx': 1.0.5
- astring: 1.8.6
- source-map: 0.7.4
-
- estree-util-value-to-estree@3.1.1:
- dependencies:
- '@types/estree': 1.0.5
- is-plain-obj: 4.1.0
-
- estree-util-visit@2.0.0:
- dependencies:
- '@types/estree-jsx': 1.0.5
- '@types/unist': 3.0.2
-
- estree-walker@3.0.3:
- dependencies:
- '@types/estree': 1.0.5
-
- esutils@2.0.3: {}
-
- eta@2.2.0: {}
-
- etag@1.8.1: {}
-
- eval@0.1.8:
- dependencies:
- '@types/node': 20.12.7
- require-like: 0.1.2
-
- eventemitter3@4.0.7: {}
-
- events@3.3.0: {}
-
- execa@5.1.1:
- dependencies:
- cross-spawn: 7.0.3
- get-stream: 6.0.1
- human-signals: 2.1.0
- is-stream: 2.0.1
- merge-stream: 2.0.0
- npm-run-path: 4.0.1
- onetime: 5.1.2
- signal-exit: 3.0.7
- strip-final-newline: 2.0.0
-
- express@4.19.2:
- dependencies:
- accepts: 1.3.8
- array-flatten: 1.1.1
- body-parser: 1.20.2
- content-disposition: 0.5.4
- content-type: 1.0.5
- cookie: 0.6.0
- cookie-signature: 1.0.6
- debug: 2.6.9
- depd: 2.0.0
- encodeurl: 1.0.2
- escape-html: 1.0.3
- etag: 1.8.1
- finalhandler: 1.2.0
- fresh: 0.5.2
- http-errors: 2.0.0
- merge-descriptors: 1.0.1
- methods: 1.1.2
- on-finished: 2.4.1
- parseurl: 1.3.3
- path-to-regexp: 0.1.7
- proxy-addr: 2.0.7
- qs: 6.11.0
- range-parser: 1.2.1
- safe-buffer: 5.2.1
- send: 0.18.0
- serve-static: 1.15.0
- setprototypeof: 1.2.0
- statuses: 2.0.1
- type-is: 1.6.18
- utils-merge: 1.0.1
- vary: 1.1.2
- transitivePeerDependencies:
- - supports-color
-
- extend-shallow@2.0.1:
- dependencies:
- is-extendable: 0.1.1
-
- extend@3.0.2: {}
-
- fast-deep-equal@3.1.3: {}
-
- fast-diff@1.3.0: {}
-
- fast-glob@3.3.2:
- dependencies:
- '@nodelib/fs.stat': 2.0.5
- '@nodelib/fs.walk': 1.2.8
- glob-parent: 5.1.2
- merge2: 1.4.1
- micromatch: 4.0.5
-
- fast-json-stable-stringify@2.1.0: {}
-
- fast-levenshtein@2.0.6: {}
-
- fastq@1.17.1:
- dependencies:
- reusify: 1.0.4
-
- fault@2.0.1:
- dependencies:
- format: 0.2.2
-
- faye-websocket@0.11.4:
- dependencies:
- websocket-driver: 0.7.4
-
- feed@4.2.2:
- dependencies:
- xml-js: 1.6.11
-
- figures@3.2.0:
- dependencies:
- escape-string-regexp: 1.0.5
-
- file-entry-cache@6.0.1:
- dependencies:
- flat-cache: 3.2.0
-
- file-loader@6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- loader-utils: 2.0.4
- schema-utils: 3.3.0
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optional: true
-
- file-loader@6.2.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- loader-utils: 2.0.4
- schema-utils: 3.3.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- filesize@8.0.7: {}
-
- fill-range@7.0.1:
- dependencies:
- to-regex-range: 5.0.1
-
- fill-range@7.1.1:
- dependencies:
- to-regex-range: 5.0.1
-
- finalhandler@1.2.0:
- dependencies:
- debug: 2.6.9
- encodeurl: 1.0.2
- escape-html: 1.0.3
- on-finished: 2.4.1
- parseurl: 1.3.3
- statuses: 2.0.1
- unpipe: 1.0.0
- transitivePeerDependencies:
- - supports-color
-
- find-cache-dir@4.0.0:
- dependencies:
- common-path-prefix: 3.0.0
- pkg-dir: 7.0.0
-
- find-up@3.0.0:
- dependencies:
- locate-path: 3.0.0
-
- find-up@5.0.0:
- dependencies:
- locate-path: 6.0.0
- path-exists: 4.0.0
-
- find-up@6.3.0:
- dependencies:
- locate-path: 7.2.0
- path-exists: 5.0.0
-
- find-yarn-workspace-root@2.0.0:
- dependencies:
- micromatch: 4.0.5
-
- flat-cache@3.2.0:
- dependencies:
- flatted: 3.3.1
- keyv: 4.5.4
- rimraf: 3.0.2
-
- flat@5.0.2: {}
-
- flatted@3.3.1: {}
-
- follow-redirects@1.15.6: {}
-
- foreground-child@3.3.1:
- dependencies:
- cross-spawn: 7.0.6
- signal-exit: 4.1.0
-
- fork-ts-checker-webpack-plugin@6.5.3(eslint@8.57.0)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@babel/code-frame': 7.24.2
- '@types/json-schema': 7.0.15
- chalk: 4.1.2
- chokidar: 3.6.0
- cosmiconfig: 6.0.0
- deepmerge: 4.3.1
- fs-extra: 9.1.0
- glob: 7.2.3
- memfs: 3.5.3
- minimatch: 3.1.2
- schema-utils: 2.7.0
- semver: 7.6.0
- tapable: 1.1.3
- typescript: 5.2.2
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- eslint: 8.57.0
-
- form-data-encoder@2.1.4: {}
-
- format@0.2.2: {}
-
- forwarded@0.2.0: {}
-
- fraction.js@4.3.7: {}
-
- fresh@0.5.2: {}
-
- fs-extra@11.2.0:
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.1
-
- fs-extra@9.1.0:
- dependencies:
- at-least-node: 1.0.0
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.1
-
- fs-monkey@1.0.5: {}
-
- fs.realpath@1.0.0: {}
-
- fsevents@2.3.3:
- optional: true
-
- function-bind@1.1.2: {}
-
- gensync@1.0.0-beta.2: {}
-
- get-intrinsic@1.2.4:
- dependencies:
- es-errors: 1.3.0
- function-bind: 1.1.2
- has-proto: 1.0.3
- has-symbols: 1.0.3
- hasown: 2.0.2
-
- get-nonce@1.0.1: {}
-
- get-own-enumerable-property-symbols@3.0.2: {}
-
- get-stream@6.0.1: {}
-
- github-slugger@1.5.0: {}
-
- glob-parent@5.1.2:
- dependencies:
- is-glob: 4.0.3
-
- glob-parent@6.0.2:
- dependencies:
- is-glob: 4.0.3
-
- glob-to-regexp@0.4.1: {}
-
- glob@10.4.5:
- dependencies:
- foreground-child: 3.3.1
- jackspeak: 3.4.3
- minimatch: 9.0.5
- minipass: 7.1.2
- package-json-from-dist: 1.0.1
- path-scurry: 1.11.1
-
- glob@7.2.3:
- dependencies:
- fs.realpath: 1.0.0
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
-
- global-dirs@3.0.1:
- dependencies:
- ini: 2.0.0
-
- global-modules@2.0.0:
- dependencies:
- global-prefix: 3.0.0
-
- global-prefix@3.0.0:
- dependencies:
- ini: 1.3.8
- kind-of: 6.0.3
- which: 1.3.1
-
- globals@11.12.0: {}
-
- globals@13.24.0:
- dependencies:
- type-fest: 0.20.2
-
- globby@11.1.0:
- dependencies:
- array-union: 2.1.0
- dir-glob: 3.0.1
- fast-glob: 3.3.2
- ignore: 5.3.1
- merge2: 1.4.1
- slash: 3.0.0
-
- globby@13.2.2:
- dependencies:
- dir-glob: 3.0.1
- fast-glob: 3.3.2
- ignore: 5.3.1
- merge2: 1.4.1
- slash: 4.0.0
-
- gopd@1.0.1:
- dependencies:
- get-intrinsic: 1.2.4
-
- got@12.6.1:
- dependencies:
- '@sindresorhus/is': 5.6.0
- '@szmarczak/http-timer': 5.0.1
- cacheable-lookup: 7.0.0
- cacheable-request: 10.2.14
- decompress-response: 6.0.0
- form-data-encoder: 2.1.4
- get-stream: 6.0.1
- http2-wrapper: 2.2.1
- lowercase-keys: 3.0.0
- p-cancelable: 3.0.0
- responselike: 3.0.0
-
- graceful-fs@4.2.10: {}
-
- graceful-fs@4.2.11: {}
-
- graphemer@1.4.0: {}
-
- gray-matter@4.0.3:
- dependencies:
- js-yaml: 3.14.1
- kind-of: 6.0.3
- section-matter: 1.0.0
- strip-bom-string: 1.0.0
-
- gzip-size@6.0.0:
- dependencies:
- duplexer: 0.1.2
-
- handle-thing@2.0.1: {}
-
- has-flag@3.0.0: {}
-
- has-flag@4.0.0: {}
-
- has-property-descriptors@1.0.2:
- dependencies:
- es-define-property: 1.0.0
-
- has-proto@1.0.3: {}
-
- has-symbols@1.0.3: {}
-
- has-yarn@3.0.0: {}
-
- hasown@2.0.2:
- dependencies:
- function-bind: 1.1.2
-
- hast-util-from-dom@5.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hastscript: 8.0.0
- web-namespaces: 2.0.1
-
- hast-util-from-html-isomorphic@2.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hast-util-from-dom: 5.0.0
- hast-util-from-html: 2.0.1
- unist-util-remove-position: 5.0.0
-
- hast-util-from-html@2.0.1:
- dependencies:
- '@types/hast': 3.0.4
- devlop: 1.1.0
- hast-util-from-parse5: 8.0.1
- parse5: 7.1.2
- vfile: 6.0.1
- vfile-message: 4.0.2
-
- hast-util-from-parse5@8.0.1:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- devlop: 1.1.0
- hastscript: 8.0.0
- property-information: 6.5.0
- vfile: 6.0.1
- vfile-location: 5.0.2
- web-namespaces: 2.0.1
-
- hast-util-is-element@1.1.0: {}
-
- hast-util-is-element@3.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hast-util-parse-selector@4.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hast-util-raw@9.0.2:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- '@ungap/structured-clone': 1.2.0
- hast-util-from-parse5: 8.0.1
- hast-util-to-parse5: 8.0.0
- html-void-elements: 3.0.0
- mdast-util-to-hast: 13.1.0
- parse5: 7.1.2
- unist-util-position: 5.0.0
- unist-util-visit: 5.0.0
- vfile: 6.0.1
- web-namespaces: 2.0.1
- zwitch: 2.0.4
-
- hast-util-to-estree@3.1.0:
- dependencies:
- '@types/estree': 1.0.5
- '@types/estree-jsx': 1.0.5
- '@types/hast': 3.0.4
- comma-separated-tokens: 2.0.3
- devlop: 1.1.0
- estree-util-attach-comments: 3.0.0
- estree-util-is-identifier-name: 3.0.0
- hast-util-whitespace: 3.0.0
- mdast-util-mdx-expression: 2.0.0
- mdast-util-mdx-jsx: 3.1.2
- mdast-util-mdxjs-esm: 2.0.1
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
- style-to-object: 0.4.4
- unist-util-position: 5.0.0
- zwitch: 2.0.4
- transitivePeerDependencies:
- - supports-color
-
- hast-util-to-jsx-runtime@2.3.0:
- dependencies:
- '@types/estree': 1.0.5
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- comma-separated-tokens: 2.0.3
- devlop: 1.1.0
- estree-util-is-identifier-name: 3.0.0
- hast-util-whitespace: 3.0.0
- mdast-util-mdx-expression: 2.0.0
- mdast-util-mdx-jsx: 3.1.2
- mdast-util-mdxjs-esm: 2.0.1
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
- style-to-object: 1.0.6
- unist-util-position: 5.0.0
- vfile-message: 4.0.2
- transitivePeerDependencies:
- - supports-color
-
- hast-util-to-parse5@8.0.0:
- dependencies:
- '@types/hast': 3.0.4
- comma-separated-tokens: 2.0.3
- devlop: 1.1.0
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
- web-namespaces: 2.0.1
- zwitch: 2.0.4
-
- hast-util-to-text@4.0.1:
- dependencies:
- '@types/hast': 3.0.4
- '@types/unist': 3.0.2
- hast-util-is-element: 3.0.0
- unist-util-find-after: 5.0.0
-
- hast-util-whitespace@2.0.1: {}
-
- hast-util-whitespace@3.0.0:
- dependencies:
- '@types/hast': 3.0.4
-
- hastscript@8.0.0:
- dependencies:
- '@types/hast': 3.0.4
- comma-separated-tokens: 2.0.3
- hast-util-parse-selector: 4.0.0
- property-information: 6.5.0
- space-separated-tokens: 2.0.2
-
- he@1.2.0: {}
-
- history@4.10.1:
- dependencies:
- '@babel/runtime': 7.24.4
- loose-envify: 1.4.0
- resolve-pathname: 3.0.0
- tiny-invariant: 1.3.3
- tiny-warning: 1.0.3
- value-equal: 1.0.1
-
- hoist-non-react-statics@3.3.2:
- dependencies:
- react-is: 16.13.1
-
- hpack.js@2.1.6:
- dependencies:
- inherits: 2.0.4
- obuf: 1.1.2
- readable-stream: 2.3.8
- wbuf: 1.7.3
-
- html-entities@2.5.2: {}
-
- html-escaper@2.0.2: {}
-
- html-minifier-terser@6.1.0:
- dependencies:
- camel-case: 4.1.2
- clean-css: 5.3.3
- commander: 8.3.0
- he: 1.2.0
- param-case: 3.0.4
- relateurl: 0.2.7
- terser: 5.30.3
-
- html-minifier-terser@7.2.0:
- dependencies:
- camel-case: 4.1.2
- clean-css: 5.3.3
- commander: 10.0.1
- entities: 4.5.0
- param-case: 3.0.4
- relateurl: 0.2.7
- terser: 5.30.3
-
- html-tags@3.3.1: {}
-
- html-void-elements@3.0.0: {}
-
- html-webpack-plugin@5.6.0(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@types/html-minifier-terser': 6.1.0
- html-minifier-terser: 6.1.0
- lodash: 4.17.21
- pretty-error: 4.0.0
- tapable: 2.2.1
- optionalDependencies:
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- htmlparser2@6.1.0:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 4.3.1
- domutils: 2.8.0
- entities: 2.2.0
-
- htmlparser2@8.0.2:
- dependencies:
- domelementtype: 2.3.0
- domhandler: 5.0.3
- domutils: 3.1.0
- entities: 4.5.0
-
- http-cache-semantics@4.1.1: {}
-
- http-deceiver@1.2.7: {}
-
- http-errors@1.6.3:
- dependencies:
- depd: 1.1.2
- inherits: 2.0.3
- setprototypeof: 1.1.0
- statuses: 1.5.0
-
- http-errors@2.0.0:
- dependencies:
- depd: 2.0.0
- inherits: 2.0.4
- setprototypeof: 1.2.0
- statuses: 2.0.1
- toidentifier: 1.0.1
-
- http-parser-js@0.5.8: {}
-
- http-proxy-middleware@2.0.6(@types/express@4.17.21):
- dependencies:
- '@types/http-proxy': 1.17.14
- http-proxy: 1.18.1
- is-glob: 4.0.3
- is-plain-obj: 3.0.0
- micromatch: 4.0.5
- optionalDependencies:
- '@types/express': 4.17.21
- transitivePeerDependencies:
- - debug
-
- http-proxy@1.18.1:
- dependencies:
- eventemitter3: 4.0.7
- follow-redirects: 1.15.6
- requires-port: 1.0.0
- transitivePeerDependencies:
- - debug
-
- http2-wrapper@2.2.1:
- dependencies:
- quick-lru: 5.1.1
- resolve-alpn: 1.2.1
-
- human-signals@2.1.0: {}
-
- iconv-lite@0.4.24:
- dependencies:
- safer-buffer: 2.1.2
-
- icss-utils@5.1.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- ieee754@1.2.1: {}
-
- ignore@5.3.1: {}
-
- image-size@1.1.1:
- dependencies:
- queue: 6.0.2
-
- immer@9.0.21: {}
-
- import-fresh@3.3.0:
- dependencies:
- parent-module: 1.0.1
- resolve-from: 4.0.0
-
- import-lazy@4.0.0: {}
-
- imurmurhash@0.1.4: {}
-
- indent-string@4.0.0: {}
-
- infima@0.2.0-alpha.45: {}
-
- inflight@1.0.6:
- dependencies:
- once: 1.4.0
- wrappy: 1.0.2
-
- inherits@2.0.3: {}
-
- inherits@2.0.4: {}
-
- ini@1.3.8: {}
-
- ini@2.0.0: {}
-
- inline-style-parser@0.1.1: {}
-
- inline-style-parser@0.2.3: {}
-
- interpret@1.4.0: {}
-
- invariant@2.2.4:
- dependencies:
- loose-envify: 1.4.0
-
- ipaddr.js@1.9.1: {}
-
- ipaddr.js@2.1.0: {}
-
- is-alphabetical@2.0.1: {}
-
- is-alphanumerical@2.0.1:
- dependencies:
- is-alphabetical: 2.0.1
- is-decimal: 2.0.1
-
- is-arrayish@0.2.1: {}
-
- is-binary-path@2.1.0:
- dependencies:
- binary-extensions: 2.3.0
-
- is-buffer@2.0.5: {}
-
- is-ci@2.0.0:
- dependencies:
- ci-info: 2.0.0
-
- is-ci@3.0.1:
- dependencies:
- ci-info: 3.9.0
-
- is-core-module@2.13.1:
- dependencies:
- hasown: 2.0.2
-
- is-decimal@2.0.1: {}
-
- is-docker@2.2.1: {}
-
- is-extendable@0.1.1: {}
-
- is-extglob@2.1.1: {}
-
- is-fullwidth-code-point@3.0.0: {}
-
- is-glob@4.0.3:
- dependencies:
- is-extglob: 2.1.1
-
- is-hexadecimal@2.0.1: {}
-
- is-installed-globally@0.4.0:
- dependencies:
- global-dirs: 3.0.1
- is-path-inside: 3.0.3
-
- is-npm@6.0.0: {}
-
- is-number@7.0.0: {}
-
- is-obj@1.0.1: {}
-
- is-obj@2.0.0: {}
-
- is-path-cwd@2.2.0: {}
-
- is-path-inside@3.0.3: {}
-
- is-plain-obj@3.0.0: {}
-
- is-plain-obj@4.1.0: {}
-
- is-plain-object@2.0.4:
- dependencies:
- isobject: 3.0.1
-
- is-reference@3.0.2:
- dependencies:
- '@types/estree': 1.0.5
-
- is-regexp@1.0.0: {}
-
- is-root@2.1.0: {}
-
- is-stream@2.0.1: {}
-
- is-typedarray@1.0.0: {}
-
- is-wsl@2.2.0:
- dependencies:
- is-docker: 2.2.1
-
- is-yarn-global@0.4.1: {}
-
- isarray@0.0.1: {}
-
- isarray@1.0.0: {}
-
- isexe@2.0.0: {}
-
- isobject@3.0.1: {}
-
- jackspeak@3.4.3:
- dependencies:
- '@isaacs/cliui': 8.0.2
- optionalDependencies:
- '@pkgjs/parseargs': 0.11.0
-
- jest-util@29.7.0:
- dependencies:
- '@jest/types': 29.6.3
- '@types/node': 20.12.7
- chalk: 4.1.2
- ci-info: 3.9.0
- graceful-fs: 4.2.11
- picomatch: 2.3.1
-
- jest-worker@27.5.1:
- dependencies:
- '@types/node': 20.12.7
- merge-stream: 2.0.0
- supports-color: 8.1.1
-
- jest-worker@29.7.0:
- dependencies:
- '@types/node': 20.12.7
- jest-util: 29.7.0
- merge-stream: 2.0.0
- supports-color: 8.1.1
-
- jiti@1.21.0: {}
-
- jiti@1.21.7: {}
-
- joi@17.12.3:
- dependencies:
- '@hapi/hoek': 9.3.0
- '@hapi/topo': 5.1.0
- '@sideway/address': 4.1.5
- '@sideway/formula': 3.0.1
- '@sideway/pinpoint': 2.0.0
-
- js-tokens@4.0.0: {}
-
- js-yaml@3.14.1:
- dependencies:
- argparse: 1.0.10
- esprima: 4.0.1
-
- js-yaml@4.1.0:
- dependencies:
- argparse: 2.0.1
-
- jsesc@0.5.0: {}
-
- jsesc@2.5.2: {}
-
- jsesc@3.0.2: {}
-
- jsesc@3.1.0: {}
-
- json-buffer@3.0.1: {}
-
- json-parse-even-better-errors@2.3.1: {}
-
- json-schema-traverse@0.4.1: {}
-
- json-schema-traverse@1.0.0: {}
-
- json-stable-stringify-without-jsonify@1.0.1: {}
-
- json5@2.2.3: {}
-
- jsonfile@6.1.0:
- dependencies:
- universalify: 2.0.1
- optionalDependencies:
- graceful-fs: 4.2.11
-
- katex@0.16.10:
- dependencies:
- commander: 8.3.0
-
- keyv@4.5.4:
- dependencies:
- json-buffer: 3.0.1
-
- kind-of@6.0.3: {}
-
- klaw-sync@6.0.0:
- dependencies:
- graceful-fs: 4.2.11
-
- kleur@3.0.3: {}
-
- kleur@4.1.5: {}
-
- latest-version@7.0.0:
- dependencies:
- package-json: 8.1.1
-
- launch-editor@2.6.1:
- dependencies:
- picocolors: 1.0.0
- shell-quote: 1.8.1
-
- leven@3.1.0: {}
-
- levn@0.4.1:
- dependencies:
- prelude-ls: 1.2.1
- type-check: 0.4.0
-
- lilconfig@3.1.1: {}
-
- lilconfig@3.1.3: {}
-
- lines-and-columns@1.2.4: {}
-
- linkify-it@5.0.0:
- dependencies:
- uc.micro: 2.1.0
-
- loader-runner@4.3.0: {}
-
- loader-utils@2.0.4:
- dependencies:
- big.js: 5.2.2
- emojis-list: 3.0.0
- json5: 2.2.3
-
- loader-utils@3.2.1: {}
-
- locate-path@3.0.0:
- dependencies:
- p-locate: 3.0.0
- path-exists: 3.0.0
-
- locate-path@6.0.0:
- dependencies:
- p-locate: 5.0.0
-
- locate-path@7.2.0:
- dependencies:
- p-locate: 6.0.0
-
- lodash.debounce@4.0.8: {}
-
- lodash.memoize@4.1.2: {}
-
- lodash.merge@4.6.2: {}
-
- lodash.uniq@4.5.0: {}
-
- lodash@4.17.21: {}
-
- longest-streak@3.1.0: {}
-
- loose-envify@1.4.0:
- dependencies:
- js-tokens: 4.0.0
-
- lower-case@2.0.2:
- dependencies:
- tslib: 2.6.2
-
- lowercase-keys@3.0.0: {}
-
- lru-cache@10.4.3: {}
-
- lru-cache@5.1.1:
- dependencies:
- yallist: 3.1.1
-
- lru-cache@6.0.0:
- dependencies:
- yallist: 4.0.0
-
- lunr@2.3.9: {}
-
- markdown-extensions@2.0.0: {}
-
- markdown-it@14.1.0:
- dependencies:
- argparse: 2.0.1
- entities: 4.5.0
- linkify-it: 5.0.0
- mdurl: 2.0.0
- punycode.js: 2.3.1
- uc.micro: 2.1.0
-
- markdown-table@2.0.0:
- dependencies:
- repeat-string: 1.6.1
-
- markdown-table@3.0.3: {}
-
- mdast-util-definitions@5.1.2:
- dependencies:
- '@types/mdast': 3.0.15
- '@types/unist': 2.0.10
- unist-util-visit: 4.1.2
-
- mdast-util-directive@3.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- '@types/unist': 3.0.2
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- parse-entities: 4.0.1
- stringify-entities: 4.0.4
- unist-util-visit-parents: 6.0.1
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-find-and-replace@3.0.1:
- dependencies:
- '@types/mdast': 4.0.3
- escape-string-regexp: 5.0.0
- unist-util-is: 6.0.0
- unist-util-visit-parents: 6.0.1
-
- mdast-util-from-markdown@1.3.1:
- dependencies:
- '@types/mdast': 3.0.15
- '@types/unist': 2.0.10
- decode-named-character-reference: 1.0.2
- mdast-util-to-string: 3.2.0
- micromark: 3.2.0
- micromark-util-decode-numeric-character-reference: 1.1.0
- micromark-util-decode-string: 1.1.0
- micromark-util-normalize-identifier: 1.1.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
- unist-util-stringify-position: 3.0.3
- uvu: 0.5.6
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-from-markdown@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- '@types/unist': 3.0.2
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- mdast-util-to-string: 4.0.0
- micromark: 4.0.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-decode-string: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- unist-util-stringify-position: 4.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-frontmatter@2.0.1:
- dependencies:
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- escape-string-regexp: 5.0.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- micromark-extension-frontmatter: 2.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-autolink-literal@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- ccount: 2.0.1
- devlop: 1.1.0
- mdast-util-find-and-replace: 3.0.1
- micromark-util-character: 2.1.0
-
- mdast-util-gfm-footnote@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- micromark-util-normalize-identifier: 2.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-strikethrough@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-table@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- markdown-table: 3.0.3
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm-task-list-item@2.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-gfm@3.0.0:
- dependencies:
- mdast-util-from-markdown: 2.0.0
- mdast-util-gfm-autolink-literal: 2.0.0
- mdast-util-gfm-footnote: 2.0.0
- mdast-util-gfm-strikethrough: 2.0.0
- mdast-util-gfm-table: 2.0.0
- mdast-util-gfm-task-list-item: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-math@3.0.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- longest-streak: 3.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- unist-util-remove-position: 5.0.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-mdx-expression@2.0.0:
- dependencies:
- '@types/estree-jsx': 1.0.5
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-mdx-jsx@3.1.2:
- dependencies:
- '@types/estree-jsx': 1.0.5
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- '@types/unist': 3.0.2
- ccount: 2.0.1
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- parse-entities: 4.0.1
- stringify-entities: 4.0.4
- unist-util-remove-position: 5.0.0
- unist-util-stringify-position: 4.0.0
- vfile-message: 4.0.2
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-mdx@3.0.0:
- dependencies:
- mdast-util-from-markdown: 2.0.0
- mdast-util-mdx-expression: 2.0.0
- mdast-util-mdx-jsx: 3.1.2
- mdast-util-mdxjs-esm: 2.0.1
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-mdxjs-esm@2.0.1:
- dependencies:
- '@types/estree-jsx': 1.0.5
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- devlop: 1.1.0
- mdast-util-from-markdown: 2.0.0
- mdast-util-to-markdown: 2.1.0
- transitivePeerDependencies:
- - supports-color
-
- mdast-util-phrasing@4.1.0:
- dependencies:
- '@types/mdast': 4.0.3
- unist-util-is: 6.0.0
-
- mdast-util-to-hast@12.3.0:
- dependencies:
- '@types/hast': 2.3.10
- '@types/mdast': 3.0.15
- mdast-util-definitions: 5.1.2
- micromark-util-sanitize-uri: 1.2.0
- trim-lines: 3.0.1
- unist-util-generated: 2.0.1
- unist-util-position: 4.0.4
- unist-util-visit: 4.1.2
-
- mdast-util-to-hast@13.1.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- '@ungap/structured-clone': 1.2.0
- devlop: 1.1.0
- micromark-util-sanitize-uri: 2.0.0
- trim-lines: 3.0.1
- unist-util-position: 5.0.0
- unist-util-visit: 5.0.0
- vfile: 6.0.1
-
- mdast-util-to-markdown@2.1.0:
- dependencies:
- '@types/mdast': 4.0.3
- '@types/unist': 3.0.2
- longest-streak: 3.1.0
- mdast-util-phrasing: 4.1.0
- mdast-util-to-string: 4.0.0
- micromark-util-decode-string: 2.0.0
- unist-util-visit: 5.0.0
- zwitch: 2.0.4
-
- mdast-util-to-string@3.2.0:
- dependencies:
- '@types/mdast': 3.0.15
-
- mdast-util-to-string@4.0.0:
- dependencies:
- '@types/mdast': 4.0.3
-
- mdn-data@2.0.28: {}
-
- mdn-data@2.0.30: {}
-
- mdurl@2.0.0: {}
-
- media-typer@0.3.0: {}
-
- memfs@3.5.3:
- dependencies:
- fs-monkey: 1.0.5
-
- merge-descriptors@1.0.1: {}
-
- merge-stream@2.0.0: {}
-
- merge2@1.4.1: {}
-
- methods@1.1.2: {}
-
- micromark-core-commonmark@1.1.0:
- dependencies:
- decode-named-character-reference: 1.0.2
- micromark-factory-destination: 1.1.0
- micromark-factory-label: 1.1.0
- micromark-factory-space: 1.1.0
- micromark-factory-title: 1.1.0
- micromark-factory-whitespace: 1.1.0
- micromark-util-character: 1.2.0
- micromark-util-chunked: 1.1.0
- micromark-util-classify-character: 1.1.0
- micromark-util-html-tag-name: 1.2.0
- micromark-util-normalize-identifier: 1.1.0
- micromark-util-resolve-all: 1.1.0
- micromark-util-subtokenize: 1.1.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
- uvu: 0.5.6
-
- micromark-core-commonmark@2.0.0:
- dependencies:
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- micromark-factory-destination: 2.0.0
- micromark-factory-label: 2.0.0
- micromark-factory-space: 2.0.0
- micromark-factory-title: 2.0.0
- micromark-factory-whitespace: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-classify-character: 2.0.0
- micromark-util-html-tag-name: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-subtokenize: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-directive@3.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-factory-space: 2.0.0
- micromark-factory-whitespace: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- parse-entities: 4.0.1
-
- micromark-extension-frontmatter@2.0.0:
- dependencies:
- fault: 2.0.1
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-autolink-literal@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-footnote@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-core-commonmark: 2.0.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-strikethrough@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-classify-character: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-table@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-tagfilter@2.0.0:
- dependencies:
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm-task-list-item@2.0.1:
- dependencies:
- devlop: 1.1.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-gfm@3.0.0:
- dependencies:
- micromark-extension-gfm-autolink-literal: 2.0.0
- micromark-extension-gfm-footnote: 2.0.0
- micromark-extension-gfm-strikethrough: 2.0.0
- micromark-extension-gfm-table: 2.0.0
- micromark-extension-gfm-tagfilter: 2.0.0
- micromark-extension-gfm-task-list-item: 2.0.1
- micromark-util-combine-extensions: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-math@3.0.0:
- dependencies:
- '@types/katex': 0.16.7
- devlop: 1.1.0
- katex: 0.16.10
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-mdx-expression@3.0.0:
- dependencies:
- '@types/estree': 1.0.5
- devlop: 1.1.0
- micromark-factory-mdx-expression: 2.0.1
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-events-to-acorn: 2.0.2
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-extension-mdx-jsx@3.0.0:
- dependencies:
- '@types/acorn': 4.0.6
- '@types/estree': 1.0.5
- devlop: 1.1.0
- estree-util-is-identifier-name: 3.0.0
- micromark-factory-mdx-expression: 2.0.1
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- vfile-message: 4.0.2
-
- micromark-extension-mdx-md@2.0.0:
- dependencies:
- micromark-util-types: 2.0.0
-
- micromark-extension-mdxjs-esm@3.0.0:
- dependencies:
- '@types/estree': 1.0.5
- devlop: 1.1.0
- micromark-core-commonmark: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-events-to-acorn: 2.0.2
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- unist-util-position-from-estree: 2.0.0
- vfile-message: 4.0.2
-
- micromark-extension-mdxjs@3.0.0:
- dependencies:
- acorn: 8.11.3
- acorn-jsx: 5.3.2(acorn@8.11.3)
- micromark-extension-mdx-expression: 3.0.0
- micromark-extension-mdx-jsx: 3.0.0
- micromark-extension-mdx-md: 2.0.0
- micromark-extension-mdxjs-esm: 3.0.0
- micromark-util-combine-extensions: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-destination@1.1.0:
- dependencies:
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-factory-destination@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-label@1.1.0:
- dependencies:
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
- uvu: 0.5.6
-
- micromark-factory-label@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-mdx-expression@2.0.1:
- dependencies:
- '@types/estree': 1.0.5
- devlop: 1.1.0
- micromark-util-character: 2.1.0
- micromark-util-events-to-acorn: 2.0.2
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- unist-util-position-from-estree: 2.0.0
- vfile-message: 4.0.2
-
- micromark-factory-space@1.1.0:
- dependencies:
- micromark-util-character: 1.2.0
- micromark-util-types: 1.1.0
-
- micromark-factory-space@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-types: 2.0.0
-
- micromark-factory-title@1.1.0:
- dependencies:
- micromark-factory-space: 1.1.0
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-factory-title@2.0.0:
- dependencies:
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-factory-whitespace@1.1.0:
- dependencies:
- micromark-factory-space: 1.1.0
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-factory-whitespace@2.0.0:
- dependencies:
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-character@1.2.0:
- dependencies:
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-util-character@2.1.0:
- dependencies:
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-chunked@1.1.0:
- dependencies:
- micromark-util-symbol: 1.1.0
-
- micromark-util-chunked@2.0.0:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-classify-character@1.1.0:
- dependencies:
- micromark-util-character: 1.2.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-util-classify-character@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-combine-extensions@1.1.0:
- dependencies:
- micromark-util-chunked: 1.1.0
- micromark-util-types: 1.1.0
-
- micromark-util-combine-extensions@2.0.0:
- dependencies:
- micromark-util-chunked: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-decode-numeric-character-reference@1.1.0:
- dependencies:
- micromark-util-symbol: 1.1.0
-
- micromark-util-decode-numeric-character-reference@2.0.1:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-decode-string@1.1.0:
- dependencies:
- decode-named-character-reference: 1.0.2
- micromark-util-character: 1.2.0
- micromark-util-decode-numeric-character-reference: 1.1.0
- micromark-util-symbol: 1.1.0
-
- micromark-util-decode-string@2.0.0:
- dependencies:
- decode-named-character-reference: 1.0.2
- micromark-util-character: 2.1.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-symbol: 2.0.0
-
- micromark-util-encode@1.1.0: {}
-
- micromark-util-encode@2.0.0: {}
-
- micromark-util-events-to-acorn@2.0.2:
- dependencies:
- '@types/acorn': 4.0.6
- '@types/estree': 1.0.5
- '@types/unist': 3.0.2
- devlop: 1.1.0
- estree-util-visit: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- vfile-message: 4.0.2
-
- micromark-util-html-tag-name@1.2.0: {}
-
- micromark-util-html-tag-name@2.0.0: {}
-
- micromark-util-normalize-identifier@1.1.0:
- dependencies:
- micromark-util-symbol: 1.1.0
-
- micromark-util-normalize-identifier@2.0.0:
- dependencies:
- micromark-util-symbol: 2.0.0
-
- micromark-util-resolve-all@1.1.0:
- dependencies:
- micromark-util-types: 1.1.0
-
- micromark-util-resolve-all@2.0.0:
- dependencies:
- micromark-util-types: 2.0.0
-
- micromark-util-sanitize-uri@1.2.0:
- dependencies:
- micromark-util-character: 1.2.0
- micromark-util-encode: 1.1.0
- micromark-util-symbol: 1.1.0
-
- micromark-util-sanitize-uri@2.0.0:
- dependencies:
- micromark-util-character: 2.1.0
- micromark-util-encode: 2.0.0
- micromark-util-symbol: 2.0.0
-
- micromark-util-subtokenize@1.1.0:
- dependencies:
- micromark-util-chunked: 1.1.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
- uvu: 0.5.6
-
- micromark-util-subtokenize@2.0.0:
- dependencies:
- devlop: 1.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
-
- micromark-util-symbol@1.1.0: {}
-
- micromark-util-symbol@2.0.0: {}
-
- micromark-util-types@1.1.0: {}
-
- micromark-util-types@2.0.0: {}
-
- micromark@3.2.0:
- dependencies:
- '@types/debug': 4.1.12
- debug: 4.3.4
- decode-named-character-reference: 1.0.2
- micromark-core-commonmark: 1.1.0
- micromark-factory-space: 1.1.0
- micromark-util-character: 1.2.0
- micromark-util-chunked: 1.1.0
- micromark-util-combine-extensions: 1.1.0
- micromark-util-decode-numeric-character-reference: 1.1.0
- micromark-util-encode: 1.1.0
- micromark-util-normalize-identifier: 1.1.0
- micromark-util-resolve-all: 1.1.0
- micromark-util-sanitize-uri: 1.2.0
- micromark-util-subtokenize: 1.1.0
- micromark-util-symbol: 1.1.0
- micromark-util-types: 1.1.0
- uvu: 0.5.6
- transitivePeerDependencies:
- - supports-color
-
- micromark@4.0.0:
- dependencies:
- '@types/debug': 4.1.12
- debug: 4.3.4
- decode-named-character-reference: 1.0.2
- devlop: 1.1.0
- micromark-core-commonmark: 2.0.0
- micromark-factory-space: 2.0.0
- micromark-util-character: 2.1.0
- micromark-util-chunked: 2.0.0
- micromark-util-combine-extensions: 2.0.0
- micromark-util-decode-numeric-character-reference: 2.0.1
- micromark-util-encode: 2.0.0
- micromark-util-normalize-identifier: 2.0.0
- micromark-util-resolve-all: 2.0.0
- micromark-util-sanitize-uri: 2.0.0
- micromark-util-subtokenize: 2.0.0
- micromark-util-symbol: 2.0.0
- micromark-util-types: 2.0.0
- transitivePeerDependencies:
- - supports-color
-
- micromatch@4.0.5:
- dependencies:
- braces: 3.0.2
- picomatch: 2.3.1
-
- micromatch@4.0.8:
- dependencies:
- braces: 3.0.3
- picomatch: 2.3.1
-
- mime-db@1.33.0: {}
-
- mime-db@1.52.0: {}
-
- mime-types@2.1.18:
- dependencies:
- mime-db: 1.33.0
-
- mime-types@2.1.35:
- dependencies:
- mime-db: 1.52.0
-
- mime@1.6.0: {}
-
- mimic-fn@2.1.0: {}
-
- mimic-response@3.1.0: {}
-
- mimic-response@4.0.0: {}
-
- mini-css-extract-plugin@2.9.2(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- schema-utils: 4.2.0
- tapable: 2.2.1
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- minimalistic-assert@1.0.1: {}
-
- minimatch@3.1.2:
- dependencies:
- brace-expansion: 1.1.11
-
- minimatch@9.0.5:
- dependencies:
- brace-expansion: 2.0.1
-
- minimist@1.2.8: {}
-
- minipass@7.1.2: {}
-
- mri@1.2.0: {}
-
- mrmime@2.0.0: {}
-
- ms@2.0.0: {}
-
- ms@2.1.2: {}
-
- ms@2.1.3: {}
-
- multicast-dns@7.2.5:
- dependencies:
- dns-packet: 5.6.1
- thunky: 1.1.0
-
- mz@2.7.0:
- dependencies:
- any-promise: 1.3.0
- object-assign: 4.1.1
- thenify-all: 1.6.0
-
- nanoid@3.3.11: {}
-
- nanoid@3.3.7: {}
-
- natural-compare-lite@1.4.0: {}
-
- natural-compare@1.4.0: {}
-
- negotiator@0.6.3: {}
-
- neo-async@2.6.2: {}
-
- nice-try@1.0.5: {}
-
- no-case@3.0.4:
- dependencies:
- lower-case: 2.0.2
- tslib: 2.6.2
-
- node-emoji@2.1.3:
- dependencies:
- '@sindresorhus/is': 4.6.0
- char-regex: 1.0.2
- emojilib: 2.4.0
- skin-tone: 2.0.0
-
- node-forge@1.3.1: {}
-
- node-releases@2.0.14: {}
-
- node-releases@2.0.19: {}
-
- normalize-path@3.0.0: {}
-
- normalize-range@0.1.2: {}
-
- normalize-url@8.0.1: {}
-
- npm-run-path@4.0.1:
- dependencies:
- path-key: 3.1.1
-
- nprogress@0.2.0: {}
-
- nth-check@2.1.1:
- dependencies:
- boolbase: 1.0.0
-
- null-loader@4.0.1(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- loader-utils: 2.0.4
- schema-utils: 3.3.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- object-assign@4.1.1: {}
-
- object-hash@3.0.0: {}
-
- object-inspect@1.13.1: {}
-
- object-keys@1.1.1: {}
-
- object.assign@4.1.5:
- dependencies:
- call-bind: 1.0.7
- define-properties: 1.2.1
- has-symbols: 1.0.3
- object-keys: 1.1.1
-
- obuf@1.1.2: {}
-
- on-finished@2.4.1:
- dependencies:
- ee-first: 1.1.1
-
- on-headers@1.0.2: {}
-
- once@1.4.0:
- dependencies:
- wrappy: 1.0.2
-
- onetime@5.1.2:
- dependencies:
- mimic-fn: 2.1.0
-
- open@7.4.2:
- dependencies:
- is-docker: 2.2.1
- is-wsl: 2.2.0
-
- open@8.4.2:
- dependencies:
- define-lazy-prop: 2.0.0
- is-docker: 2.2.1
- is-wsl: 2.2.0
-
- opener@1.5.2: {}
-
- optionator@0.9.3:
- dependencies:
- '@aashutoshrathi/word-wrap': 1.2.6
- deep-is: 0.1.4
- fast-levenshtein: 2.0.6
- levn: 0.4.1
- prelude-ls: 1.2.1
- type-check: 0.4.0
-
- os-tmpdir@1.0.2: {}
-
- p-cancelable@3.0.0: {}
-
- p-limit@2.3.0:
- dependencies:
- p-try: 2.2.0
-
- p-limit@3.1.0:
- dependencies:
- yocto-queue: 0.1.0
-
- p-limit@4.0.0:
- dependencies:
- yocto-queue: 1.0.0
-
- p-locate@3.0.0:
- dependencies:
- p-limit: 2.3.0
-
- p-locate@5.0.0:
- dependencies:
- p-limit: 3.1.0
-
- p-locate@6.0.0:
- dependencies:
- p-limit: 4.0.0
-
- p-map@4.0.0:
- dependencies:
- aggregate-error: 3.1.0
-
- p-retry@4.6.2:
- dependencies:
- '@types/retry': 0.12.0
- retry: 0.13.1
-
- p-try@2.2.0: {}
-
- package-json-from-dist@1.0.1: {}
-
- package-json@8.1.1:
- dependencies:
- got: 12.6.1
- registry-auth-token: 5.0.2
- registry-url: 6.0.1
- semver: 7.6.0
-
- param-case@3.0.4:
- dependencies:
- dot-case: 3.0.4
- tslib: 2.6.2
-
- parent-module@1.0.1:
- dependencies:
- callsites: 3.1.0
-
- parse-entities@4.0.1:
- dependencies:
- '@types/unist': 2.0.10
- character-entities: 2.0.2
- character-entities-legacy: 3.0.0
- character-reference-invalid: 2.0.1
- decode-named-character-reference: 1.0.2
- is-alphanumerical: 2.0.1
- is-decimal: 2.0.1
- is-hexadecimal: 2.0.1
-
- parse-json@5.2.0:
- dependencies:
- '@babel/code-frame': 7.24.2
- error-ex: 1.3.2
- json-parse-even-better-errors: 2.3.1
- lines-and-columns: 1.2.4
-
- parse-numeric-range@1.3.0: {}
-
- parse5-htmlparser2-tree-adapter@7.0.0:
- dependencies:
- domhandler: 5.0.3
- parse5: 7.1.2
-
- parse5@7.1.2:
- dependencies:
- entities: 4.5.0
-
- parseurl@1.3.3: {}
-
- pascal-case@3.1.2:
- dependencies:
- no-case: 3.0.4
- tslib: 2.6.2
-
- patch-package@6.5.1:
- dependencies:
- '@yarnpkg/lockfile': 1.1.0
- chalk: 4.1.2
- cross-spawn: 6.0.5
- find-yarn-workspace-root: 2.0.0
- fs-extra: 9.1.0
- is-ci: 2.0.0
- klaw-sync: 6.0.0
- minimist: 1.2.8
- open: 7.4.2
- rimraf: 2.7.1
- semver: 5.7.2
- slash: 2.0.0
- tmp: 0.0.33
- yaml: 1.10.2
-
- path-browserify@1.0.1: {}
-
- path-exists@3.0.0: {}
-
- path-exists@4.0.0: {}
-
- path-exists@5.0.0: {}
-
- path-is-absolute@1.0.1: {}
-
- path-is-inside@1.0.2: {}
-
- path-key@2.0.1: {}
-
- path-key@3.1.1: {}
-
- path-parse@1.0.7: {}
-
- path-scurry@1.11.1:
- dependencies:
- lru-cache: 10.4.3
- minipass: 7.1.2
-
- path-to-regexp@0.1.7: {}
-
- path-to-regexp@1.8.0:
- dependencies:
- isarray: 0.0.1
-
- path-to-regexp@3.3.0: {}
-
- path-type@4.0.0: {}
-
- periscopic@3.1.0:
- dependencies:
- '@types/estree': 1.0.5
- estree-walker: 3.0.3
- is-reference: 3.0.2
-
- picocolors@1.0.0: {}
-
- picocolors@1.1.1: {}
-
- picomatch@2.3.1: {}
-
- pify@2.3.0: {}
-
- pirates@4.0.7: {}
-
- pkg-dir@7.0.0:
- dependencies:
- find-up: 6.3.0
-
- pkg-up@3.1.0:
- dependencies:
- find-up: 3.0.0
-
- postcss-attribute-case-insensitive@7.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-calc@9.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
- postcss-value-parser: 4.2.0
-
- postcss-clamp@4.1.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-color-functional-notation@7.0.7(postcss@8.4.38):
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- postcss-color-hex-alpha@10.0.0(postcss@8.4.38):
- dependencies:
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-color-rebeccapurple@10.0.0(postcss@8.4.38):
- dependencies:
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-colormin@6.1.0(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- caniuse-api: 3.0.0
- colord: 2.9.3
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-convert-values@6.1.0(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-custom-media@11.0.5(postcss@8.4.38):
- dependencies:
- '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/media-query-list-parser': 4.0.2(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- postcss: 8.4.38
-
- postcss-custom-properties@14.0.4(postcss@8.4.38):
- dependencies:
- '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-custom-selectors@8.0.4(postcss@8.4.38):
- dependencies:
- '@csstools/cascade-layer-name-parser': 2.0.4(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-dir-pseudo-class@9.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-discard-comments@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-discard-duplicates@6.0.3(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-discard-empty@6.0.3(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-discard-overridden@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-discard-unused@6.0.5(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- postcss-double-position-gradients@6.0.0(postcss@8.4.38):
- dependencies:
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-focus-visible@10.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-focus-within@9.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-font-variant@5.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-gap-properties@6.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-image-set-function@7.0.0(postcss@8.4.38):
- dependencies:
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-import@15.1.0(postcss@8.5.3):
- dependencies:
- postcss: 8.5.3
- postcss-value-parser: 4.2.0
- read-cache: 1.0.0
- resolve: 1.22.8
-
- postcss-js@4.0.1(postcss@8.5.3):
- dependencies:
- camelcase-css: 2.0.1
- postcss: 8.5.3
-
- postcss-lab-function@7.0.7(postcss@8.4.38):
- dependencies:
- '@csstools/css-color-parser': 3.0.7(@csstools/css-parser-algorithms@3.0.4(@csstools/css-tokenizer@3.0.3))(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-parser-algorithms': 3.0.4(@csstools/css-tokenizer@3.0.3)
- '@csstools/css-tokenizer': 3.0.3
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/utilities': 2.0.0(postcss@8.4.38)
- postcss: 8.4.38
-
- postcss-load-config@4.0.2(postcss@8.5.3):
- dependencies:
- lilconfig: 3.1.3
- yaml: 2.5.0
- optionalDependencies:
- postcss: 8.5.3
-
- postcss-loader@7.3.4(postcss@8.4.38)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- cosmiconfig: 8.3.6(typescript@5.2.2)
- jiti: 1.21.0
- postcss: 8.4.38
- semver: 7.6.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - typescript
-
- postcss-logical@8.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-merge-idents@6.0.3(postcss@8.4.38):
- dependencies:
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-merge-longhand@6.0.5(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
- stylehacks: 6.1.1(postcss@8.4.38)
-
- postcss-merge-rules@6.1.1(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- caniuse-api: 3.0.0
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- postcss-minify-font-values@6.1.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-minify-gradients@6.0.3(postcss@8.4.38):
- dependencies:
- colord: 2.9.3
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-minify-params@6.1.0(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-minify-selectors@6.0.4(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- postcss-modules-extract-imports@3.1.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-modules-local-by-default@4.0.5(postcss@8.4.38):
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.38)
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
- postcss-value-parser: 4.2.0
-
- postcss-modules-scope@3.2.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- postcss-modules-values@4.0.0(postcss@8.4.38):
- dependencies:
- icss-utils: 5.1.0(postcss@8.4.38)
- postcss: 8.4.38
-
- postcss-nested@6.2.0(postcss@8.5.3):
- dependencies:
- postcss: 8.5.3
- postcss-selector-parser: 6.1.2
-
- postcss-nesting@13.0.1(postcss@8.4.38):
- dependencies:
- '@csstools/selector-resolve-nested': 3.0.0(postcss-selector-parser@7.0.0)
- '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.0.0)
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-normalize-charset@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-normalize-display-values@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-positions@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-repeat-style@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-string@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-timing-functions@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-unicode@6.1.0(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-url@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-normalize-whitespace@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-opacity-percentage@3.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-ordered-values@6.0.2(postcss@8.4.38):
- dependencies:
- cssnano-utils: 4.0.2(postcss@8.4.38)
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-overflow-shorthand@6.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-page-break@3.0.4(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-place@10.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-preset-env@10.1.3(postcss@8.4.38):
- dependencies:
- '@csstools/postcss-cascade-layers': 5.0.1(postcss@8.4.38)
- '@csstools/postcss-color-function': 4.0.7(postcss@8.4.38)
- '@csstools/postcss-color-mix-function': 3.0.7(postcss@8.4.38)
- '@csstools/postcss-content-alt-text': 2.0.4(postcss@8.4.38)
- '@csstools/postcss-exponential-functions': 2.0.6(postcss@8.4.38)
- '@csstools/postcss-font-format-keywords': 4.0.0(postcss@8.4.38)
- '@csstools/postcss-gamut-mapping': 2.0.7(postcss@8.4.38)
- '@csstools/postcss-gradients-interpolation-method': 5.0.7(postcss@8.4.38)
- '@csstools/postcss-hwb-function': 4.0.7(postcss@8.4.38)
- '@csstools/postcss-ic-unit': 4.0.0(postcss@8.4.38)
- '@csstools/postcss-initial': 2.0.0(postcss@8.4.38)
- '@csstools/postcss-is-pseudo-class': 5.0.1(postcss@8.4.38)
- '@csstools/postcss-light-dark-function': 2.0.7(postcss@8.4.38)
- '@csstools/postcss-logical-float-and-clear': 3.0.0(postcss@8.4.38)
- '@csstools/postcss-logical-overflow': 2.0.0(postcss@8.4.38)
- '@csstools/postcss-logical-overscroll-behavior': 2.0.0(postcss@8.4.38)
- '@csstools/postcss-logical-resize': 3.0.0(postcss@8.4.38)
- '@csstools/postcss-logical-viewport-units': 3.0.3(postcss@8.4.38)
- '@csstools/postcss-media-minmax': 2.0.6(postcss@8.4.38)
- '@csstools/postcss-media-queries-aspect-ratio-number-values': 3.0.4(postcss@8.4.38)
- '@csstools/postcss-nested-calc': 4.0.0(postcss@8.4.38)
- '@csstools/postcss-normalize-display-values': 4.0.0(postcss@8.4.38)
- '@csstools/postcss-oklab-function': 4.0.7(postcss@8.4.38)
- '@csstools/postcss-progressive-custom-properties': 4.0.0(postcss@8.4.38)
- '@csstools/postcss-random-function': 1.0.2(postcss@8.4.38)
- '@csstools/postcss-relative-color-syntax': 3.0.7(postcss@8.4.38)
- '@csstools/postcss-scope-pseudo-class': 4.0.1(postcss@8.4.38)
- '@csstools/postcss-sign-functions': 1.1.1(postcss@8.4.38)
- '@csstools/postcss-stepped-value-functions': 4.0.6(postcss@8.4.38)
- '@csstools/postcss-text-decoration-shorthand': 4.0.1(postcss@8.4.38)
- '@csstools/postcss-trigonometric-functions': 4.0.6(postcss@8.4.38)
- '@csstools/postcss-unset-value': 4.0.0(postcss@8.4.38)
- autoprefixer: 10.4.19(postcss@8.4.38)
- browserslist: 4.24.4
- css-blank-pseudo: 7.0.1(postcss@8.4.38)
- css-has-pseudo: 7.0.2(postcss@8.4.38)
- css-prefers-color-scheme: 10.0.0(postcss@8.4.38)
- cssdb: 8.2.3
- postcss: 8.4.38
- postcss-attribute-case-insensitive: 7.0.1(postcss@8.4.38)
- postcss-clamp: 4.1.0(postcss@8.4.38)
- postcss-color-functional-notation: 7.0.7(postcss@8.4.38)
- postcss-color-hex-alpha: 10.0.0(postcss@8.4.38)
- postcss-color-rebeccapurple: 10.0.0(postcss@8.4.38)
- postcss-custom-media: 11.0.5(postcss@8.4.38)
- postcss-custom-properties: 14.0.4(postcss@8.4.38)
- postcss-custom-selectors: 8.0.4(postcss@8.4.38)
- postcss-dir-pseudo-class: 9.0.1(postcss@8.4.38)
- postcss-double-position-gradients: 6.0.0(postcss@8.4.38)
- postcss-focus-visible: 10.0.1(postcss@8.4.38)
- postcss-focus-within: 9.0.1(postcss@8.4.38)
- postcss-font-variant: 5.0.0(postcss@8.4.38)
- postcss-gap-properties: 6.0.0(postcss@8.4.38)
- postcss-image-set-function: 7.0.0(postcss@8.4.38)
- postcss-lab-function: 7.0.7(postcss@8.4.38)
- postcss-logical: 8.0.0(postcss@8.4.38)
- postcss-nesting: 13.0.1(postcss@8.4.38)
- postcss-opacity-percentage: 3.0.0(postcss@8.4.38)
- postcss-overflow-shorthand: 6.0.0(postcss@8.4.38)
- postcss-page-break: 3.0.4(postcss@8.4.38)
- postcss-place: 10.0.0(postcss@8.4.38)
- postcss-pseudo-class-any-link: 10.0.1(postcss@8.4.38)
- postcss-replace-overflow-wrap: 4.0.0(postcss@8.4.38)
- postcss-selector-not: 8.0.1(postcss@8.4.38)
-
- postcss-pseudo-class-any-link@10.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-reduce-idents@6.0.3(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-reduce-initial@6.1.0(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- caniuse-api: 3.0.0
- postcss: 8.4.38
-
- postcss-reduce-transforms@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
-
- postcss-replace-overflow-wrap@4.0.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss-selector-not@8.0.1(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 7.0.0
-
- postcss-selector-parser@6.0.16:
- dependencies:
- cssesc: 3.0.0
- util-deprecate: 1.0.2
-
- postcss-selector-parser@6.1.2:
- dependencies:
- cssesc: 3.0.0
- util-deprecate: 1.0.2
-
- postcss-selector-parser@7.0.0:
- dependencies:
- cssesc: 3.0.0
- util-deprecate: 1.0.2
-
- postcss-sort-media-queries@5.2.0(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- sort-css-media-queries: 2.2.0
-
- postcss-svgo@6.0.3(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-value-parser: 4.2.0
- svgo: 3.3.2
-
- postcss-unique-selectors@6.0.4(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- postcss-value-parser@4.2.0: {}
-
- postcss-zindex@6.0.2(postcss@8.4.38):
- dependencies:
- postcss: 8.4.38
-
- postcss@8.4.38:
- dependencies:
- nanoid: 3.3.7
- picocolors: 1.0.0
- source-map-js: 1.2.0
-
- postcss@8.5.3:
- dependencies:
- nanoid: 3.3.11
- picocolors: 1.1.1
- source-map-js: 1.2.1
-
- prelude-ls@1.2.1: {}
-
- prettier-linter-helpers@1.0.0:
- dependencies:
- fast-diff: 1.3.0
-
- prettier-plugin-tailwindcss@0.2.8(prettier@2.8.8):
- dependencies:
- prettier: 2.8.8
-
- prettier@2.8.8: {}
-
- pretty-error@4.0.0:
- dependencies:
- lodash: 4.17.21
- renderkid: 3.0.0
-
- pretty-time@1.1.0: {}
-
- prism-react-renderer@2.3.1(react@19.1.0):
- dependencies:
- '@types/prismjs': 1.26.3
- clsx: 2.1.0
- react: 19.1.0
-
- prismjs@1.29.0: {}
-
- process-nextick-args@2.0.1: {}
-
- process@0.11.10: {}
-
- prompts@2.4.2:
- dependencies:
- kleur: 3.0.3
- sisteransi: 1.0.5
-
- prop-types@15.8.1:
- dependencies:
- loose-envify: 1.4.0
- object-assign: 4.1.1
- react-is: 16.13.1
-
- property-information@6.5.0: {}
-
- proto-list@1.2.4: {}
-
- proxy-addr@2.0.7:
- dependencies:
- forwarded: 0.2.0
- ipaddr.js: 1.9.1
-
- punycode.js@2.3.1: {}
-
- punycode@1.4.1: {}
-
- punycode@2.3.1: {}
-
- pupa@3.1.0:
- dependencies:
- escape-goat: 4.0.0
-
- qs@6.11.0:
- dependencies:
- side-channel: 1.0.6
-
- qs@6.12.0:
- dependencies:
- side-channel: 1.0.6
-
- queue-microtask@1.2.3: {}
-
- queue@6.0.2:
- dependencies:
- inherits: 2.0.4
-
- quick-lru@5.1.1: {}
-
- randombytes@2.1.0:
- dependencies:
- safe-buffer: 5.2.1
-
- range-parser@1.2.0: {}
-
- range-parser@1.2.1: {}
-
- raw-body@2.5.2:
- dependencies:
- bytes: 3.1.2
- http-errors: 2.0.0
- iconv-lite: 0.4.24
- unpipe: 1.0.0
-
- raw-loader@4.0.2(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- loader-utils: 2.0.4
- schema-utils: 3.3.0
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- rc@1.2.8:
- dependencies:
- deep-extend: 0.6.0
- ini: 1.3.8
- minimist: 1.2.8
- strip-json-comments: 2.0.1
-
- react-dev-utils@12.0.1(eslint@8.57.0)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@babel/code-frame': 7.24.2
- address: 1.2.2
- browserslist: 4.23.0
- chalk: 4.1.2
- cross-spawn: 7.0.3
- detect-port-alt: 1.1.6
- escape-string-regexp: 4.0.0
- filesize: 8.0.7
- find-up: 5.0.0
- fork-ts-checker-webpack-plugin: 6.5.3(eslint@8.57.0)(typescript@5.2.2)(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- global-modules: 2.0.0
- globby: 11.1.0
- gzip-size: 6.0.0
- immer: 9.0.21
- is-root: 2.1.0
- loader-utils: 3.2.1
- open: 8.4.2
- pkg-up: 3.1.0
- prompts: 2.4.2
- react-error-overlay: 6.0.11
- recursive-readdir: 2.2.3
- shell-quote: 1.8.1
- strip-ansi: 6.0.1
- text-table: 0.2.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- typescript: 5.2.2
- transitivePeerDependencies:
- - eslint
- - supports-color
- - vue-template-compiler
-
- react-dom@19.1.0(react@19.1.0):
- dependencies:
- react: 19.1.0
- scheduler: 0.26.0
-
- react-error-overlay@6.0.11: {}
-
- react-fast-compare@3.2.2: {}
-
- react-feather@2.0.10(react@19.1.0):
- dependencies:
- prop-types: 15.8.1
- react: 19.1.0
-
- react-is@16.13.1: {}
-
- react-is@18.2.0: {}
-
- react-json-view-lite@1.3.0(react@19.1.0):
- dependencies:
- react: 19.1.0
-
- react-loadable-ssr-addon-v5-slorber@1.0.1(@docusaurus/react-loadable@6.0.0(react@19.1.0))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@babel/runtime': 7.24.4
- react-loadable: '@docusaurus/react-loadable@6.0.0(react@19.1.0)'
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- react-markdown@8.0.7(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- '@types/hast': 2.3.10
- '@types/prop-types': 15.7.12
- '@types/react': 19.1.3
- '@types/unist': 2.0.10
- comma-separated-tokens: 2.0.3
- hast-util-whitespace: 2.0.1
- prop-types: 15.8.1
- property-information: 6.5.0
- react: 19.1.0
- react-is: 18.2.0
- remark-parse: 10.0.2
- remark-rehype: 10.1.0
- space-separated-tokens: 2.0.2
- style-to-object: 0.4.4
- unified: 10.1.2
- unist-util-visit: 4.1.2
- vfile: 5.3.7
- transitivePeerDependencies:
- - supports-color
-
- react-remove-scroll-bar@2.3.8(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- react: 19.1.0
- react-style-singleton: 2.2.3(@types/react@19.1.3)(react@19.1.0)
- tslib: 2.8.1
- optionalDependencies:
- '@types/react': 19.1.3
-
- react-remove-scroll@2.6.3(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- react: 19.1.0
- react-remove-scroll-bar: 2.3.8(@types/react@19.1.3)(react@19.1.0)
- react-style-singleton: 2.2.3(@types/react@19.1.3)(react@19.1.0)
- tslib: 2.8.1
- use-callback-ref: 1.3.3(@types/react@19.1.3)(react@19.1.0)
- use-sidecar: 1.1.3(@types/react@19.1.3)(react@19.1.0)
- optionalDependencies:
- '@types/react': 19.1.3
-
- react-router-config@5.1.1(react-router@5.3.4(react@19.1.0))(react@19.1.0):
- dependencies:
- '@babel/runtime': 7.24.4
- react: 19.1.0
- react-router: 5.3.4(react@19.1.0)
-
- react-router-dom@5.3.4(react@19.1.0):
- dependencies:
- '@babel/runtime': 7.24.4
- history: 4.10.1
- loose-envify: 1.4.0
- prop-types: 15.8.1
- react: 19.1.0
- react-router: 5.3.4(react@19.1.0)
- tiny-invariant: 1.3.3
- tiny-warning: 1.0.3
-
- react-router@5.3.4(react@19.1.0):
- dependencies:
- '@babel/runtime': 7.24.4
- history: 4.10.1
- hoist-non-react-statics: 3.3.2
- loose-envify: 1.4.0
- path-to-regexp: 1.8.0
- prop-types: 15.8.1
- react: 19.1.0
- react-is: 16.13.1
- tiny-invariant: 1.3.3
- tiny-warning: 1.0.3
-
- react-style-singleton@2.2.3(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- get-nonce: 1.0.1
- react: 19.1.0
- tslib: 2.8.1
- optionalDependencies:
- '@types/react': 19.1.3
-
- react@19.1.0: {}
-
- read-cache@1.0.0:
- dependencies:
- pify: 2.3.0
-
- readable-stream@2.3.8:
- dependencies:
- core-util-is: 1.0.3
- inherits: 2.0.4
- isarray: 1.0.0
- process-nextick-args: 2.0.1
- safe-buffer: 5.1.2
- string_decoder: 1.1.1
- util-deprecate: 1.0.2
-
- readable-stream@3.6.2:
- dependencies:
- inherits: 2.0.4
- string_decoder: 1.3.0
- util-deprecate: 1.0.2
-
- readdirp@3.6.0:
- dependencies:
- picomatch: 2.3.1
-
- reading-time@1.5.0: {}
-
- rechoir@0.6.2:
- dependencies:
- resolve: 1.22.8
-
- recursive-readdir@2.2.3:
- dependencies:
- minimatch: 3.1.2
-
- regenerate-unicode-properties@10.1.1:
- dependencies:
- regenerate: 1.4.2
-
- regenerate-unicode-properties@10.2.0:
- dependencies:
- regenerate: 1.4.2
-
- regenerate@1.4.2: {}
-
- regenerator-runtime@0.14.1: {}
-
- regenerator-transform@0.15.2:
- dependencies:
- '@babel/runtime': 7.26.0
-
- regexpu-core@5.3.2:
- dependencies:
- '@babel/regjsgen': 0.8.0
- regenerate: 1.4.2
- regenerate-unicode-properties: 10.1.1
- regjsparser: 0.9.1
- unicode-match-property-ecmascript: 2.0.0
- unicode-match-property-value-ecmascript: 2.1.0
-
- regexpu-core@6.2.0:
- dependencies:
- regenerate: 1.4.2
- regenerate-unicode-properties: 10.2.0
- regjsgen: 0.8.0
- regjsparser: 0.12.0
- unicode-match-property-ecmascript: 2.0.0
- unicode-match-property-value-ecmascript: 2.1.0
-
- registry-auth-token@5.0.2:
- dependencies:
- '@pnpm/npm-conf': 2.2.2
-
- registry-url@6.0.1:
- dependencies:
- rc: 1.2.8
-
- regjsgen@0.8.0: {}
-
- regjsparser@0.12.0:
- dependencies:
- jsesc: 3.0.2
-
- regjsparser@0.9.1:
- dependencies:
- jsesc: 0.5.0
-
- rehype-katex@7.0.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/katex': 0.16.7
- hast-util-from-html-isomorphic: 2.0.0
- hast-util-to-text: 4.0.1
- katex: 0.16.10
- unist-util-visit-parents: 6.0.1
- vfile: 6.0.1
-
- rehype-raw@7.0.0:
- dependencies:
- '@types/hast': 3.0.4
- hast-util-raw: 9.0.2
- vfile: 6.0.1
-
- relateurl@0.2.7: {}
-
- remark-directive@3.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-directive: 3.0.0
- micromark-extension-directive: 3.0.0
- unified: 11.0.4
- transitivePeerDependencies:
- - supports-color
-
- remark-emoji@4.0.1:
- dependencies:
- '@types/mdast': 4.0.3
- emoticon: 4.0.1
- mdast-util-find-and-replace: 3.0.1
- node-emoji: 2.1.3
- unified: 11.0.4
-
- remark-frontmatter@5.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-frontmatter: 2.0.1
- micromark-extension-frontmatter: 2.0.0
- unified: 11.0.4
- transitivePeerDependencies:
- - supports-color
-
- remark-gfm@4.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-gfm: 3.0.0
- micromark-extension-gfm: 3.0.0
- remark-parse: 11.0.0
- remark-stringify: 11.0.0
- unified: 11.0.4
- transitivePeerDependencies:
- - supports-color
-
- remark-math@6.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-math: 3.0.0
- micromark-extension-math: 3.0.0
- unified: 11.0.4
- transitivePeerDependencies:
- - supports-color
-
- remark-mdx@3.0.1:
- dependencies:
- mdast-util-mdx: 3.0.0
- micromark-extension-mdxjs: 3.0.0
- transitivePeerDependencies:
- - supports-color
-
- remark-parse@10.0.2:
- dependencies:
- '@types/mdast': 3.0.15
- mdast-util-from-markdown: 1.3.1
- unified: 10.1.2
- transitivePeerDependencies:
- - supports-color
-
- remark-parse@11.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-from-markdown: 2.0.0
- micromark-util-types: 2.0.0
- unified: 11.0.4
- transitivePeerDependencies:
- - supports-color
-
- remark-rehype@10.1.0:
- dependencies:
- '@types/hast': 2.3.10
- '@types/mdast': 3.0.15
- mdast-util-to-hast: 12.3.0
- unified: 10.1.2
-
- remark-rehype@11.1.0:
- dependencies:
- '@types/hast': 3.0.4
- '@types/mdast': 4.0.3
- mdast-util-to-hast: 13.1.0
- unified: 11.0.4
- vfile: 6.0.1
-
- remark-stringify@11.0.0:
- dependencies:
- '@types/mdast': 4.0.3
- mdast-util-to-markdown: 2.1.0
- unified: 11.0.4
-
- renderkid@3.0.0:
- dependencies:
- css-select: 4.3.0
- dom-converter: 0.2.0
- htmlparser2: 6.1.0
- lodash: 4.17.21
- strip-ansi: 6.0.1
-
- repeat-string@1.6.1: {}
-
- require-from-string@2.0.2: {}
-
- require-like@0.1.2: {}
-
- requires-port@1.0.0: {}
-
- resolve-alpn@1.2.1: {}
-
- resolve-from@4.0.0: {}
-
- resolve-pathname@3.0.0: {}
-
- resolve@1.22.8:
- dependencies:
- is-core-module: 2.13.1
- path-parse: 1.0.7
- supports-preserve-symlinks-flag: 1.0.0
-
- responselike@3.0.0:
- dependencies:
- lowercase-keys: 3.0.0
-
- retry@0.13.1: {}
-
- reusify@1.0.4: {}
-
- rimraf@2.7.1:
- dependencies:
- glob: 7.2.3
-
- rimraf@3.0.2:
- dependencies:
- glob: 7.2.3
-
- rtl-css-js@1.16.1:
- dependencies:
- '@babel/runtime': 7.27.1
-
- rtlcss@4.1.1:
- dependencies:
- escalade: 3.1.2
- picocolors: 1.0.0
- postcss: 8.4.38
- strip-json-comments: 3.1.1
-
- run-parallel@1.2.0:
- dependencies:
- queue-microtask: 1.2.3
-
- sade@1.8.1:
- dependencies:
- mri: 1.2.0
-
- safe-buffer@5.1.2: {}
-
- safe-buffer@5.2.1: {}
-
- safer-buffer@2.1.2: {}
-
- sax@1.3.0: {}
-
- scheduler@0.26.0: {}
-
- schema-utils@2.7.0:
- dependencies:
- '@types/json-schema': 7.0.15
- ajv: 6.12.6
- ajv-keywords: 3.5.2(ajv@6.12.6)
-
- schema-utils@3.3.0:
- dependencies:
- '@types/json-schema': 7.0.15
- ajv: 6.12.6
- ajv-keywords: 3.5.2(ajv@6.12.6)
-
- schema-utils@4.2.0:
- dependencies:
- '@types/json-schema': 7.0.15
- ajv: 8.12.0
- ajv-formats: 2.1.1(ajv@8.12.0)
- ajv-keywords: 5.1.0(ajv@8.12.0)
-
- search-insights@2.13.0: {}
-
- section-matter@1.0.0:
- dependencies:
- extend-shallow: 2.0.1
- kind-of: 6.0.3
-
- select-hose@2.0.0: {}
-
- selfsigned@2.4.1:
- dependencies:
- '@types/node-forge': 1.3.11
- node-forge: 1.3.1
-
- semver-diff@4.0.0:
- dependencies:
- semver: 7.6.0
-
- semver@5.7.2: {}
-
- semver@6.3.1: {}
-
- semver@7.6.0:
- dependencies:
- lru-cache: 6.0.0
-
- send@0.18.0:
- dependencies:
- debug: 2.6.9
- depd: 2.0.0
- destroy: 1.2.0
- encodeurl: 1.0.2
- escape-html: 1.0.3
- etag: 1.8.1
- fresh: 0.5.2
- http-errors: 2.0.0
- mime: 1.6.0
- ms: 2.1.3
- on-finished: 2.4.1
- range-parser: 1.2.1
- statuses: 2.0.1
- transitivePeerDependencies:
- - supports-color
-
- serialize-javascript@6.0.2:
- dependencies:
- randombytes: 2.1.0
-
- serve-handler@6.1.6:
- dependencies:
- bytes: 3.0.0
- content-disposition: 0.5.2
- mime-types: 2.1.18
- minimatch: 3.1.2
- path-is-inside: 1.0.2
- path-to-regexp: 3.3.0
- range-parser: 1.2.0
-
- serve-index@1.9.1:
- dependencies:
- accepts: 1.3.8
- batch: 0.6.1
- debug: 2.6.9
- escape-html: 1.0.3
- http-errors: 1.6.3
- mime-types: 2.1.35
- parseurl: 1.3.3
- transitivePeerDependencies:
- - supports-color
-
- serve-static@1.15.0:
- dependencies:
- encodeurl: 1.0.2
- escape-html: 1.0.3
- parseurl: 1.3.3
- send: 0.18.0
- transitivePeerDependencies:
- - supports-color
-
- set-function-length@1.2.2:
- dependencies:
- define-data-property: 1.1.4
- es-errors: 1.3.0
- function-bind: 1.1.2
- get-intrinsic: 1.2.4
- gopd: 1.0.1
- has-property-descriptors: 1.0.2
-
- setprototypeof@1.1.0: {}
-
- setprototypeof@1.2.0: {}
-
- shallow-clone@3.0.1:
- dependencies:
- kind-of: 6.0.3
-
- shallowequal@1.1.0: {}
-
- shebang-command@1.2.0:
- dependencies:
- shebang-regex: 1.0.0
-
- shebang-command@2.0.0:
- dependencies:
- shebang-regex: 3.0.0
-
- shebang-regex@1.0.0: {}
-
- shebang-regex@3.0.0: {}
-
- shell-quote@1.8.1: {}
-
- shelljs@0.8.5:
- dependencies:
- glob: 7.2.3
- interpret: 1.4.0
- rechoir: 0.6.2
-
- shiki@1.14.1:
- dependencies:
- '@shikijs/core': 1.14.1
- '@types/hast': 3.0.4
-
- side-channel@1.0.6:
- dependencies:
- call-bind: 1.0.7
- es-errors: 1.3.0
- get-intrinsic: 1.2.4
- object-inspect: 1.13.1
-
- signal-exit@3.0.7: {}
-
- signal-exit@4.1.0: {}
-
- sirv@2.0.4:
- dependencies:
- '@polka/url': 1.0.0-next.25
- mrmime: 2.0.0
- totalist: 3.0.1
-
- sisteransi@1.0.5: {}
-
- sitemap@7.1.1:
- dependencies:
- '@types/node': 17.0.45
- '@types/sax': 1.2.7
- arg: 5.0.2
- sax: 1.3.0
-
- skin-tone@2.0.0:
- dependencies:
- unicode-emoji-modifier-base: 1.0.0
-
- slash@2.0.0: {}
-
- slash@3.0.0: {}
-
- slash@4.0.0: {}
-
- snake-case@3.0.4:
- dependencies:
- dot-case: 3.0.4
- tslib: 2.8.1
-
- sockjs@0.3.24:
- dependencies:
- faye-websocket: 0.11.4
- uuid: 8.3.2
- websocket-driver: 0.7.4
-
- sort-css-media-queries@2.2.0: {}
-
- source-map-js@1.2.0: {}
-
- source-map-js@1.2.1: {}
-
- source-map-support@0.5.21:
- dependencies:
- buffer-from: 1.1.2
- source-map: 0.6.1
-
- source-map@0.6.1: {}
-
- source-map@0.7.4: {}
-
- space-separated-tokens@2.0.2: {}
-
- spdy-transport@3.0.0:
- dependencies:
- debug: 4.3.4
- detect-node: 2.1.0
- hpack.js: 2.1.6
- obuf: 1.1.2
- readable-stream: 3.6.2
- wbuf: 1.7.3
- transitivePeerDependencies:
- - supports-color
-
- spdy@4.0.2:
- dependencies:
- debug: 4.3.4
- handle-thing: 2.0.1
- http-deceiver: 1.2.7
- select-hose: 2.0.0
- spdy-transport: 3.0.0
- transitivePeerDependencies:
- - supports-color
-
- sprintf-js@1.0.3: {}
-
- srcset@4.0.0: {}
-
- statuses@1.5.0: {}
-
- statuses@2.0.1: {}
-
- std-env@3.7.0: {}
-
- stream-browserify@3.0.0:
- dependencies:
- inherits: 2.0.4
- readable-stream: 3.6.2
-
- string-width@4.2.3:
- dependencies:
- emoji-regex: 8.0.0
- is-fullwidth-code-point: 3.0.0
- strip-ansi: 6.0.1
-
- string-width@5.1.2:
- dependencies:
- eastasianwidth: 0.2.0
- emoji-regex: 9.2.2
- strip-ansi: 7.1.0
-
- string_decoder@1.1.1:
- dependencies:
- safe-buffer: 5.1.2
-
- string_decoder@1.3.0:
- dependencies:
- safe-buffer: 5.2.1
-
- stringify-entities@4.0.4:
- dependencies:
- character-entities-html4: 2.1.0
- character-entities-legacy: 3.0.0
-
- stringify-object@3.3.0:
- dependencies:
- get-own-enumerable-property-symbols: 3.0.2
- is-obj: 1.0.1
- is-regexp: 1.0.0
-
- strip-ansi@6.0.1:
- dependencies:
- ansi-regex: 5.0.1
-
- strip-ansi@7.1.0:
- dependencies:
- ansi-regex: 6.0.1
-
- strip-bom-string@1.0.0: {}
-
- strip-final-newline@2.0.0: {}
-
- strip-json-comments@2.0.1: {}
-
- strip-json-comments@3.1.1: {}
-
- style-to-object@0.4.4:
- dependencies:
- inline-style-parser: 0.1.1
-
- style-to-object@1.0.6:
- dependencies:
- inline-style-parser: 0.2.3
-
- stylehacks@6.1.1(postcss@8.4.38):
- dependencies:
- browserslist: 4.23.0
- postcss: 8.4.38
- postcss-selector-parser: 6.0.16
-
- stylis@4.3.1: {}
-
- sucrase@3.35.0:
- dependencies:
- '@jridgewell/gen-mapping': 0.3.5
- commander: 4.1.1
- glob: 10.4.5
- lines-and-columns: 1.2.4
- mz: 2.7.0
- pirates: 4.0.7
- ts-interface-checker: 0.1.13
-
- supports-color@5.5.0:
- dependencies:
- has-flag: 3.0.0
-
- supports-color@7.2.0:
- dependencies:
- has-flag: 4.0.0
-
- supports-color@8.1.1:
- dependencies:
- has-flag: 4.0.0
-
- supports-preserve-symlinks-flag@1.0.0: {}
-
- svg-parser@2.0.4: {}
-
- svgo@3.3.2:
- dependencies:
- '@trysound/sax': 0.2.0
- commander: 7.2.0
- css-select: 5.1.0
- css-tree: 2.3.1
- css-what: 6.1.0
- csso: 5.0.5
- picocolors: 1.0.0
-
- swc-loader@0.2.6(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@swc/core': 1.4.13(@swc/helpers@0.5.17)
- '@swc/counter': 0.1.3
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- tailwindcss@3.4.17:
- dependencies:
- '@alloc/quick-lru': 5.2.0
- arg: 5.0.2
- chokidar: 3.6.0
- didyoumean: 1.2.2
- dlv: 1.1.3
- fast-glob: 3.3.2
- glob-parent: 6.0.2
- is-glob: 4.0.3
- jiti: 1.21.7
- lilconfig: 3.1.3
- micromatch: 4.0.8
- normalize-path: 3.0.0
- object-hash: 3.0.0
- picocolors: 1.1.1
- postcss: 8.5.3
- postcss-import: 15.1.0(postcss@8.5.3)
- postcss-js: 4.0.1(postcss@8.5.3)
- postcss-load-config: 4.0.2(postcss@8.5.3)
- postcss-nested: 6.2.0(postcss@8.5.3)
- postcss-selector-parser: 6.1.2
- resolve: 1.22.8
- sucrase: 3.35.0
- transitivePeerDependencies:
- - ts-node
-
- tapable@1.1.3: {}
-
- tapable@2.2.1: {}
-
- terser-webpack-plugin@5.3.10(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@jridgewell/trace-mapping': 0.3.25
- jest-worker: 27.5.1
- schema-utils: 3.3.0
- serialize-javascript: 6.0.2
- terser: 5.30.3
- webpack: 5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- '@swc/core': 1.4.13(@swc/helpers@0.5.17)
-
- terser-webpack-plugin@5.3.10(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@jridgewell/trace-mapping': 0.3.25
- jest-worker: 27.5.1
- schema-utils: 3.3.0
- serialize-javascript: 6.0.2
- terser: 5.30.3
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- '@swc/core': 1.4.13(@swc/helpers@0.5.17)
-
- terser@5.30.3:
- dependencies:
- '@jridgewell/source-map': 0.3.6
- acorn: 8.14.0
- commander: 2.20.3
- source-map-support: 0.5.21
-
- text-table@0.2.0: {}
-
- thenify-all@1.6.0:
- dependencies:
- thenify: 3.3.1
-
- thenify@3.3.1:
- dependencies:
- any-promise: 1.3.0
-
- thunky@1.1.0: {}
-
- tiny-invariant@1.3.3: {}
-
- tiny-warning@1.0.3: {}
-
- tmp@0.0.33:
- dependencies:
- os-tmpdir: 1.0.2
-
- to-fast-properties@2.0.0: {}
-
- to-regex-range@5.0.1:
- dependencies:
- is-number: 7.0.0
-
- toidentifier@1.0.1: {}
-
- totalist@3.0.1: {}
-
- trim-lines@3.0.1: {}
-
- trough@2.2.0: {}
-
- ts-interface-checker@0.1.13: {}
-
- tslib@1.14.1: {}
-
- tslib@2.6.2: {}
-
- tslib@2.8.1: {}
-
- tsutils@3.21.0(typescript@5.2.2):
- dependencies:
- tslib: 1.14.1
- typescript: 5.2.2
-
- type-check@0.4.0:
- dependencies:
- prelude-ls: 1.2.1
-
- type-fest@0.20.2: {}
-
- type-fest@0.21.3: {}
-
- type-fest@1.4.0: {}
-
- type-fest@2.19.0: {}
-
- type-is@1.6.18:
- dependencies:
- media-typer: 0.3.0
- mime-types: 2.1.35
-
- typedarray-to-buffer@3.1.5:
- dependencies:
- is-typedarray: 1.0.0
-
- typedoc-plugin-markdown@4.2.5(typedoc@0.26.6(typescript@5.2.2)):
- dependencies:
- typedoc: 0.26.6(typescript@5.2.2)
-
- typedoc@0.26.6(typescript@5.2.2):
- dependencies:
- lunr: 2.3.9
- markdown-it: 14.1.0
- minimatch: 9.0.5
- shiki: 1.14.1
- typescript: 5.2.2
- yaml: 2.5.0
-
- typescript@5.2.2: {}
-
- uc.micro@2.1.0: {}
-
- undici-types@5.26.5: {}
-
- unicode-canonical-property-names-ecmascript@2.0.0: {}
-
- unicode-emoji-modifier-base@1.0.0: {}
-
- unicode-match-property-ecmascript@2.0.0:
- dependencies:
- unicode-canonical-property-names-ecmascript: 2.0.0
- unicode-property-aliases-ecmascript: 2.1.0
-
- unicode-match-property-value-ecmascript@2.1.0: {}
-
- unicode-property-aliases-ecmascript@2.1.0: {}
-
- unified@10.1.2:
- dependencies:
- '@types/unist': 2.0.10
- bail: 2.0.2
- extend: 3.0.2
- is-buffer: 2.0.5
- is-plain-obj: 4.1.0
- trough: 2.2.0
- vfile: 5.3.7
-
- unified@11.0.4:
- dependencies:
- '@types/unist': 3.0.2
- bail: 2.0.2
- devlop: 1.1.0
- extend: 3.0.2
- is-plain-obj: 4.1.0
- trough: 2.2.0
- vfile: 6.0.1
-
- unique-string@3.0.0:
- dependencies:
- crypto-random-string: 4.0.0
-
- unist-util-find-after@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
-
- unist-util-generated@2.0.1: {}
-
- unist-util-is@5.2.1:
- dependencies:
- '@types/unist': 2.0.10
-
- unist-util-is@6.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-position-from-estree@2.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-position@4.0.4:
- dependencies:
- '@types/unist': 2.0.10
-
- unist-util-position@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-remove-position@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-visit: 5.0.0
-
- unist-util-stringify-position@3.0.3:
- dependencies:
- '@types/unist': 2.0.10
-
- unist-util-stringify-position@4.0.0:
- dependencies:
- '@types/unist': 3.0.2
-
- unist-util-visit-parents@5.1.3:
- dependencies:
- '@types/unist': 2.0.10
- unist-util-is: 5.2.1
-
- unist-util-visit-parents@6.0.1:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
-
- unist-util-visit@4.1.2:
- dependencies:
- '@types/unist': 2.0.10
- unist-util-is: 5.2.1
- unist-util-visit-parents: 5.1.3
-
- unist-util-visit@5.0.0:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-is: 6.0.0
- unist-util-visit-parents: 6.0.1
-
- universalify@2.0.1: {}
-
- unpipe@1.0.0: {}
-
- update-browserslist-db@1.0.13(browserslist@4.23.0):
- dependencies:
- browserslist: 4.23.0
- escalade: 3.1.2
- picocolors: 1.0.0
-
- update-browserslist-db@1.1.2(browserslist@4.24.4):
- dependencies:
- browserslist: 4.24.4
- escalade: 3.2.0
- picocolors: 1.1.1
-
- update-notifier@6.0.2:
- dependencies:
- boxen: 7.1.1
- chalk: 5.3.0
- configstore: 6.0.0
- has-yarn: 3.0.0
- import-lazy: 4.0.0
- is-ci: 3.0.1
- is-installed-globally: 0.4.0
- is-npm: 6.0.0
- is-yarn-global: 0.4.1
- latest-version: 7.0.0
- pupa: 3.1.0
- semver: 7.6.0
- semver-diff: 4.0.0
- xdg-basedir: 5.1.0
-
- uri-js@4.4.1:
- dependencies:
- punycode: 2.3.1
-
- url-loader@4.1.1(file-loader@6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17))))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- loader-utils: 2.0.4
- mime-types: 2.1.35
- schema-utils: 3.3.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- optionalDependencies:
- file-loader: 6.2.0(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
-
- url@0.11.3:
- dependencies:
- punycode: 1.4.1
- qs: 6.12.0
-
- use-callback-ref@1.3.3(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- react: 19.1.0
- tslib: 2.8.1
- optionalDependencies:
- '@types/react': 19.1.3
-
- use-sidecar@1.1.3(@types/react@19.1.3)(react@19.1.0):
- dependencies:
- detect-node-es: 1.1.0
- react: 19.1.0
- tslib: 2.8.1
- optionalDependencies:
- '@types/react': 19.1.3
-
- util-deprecate@1.0.2: {}
-
- utila@0.4.0: {}
-
- utility-types@3.11.0: {}
-
- utils-merge@1.0.1: {}
-
- uuid@8.3.2: {}
-
- uvu@0.5.6:
- dependencies:
- dequal: 2.0.3
- diff: 5.2.0
- kleur: 4.1.5
- sade: 1.8.1
-
- value-equal@1.0.1: {}
-
- vary@1.1.2: {}
-
- vfile-location@5.0.2:
- dependencies:
- '@types/unist': 3.0.2
- vfile: 6.0.1
-
- vfile-message@3.1.4:
- dependencies:
- '@types/unist': 2.0.10
- unist-util-stringify-position: 3.0.3
-
- vfile-message@4.0.2:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-stringify-position: 4.0.0
-
- vfile@5.3.7:
- dependencies:
- '@types/unist': 2.0.10
- is-buffer: 2.0.5
- unist-util-stringify-position: 3.0.3
- vfile-message: 3.1.4
-
- vfile@6.0.1:
- dependencies:
- '@types/unist': 3.0.2
- unist-util-stringify-position: 4.0.0
- vfile-message: 4.0.2
-
- watchpack@2.4.1:
- dependencies:
- glob-to-regexp: 0.4.1
- graceful-fs: 4.2.11
-
- wbuf@1.7.3:
- dependencies:
- minimalistic-assert: 1.0.1
-
- web-namespaces@2.0.1: {}
-
- webpack-bundle-analyzer@4.10.2:
- dependencies:
- '@discoveryjs/json-ext': 0.5.7
- acorn: 8.11.3
- acorn-walk: 8.3.2
- commander: 7.2.0
- debounce: 1.2.1
- escape-string-regexp: 4.0.0
- gzip-size: 6.0.0
- html-escaper: 2.0.2
- opener: 1.5.2
- picocolors: 1.0.0
- sirv: 2.0.4
- ws: 7.5.9
- transitivePeerDependencies:
- - bufferutil
- - utf-8-validate
-
- webpack-dev-middleware@5.3.4(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- colorette: 2.0.20
- memfs: 3.5.3
- mime-types: 2.1.35
- range-parser: 1.2.1
- schema-utils: 4.2.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
-
- webpack-dev-server@4.15.2(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- '@types/bonjour': 3.5.13
- '@types/connect-history-api-fallback': 1.5.4
- '@types/express': 4.17.21
- '@types/serve-index': 1.9.4
- '@types/serve-static': 1.15.7
- '@types/sockjs': 0.3.36
- '@types/ws': 8.5.10
- ansi-html-community: 0.0.8
- bonjour-service: 1.2.1
- chokidar: 3.6.0
- colorette: 2.0.20
- compression: 1.7.4
- connect-history-api-fallback: 2.0.0
- default-gateway: 6.0.3
- express: 4.19.2
- graceful-fs: 4.2.11
- html-entities: 2.5.2
- http-proxy-middleware: 2.0.6(@types/express@4.17.21)
- ipaddr.js: 2.1.0
- launch-editor: 2.6.1
- open: 8.4.2
- p-retry: 4.6.2
- rimraf: 3.0.2
- schema-utils: 4.2.0
- selfsigned: 2.4.1
- serve-index: 1.9.1
- sockjs: 0.3.24
- spdy: 4.0.2
- webpack-dev-middleware: 5.3.4(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- ws: 8.16.0
- optionalDependencies:
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- transitivePeerDependencies:
- - bufferutil
- - debug
- - supports-color
- - utf-8-validate
-
- webpack-merge@5.10.0:
- dependencies:
- clone-deep: 4.0.1
- flat: 5.0.2
- wildcard: 2.0.1
-
- webpack-merge@6.0.1:
- dependencies:
- clone-deep: 4.0.1
- flat: 5.0.2
- wildcard: 2.0.1
-
- webpack-sources@3.2.3: {}
-
- webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)):
- dependencies:
- '@types/eslint-scope': 3.7.7
- '@types/estree': 1.0.5
- '@webassemblyjs/ast': 1.12.1
- '@webassemblyjs/wasm-edit': 1.12.1
- '@webassemblyjs/wasm-parser': 1.12.1
- acorn: 8.11.3
- acorn-import-assertions: 1.9.0(acorn@8.11.3)
- browserslist: 4.23.0
- chrome-trace-event: 1.0.3
- enhanced-resolve: 5.16.0
- es-module-lexer: 1.5.0
- eslint-scope: 5.1.1
- events: 3.3.0
- glob-to-regexp: 0.4.1
- graceful-fs: 4.2.11
- json-parse-even-better-errors: 2.3.1
- loader-runner: 4.3.0
- mime-types: 2.1.35
- neo-async: 2.6.2
- schema-utils: 3.3.0
- tapable: 2.2.1
- terser-webpack-plugin: 5.3.10(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.91.0(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- watchpack: 2.4.1
- webpack-sources: 3.2.3
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - uglify-js
-
- webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)):
- dependencies:
- '@types/eslint-scope': 3.7.7
- '@types/estree': 1.0.6
- '@webassemblyjs/ast': 1.14.1
- '@webassemblyjs/wasm-edit': 1.14.1
- '@webassemblyjs/wasm-parser': 1.14.1
- acorn: 8.14.0
- browserslist: 4.24.4
- chrome-trace-event: 1.0.3
- enhanced-resolve: 5.18.0
- es-module-lexer: 1.5.0
- eslint-scope: 5.1.1
- events: 3.3.0
- glob-to-regexp: 0.4.1
- graceful-fs: 4.2.11
- json-parse-even-better-errors: 2.3.1
- loader-runner: 4.3.0
- mime-types: 2.1.35
- neo-async: 2.6.2
- schema-utils: 3.3.0
- tapable: 2.2.1
- terser-webpack-plugin: 5.3.10(@swc/core@1.4.13(@swc/helpers@0.5.17))(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17)))
- watchpack: 2.4.1
- webpack-sources: 3.2.3
- transitivePeerDependencies:
- - '@swc/core'
- - esbuild
- - uglify-js
-
- webpackbar@6.0.1(webpack@5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))):
- dependencies:
- ansi-escapes: 4.3.2
- chalk: 4.1.2
- consola: 3.4.0
- figures: 3.2.0
- markdown-table: 2.0.0
- pretty-time: 1.1.0
- std-env: 3.7.0
- webpack: 5.97.1(@swc/core@1.4.13(@swc/helpers@0.5.17))
- wrap-ansi: 7.0.0
-
- websocket-driver@0.7.4:
- dependencies:
- http-parser-js: 0.5.8
- safe-buffer: 5.2.1
- websocket-extensions: 0.1.4
-
- websocket-extensions@0.1.4: {}
-
- which@1.3.1:
- dependencies:
- isexe: 2.0.0
-
- which@2.0.2:
- dependencies:
- isexe: 2.0.0
-
- widest-line@4.0.1:
- dependencies:
- string-width: 5.1.2
-
- wildcard@2.0.1: {}
-
- wrap-ansi@7.0.0:
- dependencies:
- ansi-styles: 4.3.0
- string-width: 4.2.3
- strip-ansi: 6.0.1
-
- wrap-ansi@8.1.0:
- dependencies:
- ansi-styles: 6.2.1
- string-width: 5.1.2
- strip-ansi: 7.1.0
-
- wrappy@1.0.2: {}
-
- write-file-atomic@3.0.3:
- dependencies:
- imurmurhash: 0.1.4
- is-typedarray: 1.0.0
- signal-exit: 3.0.7
- typedarray-to-buffer: 3.1.5
-
- ws@7.5.9: {}
-
- ws@8.16.0: {}
-
- xdg-basedir@5.1.0: {}
-
- xml-js@1.6.11:
- dependencies:
- sax: 1.3.0
-
- yallist@3.1.1: {}
-
- yallist@4.0.0: {}
-
- yaml@1.10.2: {}
-
- yaml@2.5.0: {}
-
- yocto-queue@0.1.0: {}
-
- yocto-queue@1.0.0: {}
-
- zwitch@2.0.4: {}
diff --git a/shapes_basic_shapes.c b/shapes_basic_shapes.c
deleted file mode 100644
index df4a1d9f..00000000
--- a/shapes_basic_shapes.c
+++ /dev/null
@@ -1,93 +0,0 @@
-/*******************************************************************************************
- *
- * raylib [shapes] example - Draw basic shapes 2d (rectangle, circle, line...)
- *
- * Example originally created with raylib 1.0, last time updated with
- *raylib 4.2
- *
- * Example licensed under an unmodified zlib/libpng license, which is an
- *OSI-certified, BSD-like license that allows static linking with closed source
- *software
- *
- * Copyright (c) 2014-2024 Ramon Santamaria (@raysan5)
- *
- ********************************************************************************************/
-
-#include "raylib.h"
-
-//------------------------------------------------------------------------------------
-// Program main entry point
-//------------------------------------------------------------------------------------
-int main(void) {
- // Initialization
- //--------------------------------------------------------------------------------------
- const int screenWidth = 800;
- const int screenHeight = 450;
-
- InitWindow(screenWidth, screenHeight,
- "raylib [shapes] example - basic shapes drawing");
-
- float rotation = 0.0f;
-
- SetTargetFPS(60); // Set our game to run at 60 frames-per-second
- //--------------------------------------------------------------------------------------
-
- // Main game loop
- while (!WindowShouldClose()) // Detect window close button or ESC key
- {
- // Update
- //----------------------------------------------------------------------------------
- rotation += 0.2f;
- //----------------------------------------------------------------------------------
-
- // Draw
- //----------------------------------------------------------------------------------
- BeginDrawing();
-
- ClearBackground(RAYWHITE);
-
- DrawText("some basic shapes available on raylib", 20, 20, 20, DARKGRAY);
-
- // Circle shapes and lines
- DrawCircle(screenWidth / 5, 120, 35, DARKBLUE);
- DrawCircleGradient(screenWidth / 5, 220, 60, GREEN, SKYBLUE);
- DrawCircleLines(screenWidth / 5, 340, 80, DARKBLUE);
-
- // Rectangle shapes and lines
- DrawRectangle(screenWidth / 4 * 2 - 60, 100, 120, 60, RED);
- DrawRectangleGradientH(screenWidth / 4 * 2 - 90, 170, 180, 130, MAROON,
- GOLD);
- DrawRectangleLines(screenWidth / 4 * 2 - 40, 320, 80, 60,
- ORANGE); // NOTE: Uses QUADS internally, not lines
-
- // Triangle shapes and lines
- DrawTriangle((Vector2){screenWidth / 4.0f * 3.0f, 80.0f},
- (Vector2){screenWidth / 4.0f * 3.0f - 60.0f, 150.0f},
- (Vector2){screenWidth / 4.0f * 3.0f + 60.0f, 150.0f}, VIOLET);
-
- DrawTriangleLines((Vector2){screenWidth / 4.0f * 3.0f, 160.0f},
- (Vector2){screenWidth / 4.0f * 3.0f - 20.0f, 230.0f},
- (Vector2){screenWidth / 4.0f * 3.0f + 20.0f, 230.0f},
- DARKBLUE);
-
- // Polygon shapes and lines
- DrawPoly((Vector2){screenWidth / 4.0f * 3, 330}, 6, 80, rotation, BROWN);
- DrawPolyLines((Vector2){screenWidth / 4.0f * 3, 330}, 6, 90, rotation,
- BROWN);
- DrawPolyLinesEx((Vector2){screenWidth / 4.0f * 3, 330}, 6, 85, rotation, 6,
- BEIGE);
-
- // NOTE: We draw all LINES based shapes together to optimize internal
- // drawing, this way, all LINES are rendered in a single draw pass
- DrawLine(18, 42, screenWidth - 18, 42, BLACK);
- EndDrawing();
- //----------------------------------------------------------------------------------
- }
-
- // De-Initialization
- //--------------------------------------------------------------------------------------
- CloseWindow(); // Close window and OpenGL context
- //--------------------------------------------------------------------------------------
-
- return 0;
-}
diff --git a/sidebars-default.js b/sidebars-default.js
index 54ba6094..8212d1a1 100644
--- a/sidebars-default.js
+++ b/sidebars-default.js
@@ -14,8 +14,7 @@
/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */
const sidebars = {
// By default, Docusaurus generates a sidebar from the docs folder structure
- tutorialSidebar: [{ type: 'autogenerated', dirName: '.' }],
-
+ tutorialSidebar: [{ type: "autogenerated", dirName: "." }],
// But you can create a sidebar manually
/*
tutorialSidebar: [
diff --git a/src/components/CardComponents.tsx b/src/components/CardComponents.tsx
index a60311ef..0e619c7d 100644
--- a/src/components/CardComponents.tsx
+++ b/src/components/CardComponents.tsx
@@ -1,7 +1,7 @@
-import React, { ReactNode } from 'react';
-import { paramCase } from 'param-case';
-import Link from '@docusaurus/Link';
-import clsx from 'clsx';
+import Link from "@docusaurus/Link";
+import clsx from "clsx";
+import { paramCase } from "param-case";
+import React, { ReactNode } from "react";
export function CardSection({
id,
@@ -10,7 +10,7 @@ export function CardSection({
description,
className,
hasSubSections = false,
- HeadingTag = 'h3',
+ HeadingTag = "h3",
}: {
id?: string;
title: string;
@@ -23,9 +23,9 @@ export function CardSection({
return (
{title &&
{title} }
diff --git a/src/components/ColorCode/index.jsx b/src/components/ColorCode/index.jsx
index 34c418b6..fc96b43d 100644
--- a/src/components/ColorCode/index.jsx
+++ b/src/components/ColorCode/index.jsx
@@ -1,5 +1,5 @@
-import React from 'react';
-import styles from './styles.module.css';
+import React from "react";
+import styles from "./styles.module.css";
export default function ColorCode({ color, colorCode, children }) {
return (
diff --git a/src/components/ColorPalette/index.jsx b/src/components/ColorPalette/index.jsx
index 22a18fb5..bc973060 100644
--- a/src/components/ColorPalette/index.jsx
+++ b/src/components/ColorPalette/index.jsx
@@ -1,6 +1,6 @@
-import React from 'react';
-import clsx from 'clsx';
-import styles from './styles.module.css';
+import clsx from "clsx";
+import React from "react";
+import styles from "./styles.module.css";
export default function ColorPalette({ name, shades, desc, rgb }) {
let shadesArr = Object.keys(shades);
diff --git a/src/components/ComponentsGrid/index.jsx b/src/components/ComponentsGrid/index.jsx
index 62c45b19..90664edc 100644
--- a/src/components/ComponentsGrid/index.jsx
+++ b/src/components/ComponentsGrid/index.jsx
@@ -1,6 +1,6 @@
-import Link from '@docusaurus/Link';
-import React from 'react';
-import styles from './styles.module.css';
+import Link from "@docusaurus/Link";
+import React from "react";
+import styles from "./styles.module.css";
/**
* @typedef {{name: string, component: string}} ComponentEntry
@@ -31,7 +31,7 @@ function Card({ item, basePath }) {
/**
* @param {{ items: ComponentEntry[], basePath: string }}
*/
-export default function ComponentsGrid({ items, basePath = '/' }) {
+export default function ComponentsGrid({ items, basePath = "/" }) {
items.sort((a, b) => {
if (a.name < b.name) return -1;
else if (a.name > b.name) return 1;
@@ -41,9 +41,7 @@ export default function ComponentsGrid({ items, basePath = '/' }) {
return (
- {items.map((item) => (
-
- ))}
+ {items.map((item) => )}
);
diff --git a/src/components/DemoElements.jsx b/src/components/DemoElements.jsx
index e612336b..638f8d60 100644
--- a/src/components/DemoElements.jsx
+++ b/src/components/DemoElements.jsx
@@ -1,9 +1,9 @@
-import React from 'react';
+import React from "react";
export function Row({ children, style = {}, ...props }) {
return (
{children}
@@ -15,9 +15,9 @@ export function Col({ children, style = {}, ...props }) {
return (
`,
+ airplaneSVG:
+ `
`,
activePlugin: {},
};
diff --git a/src/components/LatestInstallation.jsx b/src/components/LatestInstallation.jsx
index 8773d29a..4bca41b6 100644
--- a/src/components/LatestInstallation.jsx
+++ b/src/components/LatestInstallation.jsx
@@ -1,9 +1,9 @@
-import React, { useEffect, useState } from 'react';
-import CodeBlock from '@theme/CodeBlock';
-import latestNPMVersion from '../utils/npm';
+import CodeBlock from "@theme/CodeBlock";
+import React, { useEffect, useState } from "react";
+import latestNPMVersion from "../utils/npm";
export const AndroidCoreLatestInstallation = () => {
- const [version, setVersion] = useState('+');
+ const [version, setVersion] = useState("+");
useEffect(() => {
const raw = JSON.stringify({
@@ -11,16 +11,16 @@ export const AndroidCoreLatestInstallation = () => {
});
const requestOptions = {
- method: 'POST',
+ method: "POST",
body: raw,
};
fetch(
- 'https://b72qj023g7.execute-api.ap-south-1.amazonaws.com/default/android-core-latest',
- requestOptions
+ "https://b72qj023g7.execute-api.ap-south-1.amazonaws.com/default/android-core-latest",
+ requestOptions,
)
.then((response) => response.json())
- .then((result) => setVersion(result.latestVersion ?? '+'));
+ .then((result) => setVersion(result.latestVersion ?? "+"));
}, []);
return (
@@ -35,10 +35,10 @@ export const AndroidCoreLatestInstallation = () => {
};
export const WebCoreCDNInstallation = () => {
- const [version, setVersion] = useState('');
+ const [version, setVersion] = useState("");
useEffect(() => {
async function load() {
- const version = await latestNPMVersion({ pkg: 'web-core' });
+ const version = await latestNPMVersion({ pkg: "web-core" });
setVersion(`-${version}`);
}
load();
@@ -52,14 +52,14 @@ export const WebCoreCDNInstallation = () => {
};
export const HTMLUIKitInstallation = () => {
- const [webCoreVersion, setWebCoreVersion] = useState('');
- const [uikitVersion, setUIKitVersion] = useState('');
+ const [webCoreVersion, setWebCoreVersion] = useState("");
+ const [uikitVersion, setUIKitVersion] = useState("");
useEffect(() => {
async function load() {
- const versionWC = await latestNPMVersion({ pkg: 'web-core' });
+ const versionWC = await latestNPMVersion({ pkg: "web-core" });
setWebCoreVersion(`-${versionWC}`);
- const versionUI = await latestNPMVersion({ pkg: 'ui-kit' });
+ const versionUI = await latestNPMVersion({ pkg: "ui-kit" });
setUIKitVersion(`@${versionUI}`);
}
load();
@@ -80,13 +80,13 @@ export const HTMLUIKitInstallation = () => {
};
export const HTMLUIKitUtilsInstallation = ({
- modules = ['provideDyteDesignSystem', 'extendConfig,'],
+ modules = ["provideDyteDesignSystem", "extendConfig,"],
}) => {
- const [uikitVersion, setUIKitVersion] = useState('');
+ const [uikitVersion, setUIKitVersion] = useState("");
useEffect(() => {
async function load() {
- const versionUI = await latestNPMVersion({ pkg: 'ui-kit' });
+ const versionUI = await latestNPMVersion({ pkg: "ui-kit" });
setUIKitVersion(`@${versionUI}`);
}
load();
@@ -97,7 +97,7 @@ export const HTMLUIKitUtilsInstallation = ({
{`
`}
diff --git a/src/components/PesterDataTable/PesterDataButton.js b/src/components/PesterDataTable/PesterDataButton.js
index 4424b9b8..d70c5b48 100644
--- a/src/components/PesterDataTable/PesterDataButton.js
+++ b/src/components/PesterDataTable/PesterDataButton.js
@@ -12,7 +12,7 @@ const PesterDataButton = ({ text, editUrl }) => {
@@ -25,7 +25,8 @@ const PesterDataButton = ({ text, editUrl }) => {
style={{ marginRight: "0.3em", verticalAlign: "sub" }}
>
-
+
+
diff --git a/src/components/PesterDataTable/PesterDataTable.js b/src/components/PesterDataTable/PesterDataTable.js
index d24c3961..7ea06dd8 100644
--- a/src/components/PesterDataTable/PesterDataTable.js
+++ b/src/components/PesterDataTable/PesterDataTable.js
@@ -10,8 +10,8 @@
// Reference: https://github.com/pester/docs/blob/main/src/components/PesterDataTable/PesterDataTable.js
//
//
+import { flexRender, getCoreRowModel, getSortedRowModel, useReactTable } from "@tanstack/react-table";
import React from "react";
-import { flexRender, useReactTable, getCoreRowModel, getSortedRowModel } from '@tanstack/react-table'
import "./style.css";
// our pester.dev specific react-table
@@ -44,10 +44,12 @@ const PesterDataTable = ({
onClick={header.column.getToggleSortingHandler()}
>
{flexRender(header.column.columnDef.header, header.getContext())}
- {{
- asc: ' ▲',
- desc: ' ▼',
- }[header.column.getIsSorted()] ?? ''}
+
+ {{
+ asc: " ▲",
+ desc: " ▼",
+ }[header.column.getIsSorted()] ?? ""}
+
))}
@@ -66,7 +68,7 @@ const PesterDataTable = ({
>
{flexRender(
cell.column.columnDef.cell,
- cell.getContext()
+ cell.getContext(),
)}
);
diff --git a/src/components/PesterDataTable/index.js b/src/components/PesterDataTable/index.js
index c154ea33..1ef133b1 100644
--- a/src/components/PesterDataTable/index.js
+++ b/src/components/PesterDataTable/index.js
@@ -1,2 +1,2 @@
-export { default as PesterDataTable } from "./PesterDataTable"
-export { default as PesterDataButton } from "./PesterDataButton"
+export { default as PesterDataButton } from "./PesterDataButton";
+export { default as PesterDataTable } from "./PesterDataTable";
diff --git a/src/components/ReleaseNotesGenerator.jsx b/src/components/ReleaseNotesGenerator.jsx
index e4a42740..b0c69763 100644
--- a/src/components/ReleaseNotesGenerator.jsx
+++ b/src/components/ReleaseNotesGenerator.jsx
@@ -1,34 +1,34 @@
-import React, { useEffect, useState } from 'react';
-import Heading from '@docusaurus/theme-classic/lib/theme/Heading';
-import ReactMarkdown from 'react-markdown';
+import Heading from "@docusaurus/theme-classic/lib/theme/Heading";
+import React, { useEffect, useState } from "react";
+import ReactMarkdown from "react-markdown";
const changeTypes = [
{
- name: 'features',
- color: '#00e0a5',
- label: 'Features',
+ name: "features",
+ color: "#00e0a5",
+ label: "Features",
},
{
- name: 'fixes',
- color: '#e0ac12',
- label: 'Fixed Issues',
+ name: "fixes",
+ color: "#e0ac12",
+ label: "Fixed Issues",
},
{
- name: 'perf',
- color: '#5555aa',
- label: 'Performance Improvements',
+ name: "perf",
+ color: "#5555aa",
+ label: "Performance Improvements",
},
{
- name: 'new_api',
- color: '#1264a3',
- label: 'New API',
- className: 'newAPI',
+ name: "new_api",
+ color: "#1264a3",
+ label: "New API",
+ className: "newAPI",
},
{
- name: 'dep_api',
- color: '#e01d5a',
- label: 'Deprecated API',
- className: 'deprecated',
+ name: "dep_api",
+ color: "#e01d5a",
+ label: "Deprecated API",
+ className: "deprecated",
},
];
@@ -52,44 +52,46 @@ export default function ReleaseNotesGenerator({ noteKey }) {
)}
- Released on{' '}
+ Released on{" "}
- {new Date(m.createdAt * 1000).toLocaleDateString('en-US', {
- day: 'numeric',
- year: 'numeric',
- month: 'long',
+ {new Date(m.createdAt * 1000).toLocaleDateString("en-US", {
+ day: "numeric",
+ year: "numeric",
+ month: "long",
})}
{changeTypes.map((c) => {
- return m[c.name]?.length > 0 ? (
-
-
- {c.label}
-
-
- {m[c.name]?.map((f) => (
-
-
- {f.split('\n').map((i, key) => {
- return (
-
- {i}
-
- );
- })}
-
-
- ))}
-
-
- ) : null;
+ return m[c.name]?.length > 0
+ ? (
+
+
+ {c.label}
+
+
+ {m[c.name]?.map((f) => (
+
+
+ {f.split("\n").map((i, key) => {
+ return (
+
+ {i}
+
+ );
+ })}
+
+
+ ))}
+
+
+ )
+ : null;
})}
>
diff --git a/src/components/RunInPostmanButton.jsx b/src/components/RunInPostmanButton.jsx
index e54b73a5..7211e1c7 100644
--- a/src/components/RunInPostmanButton.jsx
+++ b/src/components/RunInPostmanButton.jsx
@@ -1,4 +1,4 @@
-import React from 'react';
+import React from "react";
const postmanUrl =
"https://god.gw.postman.com/run-collection/20897959-a72828d7-8739-49ac-b88c-c5e6ec365e21?action=collection%2Ffork&collection-url=entityId%3D20897959-a72828d7-8739-49ac-b88c-c5e6ec365e21%26entityType%3Dcollection%26workspaceId%3D2f2f3a0e-92e0-4621-82b5-7e139570b3af#?env%5BDyte's%20Public%20Environment%5D=W3sia2V5IjoiYmFzZVVybCIsInZhbHVlIjoiaHR0cHM6Ly9hcGkuY2x1c3Rlci5keXRlLmluIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6ImFwaWtleSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6Im9yZ2FuaXphdGlvbl9pZCIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6Im1lZXRpbmdfaWQiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJkZWZhdWx0In0seyJrZXkiOiJwYXJ0aWNpcGFudF9pZCIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6InJlY29yZGluZ19pZCIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6InJvb21fbmFtZSIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifSx7ImtleSI6IndlYmhvb2tfaWQiLCJ2YWx1ZSI6IiIsImVuYWJsZWQiOnRydWUsInR5cGUiOiJkZWZhdWx0In0seyJrZXkiOiJsaXZlc3RyZWFtX2lkIiwidmFsdWUiOiIiLCJlbmFibGVkIjp0cnVlLCJ0eXBlIjoiZGVmYXVsdCJ9LHsia2V5Ijoic2Vzc2lvbl9pZCIsInZhbHVlIjoiIiwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6ImRlZmF1bHQifV0=";
diff --git a/src/components/SectionsMenu/index.jsx b/src/components/SectionsMenu/index.jsx
index 320c3b85..595203fa 100644
--- a/src/components/SectionsMenu/index.jsx
+++ b/src/components/SectionsMenu/index.jsx
@@ -1,15 +1,15 @@
-import React, { forwardRef } from 'react';
-import * as Select from '@radix-ui/react-select';
-import clsx from 'clsx';
-import { Check, ChevronDown, ChevronUp } from 'react-feather';
+import * as Select from "@radix-ui/react-select";
+import clsx from "clsx";
+import React, { forwardRef } from "react";
+import { Check, ChevronDown, ChevronUp } from "react-feather";
const SectionsMenu = forwardRef(
- ({ defaultValue = '', values = [], children, className, ...props }, ref) => {
+ ({ defaultValue = "", values = [], children, className, ...props }, ref) => {
return (
@@ -17,7 +17,7 @@ const SectionsMenu = forwardRef(
-
+
@@ -28,7 +28,7 @@ const SectionsMenu = forwardRef(
@@ -52,7 +52,7 @@ const SectionsMenu = forwardRef(
);
- }
+ },
);
export default SectionsMenu;
diff --git a/src/components/SidebarMenu/index.jsx b/src/components/SidebarMenu/index.jsx
index f0b363d9..99d5f923 100644
--- a/src/components/SidebarMenu/index.jsx
+++ b/src/components/SidebarMenu/index.jsx
@@ -1,15 +1,15 @@
-import React from 'react';
-import { useHistory } from '@docusaurus/router';
-import clsx from 'clsx';
-import VersionDropdown from '@theme/NavbarItem/DocsVersionDropdownNavbarItem';
-import useGlobalData from '@docusaurus/useGlobalData';
+import { useHistory } from "@docusaurus/router";
+import useGlobalData from "@docusaurus/useGlobalData";
+import VersionDropdown from "@theme/NavbarItem/DocsVersionDropdownNavbarItem";
+import clsx from "clsx";
+import React from "react";
-import SectionsMenu from '../SectionsMenu';
-import { useSectionMenu } from '../../lib/useSectionMenu';
-import styles from './styles.module.css';
+import { useSectionMenu } from "../../lib/useSectionMenu";
+import SectionsMenu from "../SectionsMenu";
+import styles from "./styles.module.css";
function getPrettyPath(path) {
- return path.slice(-1) === '/' ? path.slice(0, -1) : path;
+ return path.slice(-1) === "/" ? path.slice(0, -1) : path;
}
export default function SidebarMenu() {
@@ -18,20 +18,19 @@ export default function SidebarMenu() {
const { docId, currentSection, sections, groups } = data;
const globalData = useGlobalData();
- const allDocs = globalData['docusaurus-plugin-content-docs'];
+ const allDocs = globalData["docusaurus-plugin-content-docs"];
if (!sections && !groups) return null;
const handleSectionChange = (selectedSection) => {
if (selectedSection !== docId) {
const { pathname, hash } = router.location;
- const page =
- `/${selectedSection}/` + pathname.split('/').slice(2).join('/');
+ const page = `/${selectedSection}/` + pathname.split("/").slice(2).join("/");
const selectedSectionDocs = allDocs[selectedSection].versions[0].docs;
if (selectedSectionDocs.find((doc) => doc.path === page)) {
- const path = page + (hash && hash.length > 0 ? '#' + hash : '');
+ const path = page + (hash && hash.length > 0 ? "#" + hash : "");
router.push(getPrettyPath(path));
} else {
const path = selectedSectionDocs[0].path;
@@ -59,7 +58,7 @@ export default function SidebarMenu() {
}
return (
-
+
{groups.map((group) => {
const { name, docs, description, className } = group;
@@ -71,11 +70,11 @@ export default function SidebarMenu() {
{
- if (e.code === 'Space' || e.code == 'Enter') {
+ if (e.code === "Space" || e.code == "Enter") {
navigateToFirstSection();
}
}}
@@ -84,23 +83,23 @@ export default function SidebarMenu() {
>
{name}
- {isCurrentSection ? (
-
-
-
-
- ) : (
-
{description}
- )}
+ {isCurrentSection
+ ? (
+
+
+
+
+ )
+ :
{description}
}
);
diff --git a/src/components/VideoPlayer.jsx b/src/components/VideoPlayer.jsx
index 23a3e8ad..af56f931 100644
--- a/src/components/VideoPlayer.jsx
+++ b/src/components/VideoPlayer.jsx
@@ -1,10 +1,10 @@
-import React from 'react';
-import clsx from 'clsx';
+import clsx from "clsx";
+import React from "react";
export default function VideoPlayer({ src, mobile, className, ...rest }) {
return (
REST API Reference
- Don't worry, they are't complex. Use our
- developer-friendly REST APIs and integrate video and voice communication
- into your web, mobile, or desktop applications programmatically.
+ Don't worry, they are't complex. Use our developer-friendly REST APIs and integrate video and
+ voice communication into your web, mobile, or desktop applications programmatically.
community
- Engage with our ever-growing community to get the latest updates,
- product support, and more.
+ Engage with our ever-growing community to get the latest updates, product support, and more.
{githubUsernames.map((username) => (
diff --git a/src/components/homepage/GuidesAndSamples.tsx b/src/components/homepage/GuidesAndSamples.tsx
index ed21df80..f66517de 100644
--- a/src/components/homepage/GuidesAndSamples.tsx
+++ b/src/components/homepage/GuidesAndSamples.tsx
@@ -1,18 +1,18 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
+import Link from "@docusaurus/Link";
import {
AppsAddInRegular,
ArrowRightFilled,
- DocumentRegular,
- OpenRegular,
- RecordRegular,
CodeCircleRegular,
CubeRegular,
DesktopRegular,
DeveloperBoardRegular,
-} from '@fluentui/react-icons';
-import clsx from 'clsx';
-import { ChevronRight, GitHub } from 'react-feather';
+ DocumentRegular,
+ OpenRegular,
+ RecordRegular,
+} from "@fluentui/react-icons";
+import clsx from "clsx";
+import React from "react";
+import { ChevronRight, GitHub } from "react-feather";
interface Guide {
title: string;
@@ -23,22 +23,22 @@ interface Guide {
const guides: Guide[] = [
{
- title: 'Getting started with easifemBase and easifemClasses',
+ title: "Getting started with easifemBase and easifemClasses",
icon: CodeCircleRegular,
- text: 'Quick installation of easifemBase, easifemClasses, and run some sample programs.',
- link: '/guides/getting-started',
+ text: "Quick installation of easifemBase, easifemClasses, and run some sample programs.",
+ link: "/guides/getting-started",
},
{
- title: 'A simple 💫 Hello World 🚀 program',
+ title: "A simple 💫 Hello World 🚀 program",
icon: DesktopRegular,
- text: 'Run a hello world program by using easifem.',
- link: 'guides/learn-by-examples/hello-world',
+ text: "Run a hello world program by using easifem.",
+ link: "guides/learn-by-examples/hello-world",
},
{
- title: 'Getting started with strings',
+ title: "Getting started with strings",
icon: DeveloperBoardRegular,
- text: 'Strings in easifem',
- link: '/guides/programming-basics/string',
+ text: "Strings in easifem",
+ link: "/guides/programming-basics/string",
},
];
@@ -52,25 +52,25 @@ interface Sample {
const samples: Sample[] = [
{
- title: 'Heat Diffusion in Soils and Solids',
- platform: 'React',
- source: 'https://github.com/vickysharma0812/HeatDiffusion',
- blog: 'https://easifem.com/blog/HeatDiffusion',
- demo: 'https://easifem.com/demo/HeatDiffusion',
+ title: "Heat Diffusion in Soils and Solids",
+ platform: "React",
+ source: "https://github.com/vickysharma0812/HeatDiffusion",
+ blog: "https://easifem.com/blog/HeatDiffusion",
+ demo: "https://easifem.com/demo/HeatDiffusion",
},
{
- title: 'Seepage in Soils',
- platform: 'React',
- blog: 'https://easifem.com/blog/Seepage/',
- source: 'https://github.com/vickysharma0812/Seepage',
- demo: 'https://easifem.com/demo/Seepage',
+ title: "Seepage in Soils",
+ platform: "React",
+ blog: "https://easifem.com/blog/Seepage/",
+ source: "https://github.com/vickysharma0812/Seepage",
+ demo: "https://easifem.com/demo/Seepage",
},
{
- title: 'Elastodynamics response of solids and structures',
- platform: 'React',
- blog: 'https://easifem.com/blog/Elastodynamics',
- source: 'https://github.com/vickysharma0812/Elastodynamics',
- demo: 'https://easifem.com/demo/Elastodynamics',
+ title: "Elastodynamics response of solids and structures",
+ platform: "React",
+ blog: "https://easifem.com/blog/Elastodynamics",
+ source: "https://github.com/vickysharma0812/Elastodynamics",
+ demo: "https://easifem.com/demo/Elastodynamics",
},
];
@@ -132,7 +132,6 @@ function Sample({ title, platform, blog, source, demo }: Sample) {
export default function GuidesAndSamples() {
return (
-
Getting started guides 📚
@@ -143,16 +142,14 @@ export default function GuidesAndSamples() {
- {guides.map((guide) => (
-
- ))}
+ {guides.map((guide) => )}
@@ -169,9 +166,7 @@ export default function GuidesAndSamples() {
- {samples.map((sample) => (
-
- ))}
+ {samples.map((sample) => )}
diff --git a/src/components/homepage/HelpSection.jsx b/src/components/homepage/HelpSection.jsx
index e8dc3d98..31c77554 100644
--- a/src/components/homepage/HelpSection.jsx
+++ b/src/components/homepage/HelpSection.jsx
@@ -1,14 +1,14 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
-import clsx from 'clsx';
+import Link from "@docusaurus/Link";
+import clsx from "clsx";
+import React from "react";
-export default function HelpSection({ className = '' }) {
+export default function HelpSection({ className = "" }) {
return (
@@ -24,8 +24,7 @@ export default function HelpSection({ className = '' }) {
/>
Book a Demo
- Contact us for a demo. We are looking forward to connecting with
- you.
+ Contact us for a demo. We are looking forward to connecting with you.
Support
- Dyte's expert support team is always available to help. Connect for
- dedicated 1:1 support!
+ Dyte's expert support team is always available to help. Connect for dedicated 1:1 support!
FAQs
- Browse through our FAQs to find answers to commonly asked
- questions.
+ Browse through our FAQs to find answers to commonly asked questions.
View FAQs →
diff --git a/src/components/homepage/HeroSection.tsx b/src/components/homepage/HeroSection.tsx
index 0fb17df2..cb79cfdd 100644
--- a/src/components/homepage/HeroSection.tsx
+++ b/src/components/homepage/HeroSection.tsx
@@ -31,24 +31,6 @@ const PRODUCTS = [
darkImage: "/static/landing-page/hero/easifemClasses-dark.svg",
text: "High level classes and objects for numerical methods and algorithms.",
},
- {
- title: "easifemMaterials",
- beta: true,
- link: "/about/easifemMaterials",
- icon: BoardRegular,
- lightImage: "/static/landing-page/hero/easifemMaterials-light.svg",
- darkImage: "/static/landing-page/hero/easifemMaterials-dark.svg",
- text: "A library for constitutive modeling of solids, fluids, and porous media (soils and rocks).",
- },
- {
- title: "easifemKernels",
- beta: true,
- link: "/about/easifemKernels",
- icon: BoxRegular,
- lightImage: "/static/landing-page/hero/easifemKernels-light.svg",
- darkImage: "/static/landing-page/hero/easifemKernels-dark.svg",
- text: "A library of useful kernels for solving common partial differential equations.",
- },
];
function HeroProduct({
diff --git a/src/components/homepage/HomeFooter.jsx b/src/components/homepage/HomeFooter.jsx
index 056e0b0a..b4e32da7 100644
--- a/src/components/homepage/HomeFooter.jsx
+++ b/src/components/homepage/HomeFooter.jsx
@@ -1,29 +1,32 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
-import ThemedImage from '@theme/ThemedImage';
-import clsx from 'clsx';
+import Link from "@docusaurus/Link";
+import ThemedImage from "@theme/ThemedImage";
+import clsx from "clsx";
+import React from "react";
-import { Linkedin, Twitter, GitHub } from 'react-feather';
-import { DiscordIcon, SlackIcon} from '@site/src/icons';
+import { DiscordIcon, SlackIcon } from "@site/src/icons";
+import { GitHub, Linkedin, Twitter } from "react-feather";
export default function HomeFooter({ className }) {
return (
-
+
diff --git a/src/components/homepage/Install.tsx b/src/components/homepage/Install.tsx
index e875dbcc..141a471c 100644
--- a/src/components/homepage/Install.tsx
+++ b/src/components/homepage/Install.tsx
@@ -1,5 +1,5 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
+import Link from "@docusaurus/Link";
+import React from "react";
function SDK({ icon, to, name }: { icon: string; name: string; to?: string }) {
return (
@@ -20,14 +20,13 @@ export default function Install() {
Installation
-
Install easifem ☀️
+
Install easifem ☀️
Linux
- Select your Linux distro and
- follow the easy installation instructions.
+ Select your Linux distro and follow the easy installation instructions.
@@ -58,8 +57,7 @@ export default function Install() {
MacOS
- Select the architecture of your
- MacOS and follow the instructions.
+ Select the architecture of your MacOS and follow the instructions.
diff --git a/src/components/homepage/ResourcesSection.tsx b/src/components/homepage/ResourcesSection.tsx
index 3cb76435..6f64f751 100644
--- a/src/components/homepage/ResourcesSection.tsx
+++ b/src/components/homepage/ResourcesSection.tsx
@@ -1,11 +1,7 @@
-import Link from '@docusaurus/Link';
-import React, { useState } from 'react';
-import clsx from 'clsx';
-import {
- ArrowRightFilled,
- ChevronLeftRegular,
- ChevronRightRegular,
-} from '@fluentui/react-icons';
+import Link from "@docusaurus/Link";
+import { ArrowRightFilled, ChevronLeftRegular, ChevronRightRegular } from "@fluentui/react-icons";
+import clsx from "clsx";
+import React, { useState } from "react";
interface Resource {
url: string;
@@ -18,50 +14,47 @@ interface Resource {
const ALL_RESOURCES: Resource[] = [
{
- url: '/guides/v2-migration-guide',
- type: 'blog',
- title: 'Migrate to v2 REST API',
+ url: "/guides/v2-migration-guide",
+ type: "blog",
+ title: "Migrate to v2 REST API",
description:
- 'Excited to announce the release of our v2 REST APIs, which are faster, more idiomatic, and easier to use.',
- image:
- 'https://dyte.io/blog/content/images/size/w1000/2023/02/Dyte-Blog---v2-APIs.jpg',
- duration: '3 min',
+ "Excited to announce the release of our v2 REST APIs, which are faster, more idiomatic, and easier to use.",
+ image: "https://dyte.io/blog/content/images/size/w1000/2023/02/Dyte-Blog---v2-APIs.jpg",
+ duration: "3 min",
},
{
- url: 'https://dyte.io/blog/hls-in-depth/',
- type: 'blog',
- title: 'HLS in Depth',
+ url: "https://dyte.io/blog/hls-in-depth/",
+ type: "blog",
+ title: "HLS in Depth",
description:
"HLS is widely adopted, simple, yet robust. Learn how it works from a client's perspective, its segments, features, and disadvantages.",
- image:
- 'https://dyte.io/blog/content/images/size/w1000/2023/07/HLS--indepth--header--1.png',
- duration: '10 min',
+ image: "https://dyte.io/blog/content/images/size/w1000/2023/07/HLS--indepth--header--1.png",
+ duration: "10 min",
},
{
- url: 'https://www.youtube.com/watch?v=eVUqkNNHh1o',
- type: 'video',
- title: 'Integrating React UI Kit',
+ url: "https://www.youtube.com/watch?v=eVUqkNNHh1o",
+ type: "video",
+ title: "Integrating React UI Kit",
description:
- 'In this video learn how to use React UI Kit prebuilt components to add live video and audio to your React application.',
- image: 'https://img.youtube.com/vi/eVUqkNNHh1o/hqdefault.jpg',
- duration: '5 min',
+ "In this video learn how to use React UI Kit prebuilt components to add live video and audio to your React application.",
+ image: "https://img.youtube.com/vi/eVUqkNNHh1o/hqdefault.jpg",
+ duration: "5 min",
},
{
- url: 'https://www.youtube.com/watch?v=ZkrZc8Neh6A',
- type: 'video',
- title: 'Video KYC App using React UI Kit',
- description:
- 'In this episode of Dyte Byte we show how to build Video KYC App using React UI Kit.',
- image: 'https://img.youtube.com/vi/ZkrZc8Neh6A/hqdefault.jpg',
- duration: '5 min',
+ url: "https://www.youtube.com/watch?v=ZkrZc8Neh6A",
+ type: "video",
+ title: "Video KYC App using React UI Kit",
+ description: "In this episode of Dyte Byte we show how to build Video KYC App using React UI Kit.",
+ image: "https://img.youtube.com/vi/ZkrZc8Neh6A/hqdefault.jpg",
+ duration: "5 min",
},
{
- url: 'https://www.youtube.com/watch?v=UHuzWDxrvLk',
- type: 'video',
- title: 'Calling Dyte REST APIs',
- description: 'Understand our HTTP REST APIs',
- image: 'https://img.youtube.com/vi/UHuzWDxrvLk/hqdefault.jpg',
- duration: '7 min',
+ url: "https://www.youtube.com/watch?v=UHuzWDxrvLk",
+ type: "video",
+ title: "Calling Dyte REST APIs",
+ description: "Understand our HTTP REST APIs",
+ image: "https://img.youtube.com/vi/UHuzWDxrvLk/hqdefault.jpg",
+ duration: "7 min",
},
];
@@ -95,7 +88,7 @@ function Resource({
- {`${duration} ${type === 'Video' ? 'watch' : 'read'}`}
+ {`${duration} ${type === "Video" ? "watch" : "read"}`}
@@ -104,12 +97,11 @@ function Resource({
export default function ResourcesSection() {
const [page, setPage] = useState(1);
- const [activeType, setActiveType] = useState<'all' | 'blog' | 'video'>('all');
+ const [activeType, setActiveType] = useState<"all" | "blog" | "video">("all");
- const resources =
- activeType === 'all'
- ? ALL_RESOURCES
- : ALL_RESOURCES.filter((r) => r.type === activeType);
+ const resources = activeType === "all"
+ ? ALL_RESOURCES
+ : ALL_RESOURCES.filter((r) => r.type === activeType);
const currentResources = resources.slice((page - 1) * 3, page * 3);
@@ -146,31 +138,31 @@ export default function ResourcesSection() {
setActiveType('all')}
+ onClick={() => setActiveType("all")}
>
All
setActiveType('blog')}
+ onClick={() => setActiveType("blog")}
>
Blogs
setActiveType('video')}
+ onClick={() => setActiveType("video")}
>
Videos
diff --git a/src/css/custom.css b/src/css/custom.css
index 5f186cf0..692b1b90 100644
--- a/src/css/custom.css
+++ b/src/css/custom.css
@@ -1,3 +1,4 @@
+/* Font Definitions */
@font-face {
font-family: 'Inter';
font-weight: 100 900;
@@ -22,9 +23,10 @@
font-weight: 200 800;
font-display: fallback;
src: url(/assets/fonts/PlusJakartaSans-latin.woff2) format('woff2');
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
- U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
- U+FEFF, U+FFFD;
+ unicode-range:
+ U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
+ U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
+ U+FFFD;
}
@font-face {
@@ -33,44 +35,164 @@
font-weight: 200 800;
font-display: fallback;
src: url(/assets/fonts/PlusJakartaSans-italic.woff2) format('woff2');
- unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
- U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
+ unicode-range:
+ U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113,
+ U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
- font-family: 'Fira Code';
+ font-family: 'FiraCode';
font-style: normal;
font-weight: 300 700;
font-display: swap;
src: url(/assets/fonts/FiraCode.woff2) format('woff2');
- unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
- U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
- U+FEFF, U+FFFD;
+ unicode-range:
+ U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
+ U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF,
+ U+FFFD;
}
+/* Tailwind Imports */
@tailwind base;
@tailwind components;
@tailwind utilities;
+/* Catppuccin Theme Colors */
+:root {
+ /* Catppuccin Latte (Light Theme) */
+ --cat-rosewater: #dc8a78;
+ --cat-flamingo: #dd7878;
+ --cat-pink: #ea76cb;
+ --cat-mauve: #8839ef;
+ --cat-red: #d20f39;
+ --cat-maroon: #e64553;
+ --cat-peach: #fe640b;
+ --cat-yellow: #df8e1d;
+ --cat-green: #40a02b;
+ --cat-teal: #179299;
+ --cat-sky: #04a5e5;
+ --cat-sapphire: #209fb5;
+ --cat-blue: #1e66f5;
+ --cat-lavender: #7287fd;
+ --cat-text: #4c4f69;
+ --cat-subtext1: #5c5f77;
+ --cat-subtext0: #6c6f85;
+ --cat-overlay2: #7c7f93;
+ --cat-overlay1: #8c8fa1;
+ --cat-overlay0: #9ca0b0;
+ --cat-surface2: #acb0be;
+ --cat-surface1: #bcc0cc;
+ --cat-surface0: #ccd0da;
+ --cat-base: #eff1f5;
+ --cat-mantle: #e6e9ef;
+ --cat-crust: #dce0e8;
+}
+
+html[data-theme='dark'] {
+ /* Catppuccin Mocha (Dark Theme) */
+ --cat-rosewater: #f5e0dc;
+ --cat-flamingo: #f2cdcd;
+ --cat-pink: #f5c2e7;
+ --cat-mauve: #cba6f7;
+ --cat-red: #f38ba8;
+ --cat-maroon: #eba0ac;
+ --cat-peach: #fab387;
+ --cat-yellow: #f9e2af;
+ --cat-green: #a6e3a1;
+ --cat-teal: #94e2d5;
+ --cat-sky: #89dceb;
+ --cat-sapphire: #74c7ec;
+ --cat-blue: #89b4fa;
+ --cat-lavender: #b4befe;
+ --cat-text: #cdd6f4;
+ --cat-subtext1: #bac2de;
+ --cat-subtext0: #a6adc8;
+ --cat-overlay2: #9399b2;
+ --cat-overlay1: #7f849c;
+ --cat-overlay0: #6c7086;
+ --cat-surface2: #585b70;
+ --cat-surface1: #45475a;
+ --cat-surface0: #313244;
+ --cat-base: #1e1e2e;
+ --cat-mantle: #181825;
+ --cat-crust: #11111b;
+}
+
+/* Base Light Theme */
@layer base {
:root {
- --docs-color-primary-100: 238 106 26;
- --docs-color-primary-200: 227 96 17;
- --docs-color-secondary-700: 232 232 236;
- --docs-color-secondary-800: 245 245 247;
- --docs-color-secondary-900: 251 251 251;
- --docs-color-secondary-1000: 255 255 255;
- --docs-color-text-400: 71 71 71;
- }
- html[data-theme='dark'] {
- --docs-color-primary-100: 71 220 235;
- --docs-color-primary-200: 54 167 178;
- --docs-color-text-400: 180 190 254;
- --docs-color-secondary-700: 49 50 68;
- --docs-color-secondary-800: 49 50 68;
- --docs-color-secondary-900: 17 17 27;
- --docs-color-secondary-1000: 0 0 0;
+ /* Primary theme color */
+ --docs-color-primary: var(--cat-flamingo);
+ --docs-color-primary-tint: var(--cat-base);
+ --docs-color-primary-tint-light: rgba(254, 100, 11, 0.24);
+ --docs-color-primary-100: var(--cat-maroon);
+ --docs-color-primary-200: var(--cat-peach);
+
+ --ifm-color-primary: var(--cat-flamingo);
+ --ifm-color-primary-darker: var(--cat-maroon);
+
+ --docs-color-secondary-700: var(--cat-surface0);
+ --docs-color-secondary-800: var(--cat-surface1);
+ --docs-color-secondary-900: var(--cat-base);
+ --docs-color-secondary-1000: var(--cat-crust);
+
+ --docs-color-text-400: var(--cat-text);
+
+ /* Background colors */
+ --docs-color-background: var(--cat-base);
+ --docs-color-background-100: var(--cat-mantle);
+ --docs-color-background-200: var(--cat-crust);
+ --docs-color-background-300: var(--cat-surface0);
+ --ifm-background-surface-color: var(--cat-base);
+ --ifm-background-color: var(--cat-base);
+ --ifm-footer-background-color: var(--cat-surface0);
+
+ /* Border and text colors */
+ --docs-color-border: var(--cat-surface1);
+ --docs-color-text: var(--cat-text);
+ --docs-color-text-100: var(--cat-subtext1);
+ --docs-color-code-background: var(--cat-crust);
+ --docs-table-color-border: var(--cat-surface2);
+ --docs-table-header: var(--cat-text);
+ --ifm-toc-border-color: var(--cat-surface1);
+ --ifm-table-border-color: var(--docs-table-color-border);
+ --code-border-color: var(--cat-overlay0);
+
+ /* UI Kit tokens */
+ --dyte-colors-video-bg: 50 50 50;
+
+ /* Status colors */
+ --ifm-color-success: var(--cat-green);
+ --ifm-color-info: var(--cat-blue);
+ --ifm-color-warning: var(--cat-yellow);
+ --ifm-color-danger: var(--cat-red);
+ --ifm-color-caution: var(--cat-peach);
+
+ /* UI elements */
+ --ifm-navbar-shadow: none;
+ --ifm-code-font-size: 92%;
+ --docusaurus-highlighted-code-line-bg: var(--cat-surface0);
+ --ifm-breadcrumb-item-background-active: transparent;
+ --ifm-breadcrumb-padding-horizontal: 0;
+ --ifm-color-content: var(--cat-text);
+
+ /* Docusaurus Theming */
+ --ifm-link-color: var(--cat-rosewater);
+ --ifm-tabs-color-active-border: var(--cat-rosewater);
+ --ifm-tabs-color-active: var(--cat-teal);
+
+ /* Docusaurus Theming */
+ --ifm-spacing-horizontal: 1.5rem;
+ --ifm-navbar-padding-horizontal: 0.75rem;
+ --ifm-font-family-base:
+ 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell,
+ Noto Sans, sans-serif, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial,
+ sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
+ --ifm-font-family-monospace:
+ 'Fira Code', SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono',
+ 'Courier New', monospace;
+
}
body {
@@ -89,11 +211,7 @@
@apply cursor-pointer;
}
- h1,
- h2,
- h3,
- h4,
- h5 {
+ h1, h2, h3, h4, h5 {
@apply font-jakarta;
}
@@ -103,14 +221,7 @@
}
}
-.accordion-content *:last-child {
- @apply mb-0;
-}
-
-.dyte-accordion img {
- @apply rounded-lg;
-}
-
+/* Components */
@layer components {
.noise-bg {
background-image: url('/static/landing-page/grid-light.svg');
@@ -126,188 +237,21 @@
}
}
-/* Fonts */
-
-pre,
-code {
- font-variant-ligatures: none;
-}
-
-/* UI Kit tokens */
-body {
- --dyte-colors-video-bg: 50 50 50;
+/* Utility styles */
+.accordion-content *:last-child {
+ @apply mb-0;
}
-/* Dyte Docs Tokens */
-:root {
-
- /*Colors */
- --rosewater: #f5e0dc;
- --flamingo: #f2cdcd;
- --pink: #f5c2e7;
- --mauve: #cba6f7;
- --red: #f38ba8;
- --maroon: #eba0ac;
- --peach: #fab387;
- --yellow: #f9e2af;
- --green: #a6e3a1;
- --teal: #94e2d5;
- --sky: #89dceb;
- --sapphire: #74c7ec;
- --blue: #89b4fa;
- --lavender: #b4befe;
- --text: #cdd6f4;
- --subtext1: #bac2de;
- --subtext0: #a6adc8;
- --overlay2: #9399b2;
- --overlay1: #7f849c;
- --overlay0: #6c7086;
- --surface2: #585b70;
- --surface1: #45475a;
- --surface0: #313244;
- --base: #1e1e2e;
- --mantle: #181825;
- --crust: #11111b;
-
- --docs-color-primary: #ee6a1a;
- --docs-color-primary-tint: rgba(33, 96, 253, 0.16);
- --docs-color-primary-tint-light: rgba(33 96 253/0.24);
-
- --docs-color-background: #ffffff;
- --docs-color-background-100: #f8f8f8;
- --docs-color-background-200: #efefef;
- --docs-color-background-300: #dcdcdc;
-
- --docs-color-border: #dadde1;
- --docs-color-text: #000000;
- --docs-color-text-100: #646464;
-
- /* Color from prism themes */
- --docs-color-code-background: #181825;
- --docs-color-android: #44db85;
- --docs-color-apple: var(--docs-color-text) !important;
-}
-
-[data-theme='dark'] {
- --docs-color-background: #11111b;
- --docs-color-background-100: #181825;
- --docs-color-background-200: #1e1e2e;
- --docs-color-background-300: #313244;
- --docs-color-text: #CDD6F4;
- --docs-color-text-100: #BAC2DE;
- --docs-color-border: #11111b;
- --docs-table-color-border: var(--rosewater);
-}
-
-/* Docusaurus Theming */
-
-:root {
- /* Default values */
-
- --ifm-spacing-horizontal: 1.5rem;
- --ifm-navbar-padding-horizontal: 0.75rem;
-
- --ifm-font-family-base: 'Inter', system-ui, -apple-system, Segoe UI, Roboto,
- Ubuntu, Cantarell, Noto Sans, sans-serif, BlinkMacSystemFont, 'Segoe UI',
- Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
- 'Segoe UI Symbol';
-
- --ifm-font-family-monospace: 'Fira Code', SFMono-Regular, Menlo, Monaco,
- Consolas, 'Liberation Mono', 'Courier New', monospace;
-
- --ifm-color-primary: #ee6a1a;
- --ifm-color-primary-dark: #e36011;
- --ifm-color-primary-darker: #d15910;
- --ifm-color-primary-darkest: #bf510e;
- --ifm-color-primary-light: #fef9f5;
- --ifm-color-primary-lighter: #e3e2d8;
- --ifm-color-primary-lightest: #eeede7;
-
- --ifm-navbar-shadow: none;
- --ifm-toc-border-color: #dedede;
-
- --ifm-table-border-color: var(--docs-table-color-border);
- --code-border-color: var(--docs-color-border);
- --code-border-color: var(--overlay0);
-
- --ifm-code-font-size: 92%;
- --docusaurus-highlighted-code-line-bg: rgba(147, 178, 244, 0.38);
-
- --ifm-breadcrumb-item-background-active: transparent;
- --ifm-breadcrumb-padding-horizontal: 0;
+.dyte-accordion img {
+ @apply rounded-lg;
}
-/* For readability concerns, you should choose a lighter palette in dark mode. */
-html[data-theme='dark'] {
- --docs-color-primary: #47DCEB;
- --docs-color-primary-tint: #1E1E2E;
- --docs-color-primary-tint-light: rgba(33 96 253/0.24);
-
- --ifm-link-color: #47DCEB;
- --ifm-tabs-color-active-border: #F5E0DC;
- --ifm-tabs-color-active: #A6E3A1;
-
- --ifm-color-primary: #47DCEB;
- --ifm-color-primary-dark: #36A7B2;
- --ifm-color-primary-darker: #2E9099;
- --ifm-color-primary-darkest: #267880;
- --ifm-color-primary-light: #8BD4C7;
- --ifm-color-primary-lighter: #94E2D5;
- --ifm-color-primary-lightest: #96E6D7;
-
- --ifm-color-caution: #db5a09;
- /* --ifm-color-caution: #fab387;
- --ifm-color-caution-dark: #f89c62;
- --ifm-color-caution-darker: #f89050;
- --ifm-color-caution-darkest: #f56d18;
- --ifm-color-caution-light: #fccaac;
- --ifm-color-caution-lighter: #fcd6be;
- --ifm-color-caution-lightest: #fff9f6; */
-
- --ifm-color-warning: #c18a0f;
- /* --ifm-color-warning: #f9e2af;
- --ifm-color-warning-dark: #f6d488;
- --ifm-color-warning-darker: #f5cd74;
- --ifm-color-warning-darkest: #f0b739;
- --ifm-color-warning-light: #fcf0d6;
- --ifm-color-warning-lighter: #fdf7ea;
- --ifm-color-warning-lightest: #ffffff; */
-
- --ifm-color-danger: #a9123c;
- /* --ifm-color-danger: #f38ba8;
- --ifm-color-danger-dark: #ef688e;
- --ifm-color-danger-darker: #ee5781;
- --ifm-color-danger-darkest: #e8235a;
- --ifm-color-danger-light: #f7aec2;
- --ifm-color-danger-lighter: #f8bfcf;
- --ifm-color-danger-lightest: #fef3f6; */
-
- --ifm-color-success: #34922c;
- /* --ifm-color-success: #a6e3a1;
- --ifm-color-success-dark: #8ada83;
- --ifm-color-success-darker: #7cd674;
- --ifm-color-success-darkest: #51c847;
- --ifm-color-success-light: #c2ecbf;
- --ifm-color-success-lighter: #d0f0ce;
- --ifm-color-success-lightest: #fbfefb; */
-
- --ifm-color-info: #031fd2;
- /* --ifm-color-info: #b4befe;
- --ifm-color-info-dark: #8999fd;
- --ifm-color-info-darker: #7486fd;
- --ifm-color-info-darkest: #344ffc;
- --ifm-color-info-light: #dfe3ff;
- --ifm-color-info-lighter: #f4f6ff;
- --ifm-color-info-lightest: #ffffff; */
-
- --ifm-background-surface-color: #11111b;
- --ifm-background-color: #11111b;
- --ifm-footer-background-color: #181825;
- --ifm-toc-border-color: #11111b;
- --ifm-color-content: #CDD6F4;
- --docusaurus-highlighted-code-line-bg: #313244;
+/* Typography and Code */
+pre, code {
+ font-variant-ligatures: none;
}
+/* Navigation and UI Components */
nav.navbar {
border-bottom: 0.5px solid var(--ifm-toc-border-color);
}
@@ -338,6 +282,7 @@ nav.menu {
scrollbar-gutter: auto;
}
+/* Badges */
.new-badge::after,
.deprecated-badge::after {
font-size: 11px;
@@ -360,6 +305,7 @@ nav.menu {
@apply bg-red-100 text-red-900;
}
+/* Footer Styling */
.footer__description {
@apply text-text-400;
font-size: 14px;
@@ -385,18 +331,19 @@ nav.menu {
}
.footer__cta a {
- --ifm-link-hover-color: #fff;
+ /* --ifm-link-hover-color: #fff; */
margin-top: 0.25rem;
display: inline-block;
padding: 0.25rem 1.5rem;
border-radius: 4px;
- background-color: theme('colors.primary.200');
- color: #ffffff;
+ background-color: var(--ifm-color-primary);
+ color: var(--ifm-text-color);
text-decoration: none;
}
.footer__cta a:hover {
background-color: var(--ifm-color-primary-darker);
+ /* color: var(--ifm-color-primary); */
}
.footer__data {
@@ -422,6 +369,7 @@ nav.menu {
text-decoration: none;
}
+/* Sidebar styling */
.navbar-sidebar__item {
padding-right: 0;
}
@@ -441,6 +389,7 @@ nav.menu {
margin-left: 4px;
}
+/* Portal links */
.dev-portal-link {
background-color: theme('colors.primary.200');
border-radius: 4px;
@@ -483,8 +432,7 @@ nav.menu {
margin-top: 1rem;
}
-/* Custom design for sidebar hide and expand buttons */
-
+/* Sidebar customization */
aside.theme-doc-sidebar-container {
position: relative;
clip-path: inset(0px -140px);
@@ -504,7 +452,6 @@ aside.theme-doc-sidebar-container {
background-position: center;
background-repeat: no-repeat;
background-color: var(--docs-color-border);
-
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.707 4.293a1 1 0 0 1 0 1.414L9.414 12l6.293 6.293a1 1 0 0 1-1.414 1.414l-7-7a1 1 0 0 1 0-1.414l7-7a1 1 0 0 1 1.414 0Z' fill='%23181818'/%3E%3C/svg%3E");
}
@@ -514,26 +461,20 @@ aside.theme-doc-sidebar-container {
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.293 4.293a1 1 0 0 0 0 1.414L14.586 12l-6.293 6.293a1 1 0 1 0 1.414 1.414l7-7a1 1 0 0 0 0-1.414l-7-7a1 1 0 0 0-1.414 0Z' fill='%23181818'/%3E%3C/svg%3E");
}
-html[data-theme='dark']
- .theme-doc-sidebar-container
- button[title='Collapse sidebar'] {
+html[data-theme='dark'] .theme-doc-sidebar-container button[title='Collapse sidebar'] {
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15.707 4.293a1 1 0 0 1 0 1.414L9.414 12l6.293 6.293a1 1 0 0 1-1.414 1.414l-7-7a1 1 0 0 1 0-1.414l7-7a1 1 0 0 1 1.414 0Z' fill='%23ffffff'/%3E%3C/svg%3E");
}
-html[data-theme='dark']
- .theme-doc-sidebar-container
- div[title='Expand sidebar'] {
+html[data-theme='dark'] .theme-doc-sidebar-container div[title='Expand sidebar'] {
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.293 4.293a1 1 0 0 0 0 1.414L14.586 12l-6.293 6.293a1 1 0 1 0 1.414 1.414l7-7a1 1 0 0 0 0-1.414l-7-7a1 1 0 0 0-1.414 0Z' fill='%23ffffff'/%3E%3C/svg%3E");
}
-.theme-doc-sidebar-container
- :is(div[title='Expand sidebar'], button[title='Collapse sidebar'])
- svg {
+.theme-doc-sidebar-container :is(div[title='Expand sidebar'], button[title='Collapse sidebar']) svg {
display: none;
}
+/* Sections Menu */
.sections-menu-trigger {
- /* all: unset; */
flex: 1;
display: inline-flex;
background-color: var(--docs-color-background-100);
@@ -543,12 +484,9 @@ html[data-theme='dark']
align-items: center;
justify-content: space-between;
text-align: left;
-
box-sizing: border-box;
outline: none;
-
cursor: pointer;
-
box-sizing: border-box;
border: 0.5px solid var(--docs-color-background-200);
}
@@ -582,7 +520,6 @@ html[data-theme='dark']
align-items: center;
justify-content: space-between;
outline: none;
-
cursor: pointer;
}
@@ -619,10 +556,9 @@ html[data-theme='dark']
.sections-menu-content {
box-sizing: border-box;
- background-color: var(--docs-color-background-100);
+ background-color: var(--docs-color-background);
border-radius: 6px;
padding: 6px 0;
-
box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
}
@@ -642,6 +578,7 @@ html[data-theme='dark']
width: auto;
}
+/* Loading indicator */
.loading-container {
width: 100%;
height: 100%;
@@ -656,6 +593,7 @@ html[data-theme='dark']
color: theme('colors.primary.100');
}
+/* Media content */
.dyte-video-showcase {
margin: 3rem auto;
display: block;
@@ -678,6 +616,7 @@ img.cover-image {
margin: 0 auto;
}
+/* List styling */
ul.emoji-list {
list-style-type: none;
padding-left: 12px;
@@ -695,7 +634,7 @@ ul.emoji-list span {
font-size: 28px;
}
-/* Disables link hover decoration enabled by default in docusaurus v2.0.0-beta.22 */
+/* Link decorations */
.navbar__link,
.menu__link,
.table-of-contents__link,
@@ -709,11 +648,11 @@ ul.emoji-list span {
--ifm-menu-color-background-active: var(--docs-color-primary-tint);
}
+/* Table styling */
table {
border-collapse: collapse;
border: none;
background-color: transparent;
-
text-align: left;
font-size: 90%;
}
@@ -731,11 +670,12 @@ table thead tr {
}
table th {
- font-weight: 500;
+ font-weight: 700;
font-size: 14px;
- color: var(--docs-table-color-border);
+ color: var(--docs-table-header);
}
+/* Tabs styling */
.tabs {
border-bottom: 1px solid var(--docs-table-color-border);
}
@@ -751,27 +691,14 @@ table th {
border-bottom: 2px solid theme('colors.primary.100');
}
-/* Mobile breakpoint */
-@media only screen and (max-width: 996px) {
- :root {
- --ifm-spacing-horizontal: 1rem;
- }
-
- .footer__row {
- flex-direction: column;
- }
-
- .footer__data {
- margin-bottom: 3rem;
- }
-}
-
+/* Code styling */
code[data-code='required'] {
font-size: 12px;
background-color: var(--ifm-color-danger-contrast-background);
color: var(--ifm-color-danger);
}
+/* Dropdown styling */
.dropdown > .navbar__link {
display: flex;
align-items: center;
@@ -798,6 +725,7 @@ html[data-theme='dark'] .dropdown > .navbar__link:after {
background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' fill='none' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.293 8.293a1 1 0 0 1 1.414 0L12 14.586l6.293-6.293a1 1 0 1 1 1.414 1.414l-7 7a1 1 0 0 1-1.414 0l-7-7a1 1 0 0 1 0-1.414Z' fill='%231a90ff'/%3E%3C/svg%3E") !important;
}
+/* SDK dropdown styling */
.dyte-dropdown + ul.dropdown__menu {
@apply bg-secondary-900 p-0;
}
@@ -843,6 +771,7 @@ html[data-theme='dark'] .dropdown > .navbar__link:after {
@apply text-sm font-semibold;
}
+/* SDK menu visibility control */
[data-dropdown-sdks] {
display: none;
}
@@ -877,7 +806,7 @@ body[data-sdk-menu='plugin'] [data-dropdown-sdks-menu='plugin'] {
@apply flex items-center gap-2;
}
-/* To disable showing search icon in Safari mobile */
+/* Safari mobile search fixes */
input[type='search']::-webkit-search-decoration,
input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-results-button,
@@ -885,21 +814,14 @@ input[type='search']::-webkit-search-results-decoration {
display: none;
}
-/**
- Image caption, use in markdown as:
- 
- _my image caption_
- */
+/* Image caption support */
img + em {
text-align: center;
display: block;
margin-top: 1rem;
}
-/**
- Style for a terminal image, markdown usage (add #terminal to end of url):
- 
-*/
+/* Terminal image styling */
img[src$='#terminal'] {
display: block;
max-width: 720px;
@@ -907,6 +829,7 @@ img[src$='#terminal'] {
margin-right: auto;
}
+/* Layout utilities */
.pad {
padding: 0 1rem;
}
@@ -918,6 +841,7 @@ img[src$='#terminal'] {
min-height: 400px;
}
+/* Homepage styling */
.homepage-content {
padding-bottom: 6rem;
}
@@ -953,6 +877,7 @@ img[src$='#terminal'] {
.has-sub-sections > .section-content {
grid-template-columns: repeat(1, minmax(0, 1fr));
}
+
.has-sub-sections > .section-content > .homepage-section {
margin-bottom: 1rem;
grid-template-columns: repeat(1, minmax(0, 1fr));
@@ -982,7 +907,6 @@ img[src$='#terminal'] {
padding: 0.75rem;
text-decoration: none;
color: var(--docs-color-text);
-
--ifm-link-hover-decoration: none;
--ifm-link-hover-color: inherit;
cursor: pointer;
@@ -990,7 +914,6 @@ img[src$='#terminal'] {
@apply border-secondary-800 bg-secondary-900 hover:bg-secondary-800;
border-width: 0.5px;
transition-property: background-color, color;
-
border-radius: 8px;
}
@@ -1007,8 +930,6 @@ img[src$='#terminal'] {
width: 48px;
height: 48px;
@apply mx-1;
- /* background-color: #262626;
- border-radius: 8px; */
}
.card-content {
@@ -1029,12 +950,13 @@ img[src$='#terminal'] {
line-height: 1.5;
}
+/* Details/Collapsible styling */
details {
font-size: 14px;
font-weight: 500;
color: var(--docs-color-primary) !important;
background: var(--docs-color-code-background) !important;
- border: solid 2px var(--docs-color-code-background) !important;
+ border: solid 2px var(--docs-color-border) !important;
}
details code {
@@ -1045,6 +967,7 @@ details p {
font-weight: 300;
}
+/* Responsive adjustments */
@media screen and (max-width: 1160px) {
/* Hide icons when header UI breaks */
.pseudo-icon {
@@ -1059,17 +982,29 @@ details p {
.two-cols .section-content {
grid-template-columns: repeat(1, minmax(0, 1fr));
}
+
+ .footer__row {
+ flex-direction: column;
+ }
+
+ .footer__data {
+ margin-bottom: 3rem;
+ }
+
+ :root {
+ --ifm-spacing-horizontal: 1rem;
+ }
}
-/* Overriding Docusaurus styles */
+/* Docusaurus-specific overrides */
.collapsibleContent_node_modules-\@docusaurus-theme-common-lib-components-Details-styles-module {
border-top: 1px solid var(--code-border-color) !important;
}
-.details_node_modules-\@docusaurus-theme-common-lib-components-Details-styles-module
- > summary::before {
+.details_node_modules-\@docusaurus-theme-common-lib-components-Details-styles-module > summary::before {
border-color: transparent transparent transparent var(--docs-color-text-100) !important;
}
+
@media only screen and (min-width: 768px) {
img[alt='PresetEditor'] {
max-width: 600px;
@@ -1095,6 +1030,7 @@ details p {
border-left: 3px solid #ff000080;
}
+/* Release notes styling */
.notesContainer h4 {
@apply mb-8;
}
@@ -1116,19 +1052,19 @@ details p {
}
.notesContainer .deprecated .type {
- color: #de4e2b;
+ color: var(--cat-red);
}
.notesContainer .deprecated .sublist {
- background-color: #e01e5a1a;
+ background-color: rgba(243, 139, 168, 0.1);
}
.notesContainer .newAPI .type {
- color: #1264a3;
+ color: var(--cat-blue);
}
.notesContainer .newAPI .sublist {
- background-color: #1264a31a;
+ background-color: rgba(137, 180, 250, 0.1);
}
.sublist {
@@ -1151,6 +1087,7 @@ details p {
@apply mb-0;
}
+/* Sidebar styling */
.releaseSidebarHeading {
@apply !mt-2 border-t-secondary-700 pt-1;
border-top-style: solid;
@@ -1161,6 +1098,7 @@ details p {
display: none;
}
+/* Search styling */
.DocSearch-Button {
@apply lg:!rounded-md;
}
@@ -1175,7 +1113,7 @@ details p {
}
.DocSearch-Modal {
- /* after introducting ai chat bot */
+ /* after introducing ai chat bot */
margin-top: 80px !important;
}
@@ -1183,6 +1121,7 @@ details p {
@apply !text-xs;
}
+/* List styling */
article ol {
list-style-type: decimal !important;
}
@@ -1191,6 +1130,7 @@ article ul {
list-style-type: disc;
}
+/* Animation */
.fade-in {
animation: fade-in 1.4s linear;
}
@@ -1205,35 +1145,65 @@ article ul {
}
}
+/* Sidebar icons */
.guide_sidebar_index {
@apply -ml-2;
}
-.getting-started_sidebar_header > div > a::before {
+/* Icon definitions for sidebar items */
+.getting-started_sidebar_header > div > a::before,
+.ide_sidebar_header > div > a::before,
+.install_sidebar_header > div > a::before,
+.using-easifem_sidebar_header > div > a::before,
+.video_sidebar_header > div > a::before,
+.audio_sidebar_header > div > a::before,
+.ils_sidebar_header > div > a::before,
+.chat_sidebar_header > div > a::before {
@apply mt-1 mr-2;
- content: url('data:image/svg+xml,');
}
-html[data-theme='dark'] .getting-started_sidebar_header > div > a::before {
- @apply mt-1 mr-2;
- content: url('data:image/svg+xml,');
+/* Light theme sidebar icons */
+.getting-started_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
}
.ide_sidebar_header > div > a::before {
- @apply mt-1 mr-2;
content: url('data:image/svg+xml,');
}
-html[data-theme='dark'] .ide_sidebar_header > div > a::before {
- @apply mt-1 mr-2;
- content: url('data:image/svg+xml,');
-}
-
.install_sidebar_header > div > a::before {
- @apply mt-1 mr-2;
content: url('data:image/svg+xml, ');
}
+.using-easifem_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+.video_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+.audio_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+.ils_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+.chat_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+/* Dark theme sidebar icons */
+html[data-theme='dark'] .getting-started_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
+html[data-theme='dark'] .ide_sidebar_header > div > a::before {
+ content: url('data:image/svg+xml,');
+}
+
html[data-theme='dark'] .install_sidebar_header > div > a::before {
@apply mt-1 mr-2;
content: url('data:image/svg+xml, ');
diff --git a/src/lib/useBreakpoint.ts b/src/lib/useBreakpoint.ts
index e33c7c82..192a9f88 100644
--- a/src/lib/useBreakpoint.ts
+++ b/src/lib/useBreakpoint.ts
@@ -1,13 +1,13 @@
-import { useEffect, useState } from 'react';
+import { useEffect, useState } from "react";
export default function useBreakpoint() {
- const [size, setSize] = useState<'sm' | 'lg'>('lg');
+ const [size, setSize] = useState<"sm" | "lg">("lg");
useEffect(() => {
- if (typeof document === 'undefined') return;
+ if (typeof document === "undefined") return;
const resizeObserver = new ResizeObserver(() => {
- setSize(document.body.clientWidth > 996 ? 'lg' : 'sm');
+ setSize(document.body.clientWidth > 996 ? "lg" : "sm");
});
resizeObserver.observe(document.body);
diff --git a/src/lib/useSectionMenu.ts b/src/lib/useSectionMenu.ts
index fbcd8c19..2a85e27c 100644
--- a/src/lib/useSectionMenu.ts
+++ b/src/lib/useSectionMenu.ts
@@ -1,5 +1,5 @@
-import useRouteContext from '@docusaurus/useRouteContext';
-import { SECTIONS, SECTION_GROUPS } from '../sections';
+import useRouteContext from "@docusaurus/useRouteContext";
+import { SECTION_GROUPS, SECTIONS } from "../sections";
export function useSectionMenu() {
const routeContext = useRouteContext();
@@ -27,7 +27,7 @@ export function useSectionMenu() {
docId,
currentSection,
sections: SECTIONS.filter(
- (section) => section.section === currentSection
+ (section) => section.section === currentSection,
),
};
}
diff --git a/src/pages/api/v2.jsx b/src/pages/api/v2.jsx
index b32a7d23..a6207936 100644
--- a/src/pages/api/v2.jsx
+++ b/src/pages/api/v2.jsx
@@ -1,5 +1,5 @@
-import React from 'react';
-import { Redirect, useHistory } from '@docusaurus/router';
+import { Redirect, useHistory } from "@docusaurus/router";
+import React from "react";
/**
* Route to make sure older /api/v2 links work
@@ -10,8 +10,8 @@ export default function V2API() {
return (
diff --git a/src/pages/index.jsx b/src/pages/index.jsx
index 684e1bf8..f1333a92 100644
--- a/src/pages/index.jsx
+++ b/src/pages/index.jsx
@@ -19,7 +19,6 @@ export default function Homepage() {
noFooter
>
-
diff --git a/src/plugins/analytics/client.js b/src/plugins/analytics/client.js
index 45b11581..d402b688 100644
--- a/src/plugins/analytics/client.js
+++ b/src/plugins/analytics/client.js
@@ -1,7 +1,7 @@
function poke(host, path) {
// TODO: Allow this to be configured
fetch(`https://poke.benthos.dev/poke?h=${encodeURIComponent(host)}&p=${encodeURIComponent(path)}`, { method: "POST" })
- .catch((error) => console.error(error))
+ .catch((error) => console.error(error));
}
module.exports = (() => {
@@ -14,8 +14,8 @@ module.exports = (() => {
poke(host, path);
return {
- onRouteUpdate({location}) {
- if ( path === location.pathname ) {
+ onRouteUpdate({ location }) {
+ if (path === location.pathname) {
return;
}
path = location.pathname;
diff --git a/src/plugins/analytics/index.js b/src/plugins/analytics/index.js
index 6b8222b5..b4715424 100644
--- a/src/plugins/analytics/index.js
+++ b/src/plugins/analytics/index.js
@@ -1,12 +1,12 @@
-const path = require('path');
+const path = require("path");
-const isProd = process.env.NODE_ENV === 'production';
+const isProd = process.env.NODE_ENV === "production";
module.exports = function(context, options) {
return {
- name: 'blob-analytics',
+ name: "blob-analytics",
getClientModules() {
- return isProd ? [path.resolve(__dirname, './client')] : [];
+ return isProd ? [path.resolve(__dirname, "./client")] : [];
},
};
};
diff --git a/src/plugins/prism_themes/catppuccin-latte/index.js b/src/plugins/prism_themes/catppuccin-latte/index.js
new file mode 100644
index 00000000..1419598c
--- /dev/null
+++ b/src/plugins/prism_themes/catppuccin-latte/index.js
@@ -0,0 +1,111 @@
+module.exports = {
+ plain: {
+ color: "#4c4f69",
+ background: "#e6e9ef",
+ },
+ styles: [
+ {
+ types: ["comment"],
+ style: {
+ color: "#5c5f77",
+ fontStyle: "italic",
+ },
+ },
+ {
+ types: ["constant", "boolean", "number"],
+ style: {
+ color: "#dc8a78",
+ },
+ },
+ {
+ types: ["keywordTypes"],
+ style: {
+ color: "#7287fd",
+ },
+ },
+ {
+ types: ["keywordEnd"],
+ style: {
+ color: "#209fb5",
+ },
+ },
+ {
+ types: ["keywordExtra"],
+ style: {
+ color: "#8839ef",
+ },
+ },
+ {
+ types: ["keywordTypes"],
+ style: {
+ color: "#04a5e5",
+ },
+ },
+ {
+ types: ["easifemMethods"],
+ style: {
+ color: "#d20f39",
+ },
+ },
+ {
+ types: ["keyword"],
+ style: {
+ color: "#8839ef",
+ },
+ },
+ {
+ types: ["operator"],
+ style: {
+ color: "#179299",
+ },
+ },
+ {
+ types: ["punctuation"],
+ style: {
+ color: "#dd7878",
+ },
+ },
+ {
+ types: ["primitive"],
+ style: {
+ color: "#dc8a78",
+ },
+ },
+ {
+ types: ["prolog", "builtin"],
+ style: {
+ color: "#fe640b",
+ },
+ },
+ {
+ types: ["function"],
+ style: {
+ color: "#1e66f5",
+ },
+ },
+ {
+ types: ["symbol"],
+ style: {
+ color: "#40a02b",
+ },
+ },
+ {
+ types: ["string", "char", "tag", "selector"],
+ style: {
+ color: "#df8e1d",
+ },
+ },
+ {
+ types: ["variable"],
+ style: {
+ color: "#4ca5e5",
+ },
+ },
+ {
+ types: ["attr-name"],
+ style: {
+ color: "#04a5e5",
+ },
+ },
+ ],
+};
diff --git a/src/plugins/prism_themes/catppuccin-mocha/index.js b/src/plugins/prism_themes/catppuccin-mocha/index.js
new file mode 100644
index 00000000..91538db3
--- /dev/null
+++ b/src/plugins/prism_themes/catppuccin-mocha/index.js
@@ -0,0 +1,111 @@
+module.exports = {
+ plain: {
+ color: "#cdd6f4",
+ background: "#11111b",
+ },
+ styles: [
+ {
+ types: ["comment"],
+ style: {
+ color: "#bac2de",
+ fontStyle: "italic",
+ },
+ },
+ {
+ types: ["constant", "boolean", "number"],
+ style: {
+ color: "#fab387",
+ },
+ },
+ {
+ types: ["keywordTypes"],
+ style: {
+ color: "#89b4fa",
+ },
+ },
+ {
+ types: ["keywordEnd"],
+ style: {
+ color: "#74c7ec",
+ },
+ },
+ {
+ types: ["keywordExtra"],
+ style: {
+ color: "#cba6f7",
+ },
+ },
+ {
+ types: ["keywordTypes"],
+ style: {
+ color: "#74c7ec",
+ },
+ },
+ {
+ types: ["easifemMethods"],
+ style: {
+ color: "#f38ba8",
+ },
+ },
+ {
+ types: ["keyword"],
+ style: {
+ color: "#cba6f7",
+ },
+ },
+ {
+ types: ["operator"],
+ style: {
+ color: "#94e2d5",
+ },
+ },
+ {
+ types: ["punctuation"],
+ style: {
+ color: "#cba6f7",
+ },
+ },
+ {
+ types: ["primitive"],
+ style: {
+ color: "#fab387",
+ },
+ },
+ {
+ types: ["prolog", "builtin"],
+ style: {
+ color: "#f38ba8",
+ },
+ },
+ {
+ types: ["function"],
+ style: {
+ color: "#89b4fa",
+ },
+ },
+ {
+ types: ["symbol"],
+ style: {
+ color: "#a6e3a1",
+ },
+ },
+ {
+ types: ["string", "char", "tag", "selector"],
+ style: {
+ color: "#f5e0dc",
+ },
+ },
+ {
+ types: ["variable"],
+ style: {
+ color: "#bac2de",
+ },
+ },
+ {
+ types: ["attr-name"],
+ style: {
+ color: "#f9e2af",
+ },
+ },
+ ],
+};
diff --git a/src/sections.ts b/src/sections.ts
index 8133a780..7407bd77 100644
--- a/src/sections.ts
+++ b/src/sections.ts
@@ -1,131 +1,125 @@
-import type { ComponentProps, ReactNode } from 'react';
-import {
- ReactIcon,
- AngularIcon,
- AndroidIcon,
- AppleIcon,
- FlutterIcon,
- HTMLIcon,
- JSIcon,
-} from './icons';
+import type { ComponentProps, ReactNode } from "react";
+import { AndroidIcon, AngularIcon, AppleIcon, FlutterIcon, HTMLIcon, JSIcon, ReactIcon } from "./icons";
-export type Section = { docId: string } & (
- | {
- section: false;
- }
- | {
- section: string;
- icon: (props: ComponentProps<'svg'>) => ReactNode;
- name: string;
- }
-);
+export type Section =
+ & { docId: string }
+ & (
+ | {
+ section: false;
+ }
+ | {
+ section: string;
+ icon: (props: ComponentProps<"svg">) => ReactNode;
+ name: string;
+ }
+ );
const SECTIONS: Section[] = [
{
- name: 'React',
- docId: 'react',
+ name: "React",
+ docId: "react",
icon: ReactIcon,
- section: 'web-prebuilt',
+ section: "web-prebuilt",
},
{
- name: 'JavaScript',
- docId: 'javascript',
+ name: "JavaScript",
+ docId: "javascript",
icon: JSIcon,
- section: 'web-prebuilt',
+ section: "web-prebuilt",
},
// Plugin SDKs
// - web
{
- name: 'Javascript',
- docId: 'plugin-sdk',
+ name: "Javascript",
+ docId: "plugin-sdk",
icon: JSIcon,
- section: 'plugin-sdk',
+ section: "plugin-sdk",
},
// Web SDKs
// - web-ui-kit
{
- name: 'Web Components',
- docId: 'ui-kit',
+ name: "Web Components",
+ docId: "ui-kit",
icon: HTMLIcon,
- section: 'web-ui-kit',
+ section: "web-ui-kit",
},
{
- name: 'React UI Kit',
- docId: 'react-ui-kit',
+ name: "React UI Kit",
+ docId: "react-ui-kit",
icon: ReactIcon,
- section: 'web-ui-kit',
+ section: "web-ui-kit",
},
{
- name: 'Angular UI Kit',
- docId: 'angular-ui-kit',
+ name: "Angular UI Kit",
+ docId: "angular-ui-kit",
icon: AngularIcon,
- section: 'web-ui-kit',
+ section: "web-ui-kit",
},
// - web-core-sdk
{
- name: 'JavaScript',
- docId: 'web-core',
+ name: "JavaScript",
+ docId: "web-core",
icon: JSIcon,
- section: 'web-core-sdk',
+ section: "web-core-sdk",
},
{
- name: 'React',
- docId: 'react-web-core',
+ name: "React",
+ docId: "react-web-core",
icon: ReactIcon,
- section: 'web-core-sdk',
+ section: "web-core-sdk",
},
// Mobile SDKs
{
- name: 'Android Core',
- docId: 'android-core',
+ name: "Android Core",
+ docId: "android-core",
icon: AndroidIcon,
- section: 'mobile-core',
+ section: "mobile-core",
},
{
- name: 'iOS Core',
- docId: 'ios-core',
+ name: "iOS Core",
+ docId: "ios-core",
icon: AppleIcon,
- section: 'mobile-core',
+ section: "mobile-core",
},
{
- name: 'Flutter Core',
- docId: 'flutter-core',
+ name: "Flutter Core",
+ docId: "flutter-core",
icon: FlutterIcon,
- section: 'mobile-core',
+ section: "mobile-core",
},
{
- name: 'React Native Core',
- docId: 'rn-core',
+ name: "React Native Core",
+ docId: "rn-core",
icon: ReactIcon,
- section: 'mobile-core',
+ section: "mobile-core",
},
{
- name: 'Android',
- docId: 'android',
+ name: "Android",
+ docId: "android",
icon: AndroidIcon,
- section: 'mobile-ui-kit',
+ section: "mobile-ui-kit",
},
{
- name: 'iOS',
- docId: 'ios',
+ name: "iOS",
+ docId: "ios",
icon: AppleIcon,
- section: 'mobile-ui-kit',
+ section: "mobile-ui-kit",
},
{
- name: 'Flutter',
- docId: 'flutter',
+ name: "Flutter",
+ docId: "flutter",
icon: FlutterIcon,
- section: 'mobile-ui-kit',
+ section: "mobile-ui-kit",
},
{
- name: 'React Native',
- docId: 'react-native',
+ name: "React Native",
+ docId: "react-native",
icon: ReactIcon,
- section: 'mobile-ui-kit',
+ section: "mobile-ui-kit",
},
];
@@ -139,43 +133,42 @@ export type SectionsGroup = {
const SECTION_GROUPS: SectionsGroup[][] = [
[
{
- name: 'UI Kit',
- section: 'web-prebuilt',
- className: 'deprecated-badge',
+ name: "UI Kit",
+ section: "web-prebuilt",
+ className: "deprecated-badge",
},
],
[
{
- name: 'UI Kit',
- section: 'web-ui-kit',
- description:
- 'Use our pre-built UI components as a base to build on top of.',
+ name: "UI Kit",
+ section: "web-ui-kit",
+ description: "Use our pre-built UI components as a base to build on top of.",
},
{
- name: 'Core SDK',
- section: 'web-core-sdk',
- description: 'Build your own UI from scratch, use our low level APIs.',
+ name: "Core SDK",
+ section: "web-core-sdk",
+ description: "Build your own UI from scratch, use our low level APIs.",
},
],
[
{
- name: 'UI Kit',
- section: 'mobile-ui-kit',
- description: 'Use our pre-built mobile UI Kit SDK, ready to go',
+ name: "UI Kit",
+ section: "mobile-ui-kit",
+ description: "Use our pre-built mobile UI Kit SDK, ready to go",
},
{
- name: 'Core SDK',
- section: 'mobile-core',
- description: 'Build your own UI from scratch, use our low level APIs.',
+ name: "Core SDK",
+ section: "mobile-core",
+ description: "Build your own UI from scratch, use our low level APIs.",
},
],
[
{
- name: 'Plugin SDK for Web',
- section: 'plugin-sdk',
- description: 'Build real-time collaborative apps using Dyte.',
+ name: "Plugin SDK for Web",
+ section: "plugin-sdk",
+ description: "Build real-time collaborative apps using Dyte.",
},
],
];
-export { SECTIONS, SECTION_GROUPS };
+export { SECTION_GROUPS, SECTIONS };
diff --git a/src/theme/DocSidebar/Desktop/index.d.ts b/src/theme/DocSidebar/Desktop/index.d.ts
index 1043a024..137e555f 100644
--- a/src/theme/DocSidebar/Desktop/index.d.ts
+++ b/src/theme/DocSidebar/Desktop/index.d.ts
@@ -1,5 +1,5 @@
-import React from 'react';
-import type { Props } from '@theme/DocSidebar/Desktop';
+import type { Props } from "@theme/DocSidebar/Desktop";
+import React from "react";
declare function DocSidebarDesktop({
path,
sidebar,
diff --git a/src/theme/DocSidebar/Desktop/index.jsx b/src/theme/DocSidebar/Desktop/index.jsx
index 721b6ed0..436b14a4 100644
--- a/src/theme/DocSidebar/Desktop/index.jsx
+++ b/src/theme/DocSidebar/Desktop/index.jsx
@@ -1,11 +1,11 @@
-import React from 'react';
-import clsx from 'clsx';
-import { useThemeConfig } from '@docusaurus/theme-common';
-import Logo from '@theme/Logo';
-import CollapseButton from '@theme/DocSidebar/Desktop/CollapseButton';
-import Content from '@theme/DocSidebar/Desktop/Content';
-import styles from './styles.module.css';
-import SidebarMenu from '../../../components/SidebarMenu';
+import { useThemeConfig } from "@docusaurus/theme-common";
+import CollapseButton from "@theme/DocSidebar/Desktop/CollapseButton";
+import Content from "@theme/DocSidebar/Desktop/Content";
+import Logo from "@theme/Logo";
+import clsx from "clsx";
+import React from "react";
+import SidebarMenu from "../../../components/SidebarMenu";
+import styles from "./styles.module.css";
function DocSidebarDesktop({ path, sidebar, onCollapse, isHidden }) {
const {
@@ -20,7 +20,7 @@ function DocSidebarDesktop({ path, sidebar, onCollapse, isHidden }) {
className={clsx(
styles.sidebar,
hideOnScroll && styles.sidebarWithHideableNavbar,
- isHidden && styles.sidebarHidden
+ isHidden && styles.sidebarHidden,
)}
>
{hideOnScroll &&
}
diff --git a/src/theme/DocSidebar/Mobile/index.d.ts b/src/theme/DocSidebar/Mobile/index.d.ts
index 0ba788e5..9a87fa96 100644
--- a/src/theme/DocSidebar/Mobile/index.d.ts
+++ b/src/theme/DocSidebar/Mobile/index.d.ts
@@ -1,5 +1,5 @@
-import React from 'react';
-import type { Props } from '@theme/DocSidebar/Mobile';
+import type { Props } from "@theme/DocSidebar/Mobile";
+import React from "react";
declare function DocSidebarMobile(props: Props): JSX.Element;
declare const _default: React.MemoExoticComponent
;
export default _default;
diff --git a/src/theme/DocSidebar/Mobile/index.jsx b/src/theme/DocSidebar/Mobile/index.jsx
index c3a7a7a4..eaa27782 100644
--- a/src/theme/DocSidebar/Mobile/index.jsx
+++ b/src/theme/DocSidebar/Mobile/index.jsx
@@ -1,28 +1,25 @@
-import React from 'react';
-import clsx from 'clsx';
-import {
- NavbarSecondaryMenuFiller,
- ThemeClassNames,
-} from '@docusaurus/theme-common';
-import { useNavbarMobileSidebar } from '@docusaurus/theme-common/internal';
-import DocSidebarItems from '@theme/DocSidebarItems';
+import { NavbarSecondaryMenuFiller, ThemeClassNames } from "@docusaurus/theme-common";
+import { useNavbarMobileSidebar } from "@docusaurus/theme-common/internal";
+import DocSidebarItems from "@theme/DocSidebarItems";
+import clsx from "clsx";
+import React from "react";
-import SidebarMenu from '../../../components/SidebarMenu';
+import SidebarMenu from "../../../components/SidebarMenu";
const DocSidebarMobileSecondaryMenu = ({ sidebar, path }) => {
const mobileSidebar = useNavbarMobileSidebar();
return (
-
+
{
// Mobile sidebar should only be closed if the category has a link
- if (item.type === 'category' && item.href) {
+ if (item.type === "category" && item.href) {
mobileSidebar.toggle();
}
- if (item.type === 'link') {
+ if (item.type === "link") {
mobileSidebar.toggle();
}
}}
diff --git a/src/theme/Footer/Layout/index.d.ts b/src/theme/Footer/Layout/index.d.ts
index e5608c89..576522e5 100644
--- a/src/theme/Footer/Layout/index.d.ts
+++ b/src/theme/Footer/Layout/index.d.ts
@@ -1,5 +1,5 @@
///
-import type { Props } from '@theme/Footer/Layout';
+import type { Props } from "@theme/Footer/Layout";
export default function FooterLayout({
style,
links,
diff --git a/src/theme/Footer/Layout/index.jsx b/src/theme/Footer/Layout/index.jsx
index 01f26a29..d71548ca 100644
--- a/src/theme/Footer/Layout/index.jsx
+++ b/src/theme/Footer/Layout/index.jsx
@@ -1,18 +1,21 @@
-import React from 'react';
-import clsx from 'clsx';
-import Link from '@docusaurus/Link';
+import Link from "@docusaurus/Link";
+import clsx from "clsx";
+import React from "react";
export default function FooterLayout({ style, links, logo, copyright }) {
return (
);
diff --git a/src/theme/Footer/LinkItem/index.d.ts b/src/theme/Footer/LinkItem/index.d.ts
index 50b75f74..6321c4a3 100644
--- a/src/theme/Footer/LinkItem/index.d.ts
+++ b/src/theme/Footer/LinkItem/index.d.ts
@@ -1,3 +1,3 @@
///
-import type { Props } from '@theme/Footer/LinkItem';
+import type { Props } from "@theme/Footer/LinkItem";
export default function FooterLinkItem({ item }: Props): JSX.Element;
diff --git a/src/theme/Footer/LinkItem/index.jsx b/src/theme/Footer/LinkItem/index.jsx
index 6ddbeb6a..bde00a78 100644
--- a/src/theme/Footer/LinkItem/index.jsx
+++ b/src/theme/Footer/LinkItem/index.jsx
@@ -1,6 +1,6 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
-import useBaseUrl from '@docusaurus/useBaseUrl';
+import Link from "@docusaurus/Link";
+import useBaseUrl from "@docusaurus/useBaseUrl";
+import React from "react";
export default function FooterLinkItem({ item }) {
const { to, href, label, prependBaseUrlToHref, ...props } = item;
@@ -11,11 +11,11 @@ export default function FooterLinkItem({ item }) {
className="footer__link-item"
{...(href
? {
- href: prependBaseUrlToHref ? normalizedHref : href,
- }
+ href: prependBaseUrlToHref ? normalizedHref : href,
+ }
: {
- to: toUrl,
- })}
+ to: toUrl,
+ })}
{...props}
>
{label}
diff --git a/src/theme/Footer/Logo/index.d.ts b/src/theme/Footer/Logo/index.d.ts
index 8b68fc84..32d10291 100644
--- a/src/theme/Footer/Logo/index.d.ts
+++ b/src/theme/Footer/Logo/index.d.ts
@@ -1,3 +1,3 @@
///
-import type { Props } from '@theme/Footer/Logo';
+import type { Props } from "@theme/Footer/Logo";
export default function FooterLogo({ logo }: Props): JSX.Element;
diff --git a/src/theme/Footer/Logo/index.jsx b/src/theme/Footer/Logo/index.jsx
index 0a49eee1..ceaf12e8 100644
--- a/src/theme/Footer/Logo/index.jsx
+++ b/src/theme/Footer/Logo/index.jsx
@@ -1,8 +1,8 @@
-import React from 'react';
-import Link from '@docusaurus/Link';
-import { useBaseUrlUtils } from '@docusaurus/useBaseUrl';
-import ThemedImage from '@theme/ThemedImage';
-import styles from './styles.module.css';
+import Link from "@docusaurus/Link";
+import { useBaseUrlUtils } from "@docusaurus/useBaseUrl";
+import ThemedImage from "@theme/ThemedImage";
+import React from "react";
+import styles from "./styles.module.css";
function LogoImage({ logo }) {
const { withBaseUrl } = useBaseUrlUtils();
@@ -22,11 +22,11 @@ function LogoImage({ logo }) {
}
export default function FooterLogo({ logo }) {
- return logo.href ? (
-
-
-
- ) : (
-
- );
+ return logo.href
+ ? (
+
+
+
+ )
+ : ;
}
diff --git a/src/theme/Footer/index.jsx b/src/theme/Footer/index.jsx
index a97baddf..c1e498ed 100644
--- a/src/theme/Footer/index.jsx
+++ b/src/theme/Footer/index.jsx
@@ -1,7 +1,7 @@
-import React from 'react';
-import Footer from '@theme-original/Footer';
-import { useLocation } from '@docusaurus/router';
-import Head from '@docusaurus/Head';
+import Head from "@docusaurus/Head";
+import { useLocation } from "@docusaurus/router";
+import Footer from "@theme-original/Footer";
+import React from "react";
export default function FooterWrapper(props) {
const { pathname } = useLocation();
diff --git a/src/theme/LecturesCard/index.js b/src/theme/LecturesCard/index.js
index 08c80b7e..184e928e 100755
--- a/src/theme/LecturesCard/index.js
+++ b/src/theme/LecturesCard/index.js
@@ -1,7 +1,7 @@
-import React from 'react';
+import React from "react";
-import Link from '@docusaurus/Link';
-import styles from './styles.module.css';
+import Link from "@docusaurus/Link";
+import styles from "./styles.module.css";
function LecturesCard(props) {
const {
diff --git a/src/theme/MDXComponents.js b/src/theme/MDXComponents.js
index 3a5b1003..cdf4ef25 100644
--- a/src/theme/MDXComponents.js
+++ b/src/theme/MDXComponents.js
@@ -1,15 +1,15 @@
// Import the original mapper
-import MDXComponents from '@theme-original/MDXComponents';
+import MDXComponents from "@theme-original/MDXComponents";
-import Tabs from '@theme/Tabs';
-import TabItem from '@theme/TabItem';
+import TabItem from "@theme/TabItem";
+import Tabs from "@theme/Tabs";
-import ColorCode from '../components/ColorCode';
-import ColorPalette from '../components/ColorPalette';
-import VideoPlayer from '../components/VideoPlayer';
-import ComponentsGrid from '../components/ComponentsGrid';
-import { CardSection, Card } from '../components/CardComponents';
-import * as icons from '../icons';
+import { Card, CardSection } from "../components/CardComponents";
+import ColorCode from "../components/ColorCode";
+import ColorPalette from "../components/ColorPalette";
+import ComponentsGrid from "../components/ComponentsGrid";
+import VideoPlayer from "../components/VideoPlayer";
+import * as icons from "../icons";
export default {
// Re-use the default mapping
diff --git a/src/theme/prism-include-languages.js b/src/theme/prism-include-languages.js
index fd6c6c75..1c1d91a5 100644
--- a/src/theme/prism-include-languages.js
+++ b/src/theme/prism-include-languages.js
@@ -1,9 +1,9 @@
-import siteConfig from '@generated/docusaurus.config';
+import siteConfig from "@generated/docusaurus.config";
export default function prismIncludeLanguages(PrismObject) {
const {
- themeConfig: {prism},
+ themeConfig: { prism },
} = siteConfig;
- const {additionalLanguages} = prism;
+ const { additionalLanguages } = prism;
// Prism components work on the Prism instance on the window, while prism-
// react-renderer uses its own Prism instance. We temporarily mount the
// instance onto window, import components to enhance it, then remove it to
diff --git a/src/utils/npm.js b/src/utils/npm.js
index c7564b56..5f0f1ff2 100644
--- a/src/utils/npm.js
+++ b/src/utils/npm.js
@@ -1,12 +1,11 @@
-
const versions = {};
-export default async function latestNPMVersion({ pkg = 'ui-kit' }) {
- if(versions[pkg] !== undefined) return versions[pkg];
+export default async function latestNPMVersion({ pkg = "ui-kit" }) {
+ if (versions[pkg] !== undefined) return versions[pkg];
const versionResp = await fetch(`https://registry.npmjs.com/@dytesdk/${pkg}`);
const versionJson = await versionResp.json();
- const version = versionJson['dist-tags']['latest'];
+ const version = versionJson["dist-tags"]["latest"];
versions[pkg] = version;
return version;
}
diff --git a/src/utils/posthog.js b/src/utils/posthog.js
index 16af940b..26de90a0 100644
--- a/src/utils/posthog.js
+++ b/src/utils/posthog.js
@@ -1,13 +1,13 @@
-import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment';
+import ExecutionEnvironment from "@docusaurus/ExecutionEnvironment";
-export default (function () {
+export default (function() {
if (!ExecutionEnvironment.canUseDOM) {
return null;
}
return {
onRouteUpdate() {
- window.posthog.capture('$pageview');
+ window.posthog.capture("$pageview");
},
};
})();
diff --git a/static/assets/css/docsly.min.css b/static/assets/css/docsly.min.css
deleted file mode 100644
index 58e5dcf0..00000000
--- a/static/assets/css/docsly.min.css
+++ /dev/null
@@ -1 +0,0 @@
-.docsly-preflight-scope *,.docsly-preflight-scope :after,.docsly-preflight-scope :before{-webkit-text-size-adjust:100%;background-color:transparent;border:0 solid #e5e7eb;box-sizing:border-box;color:inherit;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-size:inherit;line-height:1.5;margin:0;padding:0;-moz-tab-size:4;-o-tab-size:4;tab-size:4;text-align:left}.docsly-preflight-scope :after,.docsly-preflight-scope :before{--tw-content:""}.docsly-preflight-scope [role=button],.docsly-preflight-scope button{cursor:pointer}.docsly-preflight-scope :disabled{cursor:default}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.dy-fixed{position:fixed}.dy-absolute{position:absolute}.dy-relative{position:relative}.-dy-bottom-\[2px\]{bottom:-2px}.-dy-right-\[2px\]{right:-2px}.dy-bottom-1{bottom:.25rem}.dy-bottom-4{bottom:1rem}.dy-left-0{left:0}.dy-left-4{left:1rem}.dy-left-\[50\%\]{left:50%}.dy-right-2{right:.5rem}.dy-right-\[50\%\]{right:50%}.dy-top-0{top:0}.dy-top-1{top:.25rem}.dy-top-\[10vh\]{top:10vh}.dy-top-\[50\%\]{top:50%}.-dy-z-10{z-index:-10}.dy-z-10{z-index:10}.dy-z-\[100000\]{z-index:100000}.dy-z-\[1000\]{z-index:1000}.dy-z-\[100\]{z-index:100}.dy-z-\[500\]{z-index:500}.dy-mx-auto{margin-left:auto;margin-right:auto}.dy-my-2{margin-bottom:.5rem;margin-top:.5rem}.-dy-mt-2{margin-top:-.5rem}.dy-mb-1{margin-bottom:.25rem}.dy-mb-2{margin-bottom:.5rem}.dy-ml-2{margin-left:.5rem}.dy-mr-1{margin-right:.25rem}.dy-mr-2{margin-right:.5rem}.dy-mt-1{margin-top:.25rem}.dy-mt-2{margin-top:.5rem}.dy-mt-4{margin-top:1rem}.dy-block{display:block}.dy-flex{display:flex}.dy-hidden{display:none}.dy-h-0{height:0}.dy-h-3{height:.75rem}.dy-h-3\.5{height:.875rem}.dy-h-4{height:1rem}.dy-h-5{height:1.25rem}.dy-h-6{height:1.5rem}.dy-h-8{height:2rem}.dy-h-\[125px\]{height:125px}.dy-h-\[25px\]{height:25px}.dy-h-\[75vh\]{height:75vh}.dy-h-full{height:100%}.dy-w-0{width:0}.dy-w-20{width:5rem}.dy-w-28{width:7rem}.dy-w-3{width:.75rem}.dy-w-3\.5{width:.875rem}.dy-w-4{width:1rem}.dy-w-5{width:1.25rem}.dy-w-6{width:1.5rem}.dy-w-8{width:2rem}.dy-w-\[320px\]{width:320px}.dy-w-\[90vw\]{width:90vw}.dy-w-auto{width:auto}.dy-w-full{width:100%}.dy-max-w-\[375px\]{max-width:375px}.dy-max-w-\[50px\]{max-width:50px}.dy-flex-1{flex:1 1 0%}.-dy-translate-x-\[50\%\]{--tw-translate-x:-50%}.-dy-translate-x-\[50\%\],.-dy-translate-y-\[50\%\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-dy-translate-y-\[50\%\]{--tw-translate-y:-50%}.dy-translate-x-\[50\%\]{--tw-translate-x:50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.dy-cursor-progress{cursor:progress}.dy-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.dy-resize-none{resize:none}.dy-flex-row{flex-direction:row}.dy-flex-col{flex-direction:column}.dy-items-start{align-items:flex-start}.dy-items-end{align-items:flex-end}.dy-items-center{align-items:center}.dy-justify-end{justify-content:flex-end}.dy-justify-between{justify-content:space-between}.dy-space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.dy-space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.dy-space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(1rem*var(--tw-space-y-reverse));margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)))}.dy-self-end{align-self:flex-end}.dy-overflow-hidden{overflow:hidden}.dy-overflow-y-auto{overflow-y:auto}.dy-overflow-ellipsis{text-overflow:ellipsis}.dy-whitespace-nowrap{white-space:nowrap}.dy-rounded{border-radius:.25rem}.dy-rounded-full{border-radius:9999px}.dy-rounded-lg{border-radius:.5rem}.dy-rounded-sm{border-radius:.125rem}.dy-rounded-t-\[3px\]{border-top-left-radius:3px;border-top-right-radius:3px}.dy-border-2{border-width:2px}.dy-border-\[1px\]{border-width:1px}.dy-border-\[3px\]{border-width:3px}.dy-border-b-\[1px\]{border-bottom-width:1px}.dy-border-dashed{border-style:dashed}.dy-border-none{border-style:none}.dy-border-black{--tw-border-opacity:1;border-color:rgb(0 0 0/var(--tw-border-opacity))}.dy-border-neutral-300{--tw-border-opacity:1;border-color:rgb(212 212 212/var(--tw-border-opacity))}.dy-border-neutral-700{--tw-border-opacity:1;border-color:rgb(64 64 64/var(--tw-border-opacity))}.dy-border-neutral-800{--tw-border-opacity:1;border-color:rgb(38 38 38/var(--tw-border-opacity))}.dy-bg-\[hotpink\]{--tw-bg-opacity:1;background-color:rgb(255 105 180/var(--tw-bg-opacity))}.dy-bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity))}.dy-bg-brand-700{--tw-bg-opacity:1;background-color:rgb(0 91 228/var(--tw-bg-opacity))}.dy-bg-inherit{background-color:inherit}.dy-bg-neutral-100{--tw-bg-opacity:1;background-color:rgb(245 245 245/var(--tw-bg-opacity))}.dy-bg-neutral-50{--tw-bg-opacity:1;background-color:rgb(250 250 250/var(--tw-bg-opacity))}.dy-bg-opacity-0{--tw-bg-opacity:0}.dy-bg-opacity-10{--tw-bg-opacity:.1}.dy-bg-opacity-20{--tw-bg-opacity:.2}.dy-bg-opacity-75{--tw-bg-opacity:.75}.dy-bg-opacity-\[0\.15\]{--tw-bg-opacity:.15}.dy-object-cover{-o-object-fit:cover;object-fit:cover}.dy-object-center{-o-object-position:center;object-position:center}.dy-p-1{padding:.25rem}.dy-p-2{padding:.5rem}.dy-p-4{padding:1rem}.dy-p-\[1px\]{padding:1px}.dy-px-0{padding-left:0;padding-right:0}.dy-px-2{padding-left:.5rem;padding-right:.5rem}.dy-px-3{padding-left:.75rem;padding-right:.75rem}.dy-px-4{padding-left:1rem;padding-right:1rem}.dy-px-6{padding-left:1.5rem;padding-right:1.5rem}.dy-py-1{padding-bottom:.25rem;padding-top:.25rem}.dy-py-2{padding-bottom:.5rem;padding-top:.5rem}.dy-pb-1{padding-bottom:.25rem}.dy-pb-4{padding-bottom:1rem}.dy-pl-4{padding-left:1rem}.dy-pt-2{padding-top:.5rem}.dy-text-center{text-align:center}.dy-text-right{text-align:right}.dy-text-base{font-size:1rem;line-height:1.5rem}.dy-text-lg{font-size:1.125rem;line-height:1.75rem}.dy-text-sm{font-size:.875rem;line-height:1.25rem}.dy-text-xl{font-size:1.25rem;line-height:1.75rem}.dy-text-xs{font-size:.75rem;line-height:1rem}.dy-font-medium{font-weight:500}.dy-font-normal{font-weight:400}.dy-capitalize{text-transform:capitalize}.dy-text-brand-500{--tw-text-opacity:1;color:rgb(30 154 255/var(--tw-text-opacity))}.dy-text-neutral-100{--tw-text-opacity:1;color:rgb(245 245 245/var(--tw-text-opacity))}.dy-text-neutral-200{--tw-text-opacity:1;color:rgb(229 229 229/var(--tw-text-opacity))}.dy-text-neutral-300{--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity))}.dy-text-neutral-400{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity))}.dy-text-neutral-50{--tw-text-opacity:1;color:rgb(250 250 250/var(--tw-text-opacity))}.dy-text-yellow-400{--tw-text-opacity:1;color:rgb(250 204 21/var(--tw-text-opacity))}.dy-opacity-0{opacity:0}.dy-opacity-100{opacity:1}.dy-opacity-50{opacity:.5}.dy-opacity-60{opacity:.6}.dy-opacity-80{opacity:.8}.dy-opacity-90{opacity:.9}.dy-shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.dy-shadow-lg,.dy-shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dy-shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.dy-shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.dy-outline-none{outline:2px solid transparent;outline-offset:2px}.dy-transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dy-transition-colors{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.dy-duration-100{transition-duration:.1s}.dy-duration-150{transition-duration:.15s}.dy-duration-200{transition-duration:.2s}.dy-duration-500{transition-duration:.5s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleFromTopLeft{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.dy-fade-in{animation-duration:1s;animation-fill-mode:both;animation-name:fadeIn}.dy-comment-box-appear{animation:scaleFromTopLeft .25s cubic-bezier(.175,.885,.32,1.275) forwards;animation-delay:.15s;opacity:0;transform-origin:left top}.dy-comment-bubble-appear{animation:scaleFromTopLeft .2s cubic-bezier(.175,.885,.32,1.275) forwards;opacity:0;transform-origin:left top}@keyframes appearFromBottomSm{0%{opacity:0;right:0;transform:translateY(100%) translate(0) scaleX(.25)}to{opacity:1;right:50%;transform:translateY(0) translate(50%) scaleX(1)}}@keyframes appearFromBottomSmUp{0%{opacity:0;right:0;transform:translateY(100%) scaleX(.25)}to{opacity:1;right:20px;transform:translateY(0) scaleX(1)}}.dy-comment-inbox-appear{animation:appearFromBottomSm .2s cubic-bezier(.2,.8,.3,1) forwards;transform-origin:center bottom}@media (min-width:640px){.dy-comment-inbox-appear{animation:appearFromBottomSmUp .2s cubic-bezier(.2,.8,.3,1) forwards;transform-origin:center bottom}}@keyframes askFeedbackPopUp{0%{opacity:0;transform:translateY(-50%) translate(-50%) scaleX(.25)}to{opacity:1;transform:translateY(-100%) translate(-50%) scaleX(1)}}.dy-ask-feedback-popup{animation:askFeedbackPopUp .2s cubic-bezier(.2,.8,.3,1) forwards;left:50%;top:-16px;transform-origin:center bottom}.placeholder\:dy-text-neutral-400::-moz-placeholder{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity))}.placeholder\:dy-text-neutral-400::placeholder{--tw-text-opacity:1;color:rgb(163 163 163/var(--tw-text-opacity))}.last-of-type\:dy-border-none:last-of-type{border-style:none}.hover\:dy-z-20:hover{z-index:20}.hover\:dy-bg-brand-600:hover{--tw-bg-opacity:1;background-color:rgb(6 122 255/var(--tw-bg-opacity))}.hover\:dy-bg-neutral-800:hover{--tw-bg-opacity:1;background-color:rgb(38 38 38/var(--tw-bg-opacity))}.hover\:dy-bg-opacity-\[0\.15\]:hover{--tw-bg-opacity:.15}.hover\:dy-text-neutral-200:hover{--tw-text-opacity:1;color:rgb(229 229 229/var(--tw-text-opacity))}.hover\:dy-text-neutral-300:hover{--tw-text-opacity:1;color:rgb(212 212 212/var(--tw-text-opacity))}.focus\:dy-outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:dy-ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}@media (min-width:640px){.sm\:dy-w-\[400px\]{width:400px}}@media (min-width:768px){.md\:hover\:dy-h-8:hover{height:2rem}.md\:hover\:dy-w-8:hover{width:2rem}}@media (min-width:1024px){.lg\:dy-max-w-\[440px\]{max-width:440px}}
diff --git a/static/assets/css/elements.min.css b/static/assets/css/elements.min.css
deleted file mode 100644
index 6512a728..00000000
--- a/static/assets/css/elements.min.css
+++ /dev/null
@@ -1 +0,0 @@
-blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}button{background-color:transparent;background-image:none}:focus{outline:none}fieldset,ol,ul{margin:0;padding:0}ol,ul{list-style:none}html{font-family:var(--font-ui);line-height:1.5}body{text-rendering:optimizeSpeed;font-family:inherit;line-height:inherit;margin:0;min-height:100vh}*,:after,:before{border:0 solid var(--color-border,currentColor);box-sizing:border-box}hr{border-top-width:1px}img{border-style:solid}textarea{resize:vertical}input::-ms-input-placeholder,textarea::-ms-input-placeholder{color:#a1a1aa}input::placeholder,textarea::placeholder{color:#a1a1aa}[role=button],button{cursor:pointer}table{border-collapse:collapse}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}button,input,optgroup,select,textarea{color:inherit;line-height:inherit;padding:0}code,kbd,pre,samp{font-family:var(--font-mono)}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button{font-family:var(--font-ui)}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select{font-size:inherit}iframe{border:0}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.sl-content-center{align-content:center}.sl-content-start{align-content:flex-start}.sl-content-end{align-content:flex-end}.sl-content-between{align-content:space-between}.sl-content-around{align-content:space-around}.sl-content-evenly{align-content:space-evenly}.sl-items-start{align-items:flex-start}.sl-items-end{align-items:flex-end}.sl-items-center{align-items:center}.sl-items-baseline{align-items:baseline}.sl-items-stretch{align-items:stretch}.sl-self-auto{align-self:auto}.sl-self-start{align-self:flex-start}.sl-self-end{align-self:flex-end}.sl-self-center{align-self:center}.sl-self-stretch{align-self:stretch}.sl-bg-transparent{background-color:transparent}.sl-bg-current{background-color:currentColor}.sl-bg-lighten-100{background-color:var(--color-lighten-100)}.sl-bg-darken-100{background-color:var(--color-darken-100)}.sl-bg-primary{background-color:var(--color-primary)}.sl-bg-primary-tint{background-color:var(--color-primary-tint)}.sl-bg-primary-light{background-color:var(--color-primary-light)}.sl-bg-primary-dark{background-color:var(--color-primary-dark)}.sl-bg-primary-darker{background-color:var(--color-primary-darker)}.sl-bg-success{background-color:var(--color-success)}.sl-bg-success-tint{background-color:var(--color-success-tint)}.sl-bg-success-light{background-color:var(--color-success-light)}.sl-bg-success-dark{background-color:var(--color-success-dark)}.sl-bg-success-darker{background-color:var(--color-success-darker)}.sl-bg-warning{background-color:var(--color-warning)}.sl-bg-warning-tint{background-color:var(--color-warning-tint)}.sl-bg-warning-light{background-color:var(--color-warning-light)}.sl-bg-warning-dark{background-color:var(--color-warning-dark)}.sl-bg-warning-darker{background-color:var(--color-warning-darker)}.sl-bg-danger{background-color:var(--color-danger)}.sl-bg-danger-tint{background-color:var(--color-danger-tint)}.sl-bg-danger-light{background-color:var(--color-danger-light)}.sl-bg-danger-dark{background-color:var(--color-danger-dark)}.sl-bg-danger-darker{background-color:var(--color-danger-darker)}.sl-bg-code{background-color:var(--color-code)}.sl-bg-on-code{background-color:var(--color-on-code)}.sl-bg-on-primary{background-color:var(--color-on-primary)}.sl-bg-on-success{background-color:var(--color-on-success)}.sl-bg-on-warning{background-color:var(--color-on-warning)}.sl-bg-on-danger{background-color:var(--color-on-danger)}.sl-bg-canvas-50{background-color:var(--color-canvas-50)}.sl-bg-canvas-100{background-color:var(--color-canvas-100)}.sl-bg-canvas-200{background-color:var(--color-canvas-200)}.sl-bg-canvas-300{background-color:var(--color-canvas-300)}.sl-bg-canvas-400{background-color:var(--color-canvas-400)}.sl-bg-canvas-500{background-color:var(--color-canvas-500)}.sl-bg-canvas-dark{background-color:var(--color-canvas-dark)}.sl-bg-canvas-pure{background-color:var(--color-canvas-pure)}.sl-bg-canvas{background-color:var(--color-canvas)}.sl-bg-canvas-tint{background-color:var(--color-canvas-tint)}.sl-bg-canvas-dialog{background-color:var(--color-canvas-dialog)}.sl-bg-body{background-color:var(--color-text)}.sl-bg-body-muted{background-color:var(--color-text-muted)}.sl-bg-body-light{background-color:var(--color-text-light)}.hover\:sl-bg-transparent:hover{background-color:transparent}.hover\:sl-bg-current:hover{background-color:currentColor}.hover\:sl-bg-lighten-100:hover{background-color:var(--color-lighten-100)}.hover\:sl-bg-darken-100:hover{background-color:var(--color-darken-100)}.hover\:sl-bg-primary:hover{background-color:var(--color-primary)}.hover\:sl-bg-primary-tint:hover{background-color:var(--color-primary-tint)}.hover\:sl-bg-primary-light:hover{background-color:var(--color-primary-light)}.hover\:sl-bg-primary-dark:hover{background-color:var(--color-primary-dark)}.hover\:sl-bg-primary-darker:hover{background-color:var(--color-primary-darker)}.hover\:sl-bg-success:hover{background-color:var(--color-success)}.hover\:sl-bg-success-tint:hover{background-color:var(--color-success-tint)}.hover\:sl-bg-success-light:hover{background-color:var(--color-success-light)}.hover\:sl-bg-success-dark:hover{background-color:var(--color-success-dark)}.hover\:sl-bg-success-darker:hover{background-color:var(--color-success-darker)}.hover\:sl-bg-warning:hover{background-color:var(--color-warning)}.hover\:sl-bg-warning-tint:hover{background-color:var(--color-warning-tint)}.hover\:sl-bg-warning-light:hover{background-color:var(--color-warning-light)}.hover\:sl-bg-warning-dark:hover{background-color:var(--color-warning-dark)}.hover\:sl-bg-warning-darker:hover{background-color:var(--color-warning-darker)}.hover\:sl-bg-danger:hover{background-color:var(--color-danger)}.hover\:sl-bg-danger-tint:hover{background-color:var(--color-danger-tint)}.hover\:sl-bg-danger-light:hover{background-color:var(--color-danger-light)}.hover\:sl-bg-danger-dark:hover{background-color:var(--color-danger-dark)}.hover\:sl-bg-danger-darker:hover{background-color:var(--color-danger-darker)}.hover\:sl-bg-code:hover{background-color:var(--color-code)}.hover\:sl-bg-on-code:hover{background-color:var(--color-on-code)}.hover\:sl-bg-on-primary:hover{background-color:var(--color-on-primary)}.hover\:sl-bg-on-success:hover{background-color:var(--color-on-success)}.hover\:sl-bg-on-warning:hover{background-color:var(--color-on-warning)}.hover\:sl-bg-on-danger:hover{background-color:var(--color-on-danger)}.hover\:sl-bg-canvas-50:hover{background-color:var(--color-canvas-50)}.hover\:sl-bg-canvas-100:hover{background-color:var(--color-canvas-100)}.hover\:sl-bg-canvas-200:hover{background-color:var(--color-canvas-200)}.hover\:sl-bg-canvas-300:hover{background-color:var(--color-canvas-300)}.hover\:sl-bg-canvas-400:hover{background-color:var(--color-canvas-400)}.hover\:sl-bg-canvas-500:hover{background-color:var(--color-canvas-500)}.hover\:sl-bg-canvas-dark:hover{background-color:var(--color-canvas-dark)}.hover\:sl-bg-canvas-pure:hover{background-color:var(--color-canvas-pure)}.hover\:sl-bg-canvas:hover{background-color:var(--color-canvas)}.hover\:sl-bg-canvas-tint:hover{background-color:var(--color-canvas-tint)}.hover\:sl-bg-canvas-dialog:hover{background-color:var(--color-canvas-dialog)}.hover\:sl-bg-body:hover{background-color:var(--color-text)}.hover\:sl-bg-body-muted:hover{background-color:var(--color-text-muted)}.hover\:sl-bg-body-light:hover{background-color:var(--color-text-light)}.focus\:sl-bg-transparent:focus{background-color:transparent}.focus\:sl-bg-current:focus{background-color:currentColor}.focus\:sl-bg-lighten-100:focus{background-color:var(--color-lighten-100)}.focus\:sl-bg-darken-100:focus{background-color:var(--color-darken-100)}.focus\:sl-bg-primary:focus{background-color:var(--color-primary)}.focus\:sl-bg-primary-tint:focus{background-color:var(--color-primary-tint)}.focus\:sl-bg-primary-light:focus{background-color:var(--color-primary-light)}.focus\:sl-bg-primary-dark:focus{background-color:var(--color-primary-dark)}.focus\:sl-bg-primary-darker:focus{background-color:var(--color-primary-darker)}.focus\:sl-bg-success:focus{background-color:var(--color-success)}.focus\:sl-bg-success-tint:focus{background-color:var(--color-success-tint)}.focus\:sl-bg-success-light:focus{background-color:var(--color-success-light)}.focus\:sl-bg-success-dark:focus{background-color:var(--color-success-dark)}.focus\:sl-bg-success-darker:focus{background-color:var(--color-success-darker)}.focus\:sl-bg-warning:focus{background-color:var(--color-warning)}.focus\:sl-bg-warning-tint:focus{background-color:var(--color-warning-tint)}.focus\:sl-bg-warning-light:focus{background-color:var(--color-warning-light)}.focus\:sl-bg-warning-dark:focus{background-color:var(--color-warning-dark)}.focus\:sl-bg-warning-darker:focus{background-color:var(--color-warning-darker)}.focus\:sl-bg-danger:focus{background-color:var(--color-danger)}.focus\:sl-bg-danger-tint:focus{background-color:var(--color-danger-tint)}.focus\:sl-bg-danger-light:focus{background-color:var(--color-danger-light)}.focus\:sl-bg-danger-dark:focus{background-color:var(--color-danger-dark)}.focus\:sl-bg-danger-darker:focus{background-color:var(--color-danger-darker)}.focus\:sl-bg-code:focus{background-color:var(--color-code)}.focus\:sl-bg-on-code:focus{background-color:var(--color-on-code)}.focus\:sl-bg-on-primary:focus{background-color:var(--color-on-primary)}.focus\:sl-bg-on-success:focus{background-color:var(--color-on-success)}.focus\:sl-bg-on-warning:focus{background-color:var(--color-on-warning)}.focus\:sl-bg-on-danger:focus{background-color:var(--color-on-danger)}.focus\:sl-bg-canvas-50:focus{background-color:var(--color-canvas-50)}.focus\:sl-bg-canvas-100:focus{background-color:var(--color-canvas-100)}.focus\:sl-bg-canvas-200:focus{background-color:var(--color-canvas-200)}.focus\:sl-bg-canvas-300:focus{background-color:var(--color-canvas-300)}.focus\:sl-bg-canvas-400:focus{background-color:var(--color-canvas-400)}.focus\:sl-bg-canvas-500:focus{background-color:var(--color-canvas-500)}.focus\:sl-bg-canvas-dark:focus{background-color:var(--color-canvas-dark)}.focus\:sl-bg-canvas-pure:focus{background-color:var(--color-canvas-pure)}.focus\:sl-bg-canvas:focus{background-color:var(--color-canvas)}.focus\:sl-bg-canvas-tint:focus{background-color:var(--color-canvas-tint)}.focus\:sl-bg-canvas-dialog:focus{background-color:var(--color-canvas-dialog)}.focus\:sl-bg-body:focus{background-color:var(--color-text)}.focus\:sl-bg-body-muted:focus{background-color:var(--color-text-muted)}.focus\:sl-bg-body-light:focus{background-color:var(--color-text-light)}.active\:sl-bg-transparent:active{background-color:transparent}.active\:sl-bg-current:active{background-color:currentColor}.active\:sl-bg-lighten-100:active{background-color:var(--color-lighten-100)}.active\:sl-bg-darken-100:active{background-color:var(--color-darken-100)}.active\:sl-bg-primary:active{background-color:var(--color-primary)}.active\:sl-bg-primary-tint:active{background-color:var(--color-primary-tint)}.active\:sl-bg-primary-light:active{background-color:var(--color-primary-light)}.active\:sl-bg-primary-dark:active{background-color:var(--color-primary-dark)}.active\:sl-bg-primary-darker:active{background-color:var(--color-primary-darker)}.active\:sl-bg-success:active{background-color:var(--color-success)}.active\:sl-bg-success-tint:active{background-color:var(--color-success-tint)}.active\:sl-bg-success-light:active{background-color:var(--color-success-light)}.active\:sl-bg-success-dark:active{background-color:var(--color-success-dark)}.active\:sl-bg-success-darker:active{background-color:var(--color-success-darker)}.active\:sl-bg-warning:active{background-color:var(--color-warning)}.active\:sl-bg-warning-tint:active{background-color:var(--color-warning-tint)}.active\:sl-bg-warning-light:active{background-color:var(--color-warning-light)}.active\:sl-bg-warning-dark:active{background-color:var(--color-warning-dark)}.active\:sl-bg-warning-darker:active{background-color:var(--color-warning-darker)}.active\:sl-bg-danger:active{background-color:var(--color-danger)}.active\:sl-bg-danger-tint:active{background-color:var(--color-danger-tint)}.active\:sl-bg-danger-light:active{background-color:var(--color-danger-light)}.active\:sl-bg-danger-dark:active{background-color:var(--color-danger-dark)}.active\:sl-bg-danger-darker:active{background-color:var(--color-danger-darker)}.active\:sl-bg-code:active{background-color:var(--color-code)}.active\:sl-bg-on-code:active{background-color:var(--color-on-code)}.active\:sl-bg-on-primary:active{background-color:var(--color-on-primary)}.active\:sl-bg-on-success:active{background-color:var(--color-on-success)}.active\:sl-bg-on-warning:active{background-color:var(--color-on-warning)}.active\:sl-bg-on-danger:active{background-color:var(--color-on-danger)}.active\:sl-bg-canvas-50:active{background-color:var(--color-canvas-50)}.active\:sl-bg-canvas-100:active{background-color:var(--color-canvas-100)}.active\:sl-bg-canvas-200:active{background-color:var(--color-canvas-200)}.active\:sl-bg-canvas-300:active{background-color:var(--color-canvas-300)}.active\:sl-bg-canvas-400:active{background-color:var(--color-canvas-400)}.active\:sl-bg-canvas-500:active{background-color:var(--color-canvas-500)}.active\:sl-bg-canvas-dark:active{background-color:var(--color-canvas-dark)}.active\:sl-bg-canvas-pure:active{background-color:var(--color-canvas-pure)}.active\:sl-bg-canvas:active{background-color:var(--color-canvas)}.active\:sl-bg-canvas-tint:active{background-color:var(--color-canvas-tint)}.active\:sl-bg-canvas-dialog:active{background-color:var(--color-canvas-dialog)}.active\:sl-bg-body:active{background-color:var(--color-text)}.active\:sl-bg-body-muted:active{background-color:var(--color-text-muted)}.active\:sl-bg-body-light:active{background-color:var(--color-text-light)}.disabled\:sl-bg-transparent:disabled{background-color:transparent}.disabled\:sl-bg-current:disabled{background-color:currentColor}.disabled\:sl-bg-lighten-100:disabled{background-color:var(--color-lighten-100)}.disabled\:sl-bg-darken-100:disabled{background-color:var(--color-darken-100)}.disabled\:sl-bg-primary:disabled{background-color:var(--color-primary)}.disabled\:sl-bg-primary-tint:disabled{background-color:var(--color-primary-tint)}.disabled\:sl-bg-primary-light:disabled{background-color:var(--color-primary-light)}.disabled\:sl-bg-primary-dark:disabled{background-color:var(--color-primary-dark)}.disabled\:sl-bg-primary-darker:disabled{background-color:var(--color-primary-darker)}.disabled\:sl-bg-success:disabled{background-color:var(--color-success)}.disabled\:sl-bg-success-tint:disabled{background-color:var(--color-success-tint)}.disabled\:sl-bg-success-light:disabled{background-color:var(--color-success-light)}.disabled\:sl-bg-success-dark:disabled{background-color:var(--color-success-dark)}.disabled\:sl-bg-success-darker:disabled{background-color:var(--color-success-darker)}.disabled\:sl-bg-warning:disabled{background-color:var(--color-warning)}.disabled\:sl-bg-warning-tint:disabled{background-color:var(--color-warning-tint)}.disabled\:sl-bg-warning-light:disabled{background-color:var(--color-warning-light)}.disabled\:sl-bg-warning-dark:disabled{background-color:var(--color-warning-dark)}.disabled\:sl-bg-warning-darker:disabled{background-color:var(--color-warning-darker)}.disabled\:sl-bg-danger:disabled{background-color:var(--color-danger)}.disabled\:sl-bg-danger-tint:disabled{background-color:var(--color-danger-tint)}.disabled\:sl-bg-danger-light:disabled{background-color:var(--color-danger-light)}.disabled\:sl-bg-danger-dark:disabled{background-color:var(--color-danger-dark)}.disabled\:sl-bg-danger-darker:disabled{background-color:var(--color-danger-darker)}.disabled\:sl-bg-code:disabled{background-color:var(--color-code)}.disabled\:sl-bg-on-code:disabled{background-color:var(--color-on-code)}.disabled\:sl-bg-on-primary:disabled{background-color:var(--color-on-primary)}.disabled\:sl-bg-on-success:disabled{background-color:var(--color-on-success)}.disabled\:sl-bg-on-warning:disabled{background-color:var(--color-on-warning)}.disabled\:sl-bg-on-danger:disabled{background-color:var(--color-on-danger)}.disabled\:sl-bg-canvas-50:disabled{background-color:var(--color-canvas-50)}.disabled\:sl-bg-canvas-100:disabled{background-color:var(--color-canvas-100)}.disabled\:sl-bg-canvas-200:disabled{background-color:var(--color-canvas-200)}.disabled\:sl-bg-canvas-300:disabled{background-color:var(--color-canvas-300)}.disabled\:sl-bg-canvas-400:disabled{background-color:var(--color-canvas-400)}.disabled\:sl-bg-canvas-500:disabled{background-color:var(--color-canvas-500)}.disabled\:sl-bg-canvas-dark:disabled{background-color:var(--color-canvas-dark)}.disabled\:sl-bg-canvas-pure:disabled{background-color:var(--color-canvas-pure)}.disabled\:sl-bg-canvas:disabled{background-color:var(--color-canvas)}.disabled\:sl-bg-canvas-tint:disabled{background-color:var(--color-canvas-tint)}.disabled\:sl-bg-canvas-dialog:disabled{background-color:var(--color-canvas-dialog)}.disabled\:sl-bg-body:disabled{background-color:var(--color-text)}.disabled\:sl-bg-body-muted:disabled{background-color:var(--color-text-muted)}.disabled\:sl-bg-body-light:disabled{background-color:var(--color-text-light)}.sl-bg-none{background-image:none}.sl-bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.sl-bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.sl-bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.sl-bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.sl-bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.sl-bg-gradient-to-bl{background-image:linear-gradient(to bottom left,var(--tw-gradient-stops))}.sl-bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.sl-bg-gradient-to-tl{background-image:linear-gradient(to top left,var(--tw-gradient-stops))}.sl-blur-0,.sl-blur-none{--tw-blur:blur(0)}.sl-blur-sm{--tw-blur:blur(4px)}.sl-blur{--tw-blur:blur(8px)}.sl-blur-md{--tw-blur:blur(12px)}.sl-blur-lg{--tw-blur:blur(16px)}.sl-blur-xl{--tw-blur:blur(24px)}.sl-blur-2xl{--tw-blur:blur(40px)}.sl-blur-3xl{--tw-blur:blur(64px)}.sl-border-transparent{border-color:transparent}.sl-border-current{border-color:currentColor}.sl-border-lighten-100{border-color:var(--color-lighten-100)}.sl-border-darken-100{border-color:var(--color-darken-100)}.sl-border-primary{border-color:var(--color-primary)}.sl-border-primary-tint{border-color:var(--color-primary-tint)}.sl-border-primary-light{border-color:var(--color-primary-light)}.sl-border-primary-dark{border-color:var(--color-primary-dark)}.sl-border-primary-darker{border-color:var(--color-primary-darker)}.sl-border-success{border-color:var(--color-success)}.sl-border-success-tint{border-color:var(--color-success-tint)}.sl-border-success-light{border-color:var(--color-success-light)}.sl-border-success-dark{border-color:var(--color-success-dark)}.sl-border-success-darker{border-color:var(--color-success-darker)}.sl-border-warning{border-color:var(--color-warning)}.sl-border-warning-tint{border-color:var(--color-warning-tint)}.sl-border-warning-light{border-color:var(--color-warning-light)}.sl-border-warning-dark{border-color:var(--color-warning-dark)}.sl-border-warning-darker{border-color:var(--color-warning-darker)}.sl-border-danger{border-color:var(--color-danger)}.sl-border-danger-tint{border-color:var(--color-danger-tint)}.sl-border-danger-light{border-color:var(--color-danger-light)}.sl-border-danger-dark{border-color:var(--color-danger-dark)}.sl-border-danger-darker{border-color:var(--color-danger-darker)}.sl-border-code{border-color:var(--color-code)}.sl-border-on-code{border-color:var(--color-on-code)}.sl-border-on-primary{border-color:var(--color-on-primary)}.sl-border-on-success{border-color:var(--color-on-success)}.sl-border-on-warning{border-color:var(--color-on-warning)}.sl-border-on-danger{border-color:var(--color-on-danger)}.sl-border-light{border-color:var(--color-border-light)}.sl-border-dark{border-color:var(--color-border-dark)}.sl-border-button{border-color:var(--color-border-button)}.sl-border-input{border-color:var(--color-border-input)}.sl-border-body{border-color:var(--color-text)}.hover\:sl-border-transparent:hover{border-color:transparent}.hover\:sl-border-current:hover{border-color:currentColor}.hover\:sl-border-lighten-100:hover{border-color:var(--color-lighten-100)}.hover\:sl-border-darken-100:hover{border-color:var(--color-darken-100)}.hover\:sl-border-primary:hover{border-color:var(--color-primary)}.hover\:sl-border-primary-tint:hover{border-color:var(--color-primary-tint)}.hover\:sl-border-primary-light:hover{border-color:var(--color-primary-light)}.hover\:sl-border-primary-dark:hover{border-color:var(--color-primary-dark)}.hover\:sl-border-primary-darker:hover{border-color:var(--color-primary-darker)}.hover\:sl-border-success:hover{border-color:var(--color-success)}.hover\:sl-border-success-tint:hover{border-color:var(--color-success-tint)}.hover\:sl-border-success-light:hover{border-color:var(--color-success-light)}.hover\:sl-border-success-dark:hover{border-color:var(--color-success-dark)}.hover\:sl-border-success-darker:hover{border-color:var(--color-success-darker)}.hover\:sl-border-warning:hover{border-color:var(--color-warning)}.hover\:sl-border-warning-tint:hover{border-color:var(--color-warning-tint)}.hover\:sl-border-warning-light:hover{border-color:var(--color-warning-light)}.hover\:sl-border-warning-dark:hover{border-color:var(--color-warning-dark)}.hover\:sl-border-warning-darker:hover{border-color:var(--color-warning-darker)}.hover\:sl-border-danger:hover{border-color:var(--color-danger)}.hover\:sl-border-danger-tint:hover{border-color:var(--color-danger-tint)}.hover\:sl-border-danger-light:hover{border-color:var(--color-danger-light)}.hover\:sl-border-danger-dark:hover{border-color:var(--color-danger-dark)}.hover\:sl-border-danger-darker:hover{border-color:var(--color-danger-darker)}.hover\:sl-border-code:hover{border-color:var(--color-code)}.hover\:sl-border-on-code:hover{border-color:var(--color-on-code)}.hover\:sl-border-on-primary:hover{border-color:var(--color-on-primary)}.hover\:sl-border-on-success:hover{border-color:var(--color-on-success)}.hover\:sl-border-on-warning:hover{border-color:var(--color-on-warning)}.hover\:sl-border-on-danger:hover{border-color:var(--color-on-danger)}.hover\:sl-border-light:hover{border-color:var(--color-border-light)}.hover\:sl-border-dark:hover{border-color:var(--color-border-dark)}.hover\:sl-border-button:hover{border-color:var(--color-border-button)}.hover\:sl-border-input:hover{border-color:var(--color-border-input)}.hover\:sl-border-body:hover{border-color:var(--color-text)}.focus\:sl-border-transparent:focus{border-color:transparent}.focus\:sl-border-current:focus{border-color:currentColor}.focus\:sl-border-lighten-100:focus{border-color:var(--color-lighten-100)}.focus\:sl-border-darken-100:focus{border-color:var(--color-darken-100)}.focus\:sl-border-primary:focus{border-color:var(--color-primary)}.focus\:sl-border-primary-tint:focus{border-color:var(--color-primary-tint)}.focus\:sl-border-primary-light:focus{border-color:var(--color-primary-light)}.focus\:sl-border-primary-dark:focus{border-color:var(--color-primary-dark)}.focus\:sl-border-primary-darker:focus{border-color:var(--color-primary-darker)}.focus\:sl-border-success:focus{border-color:var(--color-success)}.focus\:sl-border-success-tint:focus{border-color:var(--color-success-tint)}.focus\:sl-border-success-light:focus{border-color:var(--color-success-light)}.focus\:sl-border-success-dark:focus{border-color:var(--color-success-dark)}.focus\:sl-border-success-darker:focus{border-color:var(--color-success-darker)}.focus\:sl-border-warning:focus{border-color:var(--color-warning)}.focus\:sl-border-warning-tint:focus{border-color:var(--color-warning-tint)}.focus\:sl-border-warning-light:focus{border-color:var(--color-warning-light)}.focus\:sl-border-warning-dark:focus{border-color:var(--color-warning-dark)}.focus\:sl-border-warning-darker:focus{border-color:var(--color-warning-darker)}.focus\:sl-border-danger:focus{border-color:var(--color-danger)}.focus\:sl-border-danger-tint:focus{border-color:var(--color-danger-tint)}.focus\:sl-border-danger-light:focus{border-color:var(--color-danger-light)}.focus\:sl-border-danger-dark:focus{border-color:var(--color-danger-dark)}.focus\:sl-border-danger-darker:focus{border-color:var(--color-danger-darker)}.focus\:sl-border-code:focus{border-color:var(--color-code)}.focus\:sl-border-on-code:focus{border-color:var(--color-on-code)}.focus\:sl-border-on-primary:focus{border-color:var(--color-on-primary)}.focus\:sl-border-on-success:focus{border-color:var(--color-on-success)}.focus\:sl-border-on-warning:focus{border-color:var(--color-on-warning)}.focus\:sl-border-on-danger:focus{border-color:var(--color-on-danger)}.focus\:sl-border-light:focus{border-color:var(--color-border-light)}.focus\:sl-border-dark:focus{border-color:var(--color-border-dark)}.focus\:sl-border-button:focus{border-color:var(--color-border-button)}.focus\:sl-border-input:focus{border-color:var(--color-border-input)}.focus\:sl-border-body:focus{border-color:var(--color-text)}.focus-within\:sl-border-transparent:focus-within{border-color:transparent}.focus-within\:sl-border-current:focus-within{border-color:currentColor}.focus-within\:sl-border-lighten-100:focus-within{border-color:var(--color-lighten-100)}.focus-within\:sl-border-darken-100:focus-within{border-color:var(--color-darken-100)}.focus-within\:sl-border-primary:focus-within{border-color:var(--color-primary)}.focus-within\:sl-border-primary-tint:focus-within{border-color:var(--color-primary-tint)}.focus-within\:sl-border-primary-light:focus-within{border-color:var(--color-primary-light)}.focus-within\:sl-border-primary-dark:focus-within{border-color:var(--color-primary-dark)}.focus-within\:sl-border-primary-darker:focus-within{border-color:var(--color-primary-darker)}.focus-within\:sl-border-success:focus-within{border-color:var(--color-success)}.focus-within\:sl-border-success-tint:focus-within{border-color:var(--color-success-tint)}.focus-within\:sl-border-success-light:focus-within{border-color:var(--color-success-light)}.focus-within\:sl-border-success-dark:focus-within{border-color:var(--color-success-dark)}.focus-within\:sl-border-success-darker:focus-within{border-color:var(--color-success-darker)}.focus-within\:sl-border-warning:focus-within{border-color:var(--color-warning)}.focus-within\:sl-border-warning-tint:focus-within{border-color:var(--color-warning-tint)}.focus-within\:sl-border-warning-light:focus-within{border-color:var(--color-warning-light)}.focus-within\:sl-border-warning-dark:focus-within{border-color:var(--color-warning-dark)}.focus-within\:sl-border-warning-darker:focus-within{border-color:var(--color-warning-darker)}.focus-within\:sl-border-danger:focus-within{border-color:var(--color-danger)}.focus-within\:sl-border-danger-tint:focus-within{border-color:var(--color-danger-tint)}.focus-within\:sl-border-danger-light:focus-within{border-color:var(--color-danger-light)}.focus-within\:sl-border-danger-dark:focus-within{border-color:var(--color-danger-dark)}.focus-within\:sl-border-danger-darker:focus-within{border-color:var(--color-danger-darker)}.focus-within\:sl-border-code:focus-within{border-color:var(--color-code)}.focus-within\:sl-border-on-code:focus-within{border-color:var(--color-on-code)}.focus-within\:sl-border-on-primary:focus-within{border-color:var(--color-on-primary)}.focus-within\:sl-border-on-success:focus-within{border-color:var(--color-on-success)}.focus-within\:sl-border-on-warning:focus-within{border-color:var(--color-on-warning)}.focus-within\:sl-border-on-danger:focus-within{border-color:var(--color-on-danger)}.focus-within\:sl-border-light:focus-within{border-color:var(--color-border-light)}.focus-within\:sl-border-dark:focus-within{border-color:var(--color-border-dark)}.focus-within\:sl-border-button:focus-within{border-color:var(--color-border-button)}.focus-within\:sl-border-input:focus-within{border-color:var(--color-border-input)}.focus-within\:sl-border-body:focus-within{border-color:var(--color-text)}.active\:sl-border-transparent:active{border-color:transparent}.active\:sl-border-current:active{border-color:currentColor}.active\:sl-border-lighten-100:active{border-color:var(--color-lighten-100)}.active\:sl-border-darken-100:active{border-color:var(--color-darken-100)}.active\:sl-border-primary:active{border-color:var(--color-primary)}.active\:sl-border-primary-tint:active{border-color:var(--color-primary-tint)}.active\:sl-border-primary-light:active{border-color:var(--color-primary-light)}.active\:sl-border-primary-dark:active{border-color:var(--color-primary-dark)}.active\:sl-border-primary-darker:active{border-color:var(--color-primary-darker)}.active\:sl-border-success:active{border-color:var(--color-success)}.active\:sl-border-success-tint:active{border-color:var(--color-success-tint)}.active\:sl-border-success-light:active{border-color:var(--color-success-light)}.active\:sl-border-success-dark:active{border-color:var(--color-success-dark)}.active\:sl-border-success-darker:active{border-color:var(--color-success-darker)}.active\:sl-border-warning:active{border-color:var(--color-warning)}.active\:sl-border-warning-tint:active{border-color:var(--color-warning-tint)}.active\:sl-border-warning-light:active{border-color:var(--color-warning-light)}.active\:sl-border-warning-dark:active{border-color:var(--color-warning-dark)}.active\:sl-border-warning-darker:active{border-color:var(--color-warning-darker)}.active\:sl-border-danger:active{border-color:var(--color-danger)}.active\:sl-border-danger-tint:active{border-color:var(--color-danger-tint)}.active\:sl-border-danger-light:active{border-color:var(--color-danger-light)}.active\:sl-border-danger-dark:active{border-color:var(--color-danger-dark)}.active\:sl-border-danger-darker:active{border-color:var(--color-danger-darker)}.active\:sl-border-code:active{border-color:var(--color-code)}.active\:sl-border-on-code:active{border-color:var(--color-on-code)}.active\:sl-border-on-primary:active{border-color:var(--color-on-primary)}.active\:sl-border-on-success:active{border-color:var(--color-on-success)}.active\:sl-border-on-warning:active{border-color:var(--color-on-warning)}.active\:sl-border-on-danger:active{border-color:var(--color-on-danger)}.active\:sl-border-light:active{border-color:var(--color-border-light)}.active\:sl-border-dark:active{border-color:var(--color-border-dark)}.active\:sl-border-button:active{border-color:var(--color-border-button)}.active\:sl-border-input:active{border-color:var(--color-border-input)}.active\:sl-border-body:active{border-color:var(--color-text)}.sl-rounded-none{border-radius:0}.sl-rounded-sm{border-radius:1px}.sl-rounded{border-radius:2px}.sl-rounded-lg{border-radius:5px}.sl-rounded-xl{border-radius:7px}.sl-rounded-full{border-radius:9999px}.sl-rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.sl-rounded-r-none{border-bottom-right-radius:0;border-top-right-radius:0}.sl-rounded-b-none{border-bottom-left-radius:0;border-bottom-right-radius:0}.sl-rounded-l-none{border-bottom-left-radius:0;border-top-left-radius:0}.sl-rounded-t-sm{border-top-left-radius:1px;border-top-right-radius:1px}.sl-rounded-r-sm{border-bottom-right-radius:1px;border-top-right-radius:1px}.sl-rounded-b-sm{border-bottom-left-radius:1px;border-bottom-right-radius:1px}.sl-rounded-l-sm{border-bottom-left-radius:1px;border-top-left-radius:1px}.sl-rounded-t{border-top-left-radius:2px}.sl-rounded-r,.sl-rounded-t{border-top-right-radius:2px}.sl-rounded-b,.sl-rounded-r{border-bottom-right-radius:2px}.sl-rounded-b,.sl-rounded-l{border-bottom-left-radius:2px}.sl-rounded-l{border-top-left-radius:2px}.sl-rounded-t-lg{border-top-left-radius:5px;border-top-right-radius:5px}.sl-rounded-r-lg{border-bottom-right-radius:5px;border-top-right-radius:5px}.sl-rounded-b-lg{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.sl-rounded-l-lg{border-bottom-left-radius:5px;border-top-left-radius:5px}.sl-rounded-t-xl{border-top-left-radius:7px;border-top-right-radius:7px}.sl-rounded-r-xl{border-bottom-right-radius:7px;border-top-right-radius:7px}.sl-rounded-b-xl{border-bottom-left-radius:7px;border-bottom-right-radius:7px}.sl-rounded-l-xl{border-bottom-left-radius:7px;border-top-left-radius:7px}.sl-rounded-t-full{border-top-left-radius:9999px;border-top-right-radius:9999px}.sl-rounded-r-full{border-bottom-right-radius:9999px;border-top-right-radius:9999px}.sl-rounded-b-full{border-bottom-left-radius:9999px;border-bottom-right-radius:9999px}.sl-rounded-l-full{border-bottom-left-radius:9999px;border-top-left-radius:9999px}.sl-rounded-tl-none{border-top-left-radius:0}.sl-rounded-tr-none{border-top-right-radius:0}.sl-rounded-br-none{border-bottom-right-radius:0}.sl-rounded-bl-none{border-bottom-left-radius:0}.sl-rounded-tl-sm{border-top-left-radius:1px}.sl-rounded-tr-sm{border-top-right-radius:1px}.sl-rounded-br-sm{border-bottom-right-radius:1px}.sl-rounded-bl-sm{border-bottom-left-radius:1px}.sl-rounded-tl{border-top-left-radius:2px}.sl-rounded-tr{border-top-right-radius:2px}.sl-rounded-br{border-bottom-right-radius:2px}.sl-rounded-bl{border-bottom-left-radius:2px}.sl-rounded-tl-lg{border-top-left-radius:5px}.sl-rounded-tr-lg{border-top-right-radius:5px}.sl-rounded-br-lg{border-bottom-right-radius:5px}.sl-rounded-bl-lg{border-bottom-left-radius:5px}.sl-rounded-tl-xl{border-top-left-radius:7px}.sl-rounded-tr-xl{border-top-right-radius:7px}.sl-rounded-br-xl{border-bottom-right-radius:7px}.sl-rounded-bl-xl{border-bottom-left-radius:7px}.sl-rounded-tl-full{border-top-left-radius:9999px}.sl-rounded-tr-full{border-top-right-radius:9999px}.sl-rounded-br-full{border-bottom-right-radius:9999px}.sl-rounded-bl-full{border-bottom-left-radius:9999px}.sl-border-solid{border-style:solid}.sl-border-dashed{border-style:dashed}.sl-border-dotted{border-style:dotted}.sl-border-double{border-style:double}.sl-border-none{border-style:none}.sl-border-0{border-width:0}.sl-border-2{border-width:2px}.sl-border-4{border-width:4px}.sl-border-8{border-width:8px}.sl-border{border-width:1px}.sl-border-t-0{border-top-width:0}.sl-border-r-0{border-right-width:0}.sl-border-b-0{border-bottom-width:0}.sl-border-l-0{border-left-width:0}.sl-border-t-2{border-top-width:2px}.sl-border-r-2{border-right-width:2px}.sl-border-b-2{border-bottom-width:2px}.sl-border-l-2{border-left-width:2px}.sl-border-t-4{border-top-width:4px}.sl-border-r-4{border-right-width:4px}.sl-border-b-4{border-bottom-width:4px}.sl-border-l-4{border-left-width:4px}.sl-border-t-8{border-top-width:8px}.sl-border-r-8{border-right-width:8px}.sl-border-b-8{border-bottom-width:8px}.sl-border-l-8{border-left-width:8px}.sl-border-t{border-top-width:1px}.sl-border-r{border-right-width:1px}.sl-border-b{border-bottom-width:1px}.sl-border-l{border-left-width:1px}*{--tw-shadow:0 0 #0000}.sl-shadow-sm{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow,.sl-shadow-md{--tw-shadow:var(--shadow-md)}.sl-shadow,.sl-shadow-lg,.sl-shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-lg{--tw-shadow:var(--shadow-lg)}.sl-shadow-xl{--tw-shadow:var(--shadow-xl)}.sl-shadow-2xl,.sl-shadow-xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.sl-shadow-2xl{--tw-shadow:var(--shadow-2xl)}.hover\:sl-shadow-sm:hover{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:sl-shadow-md:hover,.hover\:sl-shadow:hover{--tw-shadow:var(--shadow-md)}.hover\:sl-shadow-lg:hover,.hover\:sl-shadow-md:hover,.hover\:sl-shadow:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:sl-shadow-lg:hover{--tw-shadow:var(--shadow-lg)}.hover\:sl-shadow-xl:hover{--tw-shadow:var(--shadow-xl)}.hover\:sl-shadow-2xl:hover,.hover\:sl-shadow-xl:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:sl-shadow-2xl:hover{--tw-shadow:var(--shadow-2xl)}.focus\:sl-shadow-sm:focus{--tw-shadow:var(--shadow-sm);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:sl-shadow-md:focus,.focus\:sl-shadow:focus{--tw-shadow:var(--shadow-md)}.focus\:sl-shadow-lg:focus,.focus\:sl-shadow-md:focus,.focus\:sl-shadow:focus{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:sl-shadow-lg:focus{--tw-shadow:var(--shadow-lg)}.focus\:sl-shadow-xl:focus{--tw-shadow:var(--shadow-xl)}.focus\:sl-shadow-2xl:focus,.focus\:sl-shadow-xl:focus{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:sl-shadow-2xl:focus{--tw-shadow:var(--shadow-2xl)}.sl-box-border{box-sizing:border-box}.sl-box-content{box-sizing:content-box}.sl-cursor-auto{cursor:auto}.sl-cursor{cursor:default}.sl-cursor-pointer{cursor:pointer}.sl-cursor-wait{cursor:wait}.sl-cursor-text{cursor:text}.sl-cursor-move{cursor:move}.sl-cursor-not-allowed{cursor:not-allowed}.sl-cursor-zoom-in{cursor:zoom-in}.sl-cursor-zoom-out{cursor:zoom-out}.sl-block{display:block}.sl-inline-block{display:inline-block}.sl-inline{display:inline}.sl-flex{display:flex}.sl-inline-flex{display:inline-flex}.sl-table{display:table}.sl-inline-table{display:inline-table}.sl-table-caption{display:table-caption}.sl-table-cell{display:table-cell}.sl-table-column{display:table-column}.sl-table-column-group{display:table-column-group}.sl-table-footer-group{display:table-footer-group}.sl-table-header-group{display:table-header-group}.sl-table-row-group{display:table-row-group}.sl-table-row{display:table-row}.sl-flow-root{display:flow-root}.sl-grid{display:grid}.sl-inline-grid{display:inline-grid}.sl-contents{display:contents}.sl-list-item{display:list-item}.sl-hidden{display:none}.sl-drop-shadow{--tw-drop-shadow:drop-shadow(var(--drop-shadow-default1)) drop-shadow(var(--drop-shadow-default2))}.sl-filter{--tw-blur:var(--tw-empty,/*!*/ /*!*/);--tw-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-invert:var(--tw-empty,/*!*/ /*!*/);--tw-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-sepia:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sl-filter-none{filter:none}.sl-flex-1{flex:1 1}.sl-flex-auto{flex:1 1 auto}.sl-flex-initial{flex:0 1 auto}.sl-flex-none{flex:none}.sl-flex-row{flex-direction:row}.sl-flex-row-reverse{flex-direction:row-reverse}.sl-flex-col{flex-direction:column}.sl-flex-col-reverse{flex-direction:column-reverse}.sl-flex-grow-0{flex-grow:0}.sl-flex-grow{flex-grow:1}.sl-flex-shrink-0{flex-shrink:0}.sl-flex-shrink{flex-shrink:1}.sl-flex-wrap{flex-wrap:wrap}.sl-flex-wrap-reverse{flex-wrap:wrap-reverse}.sl-flex-nowrap{flex-wrap:nowrap}.sl-font-sans,.sl-font-ui{font-family:var(--font-ui)}.sl-font-prose{font-family:var(--font-prose)}.sl-font-mono{font-family:var(--font-mono)}.sl-text-2xs{font-size:9px}.sl-text-xs{font-size:10px}.sl-text-sm{font-size:11px}.sl-text-base{font-size:12px}.sl-text-lg{font-size:14px}.sl-text-xl{font-size:16px}.sl-text-2xl{font-size:20px}.sl-text-3xl{font-size:24px}.sl-text-4xl{font-size:28px}.sl-text-5xl{font-size:36px}.sl-text-6xl{font-size:44px}.sl-text-paragraph-leading{font-size:var(--fs-paragraph-leading)}.sl-text-paragraph{font-size:var(--fs-paragraph)}.sl-text-paragraph-small{font-size:var(--fs-paragraph-small)}.sl-text-paragraph-tiny{font-size:var(--fs-paragraph-tiny)}.sl-antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sl-subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.sl-italic{font-style:italic}.sl-not-italic{font-style:normal}.sl-font-light{font-weight:300}.sl-font-normal{font-weight:400}.sl-font-medium{font-weight:500}.sl-font-semibold{font-weight:600}.sl-font-bold{font-weight:700}.sl-h-0{height:0}.sl-h-1{height:4px}.sl-h-2{height:8px}.sl-h-3{height:12px}.sl-h-4{height:16px}.sl-h-5{height:20px}.sl-h-6{height:24px}.sl-h-7{height:28px}.sl-h-8{height:32px}.sl-h-9{height:36px}.sl-h-10{height:40px}.sl-h-11{height:44px}.sl-h-12{height:48px}.sl-h-14{height:56px}.sl-h-16{height:64px}.sl-h-20{height:80px}.sl-h-24{height:96px}.sl-h-28{height:112px}.sl-h-32{height:128px}.sl-h-36{height:144px}.sl-h-40{height:160px}.sl-h-44{height:176px}.sl-h-48{height:192px}.sl-h-52{height:208px}.sl-h-56{height:224px}.sl-h-60{height:240px}.sl-h-64{height:256px}.sl-h-72{height:288px}.sl-h-80{height:320px}.sl-h-96{height:384px}.sl-h-auto{height:auto}.sl-h-px{height:1px}.sl-h-0\.5{height:2px}.sl-h-1\.5{height:6px}.sl-h-2\.5{height:10px}.sl-h-3\.5{height:14px}.sl-h-4\.5{height:18px}.sl-h-xs{height:20px}.sl-h-sm{height:24px}.sl-h-md{height:32px}.sl-h-lg{height:36px}.sl-h-xl{height:44px}.sl-h-2xl{height:52px}.sl-h-3xl{height:60px}.sl-h-full{height:100%}.sl-h-screen{height:100vh}.sl-inset-0{bottom:0;left:0;right:0;top:0}.sl-inset-1{bottom:4px;left:4px;right:4px;top:4px}.sl-inset-2{bottom:8px;left:8px;right:8px;top:8px}.sl-inset-3{bottom:12px;left:12px;right:12px;top:12px}.sl-inset-4{bottom:16px;left:16px;right:16px;top:16px}.sl-inset-5{bottom:20px;left:20px;right:20px;top:20px}.sl-inset-6{bottom:24px;left:24px;right:24px;top:24px}.sl-inset-7{bottom:28px;left:28px;right:28px;top:28px}.sl-inset-8{bottom:32px;left:32px;right:32px;top:32px}.sl-inset-9{bottom:36px;left:36px;right:36px;top:36px}.sl-inset-10{bottom:40px;left:40px;right:40px;top:40px}.sl-inset-11{bottom:44px;left:44px;right:44px;top:44px}.sl-inset-12{bottom:48px;left:48px;right:48px;top:48px}.sl-inset-14{bottom:56px;left:56px;right:56px;top:56px}.sl-inset-16{bottom:64px;left:64px;right:64px;top:64px}.sl-inset-20{bottom:80px;left:80px;right:80px;top:80px}.sl-inset-24{bottom:96px;left:96px;right:96px;top:96px}.sl-inset-28{bottom:112px;left:112px;right:112px;top:112px}.sl-inset-32{bottom:128px;left:128px;right:128px;top:128px}.sl-inset-36{bottom:144px;left:144px;right:144px;top:144px}.sl-inset-40{bottom:160px;left:160px;right:160px;top:160px}.sl-inset-44{bottom:176px;left:176px;right:176px;top:176px}.sl-inset-48{bottom:192px;left:192px;right:192px;top:192px}.sl-inset-52{bottom:208px;left:208px;right:208px;top:208px}.sl-inset-56{bottom:224px;left:224px;right:224px;top:224px}.sl-inset-60{bottom:240px;left:240px;right:240px;top:240px}.sl-inset-64{bottom:256px;left:256px;right:256px;top:256px}.sl-inset-72{bottom:288px;left:288px;right:288px;top:288px}.sl-inset-80{bottom:320px;left:320px;right:320px;top:320px}.sl-inset-96{bottom:384px;left:384px;right:384px;top:384px}.sl-inset-auto{bottom:auto;left:auto;right:auto;top:auto}.sl-inset-px{bottom:1px;left:1px;right:1px;top:1px}.sl-inset-0\.5{bottom:2px;left:2px;right:2px;top:2px}.sl-inset-1\.5{bottom:6px;left:6px;right:6px;top:6px}.sl-inset-2\.5{bottom:10px;left:10px;right:10px;top:10px}.sl-inset-3\.5{bottom:14px;left:14px;right:14px;top:14px}.sl-inset-4\.5{bottom:18px;left:18px;right:18px;top:18px}.sl--inset-0{bottom:0;left:0;right:0;top:0}.sl--inset-1{bottom:-4px;left:-4px;right:-4px;top:-4px}.sl--inset-2{bottom:-8px;left:-8px;right:-8px;top:-8px}.sl--inset-3{bottom:-12px;left:-12px;right:-12px;top:-12px}.sl--inset-4{bottom:-16px;left:-16px;right:-16px;top:-16px}.sl--inset-5{bottom:-20px;left:-20px;right:-20px;top:-20px}.sl--inset-6{bottom:-24px;left:-24px;right:-24px;top:-24px}.sl--inset-7{bottom:-28px;left:-28px;right:-28px;top:-28px}.sl--inset-8{bottom:-32px;left:-32px;right:-32px;top:-32px}.sl--inset-9{bottom:-36px;left:-36px;right:-36px;top:-36px}.sl--inset-10{bottom:-40px;left:-40px;right:-40px;top:-40px}.sl--inset-11{bottom:-44px;left:-44px;right:-44px;top:-44px}.sl--inset-12{bottom:-48px;left:-48px;right:-48px;top:-48px}.sl--inset-14{bottom:-56px;left:-56px;right:-56px;top:-56px}.sl--inset-16{bottom:-64px;left:-64px;right:-64px;top:-64px}.sl--inset-20{bottom:-80px;left:-80px;right:-80px;top:-80px}.sl--inset-24{bottom:-96px;left:-96px;right:-96px;top:-96px}.sl--inset-28{bottom:-112px;left:-112px;right:-112px;top:-112px}.sl--inset-32{bottom:-128px;left:-128px;right:-128px;top:-128px}.sl--inset-36{bottom:-144px;left:-144px;right:-144px;top:-144px}.sl--inset-40{bottom:-160px;left:-160px;right:-160px;top:-160px}.sl--inset-44{bottom:-176px;left:-176px;right:-176px;top:-176px}.sl--inset-48{bottom:-192px;left:-192px;right:-192px;top:-192px}.sl--inset-52{bottom:-208px;left:-208px;right:-208px;top:-208px}.sl--inset-56{bottom:-224px;left:-224px;right:-224px;top:-224px}.sl--inset-60{bottom:-240px;left:-240px;right:-240px;top:-240px}.sl--inset-64{bottom:-256px;left:-256px;right:-256px;top:-256px}.sl--inset-72{bottom:-288px;left:-288px;right:-288px;top:-288px}.sl--inset-80{bottom:-320px;left:-320px;right:-320px;top:-320px}.sl--inset-96{bottom:-384px;left:-384px;right:-384px;top:-384px}.sl--inset-px{bottom:-1px;left:-1px;right:-1px;top:-1px}.sl--inset-0\.5{bottom:-2px;left:-2px;right:-2px;top:-2px}.sl--inset-1\.5{bottom:-6px;left:-6px;right:-6px;top:-6px}.sl--inset-2\.5{bottom:-10px;left:-10px;right:-10px;top:-10px}.sl--inset-3\.5{bottom:-14px;left:-14px;right:-14px;top:-14px}.sl--inset-4\.5{bottom:-18px;left:-18px;right:-18px;top:-18px}.sl-inset-y-0{bottom:0;top:0}.sl-inset-x-0{left:0;right:0}.sl-inset-y-1{bottom:4px;top:4px}.sl-inset-x-1{left:4px;right:4px}.sl-inset-y-2{bottom:8px;top:8px}.sl-inset-x-2{left:8px;right:8px}.sl-inset-y-3{bottom:12px;top:12px}.sl-inset-x-3{left:12px;right:12px}.sl-inset-y-4{bottom:16px;top:16px}.sl-inset-x-4{left:16px;right:16px}.sl-inset-y-5{bottom:20px;top:20px}.sl-inset-x-5{left:20px;right:20px}.sl-inset-y-6{bottom:24px;top:24px}.sl-inset-x-6{left:24px;right:24px}.sl-inset-y-7{bottom:28px;top:28px}.sl-inset-x-7{left:28px;right:28px}.sl-inset-y-8{bottom:32px;top:32px}.sl-inset-x-8{left:32px;right:32px}.sl-inset-y-9{bottom:36px;top:36px}.sl-inset-x-9{left:36px;right:36px}.sl-inset-y-10{bottom:40px;top:40px}.sl-inset-x-10{left:40px;right:40px}.sl-inset-y-11{bottom:44px;top:44px}.sl-inset-x-11{left:44px;right:44px}.sl-inset-y-12{bottom:48px;top:48px}.sl-inset-x-12{left:48px;right:48px}.sl-inset-y-14{bottom:56px;top:56px}.sl-inset-x-14{left:56px;right:56px}.sl-inset-y-16{bottom:64px;top:64px}.sl-inset-x-16{left:64px;right:64px}.sl-inset-y-20{bottom:80px;top:80px}.sl-inset-x-20{left:80px;right:80px}.sl-inset-y-24{bottom:96px;top:96px}.sl-inset-x-24{left:96px;right:96px}.sl-inset-y-28{bottom:112px;top:112px}.sl-inset-x-28{left:112px;right:112px}.sl-inset-y-32{bottom:128px;top:128px}.sl-inset-x-32{left:128px;right:128px}.sl-inset-y-36{bottom:144px;top:144px}.sl-inset-x-36{left:144px;right:144px}.sl-inset-y-40{bottom:160px;top:160px}.sl-inset-x-40{left:160px;right:160px}.sl-inset-y-44{bottom:176px;top:176px}.sl-inset-x-44{left:176px;right:176px}.sl-inset-y-48{bottom:192px;top:192px}.sl-inset-x-48{left:192px;right:192px}.sl-inset-y-52{bottom:208px;top:208px}.sl-inset-x-52{left:208px;right:208px}.sl-inset-y-56{bottom:224px;top:224px}.sl-inset-x-56{left:224px;right:224px}.sl-inset-y-60{bottom:240px;top:240px}.sl-inset-x-60{left:240px;right:240px}.sl-inset-y-64{bottom:256px;top:256px}.sl-inset-x-64{left:256px;right:256px}.sl-inset-y-72{bottom:288px;top:288px}.sl-inset-x-72{left:288px;right:288px}.sl-inset-y-80{bottom:320px;top:320px}.sl-inset-x-80{left:320px;right:320px}.sl-inset-y-96{bottom:384px;top:384px}.sl-inset-x-96{left:384px;right:384px}.sl-inset-y-auto{bottom:auto;top:auto}.sl-inset-x-auto{left:auto;right:auto}.sl-inset-y-px{bottom:1px;top:1px}.sl-inset-x-px{left:1px;right:1px}.sl-inset-y-0\.5{bottom:2px;top:2px}.sl-inset-x-0\.5{left:2px;right:2px}.sl-inset-y-1\.5{bottom:6px;top:6px}.sl-inset-x-1\.5{left:6px;right:6px}.sl-inset-y-2\.5{bottom:10px;top:10px}.sl-inset-x-2\.5{left:10px;right:10px}.sl-inset-y-3\.5{bottom:14px;top:14px}.sl-inset-x-3\.5{left:14px;right:14px}.sl-inset-y-4\.5{bottom:18px;top:18px}.sl-inset-x-4\.5{left:18px;right:18px}.sl--inset-y-0{bottom:0;top:0}.sl--inset-x-0{left:0;right:0}.sl--inset-y-1{bottom:-4px;top:-4px}.sl--inset-x-1{left:-4px;right:-4px}.sl--inset-y-2{bottom:-8px;top:-8px}.sl--inset-x-2{left:-8px;right:-8px}.sl--inset-y-3{bottom:-12px;top:-12px}.sl--inset-x-3{left:-12px;right:-12px}.sl--inset-y-4{bottom:-16px;top:-16px}.sl--inset-x-4{left:-16px;right:-16px}.sl--inset-y-5{bottom:-20px;top:-20px}.sl--inset-x-5{left:-20px;right:-20px}.sl--inset-y-6{bottom:-24px;top:-24px}.sl--inset-x-6{left:-24px;right:-24px}.sl--inset-y-7{bottom:-28px;top:-28px}.sl--inset-x-7{left:-28px;right:-28px}.sl--inset-y-8{bottom:-32px;top:-32px}.sl--inset-x-8{left:-32px;right:-32px}.sl--inset-y-9{bottom:-36px;top:-36px}.sl--inset-x-9{left:-36px;right:-36px}.sl--inset-y-10{bottom:-40px;top:-40px}.sl--inset-x-10{left:-40px;right:-40px}.sl--inset-y-11{bottom:-44px;top:-44px}.sl--inset-x-11{left:-44px;right:-44px}.sl--inset-y-12{bottom:-48px;top:-48px}.sl--inset-x-12{left:-48px;right:-48px}.sl--inset-y-14{bottom:-56px;top:-56px}.sl--inset-x-14{left:-56px;right:-56px}.sl--inset-y-16{bottom:-64px;top:-64px}.sl--inset-x-16{left:-64px;right:-64px}.sl--inset-y-20{bottom:-80px;top:-80px}.sl--inset-x-20{left:-80px;right:-80px}.sl--inset-y-24{bottom:-96px;top:-96px}.sl--inset-x-24{left:-96px;right:-96px}.sl--inset-y-28{bottom:-112px;top:-112px}.sl--inset-x-28{left:-112px;right:-112px}.sl--inset-y-32{bottom:-128px;top:-128px}.sl--inset-x-32{left:-128px;right:-128px}.sl--inset-y-36{bottom:-144px;top:-144px}.sl--inset-x-36{left:-144px;right:-144px}.sl--inset-y-40{bottom:-160px;top:-160px}.sl--inset-x-40{left:-160px;right:-160px}.sl--inset-y-44{bottom:-176px;top:-176px}.sl--inset-x-44{left:-176px;right:-176px}.sl--inset-y-48{bottom:-192px;top:-192px}.sl--inset-x-48{left:-192px;right:-192px}.sl--inset-y-52{bottom:-208px;top:-208px}.sl--inset-x-52{left:-208px;right:-208px}.sl--inset-y-56{bottom:-224px;top:-224px}.sl--inset-x-56{left:-224px;right:-224px}.sl--inset-y-60{bottom:-240px;top:-240px}.sl--inset-x-60{left:-240px;right:-240px}.sl--inset-y-64{bottom:-256px;top:-256px}.sl--inset-x-64{left:-256px;right:-256px}.sl--inset-y-72{bottom:-288px;top:-288px}.sl--inset-x-72{left:-288px;right:-288px}.sl--inset-y-80{bottom:-320px;top:-320px}.sl--inset-x-80{left:-320px;right:-320px}.sl--inset-y-96{bottom:-384px;top:-384px}.sl--inset-x-96{left:-384px;right:-384px}.sl--inset-y-px{bottom:-1px;top:-1px}.sl--inset-x-px{left:-1px;right:-1px}.sl--inset-y-0\.5{bottom:-2px;top:-2px}.sl--inset-x-0\.5{left:-2px;right:-2px}.sl--inset-y-1\.5{bottom:-6px;top:-6px}.sl--inset-x-1\.5{left:-6px;right:-6px}.sl--inset-y-2\.5{bottom:-10px;top:-10px}.sl--inset-x-2\.5{left:-10px;right:-10px}.sl--inset-y-3\.5{bottom:-14px;top:-14px}.sl--inset-x-3\.5{left:-14px;right:-14px}.sl--inset-y-4\.5{bottom:-18px;top:-18px}.sl--inset-x-4\.5{left:-18px;right:-18px}.sl-top-0{top:0}.sl-right-0{right:0}.sl-bottom-0{bottom:0}.sl-left-0{left:0}.sl-top-1{top:4px}.sl-right-1{right:4px}.sl-bottom-1{bottom:4px}.sl-left-1{left:4px}.sl-top-2{top:8px}.sl-right-2{right:8px}.sl-bottom-2{bottom:8px}.sl-left-2{left:8px}.sl-top-3{top:12px}.sl-right-3{right:12px}.sl-bottom-3{bottom:12px}.sl-left-3{left:12px}.sl-top-4{top:16px}.sl-right-4{right:16px}.sl-bottom-4{bottom:16px}.sl-left-4{left:16px}.sl-top-5{top:20px}.sl-right-5{right:20px}.sl-bottom-5{bottom:20px}.sl-left-5{left:20px}.sl-top-6{top:24px}.sl-right-6{right:24px}.sl-bottom-6{bottom:24px}.sl-left-6{left:24px}.sl-top-7{top:28px}.sl-right-7{right:28px}.sl-bottom-7{bottom:28px}.sl-left-7{left:28px}.sl-top-8{top:32px}.sl-right-8{right:32px}.sl-bottom-8{bottom:32px}.sl-left-8{left:32px}.sl-top-9{top:36px}.sl-right-9{right:36px}.sl-bottom-9{bottom:36px}.sl-left-9{left:36px}.sl-top-10{top:40px}.sl-right-10{right:40px}.sl-bottom-10{bottom:40px}.sl-left-10{left:40px}.sl-top-11{top:44px}.sl-right-11{right:44px}.sl-bottom-11{bottom:44px}.sl-left-11{left:44px}.sl-top-12{top:48px}.sl-right-12{right:48px}.sl-bottom-12{bottom:48px}.sl-left-12{left:48px}.sl-top-14{top:56px}.sl-right-14{right:56px}.sl-bottom-14{bottom:56px}.sl-left-14{left:56px}.sl-top-16{top:64px}.sl-right-16{right:64px}.sl-bottom-16{bottom:64px}.sl-left-16{left:64px}.sl-top-20{top:80px}.sl-right-20{right:80px}.sl-bottom-20{bottom:80px}.sl-left-20{left:80px}.sl-top-24{top:96px}.sl-right-24{right:96px}.sl-bottom-24{bottom:96px}.sl-left-24{left:96px}.sl-top-28{top:112px}.sl-right-28{right:112px}.sl-bottom-28{bottom:112px}.sl-left-28{left:112px}.sl-top-32{top:128px}.sl-right-32{right:128px}.sl-bottom-32{bottom:128px}.sl-left-32{left:128px}.sl-top-36{top:144px}.sl-right-36{right:144px}.sl-bottom-36{bottom:144px}.sl-left-36{left:144px}.sl-top-40{top:160px}.sl-right-40{right:160px}.sl-bottom-40{bottom:160px}.sl-left-40{left:160px}.sl-top-44{top:176px}.sl-right-44{right:176px}.sl-bottom-44{bottom:176px}.sl-left-44{left:176px}.sl-top-48{top:192px}.sl-right-48{right:192px}.sl-bottom-48{bottom:192px}.sl-left-48{left:192px}.sl-top-52{top:208px}.sl-right-52{right:208px}.sl-bottom-52{bottom:208px}.sl-left-52{left:208px}.sl-top-56{top:224px}.sl-right-56{right:224px}.sl-bottom-56{bottom:224px}.sl-left-56{left:224px}.sl-top-60{top:240px}.sl-right-60{right:240px}.sl-bottom-60{bottom:240px}.sl-left-60{left:240px}.sl-top-64{top:256px}.sl-right-64{right:256px}.sl-bottom-64{bottom:256px}.sl-left-64{left:256px}.sl-top-72{top:288px}.sl-right-72{right:288px}.sl-bottom-72{bottom:288px}.sl-left-72{left:288px}.sl-top-80{top:320px}.sl-right-80{right:320px}.sl-bottom-80{bottom:320px}.sl-left-80{left:320px}.sl-top-96{top:384px}.sl-right-96{right:384px}.sl-bottom-96{bottom:384px}.sl-left-96{left:384px}.sl-top-auto{top:auto}.sl-right-auto{right:auto}.sl-bottom-auto{bottom:auto}.sl-left-auto{left:auto}.sl-top-px{top:1px}.sl-right-px{right:1px}.sl-bottom-px{bottom:1px}.sl-left-px{left:1px}.sl-top-0\.5{top:2px}.sl-right-0\.5{right:2px}.sl-bottom-0\.5{bottom:2px}.sl-left-0\.5{left:2px}.sl-top-1\.5{top:6px}.sl-right-1\.5{right:6px}.sl-bottom-1\.5{bottom:6px}.sl-left-1\.5{left:6px}.sl-top-2\.5{top:10px}.sl-right-2\.5{right:10px}.sl-bottom-2\.5{bottom:10px}.sl-left-2\.5{left:10px}.sl-top-3\.5{top:14px}.sl-right-3\.5{right:14px}.sl-bottom-3\.5{bottom:14px}.sl-left-3\.5{left:14px}.sl-top-4\.5{top:18px}.sl-right-4\.5{right:18px}.sl-bottom-4\.5{bottom:18px}.sl-left-4\.5{left:18px}.sl--top-0{top:0}.sl--right-0{right:0}.sl--bottom-0{bottom:0}.sl--left-0{left:0}.sl--top-1{top:-4px}.sl--right-1{right:-4px}.sl--bottom-1{bottom:-4px}.sl--left-1{left:-4px}.sl--top-2{top:-8px}.sl--right-2{right:-8px}.sl--bottom-2{bottom:-8px}.sl--left-2{left:-8px}.sl--top-3{top:-12px}.sl--right-3{right:-12px}.sl--bottom-3{bottom:-12px}.sl--left-3{left:-12px}.sl--top-4{top:-16px}.sl--right-4{right:-16px}.sl--bottom-4{bottom:-16px}.sl--left-4{left:-16px}.sl--top-5{top:-20px}.sl--right-5{right:-20px}.sl--bottom-5{bottom:-20px}.sl--left-5{left:-20px}.sl--top-6{top:-24px}.sl--right-6{right:-24px}.sl--bottom-6{bottom:-24px}.sl--left-6{left:-24px}.sl--top-7{top:-28px}.sl--right-7{right:-28px}.sl--bottom-7{bottom:-28px}.sl--left-7{left:-28px}.sl--top-8{top:-32px}.sl--right-8{right:-32px}.sl--bottom-8{bottom:-32px}.sl--left-8{left:-32px}.sl--top-9{top:-36px}.sl--right-9{right:-36px}.sl--bottom-9{bottom:-36px}.sl--left-9{left:-36px}.sl--top-10{top:-40px}.sl--right-10{right:-40px}.sl--bottom-10{bottom:-40px}.sl--left-10{left:-40px}.sl--top-11{top:-44px}.sl--right-11{right:-44px}.sl--bottom-11{bottom:-44px}.sl--left-11{left:-44px}.sl--top-12{top:-48px}.sl--right-12{right:-48px}.sl--bottom-12{bottom:-48px}.sl--left-12{left:-48px}.sl--top-14{top:-56px}.sl--right-14{right:-56px}.sl--bottom-14{bottom:-56px}.sl--left-14{left:-56px}.sl--top-16{top:-64px}.sl--right-16{right:-64px}.sl--bottom-16{bottom:-64px}.sl--left-16{left:-64px}.sl--top-20{top:-80px}.sl--right-20{right:-80px}.sl--bottom-20{bottom:-80px}.sl--left-20{left:-80px}.sl--top-24{top:-96px}.sl--right-24{right:-96px}.sl--bottom-24{bottom:-96px}.sl--left-24{left:-96px}.sl--top-28{top:-112px}.sl--right-28{right:-112px}.sl--bottom-28{bottom:-112px}.sl--left-28{left:-112px}.sl--top-32{top:-128px}.sl--right-32{right:-128px}.sl--bottom-32{bottom:-128px}.sl--left-32{left:-128px}.sl--top-36{top:-144px}.sl--right-36{right:-144px}.sl--bottom-36{bottom:-144px}.sl--left-36{left:-144px}.sl--top-40{top:-160px}.sl--right-40{right:-160px}.sl--bottom-40{bottom:-160px}.sl--left-40{left:-160px}.sl--top-44{top:-176px}.sl--right-44{right:-176px}.sl--bottom-44{bottom:-176px}.sl--left-44{left:-176px}.sl--top-48{top:-192px}.sl--right-48{right:-192px}.sl--bottom-48{bottom:-192px}.sl--left-48{left:-192px}.sl--top-52{top:-208px}.sl--right-52{right:-208px}.sl--bottom-52{bottom:-208px}.sl--left-52{left:-208px}.sl--top-56{top:-224px}.sl--right-56{right:-224px}.sl--bottom-56{bottom:-224px}.sl--left-56{left:-224px}.sl--top-60{top:-240px}.sl--right-60{right:-240px}.sl--bottom-60{bottom:-240px}.sl--left-60{left:-240px}.sl--top-64{top:-256px}.sl--right-64{right:-256px}.sl--bottom-64{bottom:-256px}.sl--left-64{left:-256px}.sl--top-72{top:-288px}.sl--right-72{right:-288px}.sl--bottom-72{bottom:-288px}.sl--left-72{left:-288px}.sl--top-80{top:-320px}.sl--right-80{right:-320px}.sl--bottom-80{bottom:-320px}.sl--left-80{left:-320px}.sl--top-96{top:-384px}.sl--right-96{right:-384px}.sl--bottom-96{bottom:-384px}.sl--left-96{left:-384px}.sl--top-px{top:-1px}.sl--right-px{right:-1px}.sl--bottom-px{bottom:-1px}.sl--left-px{left:-1px}.sl--top-0\.5{top:-2px}.sl--right-0\.5{right:-2px}.sl--bottom-0\.5{bottom:-2px}.sl--left-0\.5{left:-2px}.sl--top-1\.5{top:-6px}.sl--right-1\.5{right:-6px}.sl--bottom-1\.5{bottom:-6px}.sl--left-1\.5{left:-6px}.sl--top-2\.5{top:-10px}.sl--right-2\.5{right:-10px}.sl--bottom-2\.5{bottom:-10px}.sl--left-2\.5{left:-10px}.sl--top-3\.5{top:-14px}.sl--right-3\.5{right:-14px}.sl--bottom-3\.5{bottom:-14px}.sl--left-3\.5{left:-14px}.sl--top-4\.5{top:-18px}.sl--right-4\.5{right:-18px}.sl--bottom-4\.5{bottom:-18px}.sl--left-4\.5{left:-18px}.sl-justify-start{justify-content:flex-start}.sl-justify-end{justify-content:flex-end}.sl-justify-center{justify-content:center}.sl-justify-between{justify-content:space-between}.sl-justify-around{justify-content:space-around}.sl-justify-evenly{justify-content:space-evenly}.sl-justify-items-start{justify-items:start}.sl-justify-items-end{justify-items:end}.sl-justify-items-center{justify-items:center}.sl-justify-items-stretch{justify-items:stretch}.sl-justify-self-auto{justify-self:auto}.sl-justify-self-start{justify-self:start}.sl-justify-self-end{justify-self:end}.sl-justify-self-center{justify-self:center}.sl-justify-self-stretch{justify-self:stretch}.sl-tracking-tight{letter-spacing:-.025em}.sl-tracking-normal{letter-spacing:0}.sl-tracking-wide{letter-spacing:.025em}.sl-leading-none{line-height:1}.sl-leading-tight{line-height:1.2}.sl-leading-snug{line-height:1.375}.sl-leading-normal{line-height:1.5}.sl-leading-relaxed{line-height:1.625}.sl-leading-loose{line-height:2}.sl-leading-paragraph-leading{line-height:var(--lh-paragraph-leading)}.sl-leading-paragraph{line-height:var(--lh-paragraph)}.sl-leading-paragraph-small{line-height:var(--lh-paragraph-small)}.sl-leading-paragraph-tiny{line-height:var(--lh-paragraph-tiny)}.sl-m-0{margin:0}.sl-m-1{margin:4px}.sl-m-2{margin:8px}.sl-m-3{margin:12px}.sl-m-4{margin:16px}.sl-m-5{margin:20px}.sl-m-6{margin:24px}.sl-m-7{margin:28px}.sl-m-8{margin:32px}.sl-m-9{margin:36px}.sl-m-10{margin:40px}.sl-m-11{margin:44px}.sl-m-12{margin:48px}.sl-m-14{margin:56px}.sl-m-16{margin:64px}.sl-m-20{margin:80px}.sl-m-24{margin:96px}.sl-m-28{margin:112px}.sl-m-32{margin:128px}.sl-m-36{margin:144px}.sl-m-40{margin:160px}.sl-m-44{margin:176px}.sl-m-48{margin:192px}.sl-m-52{margin:208px}.sl-m-56{margin:224px}.sl-m-60{margin:240px}.sl-m-64{margin:256px}.sl-m-72{margin:288px}.sl-m-80{margin:320px}.sl-m-96{margin:384px}.sl-m-auto{margin:auto}.sl-m-px{margin:1px}.sl-m-0\.5{margin:2px}.sl-m-1\.5{margin:6px}.sl-m-2\.5{margin:10px}.sl-m-3\.5{margin:14px}.sl-m-4\.5{margin:18px}.sl--m-0{margin:0}.sl--m-1{margin:-4px}.sl--m-2{margin:-8px}.sl--m-3{margin:-12px}.sl--m-4{margin:-16px}.sl--m-5{margin:-20px}.sl--m-6{margin:-24px}.sl--m-7{margin:-28px}.sl--m-8{margin:-32px}.sl--m-9{margin:-36px}.sl--m-10{margin:-40px}.sl--m-11{margin:-44px}.sl--m-12{margin:-48px}.sl--m-14{margin:-56px}.sl--m-16{margin:-64px}.sl--m-20{margin:-80px}.sl--m-24{margin:-96px}.sl--m-28{margin:-112px}.sl--m-32{margin:-128px}.sl--m-36{margin:-144px}.sl--m-40{margin:-160px}.sl--m-44{margin:-176px}.sl--m-48{margin:-192px}.sl--m-52{margin:-208px}.sl--m-56{margin:-224px}.sl--m-60{margin:-240px}.sl--m-64{margin:-256px}.sl--m-72{margin:-288px}.sl--m-80{margin:-320px}.sl--m-96{margin:-384px}.sl--m-px{margin:-1px}.sl--m-0\.5{margin:-2px}.sl--m-1\.5{margin:-6px}.sl--m-2\.5{margin:-10px}.sl--m-3\.5{margin:-14px}.sl--m-4\.5{margin:-18px}.sl-my-0{margin-bottom:0;margin-top:0}.sl-mx-0{margin-left:0;margin-right:0}.sl-my-1{margin-bottom:4px;margin-top:4px}.sl-mx-1{margin-left:4px;margin-right:4px}.sl-my-2{margin-bottom:8px;margin-top:8px}.sl-mx-2{margin-left:8px;margin-right:8px}.sl-my-3{margin-bottom:12px;margin-top:12px}.sl-mx-3{margin-left:12px;margin-right:12px}.sl-my-4{margin-bottom:16px;margin-top:16px}.sl-mx-4{margin-left:16px;margin-right:16px}.sl-my-5{margin-bottom:20px;margin-top:20px}.sl-mx-5{margin-left:20px;margin-right:20px}.sl-my-6{margin-bottom:24px;margin-top:24px}.sl-mx-6{margin-left:24px;margin-right:24px}.sl-my-7{margin-bottom:28px;margin-top:28px}.sl-mx-7{margin-left:28px;margin-right:28px}.sl-my-8{margin-bottom:32px;margin-top:32px}.sl-mx-8{margin-left:32px;margin-right:32px}.sl-my-9{margin-bottom:36px;margin-top:36px}.sl-mx-9{margin-left:36px;margin-right:36px}.sl-my-10{margin-bottom:40px;margin-top:40px}.sl-mx-10{margin-left:40px;margin-right:40px}.sl-my-11{margin-bottom:44px;margin-top:44px}.sl-mx-11{margin-left:44px;margin-right:44px}.sl-my-12{margin-bottom:48px;margin-top:48px}.sl-mx-12{margin-left:48px;margin-right:48px}.sl-my-14{margin-bottom:56px;margin-top:56px}.sl-mx-14{margin-left:56px;margin-right:56px}.sl-my-16{margin-bottom:64px;margin-top:64px}.sl-mx-16{margin-left:64px;margin-right:64px}.sl-my-20{margin-bottom:80px;margin-top:80px}.sl-mx-20{margin-left:80px;margin-right:80px}.sl-my-24{margin-bottom:96px;margin-top:96px}.sl-mx-24{margin-left:96px;margin-right:96px}.sl-my-28{margin-bottom:112px;margin-top:112px}.sl-mx-28{margin-left:112px;margin-right:112px}.sl-my-32{margin-bottom:128px;margin-top:128px}.sl-mx-32{margin-left:128px;margin-right:128px}.sl-my-36{margin-bottom:144px;margin-top:144px}.sl-mx-36{margin-left:144px;margin-right:144px}.sl-my-40{margin-bottom:160px;margin-top:160px}.sl-mx-40{margin-left:160px;margin-right:160px}.sl-my-44{margin-bottom:176px;margin-top:176px}.sl-mx-44{margin-left:176px;margin-right:176px}.sl-my-48{margin-bottom:192px;margin-top:192px}.sl-mx-48{margin-left:192px;margin-right:192px}.sl-my-52{margin-bottom:208px;margin-top:208px}.sl-mx-52{margin-left:208px;margin-right:208px}.sl-my-56{margin-bottom:224px;margin-top:224px}.sl-mx-56{margin-left:224px;margin-right:224px}.sl-my-60{margin-bottom:240px;margin-top:240px}.sl-mx-60{margin-left:240px;margin-right:240px}.sl-my-64{margin-bottom:256px;margin-top:256px}.sl-mx-64{margin-left:256px;margin-right:256px}.sl-my-72{margin-bottom:288px;margin-top:288px}.sl-mx-72{margin-left:288px;margin-right:288px}.sl-my-80{margin-bottom:320px;margin-top:320px}.sl-mx-80{margin-left:320px;margin-right:320px}.sl-my-96{margin-bottom:384px;margin-top:384px}.sl-mx-96{margin-left:384px;margin-right:384px}.sl-my-auto{margin-bottom:auto;margin-top:auto}.sl-mx-auto{margin-left:auto;margin-right:auto}.sl-my-px{margin-bottom:1px;margin-top:1px}.sl-mx-px{margin-left:1px;margin-right:1px}.sl-my-0\.5{margin-bottom:2px;margin-top:2px}.sl-mx-0\.5{margin-left:2px;margin-right:2px}.sl-my-1\.5{margin-bottom:6px;margin-top:6px}.sl-mx-1\.5{margin-left:6px;margin-right:6px}.sl-my-2\.5{margin-bottom:10px;margin-top:10px}.sl-mx-2\.5{margin-left:10px;margin-right:10px}.sl-my-3\.5{margin-bottom:14px;margin-top:14px}.sl-mx-3\.5{margin-left:14px;margin-right:14px}.sl-my-4\.5{margin-bottom:18px;margin-top:18px}.sl-mx-4\.5{margin-left:18px;margin-right:18px}.sl--my-0{margin-bottom:0;margin-top:0}.sl--mx-0{margin-left:0;margin-right:0}.sl--my-1{margin-bottom:-4px;margin-top:-4px}.sl--mx-1{margin-left:-4px;margin-right:-4px}.sl--my-2{margin-bottom:-8px;margin-top:-8px}.sl--mx-2{margin-left:-8px;margin-right:-8px}.sl--my-3{margin-bottom:-12px;margin-top:-12px}.sl--mx-3{margin-left:-12px;margin-right:-12px}.sl--my-4{margin-bottom:-16px;margin-top:-16px}.sl--mx-4{margin-left:-16px;margin-right:-16px}.sl--my-5{margin-bottom:-20px;margin-top:-20px}.sl--mx-5{margin-left:-20px;margin-right:-20px}.sl--my-6{margin-bottom:-24px;margin-top:-24px}.sl--mx-6{margin-left:-24px;margin-right:-24px}.sl--my-7{margin-bottom:-28px;margin-top:-28px}.sl--mx-7{margin-left:-28px;margin-right:-28px}.sl--my-8{margin-bottom:-32px;margin-top:-32px}.sl--mx-8{margin-left:-32px;margin-right:-32px}.sl--my-9{margin-bottom:-36px;margin-top:-36px}.sl--mx-9{margin-left:-36px;margin-right:-36px}.sl--my-10{margin-bottom:-40px;margin-top:-40px}.sl--mx-10{margin-left:-40px;margin-right:-40px}.sl--my-11{margin-bottom:-44px;margin-top:-44px}.sl--mx-11{margin-left:-44px;margin-right:-44px}.sl--my-12{margin-bottom:-48px;margin-top:-48px}.sl--mx-12{margin-left:-48px;margin-right:-48px}.sl--my-14{margin-bottom:-56px;margin-top:-56px}.sl--mx-14{margin-left:-56px;margin-right:-56px}.sl--my-16{margin-bottom:-64px;margin-top:-64px}.sl--mx-16{margin-left:-64px;margin-right:-64px}.sl--my-20{margin-bottom:-80px;margin-top:-80px}.sl--mx-20{margin-left:-80px;margin-right:-80px}.sl--my-24{margin-bottom:-96px;margin-top:-96px}.sl--mx-24{margin-left:-96px;margin-right:-96px}.sl--my-28{margin-bottom:-112px;margin-top:-112px}.sl--mx-28{margin-left:-112px;margin-right:-112px}.sl--my-32{margin-bottom:-128px;margin-top:-128px}.sl--mx-32{margin-left:-128px;margin-right:-128px}.sl--my-36{margin-bottom:-144px;margin-top:-144px}.sl--mx-36{margin-left:-144px;margin-right:-144px}.sl--my-40{margin-bottom:-160px;margin-top:-160px}.sl--mx-40{margin-left:-160px;margin-right:-160px}.sl--my-44{margin-bottom:-176px;margin-top:-176px}.sl--mx-44{margin-left:-176px;margin-right:-176px}.sl--my-48{margin-bottom:-192px;margin-top:-192px}.sl--mx-48{margin-left:-192px;margin-right:-192px}.sl--my-52{margin-bottom:-208px;margin-top:-208px}.sl--mx-52{margin-left:-208px;margin-right:-208px}.sl--my-56{margin-bottom:-224px;margin-top:-224px}.sl--mx-56{margin-left:-224px;margin-right:-224px}.sl--my-60{margin-bottom:-240px;margin-top:-240px}.sl--mx-60{margin-left:-240px;margin-right:-240px}.sl--my-64{margin-bottom:-256px;margin-top:-256px}.sl--mx-64{margin-left:-256px;margin-right:-256px}.sl--my-72{margin-bottom:-288px;margin-top:-288px}.sl--mx-72{margin-left:-288px;margin-right:-288px}.sl--my-80{margin-bottom:-320px;margin-top:-320px}.sl--mx-80{margin-left:-320px;margin-right:-320px}.sl--my-96{margin-bottom:-384px;margin-top:-384px}.sl--mx-96{margin-left:-384px;margin-right:-384px}.sl--my-px{margin-bottom:-1px;margin-top:-1px}.sl--mx-px{margin-left:-1px;margin-right:-1px}.sl--my-0\.5{margin-bottom:-2px;margin-top:-2px}.sl--mx-0\.5{margin-left:-2px;margin-right:-2px}.sl--my-1\.5{margin-bottom:-6px;margin-top:-6px}.sl--mx-1\.5{margin-left:-6px;margin-right:-6px}.sl--my-2\.5{margin-bottom:-10px;margin-top:-10px}.sl--mx-2\.5{margin-left:-10px;margin-right:-10px}.sl--my-3\.5{margin-bottom:-14px;margin-top:-14px}.sl--mx-3\.5{margin-left:-14px;margin-right:-14px}.sl--my-4\.5{margin-bottom:-18px;margin-top:-18px}.sl--mx-4\.5{margin-left:-18px;margin-right:-18px}.sl-mt-0{margin-top:0}.sl-mr-0{margin-right:0}.sl-mb-0{margin-bottom:0}.sl-ml-0{margin-left:0}.sl-mt-1{margin-top:4px}.sl-mr-1{margin-right:4px}.sl-mb-1{margin-bottom:4px}.sl-ml-1{margin-left:4px}.sl-mt-2{margin-top:8px}.sl-mr-2{margin-right:8px}.sl-mb-2{margin-bottom:8px}.sl-ml-2{margin-left:8px}.sl-mt-3{margin-top:12px}.sl-mr-3{margin-right:12px}.sl-mb-3{margin-bottom:12px}.sl-ml-3{margin-left:12px}.sl-mt-4{margin-top:16px}.sl-mr-4{margin-right:16px}.sl-mb-4{margin-bottom:16px}.sl-ml-4{margin-left:16px}.sl-mt-5{margin-top:20px}.sl-mr-5{margin-right:20px}.sl-mb-5{margin-bottom:20px}.sl-ml-5{margin-left:20px}.sl-mt-6{margin-top:24px}.sl-mr-6{margin-right:24px}.sl-mb-6{margin-bottom:24px}.sl-ml-6{margin-left:24px}.sl-mt-7{margin-top:28px}.sl-mr-7{margin-right:28px}.sl-mb-7{margin-bottom:28px}.sl-ml-7{margin-left:28px}.sl-mt-8{margin-top:32px}.sl-mr-8{margin-right:32px}.sl-mb-8{margin-bottom:32px}.sl-ml-8{margin-left:32px}.sl-mt-9{margin-top:36px}.sl-mr-9{margin-right:36px}.sl-mb-9{margin-bottom:36px}.sl-ml-9{margin-left:36px}.sl-mt-10{margin-top:40px}.sl-mr-10{margin-right:40px}.sl-mb-10{margin-bottom:40px}.sl-ml-10{margin-left:40px}.sl-mt-11{margin-top:44px}.sl-mr-11{margin-right:44px}.sl-mb-11{margin-bottom:44px}.sl-ml-11{margin-left:44px}.sl-mt-12{margin-top:48px}.sl-mr-12{margin-right:48px}.sl-mb-12{margin-bottom:48px}.sl-ml-12{margin-left:48px}.sl-mt-14{margin-top:56px}.sl-mr-14{margin-right:56px}.sl-mb-14{margin-bottom:56px}.sl-ml-14{margin-left:56px}.sl-mt-16{margin-top:64px}.sl-mr-16{margin-right:64px}.sl-mb-16{margin-bottom:64px}.sl-ml-16{margin-left:64px}.sl-mt-20{margin-top:80px}.sl-mr-20{margin-right:80px}.sl-mb-20{margin-bottom:80px}.sl-ml-20{margin-left:80px}.sl-mt-24{margin-top:96px}.sl-mr-24{margin-right:96px}.sl-mb-24{margin-bottom:96px}.sl-ml-24{margin-left:96px}.sl-mt-28{margin-top:112px}.sl-mr-28{margin-right:112px}.sl-mb-28{margin-bottom:112px}.sl-ml-28{margin-left:112px}.sl-mt-32{margin-top:128px}.sl-mr-32{margin-right:128px}.sl-mb-32{margin-bottom:128px}.sl-ml-32{margin-left:128px}.sl-mt-36{margin-top:144px}.sl-mr-36{margin-right:144px}.sl-mb-36{margin-bottom:144px}.sl-ml-36{margin-left:144px}.sl-mt-40{margin-top:160px}.sl-mr-40{margin-right:160px}.sl-mb-40{margin-bottom:160px}.sl-ml-40{margin-left:160px}.sl-mt-44{margin-top:176px}.sl-mr-44{margin-right:176px}.sl-mb-44{margin-bottom:176px}.sl-ml-44{margin-left:176px}.sl-mt-48{margin-top:192px}.sl-mr-48{margin-right:192px}.sl-mb-48{margin-bottom:192px}.sl-ml-48{margin-left:192px}.sl-mt-52{margin-top:208px}.sl-mr-52{margin-right:208px}.sl-mb-52{margin-bottom:208px}.sl-ml-52{margin-left:208px}.sl-mt-56{margin-top:224px}.sl-mr-56{margin-right:224px}.sl-mb-56{margin-bottom:224px}.sl-ml-56{margin-left:224px}.sl-mt-60{margin-top:240px}.sl-mr-60{margin-right:240px}.sl-mb-60{margin-bottom:240px}.sl-ml-60{margin-left:240px}.sl-mt-64{margin-top:256px}.sl-mr-64{margin-right:256px}.sl-mb-64{margin-bottom:256px}.sl-ml-64{margin-left:256px}.sl-mt-72{margin-top:288px}.sl-mr-72{margin-right:288px}.sl-mb-72{margin-bottom:288px}.sl-ml-72{margin-left:288px}.sl-mt-80{margin-top:320px}.sl-mr-80{margin-right:320px}.sl-mb-80{margin-bottom:320px}.sl-ml-80{margin-left:320px}.sl-mt-96{margin-top:384px}.sl-mr-96{margin-right:384px}.sl-mb-96{margin-bottom:384px}.sl-ml-96{margin-left:384px}.sl-mt-auto{margin-top:auto}.sl-mr-auto{margin-right:auto}.sl-mb-auto{margin-bottom:auto}.sl-ml-auto{margin-left:auto}.sl-mt-px{margin-top:1px}.sl-mr-px{margin-right:1px}.sl-mb-px{margin-bottom:1px}.sl-ml-px{margin-left:1px}.sl-mt-0\.5{margin-top:2px}.sl-mr-0\.5{margin-right:2px}.sl-mb-0\.5{margin-bottom:2px}.sl-ml-0\.5{margin-left:2px}.sl-mt-1\.5{margin-top:6px}.sl-mr-1\.5{margin-right:6px}.sl-mb-1\.5{margin-bottom:6px}.sl-ml-1\.5{margin-left:6px}.sl-mt-2\.5{margin-top:10px}.sl-mr-2\.5{margin-right:10px}.sl-mb-2\.5{margin-bottom:10px}.sl-ml-2\.5{margin-left:10px}.sl-mt-3\.5{margin-top:14px}.sl-mr-3\.5{margin-right:14px}.sl-mb-3\.5{margin-bottom:14px}.sl-ml-3\.5{margin-left:14px}.sl-mt-4\.5{margin-top:18px}.sl-mr-4\.5{margin-right:18px}.sl-mb-4\.5{margin-bottom:18px}.sl-ml-4\.5{margin-left:18px}.sl--mt-0{margin-top:0}.sl--mr-0{margin-right:0}.sl--mb-0{margin-bottom:0}.sl--ml-0{margin-left:0}.sl--mt-1{margin-top:-4px}.sl--mr-1{margin-right:-4px}.sl--mb-1{margin-bottom:-4px}.sl--ml-1{margin-left:-4px}.sl--mt-2{margin-top:-8px}.sl--mr-2{margin-right:-8px}.sl--mb-2{margin-bottom:-8px}.sl--ml-2{margin-left:-8px}.sl--mt-3{margin-top:-12px}.sl--mr-3{margin-right:-12px}.sl--mb-3{margin-bottom:-12px}.sl--ml-3{margin-left:-12px}.sl--mt-4{margin-top:-16px}.sl--mr-4{margin-right:-16px}.sl--mb-4{margin-bottom:-16px}.sl--ml-4{margin-left:-16px}.sl--mt-5{margin-top:-20px}.sl--mr-5{margin-right:-20px}.sl--mb-5{margin-bottom:-20px}.sl--ml-5{margin-left:-20px}.sl--mt-6{margin-top:-24px}.sl--mr-6{margin-right:-24px}.sl--mb-6{margin-bottom:-24px}.sl--ml-6{margin-left:-24px}.sl--mt-7{margin-top:-28px}.sl--mr-7{margin-right:-28px}.sl--mb-7{margin-bottom:-28px}.sl--ml-7{margin-left:-28px}.sl--mt-8{margin-top:-32px}.sl--mr-8{margin-right:-32px}.sl--mb-8{margin-bottom:-32px}.sl--ml-8{margin-left:-32px}.sl--mt-9{margin-top:-36px}.sl--mr-9{margin-right:-36px}.sl--mb-9{margin-bottom:-36px}.sl--ml-9{margin-left:-36px}.sl--mt-10{margin-top:-40px}.sl--mr-10{margin-right:-40px}.sl--mb-10{margin-bottom:-40px}.sl--ml-10{margin-left:-40px}.sl--mt-11{margin-top:-44px}.sl--mr-11{margin-right:-44px}.sl--mb-11{margin-bottom:-44px}.sl--ml-11{margin-left:-44px}.sl--mt-12{margin-top:-48px}.sl--mr-12{margin-right:-48px}.sl--mb-12{margin-bottom:-48px}.sl--ml-12{margin-left:-48px}.sl--mt-14{margin-top:-56px}.sl--mr-14{margin-right:-56px}.sl--mb-14{margin-bottom:-56px}.sl--ml-14{margin-left:-56px}.sl--mt-16{margin-top:-64px}.sl--mr-16{margin-right:-64px}.sl--mb-16{margin-bottom:-64px}.sl--ml-16{margin-left:-64px}.sl--mt-20{margin-top:-80px}.sl--mr-20{margin-right:-80px}.sl--mb-20{margin-bottom:-80px}.sl--ml-20{margin-left:-80px}.sl--mt-24{margin-top:-96px}.sl--mr-24{margin-right:-96px}.sl--mb-24{margin-bottom:-96px}.sl--ml-24{margin-left:-96px}.sl--mt-28{margin-top:-112px}.sl--mr-28{margin-right:-112px}.sl--mb-28{margin-bottom:-112px}.sl--ml-28{margin-left:-112px}.sl--mt-32{margin-top:-128px}.sl--mr-32{margin-right:-128px}.sl--mb-32{margin-bottom:-128px}.sl--ml-32{margin-left:-128px}.sl--mt-36{margin-top:-144px}.sl--mr-36{margin-right:-144px}.sl--mb-36{margin-bottom:-144px}.sl--ml-36{margin-left:-144px}.sl--mt-40{margin-top:-160px}.sl--mr-40{margin-right:-160px}.sl--mb-40{margin-bottom:-160px}.sl--ml-40{margin-left:-160px}.sl--mt-44{margin-top:-176px}.sl--mr-44{margin-right:-176px}.sl--mb-44{margin-bottom:-176px}.sl--ml-44{margin-left:-176px}.sl--mt-48{margin-top:-192px}.sl--mr-48{margin-right:-192px}.sl--mb-48{margin-bottom:-192px}.sl--ml-48{margin-left:-192px}.sl--mt-52{margin-top:-208px}.sl--mr-52{margin-right:-208px}.sl--mb-52{margin-bottom:-208px}.sl--ml-52{margin-left:-208px}.sl--mt-56{margin-top:-224px}.sl--mr-56{margin-right:-224px}.sl--mb-56{margin-bottom:-224px}.sl--ml-56{margin-left:-224px}.sl--mt-60{margin-top:-240px}.sl--mr-60{margin-right:-240px}.sl--mb-60{margin-bottom:-240px}.sl--ml-60{margin-left:-240px}.sl--mt-64{margin-top:-256px}.sl--mr-64{margin-right:-256px}.sl--mb-64{margin-bottom:-256px}.sl--ml-64{margin-left:-256px}.sl--mt-72{margin-top:-288px}.sl--mr-72{margin-right:-288px}.sl--mb-72{margin-bottom:-288px}.sl--ml-72{margin-left:-288px}.sl--mt-80{margin-top:-320px}.sl--mr-80{margin-right:-320px}.sl--mb-80{margin-bottom:-320px}.sl--ml-80{margin-left:-320px}.sl--mt-96{margin-top:-384px}.sl--mr-96{margin-right:-384px}.sl--mb-96{margin-bottom:-384px}.sl--ml-96{margin-left:-384px}.sl--mt-px{margin-top:-1px}.sl--mr-px{margin-right:-1px}.sl--mb-px{margin-bottom:-1px}.sl--ml-px{margin-left:-1px}.sl--mt-0\.5{margin-top:-2px}.sl--mr-0\.5{margin-right:-2px}.sl--mb-0\.5{margin-bottom:-2px}.sl--ml-0\.5{margin-left:-2px}.sl--mt-1\.5{margin-top:-6px}.sl--mr-1\.5{margin-right:-6px}.sl--mb-1\.5{margin-bottom:-6px}.sl--ml-1\.5{margin-left:-6px}.sl--mt-2\.5{margin-top:-10px}.sl--mr-2\.5{margin-right:-10px}.sl--mb-2\.5{margin-bottom:-10px}.sl--ml-2\.5{margin-left:-10px}.sl--mt-3\.5{margin-top:-14px}.sl--mr-3\.5{margin-right:-14px}.sl--mb-3\.5{margin-bottom:-14px}.sl--ml-3\.5{margin-left:-14px}.sl--mt-4\.5{margin-top:-18px}.sl--mr-4\.5{margin-right:-18px}.sl--mb-4\.5{margin-bottom:-18px}.sl--ml-4\.5{margin-left:-18px}.sl-max-h-full{max-height:100%}.sl-max-h-screen{max-height:100vh}.sl-max-w-none{max-width:none}.sl-max-w-full{max-width:100%}.sl-max-w-min{max-width:-moz-min-content;max-width:min-content}.sl-max-w-max{max-width:-moz-max-content;max-width:max-content}.sl-max-w-prose{max-width:65ch}.sl-min-h-full{min-height:100%}.sl-min-h-screen{min-height:100vh}.sl-min-w-full{min-width:100%}.sl-min-w-min{min-width:-moz-min-content;min-width:min-content}.sl-min-w-max{min-width:-moz-max-content;min-width:max-content}.sl-object-contain{object-fit:contain}.sl-object-cover{object-fit:cover}.sl-object-fill{object-fit:fill}.sl-object-none{object-fit:none}.sl-object-scale-down{object-fit:scale-down}.sl-object-bottom{object-position:bottom}.sl-object-center{object-position:center}.sl-object-left{object-position:left}.sl-object-left-bottom{object-position:left bottom}.sl-object-left-top{object-position:left top}.sl-object-right{object-position:right}.sl-object-right-bottom{object-position:right bottom}.sl-object-right-top{object-position:right top}.sl-object-top{object-position:top}.sl-opacity-0{opacity:0}.sl-opacity-5{opacity:.05}.sl-opacity-10{opacity:.1}.sl-opacity-20{opacity:.2}.sl-opacity-30{opacity:.3}.sl-opacity-40{opacity:.4}.sl-opacity-50{opacity:.5}.sl-opacity-60{opacity:.6}.sl-opacity-70{opacity:.7}.sl-opacity-90{opacity:.9}.sl-opacity-100{opacity:1}.hover\:sl-opacity-0:hover{opacity:0}.hover\:sl-opacity-5:hover{opacity:.05}.hover\:sl-opacity-10:hover{opacity:.1}.hover\:sl-opacity-20:hover{opacity:.2}.hover\:sl-opacity-30:hover{opacity:.3}.hover\:sl-opacity-40:hover{opacity:.4}.hover\:sl-opacity-50:hover{opacity:.5}.hover\:sl-opacity-60:hover{opacity:.6}.hover\:sl-opacity-70:hover{opacity:.7}.hover\:sl-opacity-90:hover{opacity:.9}.hover\:sl-opacity-100:hover{opacity:1}.focus\:sl-opacity-0:focus{opacity:0}.focus\:sl-opacity-5:focus{opacity:.05}.focus\:sl-opacity-10:focus{opacity:.1}.focus\:sl-opacity-20:focus{opacity:.2}.focus\:sl-opacity-30:focus{opacity:.3}.focus\:sl-opacity-40:focus{opacity:.4}.focus\:sl-opacity-50:focus{opacity:.5}.focus\:sl-opacity-60:focus{opacity:.6}.focus\:sl-opacity-70:focus{opacity:.7}.focus\:sl-opacity-90:focus{opacity:.9}.focus\:sl-opacity-100:focus{opacity:1}.active\:sl-opacity-0:active{opacity:0}.active\:sl-opacity-5:active{opacity:.05}.active\:sl-opacity-10:active{opacity:.1}.active\:sl-opacity-20:active{opacity:.2}.active\:sl-opacity-30:active{opacity:.3}.active\:sl-opacity-40:active{opacity:.4}.active\:sl-opacity-50:active{opacity:.5}.active\:sl-opacity-60:active{opacity:.6}.active\:sl-opacity-70:active{opacity:.7}.active\:sl-opacity-90:active{opacity:.9}.active\:sl-opacity-100:active{opacity:1}.disabled\:sl-opacity-0:disabled{opacity:0}.disabled\:sl-opacity-5:disabled{opacity:.05}.disabled\:sl-opacity-10:disabled{opacity:.1}.disabled\:sl-opacity-20:disabled{opacity:.2}.disabled\:sl-opacity-30:disabled{opacity:.3}.disabled\:sl-opacity-40:disabled{opacity:.4}.disabled\:sl-opacity-50:disabled{opacity:.5}.disabled\:sl-opacity-60:disabled{opacity:.6}.disabled\:sl-opacity-70:disabled{opacity:.7}.disabled\:sl-opacity-90:disabled{opacity:.9}.disabled\:sl-opacity-100:disabled{opacity:1}.sl-outline-none{outline:2px solid transparent;outline-offset:2px}.sl-overflow-auto{overflow:auto}.sl-overflow-hidden{overflow:hidden}.sl-overflow-visible{overflow:visible}.sl-overflow-scroll{overflow:scroll}.sl-overflow-x-auto{overflow-x:auto}.sl-overflow-y-auto{overflow-y:auto}.sl-overflow-x-hidden{overflow-x:hidden}.sl-overflow-y-hidden{overflow-y:hidden}.sl-overflow-x-visible{overflow-x:visible}.sl-overflow-y-visible{overflow-y:visible}.sl-overflow-x-scroll{overflow-x:scroll}.sl-overflow-y-scroll{overflow-y:scroll}.sl-overscroll-auto{overscroll-behavior:auto}.sl-overscroll-contain{overscroll-behavior:contain}.sl-overscroll-none{overscroll-behavior:none}.sl-overscroll-y-auto{overscroll-behavior-y:auto}.sl-overscroll-y-contain{overscroll-behavior-y:contain}.sl-overscroll-y-none{overscroll-behavior-y:none}.sl-overscroll-x-auto{overscroll-behavior-x:auto}.sl-overscroll-x-contain{overscroll-behavior-x:contain}.sl-overscroll-x-none{overscroll-behavior-x:none}.sl-p-0{padding:0}.sl-p-1{padding:4px}.sl-p-2{padding:8px}.sl-p-3{padding:12px}.sl-p-4{padding:16px}.sl-p-5{padding:20px}.sl-p-6{padding:24px}.sl-p-7{padding:28px}.sl-p-8{padding:32px}.sl-p-9{padding:36px}.sl-p-10{padding:40px}.sl-p-11{padding:44px}.sl-p-12{padding:48px}.sl-p-14{padding:56px}.sl-p-16{padding:64px}.sl-p-20{padding:80px}.sl-p-24{padding:96px}.sl-p-28{padding:112px}.sl-p-32{padding:128px}.sl-p-36{padding:144px}.sl-p-40{padding:160px}.sl-p-44{padding:176px}.sl-p-48{padding:192px}.sl-p-52{padding:208px}.sl-p-56{padding:224px}.sl-p-60{padding:240px}.sl-p-64{padding:256px}.sl-p-72{padding:288px}.sl-p-80{padding:320px}.sl-p-96{padding:384px}.sl-p-px{padding:1px}.sl-p-0\.5{padding:2px}.sl-p-1\.5{padding:6px}.sl-p-2\.5{padding:10px}.sl-p-3\.5{padding:14px}.sl-p-4\.5{padding:18px}.sl-py-0{padding-bottom:0;padding-top:0}.sl-px-0{padding-left:0;padding-right:0}.sl-py-1{padding-bottom:4px;padding-top:4px}.sl-px-1{padding-left:4px;padding-right:4px}.sl-py-2{padding-bottom:8px;padding-top:8px}.sl-px-2{padding-left:8px;padding-right:8px}.sl-py-3{padding-bottom:12px;padding-top:12px}.sl-px-3{padding-left:12px;padding-right:12px}.sl-py-4{padding-bottom:16px;padding-top:16px}.sl-px-4{padding-left:16px;padding-right:16px}.sl-py-5{padding-bottom:20px;padding-top:20px}.sl-px-5{padding-left:20px;padding-right:20px}.sl-py-6{padding-bottom:24px;padding-top:24px}.sl-px-6{padding-left:24px;padding-right:24px}.sl-py-7{padding-bottom:28px;padding-top:28px}.sl-px-7{padding-left:28px;padding-right:28px}.sl-py-8{padding-bottom:32px;padding-top:32px}.sl-px-8{padding-left:32px;padding-right:32px}.sl-py-9{padding-bottom:36px;padding-top:36px}.sl-px-9{padding-left:36px;padding-right:36px}.sl-py-10{padding-bottom:40px;padding-top:40px}.sl-px-10{padding-left:40px;padding-right:40px}.sl-py-11{padding-bottom:44px;padding-top:44px}.sl-px-11{padding-left:44px;padding-right:44px}.sl-py-12{padding-bottom:48px;padding-top:48px}.sl-px-12{padding-left:48px;padding-right:48px}.sl-py-14{padding-bottom:56px;padding-top:56px}.sl-px-14{padding-left:56px;padding-right:56px}.sl-py-16{padding-bottom:64px;padding-top:64px}.sl-px-16{padding-left:64px;padding-right:64px}.sl-py-20{padding-bottom:80px;padding-top:80px}.sl-px-20{padding-left:80px;padding-right:80px}.sl-py-24{padding-bottom:96px;padding-top:96px}.sl-px-24{padding-left:96px;padding-right:96px}.sl-py-28{padding-bottom:112px;padding-top:112px}.sl-px-28{padding-left:112px;padding-right:112px}.sl-py-32{padding-bottom:128px;padding-top:128px}.sl-px-32{padding-left:128px;padding-right:128px}.sl-py-36{padding-bottom:144px;padding-top:144px}.sl-px-36{padding-left:144px;padding-right:144px}.sl-py-40{padding-bottom:160px;padding-top:160px}.sl-px-40{padding-left:160px;padding-right:160px}.sl-py-44{padding-bottom:176px;padding-top:176px}.sl-px-44{padding-left:176px;padding-right:176px}.sl-py-48{padding-bottom:192px;padding-top:192px}.sl-px-48{padding-left:192px;padding-right:192px}.sl-py-52{padding-bottom:208px;padding-top:208px}.sl-px-52{padding-left:208px;padding-right:208px}.sl-py-56{padding-bottom:224px;padding-top:224px}.sl-px-56{padding-left:224px;padding-right:224px}.sl-py-60{padding-bottom:240px;padding-top:240px}.sl-px-60{padding-left:240px;padding-right:240px}.sl-py-64{padding-bottom:256px;padding-top:256px}.sl-px-64{padding-left:256px;padding-right:256px}.sl-py-72{padding-bottom:288px;padding-top:288px}.sl-px-72{padding-left:288px;padding-right:288px}.sl-py-80{padding-bottom:320px;padding-top:320px}.sl-px-80{padding-left:320px;padding-right:320px}.sl-py-96{padding-bottom:384px;padding-top:384px}.sl-px-96{padding-left:384px;padding-right:384px}.sl-py-px{padding-bottom:1px;padding-top:1px}.sl-px-px{padding-left:1px;padding-right:1px}.sl-py-0\.5{padding-bottom:2px;padding-top:2px}.sl-px-0\.5{padding-left:2px;padding-right:2px}.sl-py-1\.5{padding-bottom:6px;padding-top:6px}.sl-px-1\.5{padding-left:6px;padding-right:6px}.sl-py-2\.5{padding-bottom:10px;padding-top:10px}.sl-px-2\.5{padding-left:10px;padding-right:10px}.sl-py-3\.5{padding-bottom:14px;padding-top:14px}.sl-px-3\.5{padding-left:14px;padding-right:14px}.sl-py-4\.5{padding-bottom:18px;padding-top:18px}.sl-px-4\.5{padding-left:18px;padding-right:18px}.sl-pt-0{padding-top:0}.sl-pr-0{padding-right:0}.sl-pb-0{padding-bottom:0}.sl-pl-0{padding-left:0}.sl-pt-1{padding-top:4px}.sl-pr-1{padding-right:4px}.sl-pb-1{padding-bottom:4px}.sl-pl-1{padding-left:4px}.sl-pt-2{padding-top:8px}.sl-pr-2{padding-right:8px}.sl-pb-2{padding-bottom:8px}.sl-pl-2{padding-left:8px}.sl-pt-3{padding-top:12px}.sl-pr-3{padding-right:12px}.sl-pb-3{padding-bottom:12px}.sl-pl-3{padding-left:12px}.sl-pt-4{padding-top:16px}.sl-pr-4{padding-right:16px}.sl-pb-4{padding-bottom:16px}.sl-pl-4{padding-left:16px}.sl-pt-5{padding-top:20px}.sl-pr-5{padding-right:20px}.sl-pb-5{padding-bottom:20px}.sl-pl-5{padding-left:20px}.sl-pt-6{padding-top:24px}.sl-pr-6{padding-right:24px}.sl-pb-6{padding-bottom:24px}.sl-pl-6{padding-left:24px}.sl-pt-7{padding-top:28px}.sl-pr-7{padding-right:28px}.sl-pb-7{padding-bottom:28px}.sl-pl-7{padding-left:28px}.sl-pt-8{padding-top:32px}.sl-pr-8{padding-right:32px}.sl-pb-8{padding-bottom:32px}.sl-pl-8{padding-left:32px}.sl-pt-9{padding-top:36px}.sl-pr-9{padding-right:36px}.sl-pb-9{padding-bottom:36px}.sl-pl-9{padding-left:36px}.sl-pt-10{padding-top:40px}.sl-pr-10{padding-right:40px}.sl-pb-10{padding-bottom:40px}.sl-pl-10{padding-left:40px}.sl-pt-11{padding-top:44px}.sl-pr-11{padding-right:44px}.sl-pb-11{padding-bottom:44px}.sl-pl-11{padding-left:44px}.sl-pt-12{padding-top:48px}.sl-pr-12{padding-right:48px}.sl-pb-12{padding-bottom:48px}.sl-pl-12{padding-left:48px}.sl-pt-14{padding-top:56px}.sl-pr-14{padding-right:56px}.sl-pb-14{padding-bottom:56px}.sl-pl-14{padding-left:56px}.sl-pt-16{padding-top:64px}.sl-pr-16{padding-right:64px}.sl-pb-16{padding-bottom:64px}.sl-pl-16{padding-left:64px}.sl-pt-20{padding-top:80px}.sl-pr-20{padding-right:80px}.sl-pb-20{padding-bottom:80px}.sl-pl-20{padding-left:80px}.sl-pt-24{padding-top:96px}.sl-pr-24{padding-right:96px}.sl-pb-24{padding-bottom:96px}.sl-pl-24{padding-left:96px}.sl-pt-28{padding-top:112px}.sl-pr-28{padding-right:112px}.sl-pb-28{padding-bottom:112px}.sl-pl-28{padding-left:112px}.sl-pt-32{padding-top:128px}.sl-pr-32{padding-right:128px}.sl-pb-32{padding-bottom:128px}.sl-pl-32{padding-left:128px}.sl-pt-36{padding-top:144px}.sl-pr-36{padding-right:144px}.sl-pb-36{padding-bottom:144px}.sl-pl-36{padding-left:144px}.sl-pt-40{padding-top:160px}.sl-pr-40{padding-right:160px}.sl-pb-40{padding-bottom:160px}.sl-pl-40{padding-left:160px}.sl-pt-44{padding-top:176px}.sl-pr-44{padding-right:176px}.sl-pb-44{padding-bottom:176px}.sl-pl-44{padding-left:176px}.sl-pt-48{padding-top:192px}.sl-pr-48{padding-right:192px}.sl-pb-48{padding-bottom:192px}.sl-pl-48{padding-left:192px}.sl-pt-52{padding-top:208px}.sl-pr-52{padding-right:208px}.sl-pb-52{padding-bottom:208px}.sl-pl-52{padding-left:208px}.sl-pt-56{padding-top:224px}.sl-pr-56{padding-right:224px}.sl-pb-56{padding-bottom:224px}.sl-pl-56{padding-left:224px}.sl-pt-60{padding-top:240px}.sl-pr-60{padding-right:240px}.sl-pb-60{padding-bottom:240px}.sl-pl-60{padding-left:240px}.sl-pt-64{padding-top:256px}.sl-pr-64{padding-right:256px}.sl-pb-64{padding-bottom:256px}.sl-pl-64{padding-left:256px}.sl-pt-72{padding-top:288px}.sl-pr-72{padding-right:288px}.sl-pb-72{padding-bottom:288px}.sl-pl-72{padding-left:288px}.sl-pt-80{padding-top:320px}.sl-pr-80{padding-right:320px}.sl-pb-80{padding-bottom:320px}.sl-pl-80{padding-left:320px}.sl-pt-96{padding-top:384px}.sl-pr-96{padding-right:384px}.sl-pb-96{padding-bottom:384px}.sl-pl-96{padding-left:384px}.sl-pt-px{padding-top:1px}.sl-pr-px{padding-right:1px}.sl-pb-px{padding-bottom:1px}.sl-pl-px{padding-left:1px}.sl-pt-0\.5{padding-top:2px}.sl-pr-0\.5{padding-right:2px}.sl-pb-0\.5{padding-bottom:2px}.sl-pl-0\.5{padding-left:2px}.sl-pt-1\.5{padding-top:6px}.sl-pr-1\.5{padding-right:6px}.sl-pb-1\.5{padding-bottom:6px}.sl-pl-1\.5{padding-left:6px}.sl-pt-2\.5{padding-top:10px}.sl-pr-2\.5{padding-right:10px}.sl-pb-2\.5{padding-bottom:10px}.sl-pl-2\.5{padding-left:10px}.sl-pt-3\.5{padding-top:14px}.sl-pr-3\.5{padding-right:14px}.sl-pb-3\.5{padding-bottom:14px}.sl-pl-3\.5{padding-left:14px}.sl-pt-4\.5{padding-top:18px}.sl-pr-4\.5{padding-right:18px}.sl-pb-4\.5{padding-bottom:18px}.sl-pl-4\.5{padding-left:18px}.sl-placeholder::-ms-input-placeholder{color:var(--color-text-light)}.sl-placeholder::placeholder{color:var(--color-text-light)}.sl-placeholder-primary::-ms-input-placeholder{color:#3898ff}.sl-placeholder-primary::placeholder{color:#3898ff}.sl-placeholder-success::-ms-input-placeholder{color:#0ea06f}.sl-placeholder-success::placeholder{color:#0ea06f}.sl-placeholder-warning::-ms-input-placeholder{color:#f3602b}.sl-placeholder-warning::placeholder{color:#f3602b}.sl-placeholder-danger::-ms-input-placeholder{color:#f05151}.sl-placeholder-danger::placeholder{color:#f05151}.sl-pointer-events-none{pointer-events:none}.sl-pointer-events-auto{pointer-events:auto}.sl-static{position:static}.sl-fixed{position:fixed}.sl-absolute{position:absolute}.sl-relative{position:relative}.sl-sticky{position:-webkit-sticky;position:sticky}.sl-resize-none{resize:none}.sl-resize-y{resize:vertical}.sl-resize-x{resize:horizontal}.sl-resize{resize:both}.sl-ring-primary{--tw-ring-color:hsla(var(--primary-h),80%,61%,var(--tw-ring-opacity))}.sl-ring-success{--tw-ring-color:hsla(var(--success-h),84%,34%,var(--tw-ring-opacity))}.sl-ring-warning{--tw-ring-color:hsla(var(--warning-h),89%,56%,var(--tw-ring-opacity))}.sl-ring-danger{--tw-ring-color:hsla(var(--danger-h),84%,63%,var(--tw-ring-opacity))}.focus\:sl-ring-primary:focus{--tw-ring-color:hsla(var(--primary-h),80%,61%,var(--tw-ring-opacity))}.focus\:sl-ring-success:focus{--tw-ring-color:hsla(var(--success-h),84%,34%,var(--tw-ring-opacity))}.focus\:sl-ring-warning:focus{--tw-ring-color:hsla(var(--warning-h),89%,56%,var(--tw-ring-opacity))}.focus\:sl-ring-danger:focus{--tw-ring-color:hsla(var(--danger-h),84%,63%,var(--tw-ring-opacity))}.sl-ring-opacity-0{--tw-ring-opacity:0}.sl-ring-opacity-5{--tw-ring-opacity:0.05}.sl-ring-opacity-10{--tw-ring-opacity:0.1}.sl-ring-opacity-20{--tw-ring-opacity:0.2}.sl-ring-opacity-30{--tw-ring-opacity:0.3}.sl-ring-opacity-40{--tw-ring-opacity:0.4}.sl-ring-opacity-50{--tw-ring-opacity:0.5}.sl-ring-opacity-60{--tw-ring-opacity:0.6}.sl-ring-opacity-70{--tw-ring-opacity:0.7}.sl-ring-opacity-90{--tw-ring-opacity:0.9}.sl-ring-opacity-100{--tw-ring-opacity:1}.focus\:sl-ring-opacity-0:focus{--tw-ring-opacity:0}.focus\:sl-ring-opacity-5:focus{--tw-ring-opacity:0.05}.focus\:sl-ring-opacity-10:focus{--tw-ring-opacity:0.1}.focus\:sl-ring-opacity-20:focus{--tw-ring-opacity:0.2}.focus\:sl-ring-opacity-30:focus{--tw-ring-opacity:0.3}.focus\:sl-ring-opacity-40:focus{--tw-ring-opacity:0.4}.focus\:sl-ring-opacity-50:focus{--tw-ring-opacity:0.5}.focus\:sl-ring-opacity-60:focus{--tw-ring-opacity:0.6}.focus\:sl-ring-opacity-70:focus{--tw-ring-opacity:0.7}.focus\:sl-ring-opacity-90:focus{--tw-ring-opacity:0.9}.focus\:sl-ring-opacity-100:focus{--tw-ring-opacity:1}*{--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000}.sl-ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.sl-ring-inset{--tw-ring-inset:inset}.focus\:sl-ring:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:sl-ring-inset:focus{--tw-ring-inset:inset}.sl-stroke-transparent{stroke:transparent}.sl-stroke-current{stroke:currentColor}.sl-stroke-lighten-100{stroke:var(--color-lighten-100)}.sl-stroke-darken-100{stroke:var(--color-darken-100)}.sl-stroke-primary{stroke:var(--color-primary)}.sl-stroke-primary-tint{stroke:var(--color-primary-tint)}.sl-stroke-primary-light{stroke:var(--color-primary-light)}.sl-stroke-primary-dark{stroke:var(--color-primary-dark)}.sl-stroke-primary-darker{stroke:var(--color-primary-darker)}.sl-stroke-success{stroke:var(--color-success)}.sl-stroke-success-tint{stroke:var(--color-success-tint)}.sl-stroke-success-light{stroke:var(--color-success-light)}.sl-stroke-success-dark{stroke:var(--color-success-dark)}.sl-stroke-success-darker{stroke:var(--color-success-darker)}.sl-stroke-warning{stroke:var(--color-warning)}.sl-stroke-warning-tint{stroke:var(--color-warning-tint)}.sl-stroke-warning-light{stroke:var(--color-warning-light)}.sl-stroke-warning-dark{stroke:var(--color-warning-dark)}.sl-stroke-warning-darker{stroke:var(--color-warning-darker)}.sl-stroke-danger{stroke:var(--color-danger)}.sl-stroke-danger-tint{stroke:var(--color-danger-tint)}.sl-stroke-danger-light{stroke:var(--color-danger-light)}.sl-stroke-danger-dark{stroke:var(--color-danger-dark)}.sl-stroke-danger-darker{stroke:var(--color-danger-darker)}.sl-stroke-code{stroke:var(--color-code)}.sl-stroke-on-code{stroke:var(--color-on-code)}.sl-stroke-on-primary{stroke:var(--color-on-primary)}.sl-stroke-on-success{stroke:var(--color-on-success)}.sl-stroke-on-warning{stroke:var(--color-on-warning)}.sl-stroke-on-danger{stroke:var(--color-on-danger)}.sl-stroke-text{stroke:var(--color-text)}.sl-table-auto{table-layout:auto}.sl-table-fixed{table-layout:fixed}.sl-text-left{text-align:left}.sl-text-center{text-align:center}.sl-text-right{text-align:right}.sl-text-justify{text-align:justify}.sl-text-transparent{color:transparent}.sl-text-current{color:currentColor}.sl-text-lighten-100{color:var(--color-lighten-100)}.sl-text-darken-100{color:var(--color-darken-100)}.sl-text-primary{color:var(--color-primary)}.sl-text-primary-tint{color:var(--color-primary-tint)}.sl-text-primary-light{color:var(--color-primary-light)}.sl-text-primary-dark{color:var(--color-primary-dark)}.sl-text-primary-darker{color:var(--color-primary-darker)}.sl-text-success{color:var(--color-success)}.sl-text-success-tint{color:var(--color-success-tint)}.sl-text-success-light{color:var(--color-success-light)}.sl-text-success-dark{color:var(--color-success-dark)}.sl-text-success-darker{color:var(--color-success-darker)}.sl-text-warning{color:var(--color-warning)}.sl-text-warning-tint{color:var(--color-warning-tint)}.sl-text-warning-light{color:var(--color-warning-light)}.sl-text-warning-dark{color:var(--color-warning-dark)}.sl-text-warning-darker{color:var(--color-warning-darker)}.sl-text-danger{color:var(--color-danger)}.sl-text-danger-tint{color:var(--color-danger-tint)}.sl-text-danger-light{color:var(--color-danger-light)}.sl-text-danger-dark{color:var(--color-danger-dark)}.sl-text-danger-darker{color:var(--color-danger-darker)}.sl-text-code{color:var(--color-code)}.sl-text-on-code{color:var(--color-on-code)}.sl-text-on-primary{color:var(--color-on-primary)}.sl-text-on-success{color:var(--color-on-success)}.sl-text-on-warning{color:var(--color-on-warning)}.sl-text-on-danger{color:var(--color-on-danger)}.sl-text-body{color:var(--color-text)}.sl-text-muted{color:var(--color-text-muted)}.sl-text-light{color:var(--color-text-light)}.sl-text-heading{color:var(--color-text-heading)}.sl-text-paragraph{color:var(--color-text-paragraph)}.sl-text-canvas-50{color:var(--color-canvas-50)}.sl-text-canvas-100{color:var(--color-canvas-100)}.sl-text-canvas-200{color:var(--color-canvas-200)}.sl-text-canvas-300{color:var(--color-canvas-300)}.sl-text-canvas-pure{color:var(--color-canvas-pure)}.sl-text-canvas{color:var(--color-canvas)}.sl-text-canvas-dialog{color:var(--color-canvas-dialog)}.sl-text-link{color:var(--color-link)}.sl-text-link-dark{color:var(--color-link-dark)}.hover\:sl-text-transparent:hover{color:transparent}.hover\:sl-text-current:hover{color:currentColor}.hover\:sl-text-lighten-100:hover{color:var(--color-lighten-100)}.hover\:sl-text-darken-100:hover{color:var(--color-darken-100)}.hover\:sl-text-primary:hover{color:var(--color-primary)}.hover\:sl-text-primary-tint:hover{color:var(--color-primary-tint)}.hover\:sl-text-primary-light:hover{color:var(--color-primary-light)}.hover\:sl-text-primary-dark:hover{color:var(--color-primary-dark)}.hover\:sl-text-primary-darker:hover{color:var(--color-primary-darker)}.hover\:sl-text-success:hover{color:var(--color-success)}.hover\:sl-text-success-tint:hover{color:var(--color-success-tint)}.hover\:sl-text-success-light:hover{color:var(--color-success-light)}.hover\:sl-text-success-dark:hover{color:var(--color-success-dark)}.hover\:sl-text-success-darker:hover{color:var(--color-success-darker)}.hover\:sl-text-warning:hover{color:var(--color-warning)}.hover\:sl-text-warning-tint:hover{color:var(--color-warning-tint)}.hover\:sl-text-warning-light:hover{color:var(--color-warning-light)}.hover\:sl-text-warning-dark:hover{color:var(--color-warning-dark)}.hover\:sl-text-warning-darker:hover{color:var(--color-warning-darker)}.hover\:sl-text-danger:hover{color:var(--color-danger)}.hover\:sl-text-danger-tint:hover{color:var(--color-danger-tint)}.hover\:sl-text-danger-light:hover{color:var(--color-danger-light)}.hover\:sl-text-danger-dark:hover{color:var(--color-danger-dark)}.hover\:sl-text-danger-darker:hover{color:var(--color-danger-darker)}.hover\:sl-text-code:hover{color:var(--color-code)}.hover\:sl-text-on-code:hover{color:var(--color-on-code)}.hover\:sl-text-on-primary:hover{color:var(--color-on-primary)}.hover\:sl-text-on-success:hover{color:var(--color-on-success)}.hover\:sl-text-on-warning:hover{color:var(--color-on-warning)}.hover\:sl-text-on-danger:hover{color:var(--color-on-danger)}.hover\:sl-text-body:hover{color:var(--color-text)}.hover\:sl-text-muted:hover{color:var(--color-text-muted)}.hover\:sl-text-light:hover{color:var(--color-text-light)}.hover\:sl-text-heading:hover{color:var(--color-text-heading)}.hover\:sl-text-paragraph:hover{color:var(--color-text-paragraph)}.hover\:sl-text-canvas-50:hover{color:var(--color-canvas-50)}.hover\:sl-text-canvas-100:hover{color:var(--color-canvas-100)}.hover\:sl-text-canvas-200:hover{color:var(--color-canvas-200)}.hover\:sl-text-canvas-300:hover{color:var(--color-canvas-300)}.hover\:sl-text-canvas-pure:hover{color:var(--color-canvas-pure)}.hover\:sl-text-canvas:hover{color:var(--color-canvas)}.hover\:sl-text-canvas-dialog:hover{color:var(--color-canvas-dialog)}.hover\:sl-text-link:hover{color:var(--color-link)}.hover\:sl-text-link-dark:hover{color:var(--color-link-dark)}.focus\:sl-text-transparent:focus{color:transparent}.focus\:sl-text-current:focus{color:currentColor}.focus\:sl-text-lighten-100:focus{color:var(--color-lighten-100)}.focus\:sl-text-darken-100:focus{color:var(--color-darken-100)}.focus\:sl-text-primary:focus{color:var(--color-primary)}.focus\:sl-text-primary-tint:focus{color:var(--color-primary-tint)}.focus\:sl-text-primary-light:focus{color:var(--color-primary-light)}.focus\:sl-text-primary-dark:focus{color:var(--color-primary-dark)}.focus\:sl-text-primary-darker:focus{color:var(--color-primary-darker)}.focus\:sl-text-success:focus{color:var(--color-success)}.focus\:sl-text-success-tint:focus{color:var(--color-success-tint)}.focus\:sl-text-success-light:focus{color:var(--color-success-light)}.focus\:sl-text-success-dark:focus{color:var(--color-success-dark)}.focus\:sl-text-success-darker:focus{color:var(--color-success-darker)}.focus\:sl-text-warning:focus{color:var(--color-warning)}.focus\:sl-text-warning-tint:focus{color:var(--color-warning-tint)}.focus\:sl-text-warning-light:focus{color:var(--color-warning-light)}.focus\:sl-text-warning-dark:focus{color:var(--color-warning-dark)}.focus\:sl-text-warning-darker:focus{color:var(--color-warning-darker)}.focus\:sl-text-danger:focus{color:var(--color-danger)}.focus\:sl-text-danger-tint:focus{color:var(--color-danger-tint)}.focus\:sl-text-danger-light:focus{color:var(--color-danger-light)}.focus\:sl-text-danger-dark:focus{color:var(--color-danger-dark)}.focus\:sl-text-danger-darker:focus{color:var(--color-danger-darker)}.focus\:sl-text-code:focus{color:var(--color-code)}.focus\:sl-text-on-code:focus{color:var(--color-on-code)}.focus\:sl-text-on-primary:focus{color:var(--color-on-primary)}.focus\:sl-text-on-success:focus{color:var(--color-on-success)}.focus\:sl-text-on-warning:focus{color:var(--color-on-warning)}.focus\:sl-text-on-danger:focus{color:var(--color-on-danger)}.focus\:sl-text-body:focus{color:var(--color-text)}.focus\:sl-text-muted:focus{color:var(--color-text-muted)}.focus\:sl-text-light:focus{color:var(--color-text-light)}.focus\:sl-text-heading:focus{color:var(--color-text-heading)}.focus\:sl-text-paragraph:focus{color:var(--color-text-paragraph)}.focus\:sl-text-canvas-50:focus{color:var(--color-canvas-50)}.focus\:sl-text-canvas-100:focus{color:var(--color-canvas-100)}.focus\:sl-text-canvas-200:focus{color:var(--color-canvas-200)}.focus\:sl-text-canvas-300:focus{color:var(--color-canvas-300)}.focus\:sl-text-canvas-pure:focus{color:var(--color-canvas-pure)}.focus\:sl-text-canvas:focus{color:var(--color-canvas)}.focus\:sl-text-canvas-dialog:focus{color:var(--color-canvas-dialog)}.focus\:sl-text-link:focus{color:var(--color-link)}.focus\:sl-text-link-dark:focus{color:var(--color-link-dark)}.disabled\:sl-text-transparent:disabled{color:transparent}.disabled\:sl-text-current:disabled{color:currentColor}.disabled\:sl-text-lighten-100:disabled{color:var(--color-lighten-100)}.disabled\:sl-text-darken-100:disabled{color:var(--color-darken-100)}.disabled\:sl-text-primary:disabled{color:var(--color-primary)}.disabled\:sl-text-primary-tint:disabled{color:var(--color-primary-tint)}.disabled\:sl-text-primary-light:disabled{color:var(--color-primary-light)}.disabled\:sl-text-primary-dark:disabled{color:var(--color-primary-dark)}.disabled\:sl-text-primary-darker:disabled{color:var(--color-primary-darker)}.disabled\:sl-text-success:disabled{color:var(--color-success)}.disabled\:sl-text-success-tint:disabled{color:var(--color-success-tint)}.disabled\:sl-text-success-light:disabled{color:var(--color-success-light)}.disabled\:sl-text-success-dark:disabled{color:var(--color-success-dark)}.disabled\:sl-text-success-darker:disabled{color:var(--color-success-darker)}.disabled\:sl-text-warning:disabled{color:var(--color-warning)}.disabled\:sl-text-warning-tint:disabled{color:var(--color-warning-tint)}.disabled\:sl-text-warning-light:disabled{color:var(--color-warning-light)}.disabled\:sl-text-warning-dark:disabled{color:var(--color-warning-dark)}.disabled\:sl-text-warning-darker:disabled{color:var(--color-warning-darker)}.disabled\:sl-text-danger:disabled{color:var(--color-danger)}.disabled\:sl-text-danger-tint:disabled{color:var(--color-danger-tint)}.disabled\:sl-text-danger-light:disabled{color:var(--color-danger-light)}.disabled\:sl-text-danger-dark:disabled{color:var(--color-danger-dark)}.disabled\:sl-text-danger-darker:disabled{color:var(--color-danger-darker)}.disabled\:sl-text-code:disabled{color:var(--color-code)}.disabled\:sl-text-on-code:disabled{color:var(--color-on-code)}.disabled\:sl-text-on-primary:disabled{color:var(--color-on-primary)}.disabled\:sl-text-on-success:disabled{color:var(--color-on-success)}.disabled\:sl-text-on-warning:disabled{color:var(--color-on-warning)}.disabled\:sl-text-on-danger:disabled{color:var(--color-on-danger)}.disabled\:sl-text-body:disabled{color:var(--color-text)}.disabled\:sl-text-muted:disabled{color:var(--color-text-muted)}.disabled\:sl-text-light:disabled{color:var(--color-text-light)}.disabled\:sl-text-heading:disabled{color:var(--color-text-heading)}.disabled\:sl-text-paragraph:disabled{color:var(--color-text-paragraph)}.disabled\:sl-text-canvas-50:disabled{color:var(--color-canvas-50)}.disabled\:sl-text-canvas-100:disabled{color:var(--color-canvas-100)}.disabled\:sl-text-canvas-200:disabled{color:var(--color-canvas-200)}.disabled\:sl-text-canvas-300:disabled{color:var(--color-canvas-300)}.disabled\:sl-text-canvas-pure:disabled{color:var(--color-canvas-pure)}.disabled\:sl-text-canvas:disabled{color:var(--color-canvas)}.disabled\:sl-text-canvas-dialog:disabled{color:var(--color-canvas-dialog)}.disabled\:sl-text-link:disabled{color:var(--color-link)}.disabled\:sl-text-link-dark:disabled{color:var(--color-link-dark)}.sl-underline{text-decoration:underline}.sl-line-through{text-decoration:line-through}.sl-no-underline{text-decoration:none}.sl-truncate{overflow:hidden;white-space:nowrap}.sl-overflow-ellipsis,.sl-truncate{text-overflow:ellipsis}.sl-overflow-clip{text-overflow:clip}.sl-uppercase{text-transform:uppercase}.sl-lowercase{text-transform:lowercase}.sl-capitalize{text-transform:capitalize}.sl-normal-case{text-transform:none}.sl-transform{transform:translateX(var(--tw-translate-x)) translateY(var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-transform,.sl-transform-gpu{--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1}.sl-transform-gpu{transform:translate3d(var(--tw-translate-x),var(--tw-translate-y),0) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.sl-transform-none{transform:none}.sl-delay-75{transition-delay:75ms}.sl-delay-150{transition-delay:.15s}.sl-delay-300{transition-delay:.3s}.sl-delay-500{transition-delay:.5s}.sl-delay-1000{transition-delay:1s}.sl-duration-75{transition-duration:75ms}.sl-duration-150{transition-duration:.15s}.sl-duration-300{transition-duration:.3s}.sl-duration-500{transition-duration:.5s}.sl-duration-1000{transition-duration:1s}.sl-transition{transition-duration:.15s;transition-property:background-color,border-color,color,fill,stroke,opacity,box-shadow,transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.sl-translate-x-0{--tw-translate-x:0px}.sl-translate-x-1{--tw-translate-x:4px}.sl-translate-x-2{--tw-translate-x:8px}.sl-translate-x-3{--tw-translate-x:12px}.sl-translate-x-4{--tw-translate-x:16px}.sl-translate-x-5{--tw-translate-x:20px}.sl-translate-x-6{--tw-translate-x:24px}.sl-translate-x-7{--tw-translate-x:28px}.sl-translate-x-8{--tw-translate-x:32px}.sl-translate-x-9{--tw-translate-x:36px}.sl-translate-x-10{--tw-translate-x:40px}.sl-translate-x-11{--tw-translate-x:44px}.sl-translate-x-12{--tw-translate-x:48px}.sl-translate-x-14{--tw-translate-x:56px}.sl-translate-x-16{--tw-translate-x:64px}.sl-translate-x-20{--tw-translate-x:80px}.sl-translate-x-24{--tw-translate-x:96px}.sl-translate-x-28{--tw-translate-x:112px}.sl-translate-x-32{--tw-translate-x:128px}.sl-translate-x-36{--tw-translate-x:144px}.sl-translate-x-40{--tw-translate-x:160px}.sl-translate-x-44{--tw-translate-x:176px}.sl-translate-x-48{--tw-translate-x:192px}.sl-translate-x-52{--tw-translate-x:208px}.sl-translate-x-56{--tw-translate-x:224px}.sl-translate-x-60{--tw-translate-x:240px}.sl-translate-x-64{--tw-translate-x:256px}.sl-translate-x-72{--tw-translate-x:288px}.sl-translate-x-80{--tw-translate-x:320px}.sl-translate-x-96{--tw-translate-x:384px}.sl-translate-x-px{--tw-translate-x:1px}.sl-translate-x-0\.5{--tw-translate-x:2px}.sl-translate-x-1\.5{--tw-translate-x:6px}.sl-translate-x-2\.5{--tw-translate-x:10px}.sl-translate-x-3\.5{--tw-translate-x:14px}.sl-translate-x-4\.5{--tw-translate-x:18px}.sl--translate-x-0{--tw-translate-x:0px}.sl--translate-x-1{--tw-translate-x:-4px}.sl--translate-x-2{--tw-translate-x:-8px}.sl--translate-x-3{--tw-translate-x:-12px}.sl--translate-x-4{--tw-translate-x:-16px}.sl--translate-x-5{--tw-translate-x:-20px}.sl--translate-x-6{--tw-translate-x:-24px}.sl--translate-x-7{--tw-translate-x:-28px}.sl--translate-x-8{--tw-translate-x:-32px}.sl--translate-x-9{--tw-translate-x:-36px}.sl--translate-x-10{--tw-translate-x:-40px}.sl--translate-x-11{--tw-translate-x:-44px}.sl--translate-x-12{--tw-translate-x:-48px}.sl--translate-x-14{--tw-translate-x:-56px}.sl--translate-x-16{--tw-translate-x:-64px}.sl--translate-x-20{--tw-translate-x:-80px}.sl--translate-x-24{--tw-translate-x:-96px}.sl--translate-x-28{--tw-translate-x:-112px}.sl--translate-x-32{--tw-translate-x:-128px}.sl--translate-x-36{--tw-translate-x:-144px}.sl--translate-x-40{--tw-translate-x:-160px}.sl--translate-x-44{--tw-translate-x:-176px}.sl--translate-x-48{--tw-translate-x:-192px}.sl--translate-x-52{--tw-translate-x:-208px}.sl--translate-x-56{--tw-translate-x:-224px}.sl--translate-x-60{--tw-translate-x:-240px}.sl--translate-x-64{--tw-translate-x:-256px}.sl--translate-x-72{--tw-translate-x:-288px}.sl--translate-x-80{--tw-translate-x:-320px}.sl--translate-x-96{--tw-translate-x:-384px}.sl--translate-x-px{--tw-translate-x:-1px}.sl--translate-x-0\.5{--tw-translate-x:-2px}.sl--translate-x-1\.5{--tw-translate-x:-6px}.sl--translate-x-2\.5{--tw-translate-x:-10px}.sl--translate-x-3\.5{--tw-translate-x:-14px}.sl--translate-x-4\.5{--tw-translate-x:-18px}.sl-translate-y-0{--tw-translate-y:0px}.sl-translate-y-1{--tw-translate-y:4px}.sl-translate-y-2{--tw-translate-y:8px}.sl-translate-y-3{--tw-translate-y:12px}.sl-translate-y-4{--tw-translate-y:16px}.sl-translate-y-5{--tw-translate-y:20px}.sl-translate-y-6{--tw-translate-y:24px}.sl-translate-y-7{--tw-translate-y:28px}.sl-translate-y-8{--tw-translate-y:32px}.sl-translate-y-9{--tw-translate-y:36px}.sl-translate-y-10{--tw-translate-y:40px}.sl-translate-y-11{--tw-translate-y:44px}.sl-translate-y-12{--tw-translate-y:48px}.sl-translate-y-14{--tw-translate-y:56px}.sl-translate-y-16{--tw-translate-y:64px}.sl-translate-y-20{--tw-translate-y:80px}.sl-translate-y-24{--tw-translate-y:96px}.sl-translate-y-28{--tw-translate-y:112px}.sl-translate-y-32{--tw-translate-y:128px}.sl-translate-y-36{--tw-translate-y:144px}.sl-translate-y-40{--tw-translate-y:160px}.sl-translate-y-44{--tw-translate-y:176px}.sl-translate-y-48{--tw-translate-y:192px}.sl-translate-y-52{--tw-translate-y:208px}.sl-translate-y-56{--tw-translate-y:224px}.sl-translate-y-60{--tw-translate-y:240px}.sl-translate-y-64{--tw-translate-y:256px}.sl-translate-y-72{--tw-translate-y:288px}.sl-translate-y-80{--tw-translate-y:320px}.sl-translate-y-96{--tw-translate-y:384px}.sl-translate-y-px{--tw-translate-y:1px}.sl-translate-y-0\.5{--tw-translate-y:2px}.sl-translate-y-1\.5{--tw-translate-y:6px}.sl-translate-y-2\.5{--tw-translate-y:10px}.sl-translate-y-3\.5{--tw-translate-y:14px}.sl-translate-y-4\.5{--tw-translate-y:18px}.sl--translate-y-0{--tw-translate-y:0px}.sl--translate-y-1{--tw-translate-y:-4px}.sl--translate-y-2{--tw-translate-y:-8px}.sl--translate-y-3{--tw-translate-y:-12px}.sl--translate-y-4{--tw-translate-y:-16px}.sl--translate-y-5{--tw-translate-y:-20px}.sl--translate-y-6{--tw-translate-y:-24px}.sl--translate-y-7{--tw-translate-y:-28px}.sl--translate-y-8{--tw-translate-y:-32px}.sl--translate-y-9{--tw-translate-y:-36px}.sl--translate-y-10{--tw-translate-y:-40px}.sl--translate-y-11{--tw-translate-y:-44px}.sl--translate-y-12{--tw-translate-y:-48px}.sl--translate-y-14{--tw-translate-y:-56px}.sl--translate-y-16{--tw-translate-y:-64px}.sl--translate-y-20{--tw-translate-y:-80px}.sl--translate-y-24{--tw-translate-y:-96px}.sl--translate-y-28{--tw-translate-y:-112px}.sl--translate-y-32{--tw-translate-y:-128px}.sl--translate-y-36{--tw-translate-y:-144px}.sl--translate-y-40{--tw-translate-y:-160px}.sl--translate-y-44{--tw-translate-y:-176px}.sl--translate-y-48{--tw-translate-y:-192px}.sl--translate-y-52{--tw-translate-y:-208px}.sl--translate-y-56{--tw-translate-y:-224px}.sl--translate-y-60{--tw-translate-y:-240px}.sl--translate-y-64{--tw-translate-y:-256px}.sl--translate-y-72{--tw-translate-y:-288px}.sl--translate-y-80{--tw-translate-y:-320px}.sl--translate-y-96{--tw-translate-y:-384px}.sl--translate-y-px{--tw-translate-y:-1px}.sl--translate-y-0\.5{--tw-translate-y:-2px}.sl--translate-y-1\.5{--tw-translate-y:-6px}.sl--translate-y-2\.5{--tw-translate-y:-10px}.sl--translate-y-3\.5{--tw-translate-y:-14px}.sl--translate-y-4\.5{--tw-translate-y:-18px}.hover\:sl-translate-x-0:hover{--tw-translate-x:0px}.hover\:sl-translate-x-1:hover{--tw-translate-x:4px}.hover\:sl-translate-x-2:hover{--tw-translate-x:8px}.hover\:sl-translate-x-3:hover{--tw-translate-x:12px}.hover\:sl-translate-x-4:hover{--tw-translate-x:16px}.hover\:sl-translate-x-5:hover{--tw-translate-x:20px}.hover\:sl-translate-x-6:hover{--tw-translate-x:24px}.hover\:sl-translate-x-7:hover{--tw-translate-x:28px}.hover\:sl-translate-x-8:hover{--tw-translate-x:32px}.hover\:sl-translate-x-9:hover{--tw-translate-x:36px}.hover\:sl-translate-x-10:hover{--tw-translate-x:40px}.hover\:sl-translate-x-11:hover{--tw-translate-x:44px}.hover\:sl-translate-x-12:hover{--tw-translate-x:48px}.hover\:sl-translate-x-14:hover{--tw-translate-x:56px}.hover\:sl-translate-x-16:hover{--tw-translate-x:64px}.hover\:sl-translate-x-20:hover{--tw-translate-x:80px}.hover\:sl-translate-x-24:hover{--tw-translate-x:96px}.hover\:sl-translate-x-28:hover{--tw-translate-x:112px}.hover\:sl-translate-x-32:hover{--tw-translate-x:128px}.hover\:sl-translate-x-36:hover{--tw-translate-x:144px}.hover\:sl-translate-x-40:hover{--tw-translate-x:160px}.hover\:sl-translate-x-44:hover{--tw-translate-x:176px}.hover\:sl-translate-x-48:hover{--tw-translate-x:192px}.hover\:sl-translate-x-52:hover{--tw-translate-x:208px}.hover\:sl-translate-x-56:hover{--tw-translate-x:224px}.hover\:sl-translate-x-60:hover{--tw-translate-x:240px}.hover\:sl-translate-x-64:hover{--tw-translate-x:256px}.hover\:sl-translate-x-72:hover{--tw-translate-x:288px}.hover\:sl-translate-x-80:hover{--tw-translate-x:320px}.hover\:sl-translate-x-96:hover{--tw-translate-x:384px}.hover\:sl-translate-x-px:hover{--tw-translate-x:1px}.hover\:sl-translate-x-0\.5:hover{--tw-translate-x:2px}.hover\:sl-translate-x-1\.5:hover{--tw-translate-x:6px}.hover\:sl-translate-x-2\.5:hover{--tw-translate-x:10px}.hover\:sl-translate-x-3\.5:hover{--tw-translate-x:14px}.hover\:sl-translate-x-4\.5:hover{--tw-translate-x:18px}.hover\:sl--translate-x-0:hover{--tw-translate-x:0px}.hover\:sl--translate-x-1:hover{--tw-translate-x:-4px}.hover\:sl--translate-x-2:hover{--tw-translate-x:-8px}.hover\:sl--translate-x-3:hover{--tw-translate-x:-12px}.hover\:sl--translate-x-4:hover{--tw-translate-x:-16px}.hover\:sl--translate-x-5:hover{--tw-translate-x:-20px}.hover\:sl--translate-x-6:hover{--tw-translate-x:-24px}.hover\:sl--translate-x-7:hover{--tw-translate-x:-28px}.hover\:sl--translate-x-8:hover{--tw-translate-x:-32px}.hover\:sl--translate-x-9:hover{--tw-translate-x:-36px}.hover\:sl--translate-x-10:hover{--tw-translate-x:-40px}.hover\:sl--translate-x-11:hover{--tw-translate-x:-44px}.hover\:sl--translate-x-12:hover{--tw-translate-x:-48px}.hover\:sl--translate-x-14:hover{--tw-translate-x:-56px}.hover\:sl--translate-x-16:hover{--tw-translate-x:-64px}.hover\:sl--translate-x-20:hover{--tw-translate-x:-80px}.hover\:sl--translate-x-24:hover{--tw-translate-x:-96px}.hover\:sl--translate-x-28:hover{--tw-translate-x:-112px}.hover\:sl--translate-x-32:hover{--tw-translate-x:-128px}.hover\:sl--translate-x-36:hover{--tw-translate-x:-144px}.hover\:sl--translate-x-40:hover{--tw-translate-x:-160px}.hover\:sl--translate-x-44:hover{--tw-translate-x:-176px}.hover\:sl--translate-x-48:hover{--tw-translate-x:-192px}.hover\:sl--translate-x-52:hover{--tw-translate-x:-208px}.hover\:sl--translate-x-56:hover{--tw-translate-x:-224px}.hover\:sl--translate-x-60:hover{--tw-translate-x:-240px}.hover\:sl--translate-x-64:hover{--tw-translate-x:-256px}.hover\:sl--translate-x-72:hover{--tw-translate-x:-288px}.hover\:sl--translate-x-80:hover{--tw-translate-x:-320px}.hover\:sl--translate-x-96:hover{--tw-translate-x:-384px}.hover\:sl--translate-x-px:hover{--tw-translate-x:-1px}.hover\:sl--translate-x-0\.5:hover{--tw-translate-x:-2px}.hover\:sl--translate-x-1\.5:hover{--tw-translate-x:-6px}.hover\:sl--translate-x-2\.5:hover{--tw-translate-x:-10px}.hover\:sl--translate-x-3\.5:hover{--tw-translate-x:-14px}.hover\:sl--translate-x-4\.5:hover{--tw-translate-x:-18px}.hover\:sl-translate-y-0:hover{--tw-translate-y:0px}.hover\:sl-translate-y-1:hover{--tw-translate-y:4px}.hover\:sl-translate-y-2:hover{--tw-translate-y:8px}.hover\:sl-translate-y-3:hover{--tw-translate-y:12px}.hover\:sl-translate-y-4:hover{--tw-translate-y:16px}.hover\:sl-translate-y-5:hover{--tw-translate-y:20px}.hover\:sl-translate-y-6:hover{--tw-translate-y:24px}.hover\:sl-translate-y-7:hover{--tw-translate-y:28px}.hover\:sl-translate-y-8:hover{--tw-translate-y:32px}.hover\:sl-translate-y-9:hover{--tw-translate-y:36px}.hover\:sl-translate-y-10:hover{--tw-translate-y:40px}.hover\:sl-translate-y-11:hover{--tw-translate-y:44px}.hover\:sl-translate-y-12:hover{--tw-translate-y:48px}.hover\:sl-translate-y-14:hover{--tw-translate-y:56px}.hover\:sl-translate-y-16:hover{--tw-translate-y:64px}.hover\:sl-translate-y-20:hover{--tw-translate-y:80px}.hover\:sl-translate-y-24:hover{--tw-translate-y:96px}.hover\:sl-translate-y-28:hover{--tw-translate-y:112px}.hover\:sl-translate-y-32:hover{--tw-translate-y:128px}.hover\:sl-translate-y-36:hover{--tw-translate-y:144px}.hover\:sl-translate-y-40:hover{--tw-translate-y:160px}.hover\:sl-translate-y-44:hover{--tw-translate-y:176px}.hover\:sl-translate-y-48:hover{--tw-translate-y:192px}.hover\:sl-translate-y-52:hover{--tw-translate-y:208px}.hover\:sl-translate-y-56:hover{--tw-translate-y:224px}.hover\:sl-translate-y-60:hover{--tw-translate-y:240px}.hover\:sl-translate-y-64:hover{--tw-translate-y:256px}.hover\:sl-translate-y-72:hover{--tw-translate-y:288px}.hover\:sl-translate-y-80:hover{--tw-translate-y:320px}.hover\:sl-translate-y-96:hover{--tw-translate-y:384px}.hover\:sl-translate-y-px:hover{--tw-translate-y:1px}.hover\:sl-translate-y-0\.5:hover{--tw-translate-y:2px}.hover\:sl-translate-y-1\.5:hover{--tw-translate-y:6px}.hover\:sl-translate-y-2\.5:hover{--tw-translate-y:10px}.hover\:sl-translate-y-3\.5:hover{--tw-translate-y:14px}.hover\:sl-translate-y-4\.5:hover{--tw-translate-y:18px}.hover\:sl--translate-y-0:hover{--tw-translate-y:0px}.hover\:sl--translate-y-1:hover{--tw-translate-y:-4px}.hover\:sl--translate-y-2:hover{--tw-translate-y:-8px}.hover\:sl--translate-y-3:hover{--tw-translate-y:-12px}.hover\:sl--translate-y-4:hover{--tw-translate-y:-16px}.hover\:sl--translate-y-5:hover{--tw-translate-y:-20px}.hover\:sl--translate-y-6:hover{--tw-translate-y:-24px}.hover\:sl--translate-y-7:hover{--tw-translate-y:-28px}.hover\:sl--translate-y-8:hover{--tw-translate-y:-32px}.hover\:sl--translate-y-9:hover{--tw-translate-y:-36px}.hover\:sl--translate-y-10:hover{--tw-translate-y:-40px}.hover\:sl--translate-y-11:hover{--tw-translate-y:-44px}.hover\:sl--translate-y-12:hover{--tw-translate-y:-48px}.hover\:sl--translate-y-14:hover{--tw-translate-y:-56px}.hover\:sl--translate-y-16:hover{--tw-translate-y:-64px}.hover\:sl--translate-y-20:hover{--tw-translate-y:-80px}.hover\:sl--translate-y-24:hover{--tw-translate-y:-96px}.hover\:sl--translate-y-28:hover{--tw-translate-y:-112px}.hover\:sl--translate-y-32:hover{--tw-translate-y:-128px}.hover\:sl--translate-y-36:hover{--tw-translate-y:-144px}.hover\:sl--translate-y-40:hover{--tw-translate-y:-160px}.hover\:sl--translate-y-44:hover{--tw-translate-y:-176px}.hover\:sl--translate-y-48:hover{--tw-translate-y:-192px}.hover\:sl--translate-y-52:hover{--tw-translate-y:-208px}.hover\:sl--translate-y-56:hover{--tw-translate-y:-224px}.hover\:sl--translate-y-60:hover{--tw-translate-y:-240px}.hover\:sl--translate-y-64:hover{--tw-translate-y:-256px}.hover\:sl--translate-y-72:hover{--tw-translate-y:-288px}.hover\:sl--translate-y-80:hover{--tw-translate-y:-320px}.hover\:sl--translate-y-96:hover{--tw-translate-y:-384px}.hover\:sl--translate-y-px:hover{--tw-translate-y:-1px}.hover\:sl--translate-y-0\.5:hover{--tw-translate-y:-2px}.hover\:sl--translate-y-1\.5:hover{--tw-translate-y:-6px}.hover\:sl--translate-y-2\.5:hover{--tw-translate-y:-10px}.hover\:sl--translate-y-3\.5:hover{--tw-translate-y:-14px}.hover\:sl--translate-y-4\.5:hover{--tw-translate-y:-18px}.sl-select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sl-select-text{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.sl-select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.sl-select-auto{-webkit-user-select:auto;-moz-user-select:auto;-ms-user-select:auto;user-select:auto}.sl-align-baseline{vertical-align:baseline}.sl-align-top{vertical-align:top}.sl-align-middle{vertical-align:middle}.sl-align-bottom{vertical-align:bottom}.sl-align-text-top{vertical-align:text-top}.sl-align-text-bottom{vertical-align:text-bottom}.sl-visible{visibility:visible}.sl-invisible{visibility:hidden}.sl-group:hover .group-hover\:sl-visible{visibility:visible}.sl-group:hover .group-hover\:sl-invisible{visibility:hidden}.sl-group:focus .group-focus\:sl-visible{visibility:visible}.sl-group:focus .group-focus\:sl-invisible{visibility:hidden}.sl-whitespace-normal{white-space:normal}.sl-whitespace-nowrap{white-space:nowrap}.sl-whitespace-pre{white-space:pre}.sl-whitespace-pre-line{white-space:pre-line}.sl-whitespace-pre-wrap{white-space:pre-wrap}.sl-w-0{width:0}.sl-w-1{width:4px}.sl-w-2{width:8px}.sl-w-3{width:12px}.sl-w-4{width:16px}.sl-w-5{width:20px}.sl-w-6{width:24px}.sl-w-7{width:28px}.sl-w-8{width:32px}.sl-w-9{width:36px}.sl-w-10{width:40px}.sl-w-11{width:44px}.sl-w-12{width:48px}.sl-w-14{width:56px}.sl-w-16{width:64px}.sl-w-20{width:80px}.sl-w-24{width:96px}.sl-w-28{width:112px}.sl-w-32{width:128px}.sl-w-36{width:144px}.sl-w-40{width:160px}.sl-w-44{width:176px}.sl-w-48{width:192px}.sl-w-52{width:208px}.sl-w-56{width:224px}.sl-w-60{width:240px}.sl-w-64{width:256px}.sl-w-72{width:288px}.sl-w-80{width:320px}.sl-w-96{width:384px}.sl-w-auto{width:auto}.sl-w-px{width:1px}.sl-w-0\.5{width:2px}.sl-w-1\.5{width:6px}.sl-w-2\.5{width:10px}.sl-w-3\.5{width:14px}.sl-w-4\.5{width:18px}.sl-w-xs{width:20px}.sl-w-sm{width:24px}.sl-w-md{width:32px}.sl-w-lg{width:36px}.sl-w-xl{width:44px}.sl-w-2xl{width:52px}.sl-w-3xl{width:60px}.sl-w-1\/2{width:50%}.sl-w-1\/3{width:33.333333%}.sl-w-2\/3{width:66.666667%}.sl-w-1\/4{width:25%}.sl-w-2\/4{width:50%}.sl-w-3\/4{width:75%}.sl-w-1\/5{width:20%}.sl-w-2\/5{width:40%}.sl-w-3\/5{width:60%}.sl-w-4\/5{width:80%}.sl-w-1\/6{width:16.666667%}.sl-w-2\/6{width:33.333333%}.sl-w-3\/6{width:50%}.sl-w-4\/6{width:66.666667%}.sl-w-5\/6{width:83.333333%}.sl-w-full{width:100%}.sl-w-screen{width:100vw}.sl-w-min{width:-moz-min-content;width:min-content}.sl-w-max{width:-moz-max-content;width:max-content}.sl-break-normal{overflow-wrap:normal;word-break:normal}.sl-break-words{overflow-wrap:break-word}.sl-break-all{word-break:break-all}.sl-z-0{z-index:0}.sl-z-10{z-index:10}.sl-z-20{z-index:20}.sl-z-30{z-index:30}.sl-z-40{z-index:40}.sl-z-50{z-index:50}.sl-z-auto{z-index:auto}.focus\:sl-z-0:focus{z-index:0}.focus\:sl-z-10:focus{z-index:10}.focus\:sl-z-20:focus{z-index:20}.focus\:sl-z-30:focus{z-index:30}.focus\:sl-z-40:focus{z-index:40}.focus\:sl-z-50:focus{z-index:50}.focus\:sl-z-auto:focus{z-index:auto}:root{--font-prose:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-ui:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:"SF Mono",ui-monospace,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-code:var(--font-mono);--fs-paragraph-leading:22px;--fs-paragraph:16px;--fs-code:14px;--fs-paragraph-small:14px;--fs-paragraph-tiny:12px;--lh-paragraph-leading:1.875;--lh-paragraph:1.625;--lh-code:1.5;--lh-paragraph-small:1.625;--lh-paragraph-tiny:1.625;--color-code:var(--color-canvas-tint);--color-on-code:var(--color-text-heading)}.sl-avatar--with-bg:before{background-color:var(--avatar-bg-color);bottom:0;content:" ";left:0;opacity:var(--avatar-bg-opacity);position:absolute;right:0;top:0}.sl-aspect-ratio:before{content:"";display:block;height:0;padding-bottom:calc(1/var(--ratio)*100%)}.sl-aspect-ratio>:not(style){align-items:center;bottom:0;display:flex;height:100%;justify-content:center;left:0;overflow:hidden;position:absolute;right:0;top:0;width:100%}.sl-aspect-ratio>img,.sl-aspect-ratio>video{object-fit:cover}.sl-badge{align-items:center;border-width:1px;display:inline-flex;outline:2px solid transparent;outline-offset:2px}.sl-badge a{color:var(--color-text-muted)}.sl-badge a:hover{color:var(--color-text);cursor:pointer}.sl-button{align-items:center;display:inline-flex;line-height:0;outline:2px solid transparent;outline-offset:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-button-group>.sl-button:not(:first-child):not(:last-child){border-radius:0;border-right:0}.sl-button-group>.sl-button:first-child:not(:last-child){border-bottom-right-radius:0;border-right:0;border-top-right-radius:0}.sl-button-group>.sl-button:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.sl-image--inverted{filter:invert(1) hue-rotate(180deg);mix-blend-mode:screen}.Link,.Link>code{color:var(--color-link)}.Link:hover,.Link:hover>code{color:var(--color-link-dark)}.sl-link-heading:hover .sl-link-heading__icon{opacity:1}.sl-link-heading__icon{opacity:0}.sl-menu{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.sl-menu--pointer-interactions .sl-menu-item:not(.sl-menu-item--disabled):hover{background-color:var(--color-primary);color:var(--color-on-primary)}.sl-menu--pointer-interactions .sl-menu-item:not(.sl-menu-item--disabled):hover .sl-menu-item__description{color:var(--color-on-primary)}.sl-menu--pointer-interactions .sl-menu-item:not(.sl-menu-item--disabled):hover .sl-menu-item__icon{color:var(--color-on-primary)!important}.sl-menu-item__link-icon,.sl-menu-item__meta-text{opacity:.6}.sl-menu-item--disabled .sl-menu-item__title-wrapper{cursor:not-allowed;opacity:.5}.sl-menu-item--disabled .sl-menu-item__meta-text{cursor:not-allowed;opacity:.4}.sl-menu-item--focused{background-color:var(--color-primary);color:var(--color-on-primary)}.sl-menu-item--focused .sl-menu-item__link-icon,.sl-menu-item--focused .sl-menu-item__meta-text{opacity:1}.sl-menu-item--focused .sl-menu-item__description{color:var(--color-on-primary)}.sl-menu-item--focused .sl-menu-item__icon{color:var(--color-on-primary)!important}.sl-menu-item--submenu-active{background-color:var(--color-primary-tint)}.sl-menu-item__title-wrapper{max-width:250px}.sl-menu-item__description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sl-popover{--tw-blur:var(--tw-empty,/*!*/ /*!*/);--tw-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-invert:var(--tw-empty,/*!*/ /*!*/);--tw-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-sepia:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:drop-shadow(var(--drop-shadow-default1)) drop-shadow(var(--drop-shadow-default2));border-radius:2px;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sl-popover>:not(.sl-popover__tip){border-radius:2px;position:relative;z-index:10}.sl-prose{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--fs-paragraph:1em;--fs-paragraph-small:0.875em;--fs-code:0.875em;font-family:var(--font-prose);font-size:16px;line-height:var(--lh-paragraph)}.sl-prose>:first-child{margin-top:0}.sl-prose>:last-child{margin-bottom:0}.sl-prose h1{font-size:2.25em}.sl-prose>h1{margin-bottom:1.11em;margin-top:0}.sl-prose h2{font-size:1.75em;line-height:1.3333333}.sl-prose>h2{margin-bottom:1em;margin-top:1.428em}.sl-prose h3{font-size:1.25em}.sl-prose>h3{margin-bottom:.8em;margin-top:2em}.sl-prose h4{font-size:1em}.sl-prose>h4{margin-bottom:.5em;margin-top:2em}.sl-prose h2+*,.sl-prose h3+*,.sl-prose h4+*{margin-top:0}.sl-prose strong{font-weight:600}.sl-prose .sl-text-lg{font-size:.875em}.sl-prose p{color:var(--color-text-paragraph);font-size:var(--fs-paragraph);margin-bottom:1em;margin-top:1em}.sl-prose p:first-child{margin-top:0}.sl-prose p:last-child{margin-bottom:0}.sl-prose p>a>img{display:inline}.sl-prose caption a,.sl-prose figcaption a,.sl-prose li a,.sl-prose p a,.sl-prose table a{color:var(--color-link)}.sl-prose caption a:hover,.sl-prose figcaption a:hover,.sl-prose li a:hover,.sl-prose p a:hover,.sl-prose table a:hover{color:var(--color-link-dark)}.sl-prose caption a,.sl-prose figcaption a,.sl-prose li a,.sl-prose p a,.sl-prose table a{--color-link:var(--color-text-primary);--color-link-dark:var(--color-primary-dark)}.sl-prose hr{margin-bottom:1em;margin-top:1em}.sl-prose .sl-live-code{margin:1.25em -4px;table-layout:auto;width:100%}.sl-prose .sl-live-code__inner>pre{margin-bottom:0;margin-top:0}.sl-prose .sl-callout,.sl-prose ol,.sl-prose ul{margin-bottom:1.5em;margin-top:1.5em}.sl-prose ol,.sl-prose ul{line-height:var(--lh-paragraph)}.sl-prose ol li,.sl-prose ul li{padding-left:2em}.sl-prose ol li{position:relative}.sl-prose ol li:before{content:counter(list-item) ". ";font-variant-numeric:tabular-nums}.sl-prose ul:not(.contains-task-list) li{position:relative}.sl-prose ul:not(.contains-task-list) li:before{background-color:var(--color-text);border-radius:50%;content:"";height:.375em;left:.75em;opacity:.7;position:absolute;top:.625em;width:.375em}.sl-prose li{margin-bottom:4px;margin-top:4px;padding-left:1.75em}.sl-prose li p{display:inline;margin-bottom:.75em;margin-top:.75em}.sl-prose li>:first-child{margin-top:0}.sl-prose>ol p+:last-child,.sl-prose>ul p+:last-child{margin-bottom:.75em}.sl-prose ol ol,.sl-prose ol ul,.sl-prose ul ol,.sl-prose ul ul{margin-bottom:2px;margin-top:2px}.sl-prose ul.contains-task-list input{margin-left:-1.875em;margin-right:.625em;position:relative;top:1px}.sl-prose ul.contains-task-list p{margin-top:0}.sl-prose figure{margin-bottom:1.5em;margin-top:1.5em}.sl-prose figure figure,.sl-prose figure img,.sl-prose figure video{margin-bottom:0;margin-top:0}.sl-prose figure>figcaption,.sl-prose figure>figcaption p{color:var(--color-text-muted);font-size:var(--fs-paragraph-small);line-height:var(--lh-paragraph-small);margin-top:8px;padding-left:16px;padding-right:16px;text-align:center}.sl-prose blockquote p{margin-bottom:.5em;margin-top:.5em}.sl-prose table{font-size:var(--fs-paragraph-small);margin-bottom:1.5em;margin-left:-4px;margin-right:-4px;overflow-x:auto;table-layout:auto;width:100%}.sl-prose thead td,.sl-prose thead th{color:var(--color-text-muted);font-size:.857em;font-weight:500;padding:8px 12px;text-transform:uppercase}.sl-prose thead td:first-child,.sl-prose thead th:first-child{padding-left:4px}.sl-prose tbody{border-radius:5px;box-shadow:0 0 0 1px var(--color-border,currentColor)}.sl-prose tbody tr{border-top-width:1px}.sl-prose tbody tr:first-child{border-top:0}.sl-prose tbody tr:nth-child(2n){background-color:var(--color-canvas-tint)}.sl-prose td{margin:.625em .75em;padding:10px 12px;vertical-align:top}.sl-prose td:not([align=center],[align=right]),.sl-prose th:not([align=center],[align=right]){text-align:left}.sl-prose .mermaid{margin-bottom:1.5em;margin-top:1.5em}.sl-prose .mermaid>svg{border-radius:5px;border-width:1px;height:auto!important;padding:1.25em}.sl-prose .sl-code-group .mermaid,.sl-prose .sl-code-group pre{margin-top:0}.sl-svg-focus{filter:drop-shadow(0 0 1px hsla(var(--primary-h),80%,51%,.9))}.sl-radio-group__radio:hover{cursor:pointer}.sl-radio-group__radio--disabled{opacity:.6}.sl-radio-group__radio--disabled:hover{cursor:not-allowed}.sl-stack--horizontal.sl-stack--1>:not(style)~:not(style){margin-left:4px}.sl-stack--horizontal.sl-stack--2>:not(style)~:not(style){margin-left:8px}.sl-stack--horizontal.sl-stack--3>:not(style)~:not(style){margin-left:12px}.sl-stack--horizontal.sl-stack--4>:not(style)~:not(style){margin-left:16px}.sl-stack--horizontal.sl-stack--5>:not(style)~:not(style){margin-left:20px}.sl-stack--horizontal.sl-stack--6>:not(style)~:not(style){margin-left:24px}.sl-stack--horizontal.sl-stack--8>:not(style)~:not(style){margin-left:32px}.sl-stack--horizontal.sl-stack--10>:not(style)~:not(style){margin-left:40px}.sl-stack--horizontal.sl-stack--12>:not(style)~:not(style){margin-left:48px}.sl-stack--horizontal.sl-stack--14>:not(style)~:not(style){margin-left:56px}.sl-stack--horizontal.sl-stack--16>:not(style)~:not(style){margin-left:64px}.sl-stack--horizontal.sl-stack--20>:not(style)~:not(style){margin-left:80px}.sl-stack--horizontal.sl-stack--24>:not(style)~:not(style){margin-left:96px}.sl-stack--horizontal.sl-stack--32>:not(style)~:not(style){margin-left:128px}.sl-stack--vertical.sl-stack--1>:not(style)~:not(style){margin-top:4px}.sl-stack--vertical.sl-stack--2>:not(style)~:not(style){margin-top:8px}.sl-stack--vertical.sl-stack--3>:not(style)~:not(style){margin-top:12px}.sl-stack--vertical.sl-stack--4>:not(style)~:not(style){margin-top:16px}.sl-stack--vertical.sl-stack--5>:not(style)~:not(style){margin-top:20px}.sl-stack--vertical.sl-stack--6>:not(style)~:not(style){margin-top:24px}.sl-stack--vertical.sl-stack--8>:not(style)~:not(style){margin-top:32px}.sl-stack--vertical.sl-stack--10>:not(style)~:not(style){margin-top:40px}.sl-stack--vertical.sl-stack--12>:not(style)~:not(style){margin-top:48px}.sl-stack--vertical.sl-stack--14>:not(style)~:not(style){margin-top:56px}.sl-stack--vertical.sl-stack--16>:not(style)~:not(style){margin-top:64px}.sl-stack--vertical.sl-stack--20>:not(style)~:not(style){margin-top:80px}.sl-stack--vertical.sl-stack--24>:not(style)~:not(style){margin-top:96px}.sl-stack--vertical.sl-stack--32>:not(style)~:not(style){margin-top:128px}.sl-switch .sl-switch__indicator{transition:background-color .1s cubic-bezier(.4,1,.75,.9)}.sl-switch .sl-switch__indicator .sl-switch__icon{visibility:hidden}.sl-switch .sl-switch__indicator:before{background-color:var(--color-canvas);border-radius:50%;content:"";height:calc(100% - 4px);left:0;margin:2px;position:absolute;transition:left .1s cubic-bezier(.4,1,.75,.9);width:calc(50% - 4px)}.sl-switch input:checked:disabled~.sl-switch__indicator{background-color:var(--color-primary-light)}.sl-switch input:checked~.sl-switch__indicator{background-color:var(--color-primary)}.sl-switch input:checked~.sl-switch__indicator .sl-switch__icon{visibility:visible}.sl-switch input:checked~.sl-switch__indicator:before{left:50%}.sl-tooltip{--tw-blur:var(--tw-empty,/*!*/ /*!*/);--tw-brightness:var(--tw-empty,/*!*/ /*!*/);--tw-contrast:var(--tw-empty,/*!*/ /*!*/);--tw-grayscale:var(--tw-empty,/*!*/ /*!*/);--tw-hue-rotate:var(--tw-empty,/*!*/ /*!*/);--tw-invert:var(--tw-empty,/*!*/ /*!*/);--tw-saturate:var(--tw-empty,/*!*/ /*!*/);--tw-sepia:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:var(--tw-empty,/*!*/ /*!*/);--tw-drop-shadow:drop-shadow(var(--drop-shadow-default1)) drop-shadow(var(--drop-shadow-default2));border-radius:2px;filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);font-size:11px;max-width:300px;padding:4px 6px}.sl-tooltip>:not(.sl-tooltip_tip){position:relative;z-index:10}input,textarea{background-color:transparent}.sl-focus-ring{--tw-ring-color:hsla(var(--primary-h),80%,61%,var(--tw-ring-opacity));--tw-ring-opacity:0.5;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);border-radius:2px;box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}:root,[data-theme=light],[data-theme=light] .sl-inverted .sl-inverted,[data-theme=light] .sl-inverted .sl-inverted .sl-inverted .sl-inverted{--text-h:0;--text-s:0%;--text-l:15%;--shadow-sm:0px 0px 1px rgba(67,90,111,.3);--shadow-md:0px 2px 4px -2px rgba(0,0,0,.25),0px 0px 1px rgba(67,90,111,.3);--shadow-lg:0 4px 17px rgba(67,90,111,.2),0 2px 3px rgba(0,0,0,.1),inset 0 0 0 .5px var(--color-canvas-pure),0 0 0 .5px rgba(0,0,0,.2);--shadow-xl:0px 0px 1px rgba(67,90,111,.3),0px 8px 10px -4px rgba(67,90,111,.45);--shadow-2xl:0px 0px 1px rgba(67,90,111,.3),0px 16px 24px -8px rgba(67,90,111,.45);--drop-shadow-default1:0 0 0.5px rgba(0,0,0,.6);--drop-shadow-default2:0 2px 5px rgba(67,90,111,.3);--color-text-heading:hsla(var(--text-h),var(--text-s),max(3,calc(var(--text-l) - 15)),1);--color-text:hsla(var(--text-h),var(--text-s),var(--text-l),1);--color-text-paragraph:hsla(var(--text-h),var(--text-s),var(--text-l),0.9);--color-text-muted:hsla(var(--text-h),var(--text-s),var(--text-l),0.7);--color-text-light:hsla(var(--text-h),var(--text-s),var(--text-l),0.55);--color-text-disabled:hsla(var(--text-h),var(--text-s),var(--text-l),0.3);--canvas-h:218;--canvas-s:40%;--canvas-l:100%;--color-canvas:hsla(var(--canvas-h),var(--canvas-s),var(--canvas-l),1);--color-canvas-dark:#000;--color-canvas-pure:#fff;--color-canvas-tint:rgba(245,247,250,.5);--color-canvas-50:#f5f7fa;--color-canvas-100:#ebeef5;--color-canvas-200:#e0e6f0;--color-canvas-300:#d5ddeb;--color-canvas-400:#cbd5e7;--color-canvas-500:#c0cde2;--color-canvas-dialog:#fff;--color-border-dark:hsla(var(--canvas-h),30%,72%,0.5);--color-border:hsla(var(--canvas-h),32%,78%,0.5);--color-border-light:hsla(var(--canvas-h),24%,84%,0.5);--color-border-input:hsla(var(--canvas-h),24%,72%,0.8);--color-border-button:hsla(var(--canvas-h),24%,20%,0.65);--primary-h:202;--primary-s:100%;--primary-l:55%;--color-text-primary:#0081cc;--color-primary-dark:#1891d8;--color-primary-darker:#126fa5;--color-primary:#19abff;--color-primary-light:#52bfff;--color-primary-tint:rgba(77,190,255,.25);--color-on-primary:#fff;--success-h:156;--success-s:95%;--success-l:37%;--color-text-success:#05c779;--color-success-dark:#138b5b;--color-success-darker:#0f6c47;--color-success:#05b870;--color-success-light:#06db86;--color-success-tint:rgba(81,251,183,.25);--color-on-success:#fff;--warning-h:20;--warning-s:90%;--warning-l:56%;--color-text-warning:#c2470a;--color-warning-dark:#d35d22;--color-warning-darker:#9e461a;--color-warning:#f46d2a;--color-warning-light:#f7925f;--color-warning-tint:rgba(246,139,85,.25);--color-on-warning:#fff;--danger-h:0;--danger-s:84%;--danger-l:63%;--color-text-danger:#bc1010;--color-danger-dark:#d83b3b;--color-danger-darker:#af2323;--color-danger:#f05151;--color-danger-light:#f58e8e;--color-danger-tint:rgba(241,91,91,.25);--color-on-danger:#fff;color:var(--color-text)}:root .sl-inverted,[data-theme=light] .sl-inverted,[data-theme=light] .sl-inverted .sl-inverted .sl-inverted{--text-h:0;--text-s:0%;--text-l:86%;--shadow-sm:0px 0px 1px rgba(11,13,19,.5);--shadow-md:0px 2px 4px -2px rgba(0,0,0,.35),0px 0px 1px rgba(11,13,19,.4);--shadow-lg:0 2px 14px rgba(0,0,0,.55),0 0 0 0.5px hsla(0,0%,100%,.2);--shadow-xl:0px 0px 1px rgba(11,13,19,.4),0px 8px 10px -4px rgba(11,13,19,.55);--shadow-2xl:0px 0px 1px rgba(11,13,19,.4),0px 16px 24px -8px rgba(11,13,19,.55);--drop-shadow-default1:0 0 0.5px hsla(0,0%,100%,.5);--drop-shadow-default2:0 3px 8px rgba(0,0,0,.6);--color-text-heading:hsla(var(--text-h),var(--text-s),max(3,calc(var(--text-l) - 15)),1);--color-text:hsla(var(--text-h),var(--text-s),var(--text-l),1);--color-text-paragraph:hsla(var(--text-h),var(--text-s),var(--text-l),0.9);--color-text-muted:hsla(var(--text-h),var(--text-s),var(--text-l),0.7);--color-text-light:hsla(var(--text-h),var(--text-s),var(--text-l),0.55);--color-text-disabled:hsla(var(--text-h),var(--text-s),var(--text-l),0.3);--canvas-h:218;--canvas-s:32%;--canvas-l:10%;--color-canvas:hsla(var(--canvas-h),var(--canvas-s),var(--canvas-l),1);--color-canvas-dark:#000;--color-canvas-pure:#0c1018;--color-canvas-tint:rgba(60,76,103,.2);--color-canvas-50:#3c4c67;--color-canvas-100:#2d394e;--color-canvas-200:#212a3b;--color-canvas-300:#19212e;--color-canvas-400:#171e2b;--color-canvas-500:#151c28;--color-canvas-dialog:#2d394e;--color-border-dark:hsla(var(--canvas-h),24%,23%,0.5);--color-border:hsla(var(--canvas-h),26%,28%,0.5);--color-border-light:hsla(var(--canvas-h),19%,34%,0.5);--color-border-input:hsla(var(--canvas-h),19%,30%,0.8);--color-border-button:hsla(var(--canvas-h),19%,80%,0.65);--primary-h:202;--primary-s:90%;--primary-l:51%;--color-text-primary:#66c7ff;--color-primary-dark:#1f83bd;--color-primary-darker:#186491;--color-primary:#12a0f3;--color-primary-light:#42b3f5;--color-primary-tint:rgba(85,187,246,.25);--color-on-primary:#fff;--success-h:156;--success-s:95%;--success-l:67%;--color-text-success:#41f1ab;--color-success-dark:#47dca0;--color-success-darker:#24bc7f;--color-success:#62f3b9;--color-success-light:#a0f8d5;--color-success-tint:rgba(89,243,181,.25);--color-on-success:#fff;--warning-h:20;--warning-s:90%;--warning-l:50%;--color-text-warning:#ec7d46;--color-warning-dark:#b55626;--color-warning-darker:#8b421d;--color-warning:#e75d18;--color-warning-light:#ec7d46;--color-warning-tint:rgba(238,142,93,.25);--color-on-warning:#fff;--danger-h:0;--danger-s:84%;--danger-l:43%;--color-text-danger:#e74b4b;--color-danger-dark:#972626;--color-danger-darker:#721d1d;--color-danger:#c11a1a;--color-danger-light:#e22828;--color-danger-tint:rgba(234,98,98,.25);--color-on-danger:#fff;color:var(--color-text)}[data-theme=dark],[data-theme=dark] .sl-inverted .sl-inverted,[data-theme=dark] .sl-inverted .sl-inverted .sl-inverted .sl-inverted{--text-h:0;--text-s:0%;--text-l:85%;--shadow-sm:0px 0px 1px rgba(11,13,19,.5);--shadow-md:0px 2px 4px -2px rgba(0,0,0,.35),0px 0px 1px rgba(11,13,19,.4);--shadow-lg:0 2px 14px rgba(0,0,0,.55),0 0 0 0.5px hsla(0,0%,100%,.2);--shadow-xl:0px 0px 1px rgba(11,13,19,.4),0px 8px 10px -4px rgba(11,13,19,.55);--shadow-2xl:0px 0px 1px rgba(11,13,19,.4),0px 16px 24px -8px rgba(11,13,19,.55);--drop-shadow-default1:0 0 0.5px hsla(0,0%,100%,.5);--drop-shadow-default2:0 3px 8px rgba(0,0,0,.6);--color-text-heading:hsla(var(--text-h),var(--text-s),max(3,calc(var(--text-l) - 15)),1);--color-text:hsla(var(--text-h),var(--text-s),var(--text-l),1);--color-text-paragraph:hsla(var(--text-h),var(--text-s),var(--text-l),0.9);--color-text-muted:hsla(var(--text-h),var(--text-s),var(--text-l),0.7);--color-text-light:hsla(var(--text-h),var(--text-s),var(--text-l),0.55);--color-text-disabled:hsla(var(--text-h),var(--text-s),var(--text-l),0.3);--canvas-h:218;--canvas-s:32%;--canvas-l:8%;--color-canvas:hsla(var(--canvas-h),var(--canvas-s),var(--canvas-l),1);--color-canvas-dark:#000;--color-canvas-pure:#090c11;--color-canvas-tint:rgba(57,71,96,.2);--color-canvas-50:#262f40;--color-canvas-100:#1a212d;--color-canvas-200:#121821;--color-canvas-300:#0e131a;--color-canvas-400:#0c1017;--color-canvas-500:#0c1017;--color-canvas-dialog:#1a212d;--color-border-dark:hsla(var(--canvas-h),24%,21%,0.5);--color-border:hsla(var(--canvas-h),26%,26%,0.5);--color-border-light:hsla(var(--canvas-h),19%,32%,0.5);--color-border-input:hsla(var(--canvas-h),19%,28%,0.8);--color-border-button:hsla(var(--canvas-h),19%,80%,0.65);--primary-h:202;--primary-s:80%;--primary-l:36%;--color-text-primary:#66c7ff;--color-primary-dark:#1c5a7d;--color-primary-darker:#154560;--color-primary:#126fa5;--color-primary-light:#1685c5;--color-primary-tint:rgba(21,130,193,.25);--color-on-primary:#fff;--success-h:156;--success-s:95%;--success-l:37%;--color-text-success:#4be7a9;--color-success-dark:#145239;--color-success-darker:#10422e;--color-success:#0f6c47;--color-success-light:#128255;--color-success-tint:rgba(26,188,123,.25);--color-on-success:#fff;--warning-h:20;--warning-s:90%;--warning-l:56%;--color-text-warning:#e28150;--color-warning-dark:#7d4021;--color-warning-darker:#61311a;--color-warning:#9e461a;--color-warning-light:#c1551f;--color-warning-tint:rgba(184,81,30,.25);--color-on-warning:#fff;--danger-h:0;--danger-s:84%;--danger-l:63%;--color-text-danger:#d55;--color-danger-dark:#892929;--color-danger-darker:#6a2020;--color-danger:#af2323;--color-danger-light:#d12929;--color-danger-tint:rgba(179,35,35,.25);--color-on-danger:#fff;color:var(--color-text)}[data-theme=dark] .sl-inverted,[data-theme=dark] .sl-inverted .sl-inverted .sl-inverted{--text-h:0;--text-s:0%;--text-l:89%;--shadow-sm:0px 0px 1px rgba(11,13,19,.5);--shadow-md:0px 2px 4px -2px rgba(0,0,0,.35),0px 0px 1px rgba(11,13,19,.4);--shadow-lg:0 2px 14px rgba(0,0,0,.55),0 0 0 0.5px hsla(0,0%,100%,.2);--shadow-xl:0px 0px 1px rgba(11,13,19,.4),0px 8px 10px -4px rgba(11,13,19,.55);--shadow-2xl:0px 0px 1px rgba(11,13,19,.4),0px 16px 24px -8px rgba(11,13,19,.55);--drop-shadow-default1:0 0 0.5px hsla(0,0%,100%,.5);--drop-shadow-default2:0 3px 8px rgba(0,0,0,.6);--color-text-heading:hsla(var(--text-h),var(--text-s),max(3,calc(var(--text-l) - 15)),1);--color-text:hsla(var(--text-h),var(--text-s),var(--text-l),1);--color-text-paragraph:hsla(var(--text-h),var(--text-s),var(--text-l),0.9);--color-text-muted:hsla(var(--text-h),var(--text-s),var(--text-l),0.7);--color-text-light:hsla(var(--text-h),var(--text-s),var(--text-l),0.55);--color-text-disabled:hsla(var(--text-h),var(--text-s),var(--text-l),0.3);--canvas-h:218;--canvas-s:32%;--canvas-l:13%;--color-canvas:hsla(var(--canvas-h),var(--canvas-s),var(--canvas-l),1);--color-canvas-dark:#000;--color-canvas-pure:#111722;--color-canvas-tint:rgba(66,83,112,.2);--color-canvas-50:#2b374a;--color-canvas-100:#222b3a;--color-canvas-200:#1a212e;--color-canvas-300:#141a24;--color-canvas-400:#121721;--color-canvas-500:#121721;--color-canvas-dialog:#222b3a;--color-border-dark:hsla(var(--canvas-h),24%,26%,0.5);--color-border:hsla(var(--canvas-h),26%,31%,0.5);--color-border-light:hsla(var(--canvas-h),19%,37%,0.5);--color-border-input:hsla(var(--canvas-h),19%,33%,0.8);--color-border-button:hsla(var(--canvas-h),19%,80%,0.65);--primary-h:202;--primary-s:80%;--primary-l:33%;--color-text-primary:#66c7ff;--color-primary-dark:#1a5475;--color-primary-darker:#14425c;--color-primary:#116697;--color-primary-light:#147cb8;--color-primary-tint:rgba(21,130,193,.25);--color-on-primary:#fff;--success-h:156;--success-s:95%;--success-l:67%;--color-text-success:#4be7a9;--color-success-dark:#25986a;--color-success-darker:#1c7350;--color-success:#1bc581;--color-success-light:#28e297;--color-success-tint:rgba(26,188,123,.25);--color-on-success:#fff;--warning-h:20;--warning-s:90%;--warning-l:50%;--color-text-warning:#e28150;--color-warning-dark:#713a1e;--color-warning-darker:#552b16;--color-warning:#914018;--color-warning-light:#ab4c1c;--color-warning-tint:rgba(184,81,30,.25);--color-on-warning:#fff;--danger-h:0;--danger-s:84%;--danger-l:43%;--color-text-danger:#d55;--color-danger-dark:#5e1c1c;--color-danger-darker:#471515;--color-danger:#771818;--color-danger-light:#911d1d;--color-danger-tint:rgba(179,35,35,.25);--color-on-danger:#fff;color:var(--color-text)}.sl-elements{font-size:13px}.sl-elements .svg-inline--fa{display:inline-block}.sl-elements .DocsSkeleton{animation:skeleton-glow .5s linear infinite alternate;background:rgba(206,217,224,.2);background-clip:padding-box!important;border-color:rgba(206,217,224,.2)!important;border-radius:2px;box-shadow:none!important;color:transparent!important;cursor:default;pointer-events:none;user-select:none}.sl-elements .Model{--fs-code:12px}.sl-elements .ElementsTableOfContentsItem:hover{color:inherit;text-decoration:none}.sl-elements .ParameterGrid{align-items:center;display:grid;grid-template-columns:fit-content(120px) 20px auto;margin-bottom:16px;padding-bottom:0;row-gap:3px}.sl-elements .TryItPanel>:nth-child(2){overflow:auto}.sl-elements .OperationParametersContent{max-height:162px}.sl-elements .Checkbox{max-width:15px;padding-right:3px}.sl-elements .TextForCheckBox{padding-left:9px;padding-top:6px}.sl-elements .TextRequestBody{margin-bottom:16px;max-height:200px;overflow-y:auto;padding-bottom:0}.sl-elements .HttpOperation .JsonSchemaViewer .sl-markdown-viewer p,.sl-elements .HttpOperation__Parameters .sl-markdown-viewer p,.sl-elements .Model .JsonSchemaViewer .sl-markdown-viewer p{font-size:12px;line-height:1.5em}.sl-elements .HttpOperation div[role=tablist]{overflow-x:auto}
\ No newline at end of file
diff --git a/static/img/blog/small_tri3_mesh.svg b/static/img/blog/small_tri3_mesh.svg
new file mode 100644
index 00000000..f3ec1524
--- /dev/null
+++ b/static/img/blog/small_tri3_mesh.svg
@@ -0,0 +1,79 @@
+
+
+small_tri3_mesh
+
+Creator: GL2PS 1.4.3, (C) 1999-2020 C. Geuzaine
+For: Gmsh
+CreationDate: Sat May 31 00:31:35 2025
+
+
+
+
+
+
+
+
+
+
+
+
+5
+6
+
+7
+8
+
+9
+10
+
+11
+12
+
+13
+14
+15
+16
+17
+18
+19
+20
+21
+22
+23
+24
+25
+26
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+11
+12
+
+
diff --git a/static/img/blog/very_small_hexa8_mesh_two_region.svg b/static/img/blog/very_small_hexa8_mesh_two_region.svg
new file mode 100644
index 00000000..94a51dc1
--- /dev/null
+++ b/static/img/blog/very_small_hexa8_mesh_two_region.svg
@@ -0,0 +1,250 @@
+
+
+very_small_hexa8_mesh_two_region
+
+Creator: GL2PS 1.4.3, (C) 1999-2020 C. Geuzaine
+For: Gmsh
+CreationDate: Sat May 31 01:10:53 2025
+
+
+
+
+6
+
+
+20
+
+
+
+
+16
+
+19
+
+
+
+
+5
+
+
+18
+
+
+
+
+15
+
+31
+17
+
+
+
+
+
+
+
+
+44
+4
+
+
+40
+
+
+
+
+
+
+59
+43
+30
+
+
+
+
+
+
+
+
+58
+42
+39
+
+
+
+
+
+
+
+3
+
+
+57
+41
+16
+29
+
+
+
+
+
+
+
+
+
+
+
+51
+14
+
+56
+15
+38
+
+
+
+
+
+
+
+
+12
+
+
+2
+
+
+28
+14
+
+
+
+
+
+
+
+
+20
+
+50
+13
+
+27
+13
+
+
+
+
+
+
+
+
+11
+
+
+1
+
+
+37
+26
+
+
+
+
+
+
+
+
+55
+19
+
+49
+34
+25
+
+
+
+
+
+
+
+
+
+
+
+48
+54
+10
+
+
+36
+
+
+
+
+
+
+
+47
+53
+33
+
+
+
+
+
+
+
+
+46
+52
+35
+
+
+
+
+
+
+9
+
+
+45
+24
+32
+
+
+
+
+
+
+
+
+18
+
+23
+
+
+
+
+8
+
+
+22
+
+
+
+
+17
+
+21
+
+
+
+
+7
+
+
+
+
diff --git a/static/img/blog/very_small_quad4_mesh.svg b/static/img/blog/very_small_quad4_mesh.svg
new file mode 100644
index 00000000..0d278dab
--- /dev/null
+++ b/static/img/blog/very_small_quad4_mesh.svg
@@ -0,0 +1,57 @@
+
+
+very_small_quad4_mesh
+
+Creator: GL2PS 1.4.3, (C) 1999-2020 C. Geuzaine
+For: Gmsh
+CreationDate: Sat May 31 00:18:11 2025
+
+
+
+
+
+
+
+
+
+
+
+
+5
+6
+
+7
+8
+
+9
+10
+
+11
+12
+
+13
+14
+15
+16
+
+
+
+
+
+
+
+
+
+1
+2
+3
+4
+5
+6
+7
+8
+9
+
+
diff --git a/static/img/blog/very_small_quad4_mesh_two_region.svg b/static/img/blog/very_small_quad4_mesh_two_region.svg
new file mode 100644
index 00000000..fdc5afd9
--- /dev/null
+++ b/static/img/blog/very_small_quad4_mesh_two_region.svg
@@ -0,0 +1,65 @@
+
+
+very_small_quad4_mesh_two_region
+
+Creator: GL2PS 1.4.3, (C) 1999-2020 C. Geuzaine
+For: Gmsh
+CreationDate: Sat May 31 00:45:23 2025
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+7
+8
+
+9
+10
+
+11
+12
+
+13
+14
+
+15
+16
+17
+18
+19
+20
+21
+
+
+
+
+
+
+
+
+
+1
+2
+3
+4
+5
+6
+7
+8
+9
+10
+
+
diff --git a/tailwind.config.cjs b/tailwind.config.cjs
index 1dbe7221..59646aa7 100644
--- a/tailwind.config.cjs
+++ b/tailwind.config.cjs
@@ -1,4 +1,4 @@
-const { fontFamily } = require('tailwindcss/defaultTheme');
+const { fontFamily } = require("tailwindcss/defaultTheme");
/** @type {import('tailwindcss').Config} */
module.exports = {
@@ -6,39 +6,37 @@ module.exports = {
preflight: false,
container: false,
},
- darkMode: ['class', '[data-theme="dark"]'],
- content: ['./src/**/*.{jsx,tsx,html}'],
+ darkMode: ["class", "[data-theme=\"dark\"]"],
+ content: ["./src/**/*.{jsx,tsx,html}"],
theme: {
extend: {
fontFamily: {
- sans: ['"Inter"', ...fontFamily.sans],
- jakarta: ['"Plus Jakarta Sans"', ...fontFamily.sans],
- mono: ['"Fira Code"', ...fontFamily.mono],
+ sans: ["\"Inter\"", ...fontFamily.sans],
+ jakarta: ["\"Plus Jakarta Sans\"", ...fontFamily.sans],
+ mono: ["\"Fira Code\"", ...fontFamily.mono],
},
borderRadius: {
- sm: '4px',
+ sm: "4px",
},
screens: {
- sm: '0px',
- lg: '997px',
+ sm: "0px",
+ lg: "997px",
},
colors: {
primary: {
- DEFAULT:
- 'rgb(var(--docs-color-primary-200, 33 96 253) / )',
- 100: 'rgb(var(--docs-color-primary-100, 26 144 255) / )',
- 200: 'rgb(var(--docs-color-primary-200, 33 96 253) / )',
+ DEFAULT: "rgb(var(--docs-color-primary-200, 33 96 253) / )",
+ 100: "rgb(var(--docs-color-primary-100, 26 144 255) / )",
+ 200: "rgb(var(--docs-color-primary-200, 33 96 253) / )",
},
secondary: {
- DEFAULT:
- 'rgb(var(--docs-color-secondary-1000, 0 0 0) / )',
- 1000: 'rgb(var(--docs-color-secondary-1000, 0 0 0) / )',
- 900: 'rgb(var(--docs-color-secondary-900, 25 25 25) / )',
- 800: 'rgb(var(--docs-color-secondary-800, 38 38 38) / )',
- 700: 'rgb(var(--docs-color-secondary-700, 71 71 71) / )',
+ DEFAULT: "rgb(var(--docs-color-secondary-1000, 0 0 0) / )",
+ 1000: "rgb(var(--docs-color-secondary-1000, 0 0 0) / )",
+ 900: "rgb(var(--docs-color-secondary-900, 25 25 25) / )",
+ 800: "rgb(var(--docs-color-secondary-800, 38 38 38) / )",
+ 700: "rgb(var(--docs-color-secondary-700, 71 71 71) / )",
},
text: {
- 400: 'rgb(var(--docs-color-text-400, 153 153 153) / )',
+ 400: "rgb(var(--docs-color-text-400, 153 153 153) / )",
},
},
},
diff --git a/yarn.lock b/yarn.lock
new file mode 100644
index 00000000..6e63b3a6
--- /dev/null
+++ b/yarn.lock
@@ -0,0 +1,11075 @@
+# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
+# yarn lockfile v1
+
+
+"@algolia/autocomplete-core@1.17.9":
+ version "1.17.9"
+ resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.17.9.tgz#83374c47dc72482aa45d6b953e89377047f0dcdc"
+ integrity sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==
+ dependencies:
+ "@algolia/autocomplete-plugin-algolia-insights" "1.17.9"
+ "@algolia/autocomplete-shared" "1.17.9"
+
+"@algolia/autocomplete-plugin-algolia-insights@1.17.9":
+ version "1.17.9"
+ resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.9.tgz#74c86024d09d09e8bfa3dd90b844b77d9f9947b6"
+ integrity sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ==
+ dependencies:
+ "@algolia/autocomplete-shared" "1.17.9"
+
+"@algolia/autocomplete-preset-algolia@1.17.9":
+ version "1.17.9"
+ resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.9.tgz#911f3250544eb8ea4096fcfb268f156b085321b5"
+ integrity sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ==
+ dependencies:
+ "@algolia/autocomplete-shared" "1.17.9"
+
+"@algolia/autocomplete-shared@1.17.9":
+ version "1.17.9"
+ resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.9.tgz#5f38868f7cb1d54b014b17a10fc4f7e79d427fa8"
+ integrity sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ==
+
+"@algolia/cache-common@4.24.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/cache-common/-/cache-common-4.24.0.tgz#81a8d3a82ceb75302abb9b150a52eba9960c9744"
+ integrity sha512-emi+v+DmVLpMGhp0V9q9h5CdkURsNmFC+cOS6uK9ndeJm9J4TiqSvPYVu+THUP8P/S08rxf5x2P+p3CfID0Y4g==
+
+"@algolia/client-abtesting@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-abtesting/-/client-abtesting-5.25.0.tgz#012204f1614e1a71366fb1e117c8f195186ff081"
+ integrity sha512-1pfQulNUYNf1Tk/svbfjfkLBS36zsuph6m+B6gDkPEivFmso/XnRgwDvjAx80WNtiHnmeNjIXdF7Gos8+OLHqQ==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-analytics@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-5.25.0.tgz#eba015bfafb3dbb82712c9160a00717a5974ff71"
+ integrity sha512-AFbG6VDJX/o2vDd9hqncj1B6B4Tulk61mY0pzTtzKClyTDlNP0xaUiEKhl6E7KO9I/x0FJF5tDCm0Hn6v5x18A==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-common@4.24.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-4.24.0.tgz#77c46eee42b9444a1d1c1583a83f7df4398a649d"
+ integrity sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==
+ dependencies:
+ "@algolia/requester-common" "4.24.0"
+ "@algolia/transporter" "4.24.0"
+
+"@algolia/client-common@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-5.25.0.tgz#2def8947efe849266057d92f67d1b8d83de0c005"
+ integrity sha512-il1zS/+Rc6la6RaCdSZ2YbJnkQC6W1wiBO8+SH+DE6CPMWBU6iDVzH0sCKSAtMWl9WBxoN6MhNjGBnCv9Yy2bA==
+
+"@algolia/client-insights@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-insights/-/client-insights-5.25.0.tgz#b87df8614b96c4cc9c9aa7765cce07fa70864fa8"
+ integrity sha512-blbjrUH1siZNfyCGeq0iLQu00w3a4fBXm0WRIM0V8alcAPo7rWjLbMJMrfBtzL9X5ic6wgxVpDADXduGtdrnkw==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-personalization@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-5.25.0.tgz#74b041f0e7d91e1009c131c8d716c34e4d45c30f"
+ integrity sha512-aywoEuu1NxChBcHZ1pWaat0Plw7A8jDMwjgRJ00Mcl7wGlwuPt5dJ/LTNcg3McsEUbs2MBNmw0ignXBw9Tbgow==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-query-suggestions@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-query-suggestions/-/client-query-suggestions-5.25.0.tgz#e92d935d9e2994f790d43c64d3518d81070a3888"
+ integrity sha512-a/W2z6XWKjKjIW1QQQV8PTTj1TXtaKx79uR3NGBdBdGvVdt24KzGAaN7sCr5oP8DW4D3cJt44wp2OY/fZcPAVA==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-search@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-5.25.0.tgz#dc38ca1015f2f4c9f5053a4517f96fb28a2117f8"
+ integrity sha512-9rUYcMIBOrCtYiLX49djyzxqdK9Dya/6Z/8sebPn94BekT+KLOpaZCuc6s0Fpfq7nx5J6YY5LIVFQrtioK9u0g==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/client-search@^4.20.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-4.24.0.tgz#75e6c02d33ef3e0f34afd9962c085b856fc4a55f"
+ integrity sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==
+ dependencies:
+ "@algolia/client-common" "4.24.0"
+ "@algolia/requester-common" "4.24.0"
+ "@algolia/transporter" "4.24.0"
+
+"@algolia/events@^4.0.1":
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/@algolia/events/-/events-4.0.1.tgz#fd39e7477e7bc703d7f893b556f676c032af3950"
+ integrity sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==
+
+"@algolia/ingestion@1.25.0":
+ version "1.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/ingestion/-/ingestion-1.25.0.tgz#4d13c56dda0a05c7bacb0e3ef5866292dfd86ed5"
+ integrity sha512-jJeH/Hk+k17Vkokf02lkfYE4A+EJX+UgnMhTLR/Mb+d1ya5WhE+po8p5a/Nxb6lo9OLCRl6w3Hmk1TX1e9gVbQ==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/logger-common@4.24.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/logger-common/-/logger-common-4.24.0.tgz#28d439976019ec0a46ba7a1a739ef493d4ef8123"
+ integrity sha512-LLUNjkahj9KtKYrQhFKCzMx0BY3RnNP4FEtO+sBybCjJ73E8jNdaKJ/Dd8A/VA4imVHP5tADZ8pn5B8Ga/wTMA==
+
+"@algolia/monitoring@1.25.0":
+ version "1.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/monitoring/-/monitoring-1.25.0.tgz#d59360cfe556338519d05a9d8107147e9dbcb020"
+ integrity sha512-Ls3i1AehJ0C6xaHe7kK9vPmzImOn5zBg7Kzj8tRYIcmCWVyuuFwCIsbuIIz/qzUf1FPSWmw0TZrGeTumk2fqXg==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/recommend@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-5.25.0.tgz#b96f12c85aa74a0326982c7801fcd4a610b420f4"
+ integrity sha512-79sMdHpiRLXVxSjgw7Pt4R1aNUHxFLHiaTDnN2MQjHwJ1+o3wSseb55T9VXU4kqy3m7TUme3pyRhLk5ip/S4Mw==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+"@algolia/requester-browser-xhr@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.25.0.tgz#c194fa5f49206b9343e6646c41bfbca2a3f2ac54"
+ integrity sha512-JLaF23p1SOPBmfEqozUAgKHQrGl3z/Z5RHbggBu6s07QqXXcazEsub5VLonCxGVqTv6a61AAPr8J1G5HgGGjEw==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+
+"@algolia/requester-common@4.24.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/requester-common/-/requester-common-4.24.0.tgz#1c60c198031f48fcdb9e34c4057a3ea987b9a436"
+ integrity sha512-k3CXJ2OVnvgE3HMwcojpvY6d9kgKMPRxs/kVohrwF5WMr2fnqojnycZkxPoEg+bXm8fi5BBfFmOqgYztRtHsQA==
+
+"@algolia/requester-fetch@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/requester-fetch/-/requester-fetch-5.25.0.tgz#231a2d0da2397d141f80b8f28e2cb6e3d219d38d"
+ integrity sha512-rtzXwqzFi1edkOF6sXxq+HhmRKDy7tz84u0o5t1fXwz0cwx+cjpmxu/6OQKTdOJFS92JUYHsG51Iunie7xbqfQ==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+
+"@algolia/requester-node-http@5.25.0":
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-5.25.0.tgz#0ce13c550890de21c558b04381535d2d245a3725"
+ integrity sha512-ZO0UKvDyEFvyeJQX0gmZDQEvhLZ2X10K+ps6hViMo1HgE2V8em00SwNsQ+7E/52a+YiBkVWX61pJJJE44juDMQ==
+ dependencies:
+ "@algolia/client-common" "5.25.0"
+
+"@algolia/transporter@4.24.0":
+ version "4.24.0"
+ resolved "https://registry.yarnpkg.com/@algolia/transporter/-/transporter-4.24.0.tgz#226bb1f8af62430374c1972b2e5c8580ab275102"
+ integrity sha512-86nI7w6NzWxd1Zp9q3413dRshDqAzSbsQjhcDhPIatEFiZrL1/TjnHL8S7jVKFePlIMzDsZWXAXwXzcok9c5oA==
+ dependencies:
+ "@algolia/cache-common" "4.24.0"
+ "@algolia/logger-common" "4.24.0"
+ "@algolia/requester-common" "4.24.0"
+
+"@alloc/quick-lru@^5.2.0":
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/@alloc/quick-lru/-/quick-lru-5.2.0.tgz#7bf68b20c0a350f936915fcae06f58e32007ce30"
+ integrity sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==
+
+"@ampproject/remapping@^2.2.0":
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4"
+ integrity sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==
+ dependencies:
+ "@jridgewell/gen-mapping" "^0.3.5"
+ "@jridgewell/trace-mapping" "^0.3.24"
+
+"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be"
+ integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==
+ dependencies:
+ "@babel/helper-validator-identifier" "^7.27.1"
+ js-tokens "^4.0.0"
+ picocolors "^1.1.1"
+
+"@babel/compat-data@^7.22.6", "@babel/compat-data@^7.27.2":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.27.3.tgz#cc49c2ac222d69b889bf34c795f537c0c6311111"
+ integrity sha512-V42wFfx1ymFte+ecf6iXghnnP8kWTO+ZLXIyZq+1LAXHHvTZdVxicn4yiVYdYMGaCO3tmqub11AorKkv+iodqw==
+
+"@babel/core@^7.21.3", "@babel/core@^7.25.9":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.27.4.tgz#cc1fc55d0ce140a1828d1dd2a2eba285adbfb3ce"
+ integrity sha512-bXYxrXFubeYdvB0NhD/NBB3Qi6aZeV20GOWVI47t2dkecCEoneR4NPVcb7abpXDEvejgrUfFtG6vG/zxAKmg+g==
+ dependencies:
+ "@ampproject/remapping" "^2.2.0"
+ "@babel/code-frame" "^7.27.1"
+ "@babel/generator" "^7.27.3"
+ "@babel/helper-compilation-targets" "^7.27.2"
+ "@babel/helper-module-transforms" "^7.27.3"
+ "@babel/helpers" "^7.27.4"
+ "@babel/parser" "^7.27.4"
+ "@babel/template" "^7.27.2"
+ "@babel/traverse" "^7.27.4"
+ "@babel/types" "^7.27.3"
+ convert-source-map "^2.0.0"
+ debug "^4.1.0"
+ gensync "^1.0.0-beta.2"
+ json5 "^2.2.3"
+ semver "^6.3.1"
+
+"@babel/generator@^7.25.9", "@babel/generator@^7.27.3":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.27.3.tgz#ef1c0f7cfe3b5fc8cbb9f6cc69f93441a68edefc"
+ integrity sha512-xnlJYj5zepml8NXtjkG0WquFUv8RskFqyFcVgTBp5k+NaA/8uw/K+OSVf8AMGw5e9HKP2ETd5xpK5MLZQD6b4Q==
+ dependencies:
+ "@babel/parser" "^7.27.3"
+ "@babel/types" "^7.27.3"
+ "@jridgewell/gen-mapping" "^0.3.5"
+ "@jridgewell/trace-mapping" "^0.3.25"
+ jsesc "^3.0.2"
+
+"@babel/helper-annotate-as-pure@^7.27.1":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz#f31fd86b915fc4daf1f3ac6976c59be7084ed9c5"
+ integrity sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==
+ dependencies:
+ "@babel/types" "^7.27.3"
+
+"@babel/helper-compilation-targets@^7.22.6", "@babel/helper-compilation-targets@^7.27.1", "@babel/helper-compilation-targets@^7.27.2":
+ version "7.27.2"
+ resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz#46a0f6efab808d51d29ce96858dd10ce8732733d"
+ integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==
+ dependencies:
+ "@babel/compat-data" "^7.27.2"
+ "@babel/helper-validator-option" "^7.27.1"
+ browserslist "^4.24.0"
+ lru-cache "^5.1.1"
+ semver "^6.3.1"
+
+"@babel/helper-create-class-features-plugin@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.27.1.tgz#5bee4262a6ea5ddc852d0806199eb17ca3de9281"
+ integrity sha512-QwGAmuvM17btKU5VqXfb+Giw4JcN0hjuufz3DYnpeVDvZLAObloM77bhMXiqry3Iio+Ai4phVRDwl6WU10+r5A==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-member-expression-to-functions" "^7.27.1"
+ "@babel/helper-optimise-call-expression" "^7.27.1"
+ "@babel/helper-replace-supers" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+ semver "^6.3.1"
+
+"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz#05b0882d97ba1d4d03519e4bce615d70afa18c53"
+ integrity sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ regexpu-core "^6.2.0"
+ semver "^6.3.1"
+
+"@babel/helper-define-polyfill-provider@^0.6.3", "@babel/helper-define-polyfill-provider@^0.6.4":
+ version "0.6.4"
+ resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.4.tgz#15e8746368bfa671785f5926ff74b3064c291fab"
+ integrity sha512-jljfR1rGnXXNWnmQg2K3+bvhkxB51Rl32QRaOTuwwjviGrHzIbSc8+x9CpraDtbT7mfyjXObULP4w/adunNwAw==
+ dependencies:
+ "@babel/helper-compilation-targets" "^7.22.6"
+ "@babel/helper-plugin-utils" "^7.22.5"
+ debug "^4.1.1"
+ lodash.debounce "^4.0.8"
+ resolve "^1.14.2"
+
+"@babel/helper-member-expression-to-functions@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz#ea1211276be93e798ce19037da6f06fbb994fa44"
+ integrity sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA==
+ dependencies:
+ "@babel/traverse" "^7.27.1"
+ "@babel/types" "^7.27.1"
+
+"@babel/helper-module-imports@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz#7ef769a323e2655e126673bb6d2d6913bbead204"
+ integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==
+ dependencies:
+ "@babel/traverse" "^7.27.1"
+ "@babel/types" "^7.27.1"
+
+"@babel/helper-module-transforms@^7.27.1", "@babel/helper-module-transforms@^7.27.3":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz#db0bbcfba5802f9ef7870705a7ef8788508ede02"
+ integrity sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==
+ dependencies:
+ "@babel/helper-module-imports" "^7.27.1"
+ "@babel/helper-validator-identifier" "^7.27.1"
+ "@babel/traverse" "^7.27.3"
+
+"@babel/helper-optimise-call-expression@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz#c65221b61a643f3e62705e5dd2b5f115e35f9200"
+ integrity sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==
+ dependencies:
+ "@babel/types" "^7.27.1"
+
+"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.22.5", "@babel/helper-plugin-utils@^7.27.1", "@babel/helper-plugin-utils@^7.8.0":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz#ddb2f876534ff8013e6c2b299bf4d39b3c51d44c"
+ integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==
+
+"@babel/helper-remap-async-to-generator@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz#4601d5c7ce2eb2aea58328d43725523fcd362ce6"
+ integrity sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-wrap-function" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/helper-replace-supers@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz#b1ed2d634ce3bdb730e4b52de30f8cccfd692bc0"
+ integrity sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA==
+ dependencies:
+ "@babel/helper-member-expression-to-functions" "^7.27.1"
+ "@babel/helper-optimise-call-expression" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/helper-skip-transparent-expression-wrappers@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz#62bb91b3abba8c7f1fec0252d9dbea11b3ee7a56"
+ integrity sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==
+ dependencies:
+ "@babel/traverse" "^7.27.1"
+ "@babel/types" "^7.27.1"
+
+"@babel/helper-string-parser@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687"
+ integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==
+
+"@babel/helper-validator-identifier@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8"
+ integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==
+
+"@babel/helper-validator-option@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz#fa52f5b1e7db1ab049445b421c4471303897702f"
+ integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==
+
+"@babel/helper-wrap-function@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.27.1.tgz#b88285009c31427af318d4fe37651cd62a142409"
+ integrity sha512-NFJK2sHUvrjo8wAU/nQTWU890/zB2jj0qBcCbZbbf+005cAsv6tMjXz31fBign6M5ov1o0Bllu+9nbqkfsjjJQ==
+ dependencies:
+ "@babel/template" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+ "@babel/types" "^7.27.1"
+
+"@babel/helpers@^7.27.4":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.27.4.tgz#c79050c6a0e41e095bfc96d469c85431e9ed7fe7"
+ integrity sha512-Y+bO6U+I7ZKaM5G5rDUZiYfUvQPUibYmAFe7EnKdnKBbVXDZxvp+MWOH5gYciY0EPk4EScsuFMQBbEfpdRKSCQ==
+ dependencies:
+ "@babel/template" "^7.27.2"
+ "@babel/types" "^7.27.3"
+
+"@babel/parser@^7.27.2", "@babel/parser@^7.27.3", "@babel/parser@^7.27.4":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.27.4.tgz#f92e89e4f51847be05427285836fc88341c956df"
+ integrity sha512-BRmLHGwpUqLFR2jzx9orBuX/ABDkj2jLKOXrHDTN2aOKL+jFDDKaRNo9nyYsIl9h/UE/7lMKdDjKQQyxKKDZ7g==
+ dependencies:
+ "@babel/types" "^7.27.3"
+
+"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz#61dd8a8e61f7eb568268d1b5f129da3eee364bf9"
+ integrity sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz#43f70a6d7efd52370eefbdf55ae03d91b293856d"
+ integrity sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz#beb623bd573b8b6f3047bd04c32506adc3e58a72"
+ integrity sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz#e134a5479eb2ba9c02714e8c1ebf1ec9076124fd"
+ integrity sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+ "@babel/plugin-transform-optional-chaining" "^7.27.1"
+
+"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.27.1.tgz#bb1c25af34d75115ce229a1de7fa44bf8f955670"
+ integrity sha512-6BpaYGDavZqkI6yT+KSPdpZFfpnd68UKXbcjI9pJ13pvHhPrCKWOOLp+ysvMeA+DxnhuPpgIaRpxRxo5A9t5jw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2":
+ version "7.21.0-placeholder-for-preset-env.2"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz#7844f9289546efa9febac2de4cfe358a050bd703"
+ integrity sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==
+
+"@babel/plugin-syntax-dynamic-import@^7.8.3":
+ version "7.8.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz#62bf98b2da3cd21d626154fc96ee5b3cb68eacb3"
+ integrity sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.8.0"
+
+"@babel/plugin-syntax-import-assertions@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz#88894aefd2b03b5ee6ad1562a7c8e1587496aecd"
+ integrity sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-syntax-import-attributes@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz#34c017d54496f9b11b61474e7ea3dfd5563ffe07"
+ integrity sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-syntax-jsx@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz#2f9beb5eff30fa507c5532d107daac7b888fa34c"
+ integrity sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-syntax-typescript@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz#5147d29066a793450f220c63fa3a9431b7e6dd18"
+ integrity sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-syntax-unicode-sets-regex@^7.18.6":
+ version "7.18.6"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357"
+ integrity sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.18.6"
+ "@babel/helper-plugin-utils" "^7.18.6"
+
+"@babel/plugin-transform-arrow-functions@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz#6e2061067ba3ab0266d834a9f94811196f2aba9a"
+ integrity sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-async-generator-functions@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.27.1.tgz#ca433df983d68e1375398e7ca71bf2a4f6fd89d7"
+ integrity sha512-eST9RrwlpaoJBDHShc+DS2SG4ATTi2MYNb4OxYkf3n+7eb49LWpnS+HSpVfW4x927qQwgk8A2hGNVaajAEw0EA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-remap-async-to-generator" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/plugin-transform-async-to-generator@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz#9a93893b9379b39466c74474f55af03de78c66e7"
+ integrity sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA==
+ dependencies:
+ "@babel/helper-module-imports" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-remap-async-to-generator" "^7.27.1"
+
+"@babel/plugin-transform-block-scoped-functions@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz#558a9d6e24cf72802dd3b62a4b51e0d62c0f57f9"
+ integrity sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-block-scoping@^7.27.1":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.27.3.tgz#a21f37e222dc0a7b91c3784fa3bd4edf8d7a6dc1"
+ integrity sha512-+F8CnfhuLhwUACIJMLWnjz6zvzYM2r0yeIHKlbgfw7ml8rOMJsXNXV/hyRcb3nb493gRs4WvYpQAndWj/qQmkQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-class-properties@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz#dd40a6a370dfd49d32362ae206ddaf2bb082a925"
+ integrity sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA==
+ dependencies:
+ "@babel/helper-create-class-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-class-static-block@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.27.1.tgz#7e920d5625b25bbccd3061aefbcc05805ed56ce4"
+ integrity sha512-s734HmYU78MVzZ++joYM+NkJusItbdRcbm+AGRgJCt3iA+yux0QpD9cBVdz3tKyrjVYWRl7j0mHSmv4lhV0aoA==
+ dependencies:
+ "@babel/helper-create-class-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-classes@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.27.1.tgz#03bb04bea2c7b2f711f0db7304a8da46a85cced4"
+ integrity sha512-7iLhfFAubmpeJe/Wo2TVuDrykh/zlWXLzPNdL0Jqn/Xu8R3QQ8h9ff8FQoISZOsw74/HFqFI7NX63HN7QFIHKA==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-compilation-targets" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-replace-supers" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+ globals "^11.1.0"
+
+"@babel/plugin-transform-computed-properties@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz#81662e78bf5e734a97982c2b7f0a793288ef3caa"
+ integrity sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/template" "^7.27.1"
+
+"@babel/plugin-transform-destructuring@^7.27.1", "@babel/plugin-transform-destructuring@^7.27.3":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.27.3.tgz#3cc8299ed798d9a909f8d66ddeb40849ec32e3b0"
+ integrity sha512-s4Jrok82JpiaIprtY2nHsYmrThKvvwgHwjgd7UMiYhZaN0asdXNLr0y+NjTfkA7SyQE5i2Fb7eawUOZmLvyqOA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-dotall-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz#aa6821de864c528b1fecf286f0a174e38e826f4d"
+ integrity sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-duplicate-keys@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz#f1fbf628ece18e12e7b32b175940e68358f546d1"
+ integrity sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz#5043854ca620a94149372e69030ff8cb6a9eb0ec"
+ integrity sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-dynamic-import@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz#4c78f35552ac0e06aa1f6e3c573d67695e8af5a4"
+ integrity sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-exponentiation-operator@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz#fc497b12d8277e559747f5a3ed868dd8064f83e1"
+ integrity sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-export-namespace-from@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz#71ca69d3471edd6daa711cf4dfc3400415df9c23"
+ integrity sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-for-of@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz#bc24f7080e9ff721b63a70ac7b2564ca15b6c40a"
+ integrity sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+
+"@babel/plugin-transform-function-name@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz#4d0bf307720e4dce6d7c30fcb1fd6ca77bdeb3a7"
+ integrity sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==
+ dependencies:
+ "@babel/helper-compilation-targets" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/plugin-transform-json-strings@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz#a2e0ce6ef256376bd527f290da023983527a4f4c"
+ integrity sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-literals@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz#baaefa4d10a1d4206f9dcdda50d7d5827bb70b24"
+ integrity sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-logical-assignment-operators@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz#890cb20e0270e0e5bebe3f025b434841c32d5baa"
+ integrity sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-member-expression-literals@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz#37b88ba594d852418e99536f5612f795f23aeaf9"
+ integrity sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-modules-amd@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz#a4145f9d87c2291fe2d05f994b65dba4e3e7196f"
+ integrity sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==
+ dependencies:
+ "@babel/helper-module-transforms" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-modules-commonjs@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz#8e44ed37c2787ecc23bdc367f49977476614e832"
+ integrity sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw==
+ dependencies:
+ "@babel/helper-module-transforms" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-modules-systemjs@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz#00e05b61863070d0f3292a00126c16c0e024c4ed"
+ integrity sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA==
+ dependencies:
+ "@babel/helper-module-transforms" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-validator-identifier" "^7.27.1"
+ "@babel/traverse" "^7.27.1"
+
+"@babel/plugin-transform-modules-umd@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz#63f2cf4f6dc15debc12f694e44714863d34cd334"
+ integrity sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==
+ dependencies:
+ "@babel/helper-module-transforms" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-named-capturing-groups-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz#f32b8f7818d8fc0cc46ee20a8ef75f071af976e1"
+ integrity sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-new-target@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz#259c43939728cad1706ac17351b7e6a7bea1abeb"
+ integrity sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-nullish-coalescing-operator@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz#4f9d3153bf6782d73dd42785a9d22d03197bc91d"
+ integrity sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-numeric-separator@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz#614e0b15cc800e5997dadd9bd6ea524ed6c819c6"
+ integrity sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-object-rest-spread@^7.27.2":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.27.3.tgz#ce130aa73fef828bc3e3e835f9bc6144be3eb1c0"
+ integrity sha512-7ZZtznF9g4l2JCImCo5LNKFHB5eXnN39lLtLY5Tg+VkR0jwOt7TBciMckuiQIOIW7L5tkQOCh3bVGYeXgMx52Q==
+ dependencies:
+ "@babel/helper-compilation-targets" "^7.27.2"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/plugin-transform-destructuring" "^7.27.3"
+ "@babel/plugin-transform-parameters" "^7.27.1"
+
+"@babel/plugin-transform-object-super@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz#1c932cd27bf3874c43a5cac4f43ebf970c9871b5"
+ integrity sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-replace-supers" "^7.27.1"
+
+"@babel/plugin-transform-optional-catch-binding@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz#84c7341ebde35ccd36b137e9e45866825072a30c"
+ integrity sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-optional-chaining@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz#874ce3c4f06b7780592e946026eb76a32830454f"
+ integrity sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+
+"@babel/plugin-transform-parameters@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.1.tgz#80334b54b9b1ac5244155a0c8304a187a618d5a7"
+ integrity sha512-018KRk76HWKeZ5l4oTj2zPpSh+NbGdt0st5S6x0pga6HgrjBOJb24mMDHorFopOOd6YHkLgOZ+zaCjZGPO4aKg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-private-methods@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz#fdacbab1c5ed81ec70dfdbb8b213d65da148b6af"
+ integrity sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA==
+ dependencies:
+ "@babel/helper-create-class-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-private-property-in-object@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz#4dbbef283b5b2f01a21e81e299f76e35f900fb11"
+ integrity sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-create-class-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-property-literals@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz#07eafd618800591e88073a0af1b940d9a42c6424"
+ integrity sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-react-constant-elements@^7.21.3":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.27.1.tgz#6c6b50424e749a6e48afd14cf7b92f98cb9383f9"
+ integrity sha512-edoidOjl/ZxvYo4lSBOQGDSyToYVkTAwyVoa2tkuYTSmjrB1+uAedoL5iROVLXkxH+vRgA7uP4tMg2pUJpZ3Ug==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-react-display-name@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.27.1.tgz#43af31362d71f7848cfac0cbc212882b1a16e80f"
+ integrity sha512-p9+Vl3yuHPmkirRrg021XiP+EETmPMQTLr6Ayjj85RLNEbb3Eya/4VI0vAdzQG9SEAl2Lnt7fy5lZyMzjYoZQQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-react-jsx-development@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz#47ff95940e20a3a70e68ad3d4fcb657b647f6c98"
+ integrity sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==
+ dependencies:
+ "@babel/plugin-transform-react-jsx" "^7.27.1"
+
+"@babel/plugin-transform-react-jsx@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz#1023bc94b78b0a2d68c82b5e96aed573bcfb9db0"
+ integrity sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-module-imports" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/plugin-syntax-jsx" "^7.27.1"
+ "@babel/types" "^7.27.1"
+
+"@babel/plugin-transform-react-pure-annotations@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz#339f1ce355eae242e0649f232b1c68907c02e879"
+ integrity sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-regenerator@^7.27.1":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.27.4.tgz#05d006c09f482b34ba5dc16d630c204a7d06d31f"
+ integrity sha512-Glp/0n8xuj+E1588otw5rjJkTXfzW7FjH3IIUrfqiZOPQCd2vbg8e+DQE8jK9g4V5/zrxFW+D9WM9gboRPELpQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-regexp-modifiers@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz#df9ba5577c974e3f1449888b70b76169998a6d09"
+ integrity sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-reserved-words@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz#40fba4878ccbd1c56605a4479a3a891ac0274bb4"
+ integrity sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-runtime@^7.25.9":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.27.4.tgz#dee5c5db6543313d1ae1b4b1ec122ff1e77352b9"
+ integrity sha512-D68nR5zxU64EUzV8i7T3R5XP0Xhrou/amNnddsRQssx6GrTLdZl1rLxyjtVZBd+v/NVX4AbTPOB5aU8thAZV1A==
+ dependencies:
+ "@babel/helper-module-imports" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ babel-plugin-polyfill-corejs2 "^0.4.10"
+ babel-plugin-polyfill-corejs3 "^0.11.0"
+ babel-plugin-polyfill-regenerator "^0.6.1"
+ semver "^6.3.1"
+
+"@babel/plugin-transform-shorthand-properties@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz#532abdacdec87bfee1e0ef8e2fcdee543fe32b90"
+ integrity sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-spread@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz#1a264d5fc12750918f50e3fe3e24e437178abb08"
+ integrity sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+
+"@babel/plugin-transform-sticky-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz#18984935d9d2296843a491d78a014939f7dcd280"
+ integrity sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-template-literals@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz#1a0eb35d8bb3e6efc06c9fd40eb0bcef548328b8"
+ integrity sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-typeof-symbol@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz#70e966bb492e03509cf37eafa6dcc3051f844369"
+ integrity sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-typescript@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.27.1.tgz#d3bb65598bece03f773111e88cc4e8e5070f1140"
+ integrity sha512-Q5sT5+O4QUebHdbwKedFBEwRLb02zJ7r4A5Gg2hUoLuU3FjdMcyqcywqUrLCaDsFCxzokf7u9kuy7qz51YUuAg==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.27.1"
+ "@babel/helper-create-class-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1"
+ "@babel/plugin-syntax-typescript" "^7.27.1"
+
+"@babel/plugin-transform-unicode-escapes@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz#3e3143f8438aef842de28816ece58780190cf806"
+ integrity sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-unicode-property-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz#bdfe2d3170c78c5691a3c3be934c8c0087525956"
+ integrity sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-unicode-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz#25948f5c395db15f609028e370667ed8bae9af97"
+ integrity sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/plugin-transform-unicode-sets-regex@^7.27.1":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz#6ab706d10f801b5c72da8bb2548561fa04193cd1"
+ integrity sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw==
+ dependencies:
+ "@babel/helper-create-regexp-features-plugin" "^7.27.1"
+ "@babel/helper-plugin-utils" "^7.27.1"
+
+"@babel/preset-env@^7.20.2", "@babel/preset-env@^7.25.9":
+ version "7.27.2"
+ resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.27.2.tgz#106e6bfad92b591b1f6f76fd4cf13b7725a7bf9a"
+ integrity sha512-Ma4zSuYSlGNRlCLO+EAzLnCmJK2vdstgv+n7aUP+/IKZrOfWHOJVdSJtuub8RzHTj3ahD37k5OKJWvzf16TQyQ==
+ dependencies:
+ "@babel/compat-data" "^7.27.2"
+ "@babel/helper-compilation-targets" "^7.27.2"
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-validator-option" "^7.27.1"
+ "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.27.1"
+ "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.27.1"
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.27.1"
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.27.1"
+ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.27.1"
+ "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2"
+ "@babel/plugin-syntax-import-assertions" "^7.27.1"
+ "@babel/plugin-syntax-import-attributes" "^7.27.1"
+ "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6"
+ "@babel/plugin-transform-arrow-functions" "^7.27.1"
+ "@babel/plugin-transform-async-generator-functions" "^7.27.1"
+ "@babel/plugin-transform-async-to-generator" "^7.27.1"
+ "@babel/plugin-transform-block-scoped-functions" "^7.27.1"
+ "@babel/plugin-transform-block-scoping" "^7.27.1"
+ "@babel/plugin-transform-class-properties" "^7.27.1"
+ "@babel/plugin-transform-class-static-block" "^7.27.1"
+ "@babel/plugin-transform-classes" "^7.27.1"
+ "@babel/plugin-transform-computed-properties" "^7.27.1"
+ "@babel/plugin-transform-destructuring" "^7.27.1"
+ "@babel/plugin-transform-dotall-regex" "^7.27.1"
+ "@babel/plugin-transform-duplicate-keys" "^7.27.1"
+ "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.27.1"
+ "@babel/plugin-transform-dynamic-import" "^7.27.1"
+ "@babel/plugin-transform-exponentiation-operator" "^7.27.1"
+ "@babel/plugin-transform-export-namespace-from" "^7.27.1"
+ "@babel/plugin-transform-for-of" "^7.27.1"
+ "@babel/plugin-transform-function-name" "^7.27.1"
+ "@babel/plugin-transform-json-strings" "^7.27.1"
+ "@babel/plugin-transform-literals" "^7.27.1"
+ "@babel/plugin-transform-logical-assignment-operators" "^7.27.1"
+ "@babel/plugin-transform-member-expression-literals" "^7.27.1"
+ "@babel/plugin-transform-modules-amd" "^7.27.1"
+ "@babel/plugin-transform-modules-commonjs" "^7.27.1"
+ "@babel/plugin-transform-modules-systemjs" "^7.27.1"
+ "@babel/plugin-transform-modules-umd" "^7.27.1"
+ "@babel/plugin-transform-named-capturing-groups-regex" "^7.27.1"
+ "@babel/plugin-transform-new-target" "^7.27.1"
+ "@babel/plugin-transform-nullish-coalescing-operator" "^7.27.1"
+ "@babel/plugin-transform-numeric-separator" "^7.27.1"
+ "@babel/plugin-transform-object-rest-spread" "^7.27.2"
+ "@babel/plugin-transform-object-super" "^7.27.1"
+ "@babel/plugin-transform-optional-catch-binding" "^7.27.1"
+ "@babel/plugin-transform-optional-chaining" "^7.27.1"
+ "@babel/plugin-transform-parameters" "^7.27.1"
+ "@babel/plugin-transform-private-methods" "^7.27.1"
+ "@babel/plugin-transform-private-property-in-object" "^7.27.1"
+ "@babel/plugin-transform-property-literals" "^7.27.1"
+ "@babel/plugin-transform-regenerator" "^7.27.1"
+ "@babel/plugin-transform-regexp-modifiers" "^7.27.1"
+ "@babel/plugin-transform-reserved-words" "^7.27.1"
+ "@babel/plugin-transform-shorthand-properties" "^7.27.1"
+ "@babel/plugin-transform-spread" "^7.27.1"
+ "@babel/plugin-transform-sticky-regex" "^7.27.1"
+ "@babel/plugin-transform-template-literals" "^7.27.1"
+ "@babel/plugin-transform-typeof-symbol" "^7.27.1"
+ "@babel/plugin-transform-unicode-escapes" "^7.27.1"
+ "@babel/plugin-transform-unicode-property-regex" "^7.27.1"
+ "@babel/plugin-transform-unicode-regex" "^7.27.1"
+ "@babel/plugin-transform-unicode-sets-regex" "^7.27.1"
+ "@babel/preset-modules" "0.1.6-no-external-plugins"
+ babel-plugin-polyfill-corejs2 "^0.4.10"
+ babel-plugin-polyfill-corejs3 "^0.11.0"
+ babel-plugin-polyfill-regenerator "^0.6.1"
+ core-js-compat "^3.40.0"
+ semver "^6.3.1"
+
+"@babel/preset-modules@0.1.6-no-external-plugins":
+ version "0.1.6-no-external-plugins"
+ resolved "https://registry.yarnpkg.com/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz#ccb88a2c49c817236861fee7826080573b8a923a"
+ integrity sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.0.0"
+ "@babel/types" "^7.4.4"
+ esutils "^2.0.2"
+
+"@babel/preset-react@^7.18.6", "@babel/preset-react@^7.25.9":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.27.1.tgz#86ea0a5ca3984663f744be2fd26cb6747c3fd0ec"
+ integrity sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-validator-option" "^7.27.1"
+ "@babel/plugin-transform-react-display-name" "^7.27.1"
+ "@babel/plugin-transform-react-jsx" "^7.27.1"
+ "@babel/plugin-transform-react-jsx-development" "^7.27.1"
+ "@babel/plugin-transform-react-pure-annotations" "^7.27.1"
+
+"@babel/preset-typescript@^7.21.0", "@babel/preset-typescript@^7.25.9":
+ version "7.27.1"
+ resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz#190742a6428d282306648a55b0529b561484f912"
+ integrity sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ==
+ dependencies:
+ "@babel/helper-plugin-utils" "^7.27.1"
+ "@babel/helper-validator-option" "^7.27.1"
+ "@babel/plugin-syntax-jsx" "^7.27.1"
+ "@babel/plugin-transform-modules-commonjs" "^7.27.1"
+ "@babel/plugin-transform-typescript" "^7.27.1"
+
+"@babel/runtime-corejs3@^7.25.9":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.27.4.tgz#7bfea784d23d8747d94025b2c8e9bd0f35e30ff9"
+ integrity sha512-H7QhL0ucCGOObsUETNbB2PuzF4gAvN8p32P6r91bX7M/hk4bx+3yz2hTwHL9d/Efzwu1upeb4/cd7oSxCzup3w==
+ dependencies:
+ core-js-pure "^3.30.2"
+
+"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.25.9":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.27.4.tgz#a91ec580e6c00c67118127777c316dfd5a5a6abf"
+ integrity sha512-t3yaEOuGu9NlIZ+hIeGbBjFtZT7j2cb2tg0fuaJKeGotchRjjLfrBA9Kwf8quhpP1EUuxModQg04q/mBwyg8uA==
+
+"@babel/template@^7.27.1", "@babel/template@^7.27.2":
+ version "7.27.2"
+ resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.27.2.tgz#fa78ceed3c4e7b63ebf6cb39e5852fca45f6809d"
+ integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==
+ dependencies:
+ "@babel/code-frame" "^7.27.1"
+ "@babel/parser" "^7.27.2"
+ "@babel/types" "^7.27.1"
+
+"@babel/traverse@^7.25.9", "@babel/traverse@^7.27.1", "@babel/traverse@^7.27.3", "@babel/traverse@^7.27.4":
+ version "7.27.4"
+ resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.27.4.tgz#b0045ac7023c8472c3d35effd7cc9ebd638da6ea"
+ integrity sha512-oNcu2QbHqts9BtOWJosOVJapWjBDSxGCpFvikNR5TGDYDQf3JwpIoMzIKrvfoti93cLfPJEG4tH9SPVeyCGgdA==
+ dependencies:
+ "@babel/code-frame" "^7.27.1"
+ "@babel/generator" "^7.27.3"
+ "@babel/parser" "^7.27.4"
+ "@babel/template" "^7.27.2"
+ "@babel/types" "^7.27.3"
+ debug "^4.3.1"
+ globals "^11.1.0"
+
+"@babel/types@^7.21.3", "@babel/types@^7.27.1", "@babel/types@^7.27.3", "@babel/types@^7.4.4":
+ version "7.27.3"
+ resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.27.3.tgz#c0257bedf33aad6aad1f406d35c44758321eb3ec"
+ integrity sha512-Y1GkI4ktrtvmawoSq+4FCVHNryea6uR+qUQy0AGxLSsjCX0nVmkYQMBLHDkXZuo5hGx7eYdnIaslsdBFm7zbUw==
+ dependencies:
+ "@babel/helper-string-parser" "^7.27.1"
+ "@babel/helper-validator-identifier" "^7.27.1"
+
+"@colors/colors@1.5.0":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@colors/colors/-/colors-1.5.0.tgz#bb504579c1cae923e6576a4f5da43d25f97bdbd9"
+ integrity sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==
+
+"@csstools/cascade-layer-name-parser@^2.0.5":
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/@csstools/cascade-layer-name-parser/-/cascade-layer-name-parser-2.0.5.tgz#43f962bebead0052a9fed1a2deeb11f85efcbc72"
+ integrity sha512-p1ko5eHgV+MgXFVa4STPKpvPxr6ReS8oS2jzTukjR74i5zJNyWO1ZM1m8YKBXnzDKWfBN1ztLYlHxbVemDD88A==
+
+"@csstools/color-helpers@^5.0.2":
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/@csstools/color-helpers/-/color-helpers-5.0.2.tgz#82592c9a7c2b83c293d9161894e2a6471feb97b8"
+ integrity sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==
+
+"@csstools/css-calc@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@csstools/css-calc/-/css-calc-2.1.4.tgz#8473f63e2fcd6e459838dd412401d5948f224c65"
+ integrity sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==
+
+"@csstools/css-color-parser@^3.0.10":
+ version "3.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz#79fc68864dd43c3b6782d2b3828bc0fa9d085c10"
+ integrity sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==
+ dependencies:
+ "@csstools/color-helpers" "^5.0.2"
+ "@csstools/css-calc" "^2.1.4"
+
+"@csstools/css-parser-algorithms@^3.0.5":
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz#5755370a9a29abaec5515b43c8b3f2cf9c2e3076"
+ integrity sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==
+
+"@csstools/css-tokenizer@^3.0.4":
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz#333fedabc3fd1a8e5d0100013731cf19e6a8c5d3"
+ integrity sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==
+
+"@csstools/media-query-list-parser@^4.0.3":
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-4.0.3.tgz#7aec77bcb89c2da80ef207e73f474ef9e1b3cdf1"
+ integrity sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==
+
+"@csstools/postcss-cascade-layers@^5.0.1":
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-cascade-layers/-/postcss-cascade-layers-5.0.1.tgz#9640313e64b5e39133de7e38a5aa7f40dc259597"
+ integrity sha512-XOfhI7GShVcKiKwmPAnWSqd2tBR0uxt+runAxttbSp/LY2U16yAVPmAf7e9q4JJ0d+xMNmpwNDLBXnmRCl3HMQ==
+ dependencies:
+ "@csstools/selector-specificity" "^5.0.0"
+ postcss-selector-parser "^7.0.0"
+
+"@csstools/postcss-color-function@^4.0.10":
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-4.0.10.tgz#11ad43a66ef2cc794ab826a07df8b5fa9fb47a3a"
+ integrity sha512-4dY0NBu7NVIpzxZRgh/Q/0GPSz/jLSw0i/u3LTUor0BkQcz/fNhN10mSWBDsL0p9nDb0Ky1PD6/dcGbhACuFTQ==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-color-mix-function@^3.0.10":
+ version "3.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.10.tgz#8c9d0ccfae5c45a9870dd84807ea2995c7a3a514"
+ integrity sha512-P0lIbQW9I4ShE7uBgZRib/lMTf9XMjJkFl/d6w4EMNHu2qvQ6zljJGEcBkw/NsBtq/6q3WrmgxSS8kHtPMkK4Q==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-color-mix-variadic-function-arguments@^1.0.0":
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.0.tgz#0b29cb9b4630d7ed68549db265662d41554a17ed"
+ integrity sha512-Z5WhouTyD74dPFPrVE7KydgNS9VvnjB8qcdes9ARpCOItb4jTnm7cHp4FhxCRUoyhabD0WVv43wbkJ4p8hLAlQ==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-content-alt-text@^2.0.6":
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.6.tgz#548862226eac54bab0ee5f1bf3a9981393ab204b"
+ integrity sha512-eRjLbOjblXq+byyaedQRSrAejKGNAFued+LcbzT+LCL78fabxHkxYjBbxkroONxHHYu2qxhFK2dBStTLPG3jpQ==
+ dependencies:
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-exponential-functions@^2.0.9":
+ version "2.0.9"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-exponential-functions/-/postcss-exponential-functions-2.0.9.tgz#fc03d1272888cb77e64cc1a7d8a33016e4f05c69"
+ integrity sha512-abg2W/PI3HXwS/CZshSa79kNWNZHdJPMBXeZNyPQFbbj8sKO3jXxOt/wF7juJVjyDTc6JrvaUZYFcSBZBhaxjw==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-font-format-keywords@^4.0.0":
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-font-format-keywords/-/postcss-font-format-keywords-4.0.0.tgz#6730836eb0153ff4f3840416cc2322f129c086e6"
+ integrity sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==
+ dependencies:
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-gamut-mapping@^2.0.10":
+ version "2.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-gamut-mapping/-/postcss-gamut-mapping-2.0.10.tgz#f518d941231d721dbecf5b41e3c441885ff2f28b"
+ integrity sha512-QDGqhJlvFnDlaPAfCYPsnwVA6ze+8hhrwevYWlnUeSjkkZfBpcCO42SaUD8jiLlq7niouyLgvup5lh+f1qessg==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-gradients-interpolation-method@^5.0.10":
+ version "5.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.10.tgz#3146da352c31142a721fdba062ac3a6d11dbbec3"
+ integrity sha512-HHPauB2k7Oits02tKFUeVFEU2ox/H3OQVrP3fSOKDxvloOikSal+3dzlyTZmYsb9FlY9p5EUpBtz0//XBmy+aw==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-hwb-function@^4.0.10":
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.10.tgz#f93f3c457e6440ac37ef9b908feb5d901b417d50"
+ integrity sha512-nOKKfp14SWcdEQ++S9/4TgRKchooLZL0TUFdun3nI4KPwCjETmhjta1QT4ICQcGVWQTvrsgMM/aLB5We+kMHhQ==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-ic-unit@^4.0.2":
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.2.tgz#7561e09db65fac8304ceeab9dd3e5c6e43414587"
+ integrity sha512-lrK2jjyZwh7DbxaNnIUjkeDmU8Y6KyzRBk91ZkI5h8nb1ykEfZrtIVArdIjX4DHMIBGpdHrgP0n4qXDr7OHaKA==
+ dependencies:
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-initial@^2.0.1":
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-initial/-/postcss-initial-2.0.1.tgz#c385bd9d8ad31ad159edd7992069e97ceea4d09a"
+ integrity sha512-L1wLVMSAZ4wovznquK0xmC7QSctzO4D0Is590bxpGqhqjboLXYA16dWZpfwImkdOgACdQ9PqXsuRroW6qPlEsg==
+
+"@csstools/postcss-is-pseudo-class@^5.0.1":
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-is-pseudo-class/-/postcss-is-pseudo-class-5.0.1.tgz#12041448fedf01090dd4626022c28b7f7623f58e"
+ integrity sha512-JLp3POui4S1auhDR0n8wHd/zTOWmMsmK3nQd3hhL6FhWPaox5W7j1se6zXOG/aP07wV2ww0lxbKYGwbBszOtfQ==
+ dependencies:
+ "@csstools/selector-specificity" "^5.0.0"
+ postcss-selector-parser "^7.0.0"
+
+"@csstools/postcss-light-dark-function@^2.0.9":
+ version "2.0.9"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.9.tgz#9fb080188907539734a9d5311d2a1cb82531ef38"
+ integrity sha512-1tCZH5bla0EAkFAI2r0H33CDnIBeLUaJh1p+hvvsylJ4svsv2wOmJjJn+OXwUZLXef37GYbRIVKX+X+g6m+3CQ==
+ dependencies:
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-logical-float-and-clear@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-float-and-clear/-/postcss-logical-float-and-clear-3.0.0.tgz#62617564182cf86ab5d4e7485433ad91e4c58571"
+ integrity sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==
+
+"@csstools/postcss-logical-overflow@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overflow/-/postcss-logical-overflow-2.0.0.tgz#c6de7c5f04e3d4233731a847f6c62819bcbcfa1d"
+ integrity sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==
+
+"@csstools/postcss-logical-overscroll-behavior@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-overscroll-behavior/-/postcss-logical-overscroll-behavior-2.0.0.tgz#43c03eaecdf34055ef53bfab691db6dc97a53d37"
+ integrity sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==
+
+"@csstools/postcss-logical-resize@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-resize/-/postcss-logical-resize-3.0.0.tgz#4df0eeb1a61d7bd85395e56a5cce350b5dbfdca6"
+ integrity sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-logical-viewport-units@^3.0.4":
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-logical-viewport-units/-/postcss-logical-viewport-units-3.0.4.tgz#016d98a8b7b5f969e58eb8413447eb801add16fc"
+ integrity sha512-q+eHV1haXA4w9xBwZLKjVKAWn3W2CMqmpNpZUk5kRprvSiBEGMgrNH3/sJZ8UA3JgyHaOt3jwT9uFa4wLX4EqQ==
+ dependencies:
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-media-minmax@^2.0.9":
+ version "2.0.9"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-media-minmax/-/postcss-media-minmax-2.0.9.tgz#184252d5b93155ae526689328af6bdf3fc113987"
+ integrity sha512-af9Qw3uS3JhYLnCbqtZ9crTvvkR+0Se+bBqSr7ykAnl9yKhk6895z9rf+2F4dClIDJWxgn0iZZ1PSdkhrbs2ig==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/media-query-list-parser" "^4.0.3"
+
+"@csstools/postcss-media-queries-aspect-ratio-number-values@^3.0.5":
+ version "3.0.5"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-media-queries-aspect-ratio-number-values/-/postcss-media-queries-aspect-ratio-number-values-3.0.5.tgz#f485c31ec13d6b0fb5c528a3474334a40eff5f11"
+ integrity sha512-zhAe31xaaXOY2Px8IYfoVTB3wglbJUVigGphFLj6exb7cjZRH9A6adyE22XfFK3P2PzwRk0VDeTJmaxpluyrDg==
+ dependencies:
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/media-query-list-parser" "^4.0.3"
+
+"@csstools/postcss-nested-calc@^4.0.0":
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-nested-calc/-/postcss-nested-calc-4.0.0.tgz#754e10edc6958d664c11cde917f44ba144141c62"
+ integrity sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==
+ dependencies:
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-normalize-display-values@^4.0.0":
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.0.tgz#ecdde2daf4e192e5da0c6fd933b6d8aff32f2a36"
+ integrity sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-oklab-function@^4.0.10":
+ version "4.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.10.tgz#d4c23c51dd0be45e6dedde22432d7d0003710780"
+ integrity sha512-ZzZUTDd0fgNdhv8UUjGCtObPD8LYxMH+MJsW9xlZaWTV8Ppr4PtxlHYNMmF4vVWGl0T6f8tyWAKjoI6vePSgAg==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-progressive-custom-properties@^4.1.0":
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.1.0.tgz#70c8d41b577f4023633b7e3791604e0b7f3775bc"
+ integrity sha512-YrkI9dx8U4R8Sz2EJaoeD9fI7s7kmeEBfmO+UURNeL6lQI7VxF6sBE+rSqdCBn4onwqmxFdBU3lTwyYb/lCmxA==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-random-function@^2.0.1":
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-random-function/-/postcss-random-function-2.0.1.tgz#3191f32fe72936e361dadf7dbfb55a0209e2691e"
+ integrity sha512-q+FQaNiRBhnoSNo+GzqGOIBKoHQ43lYz0ICrV+UudfWnEF6ksS6DsBIJSISKQT2Bvu3g4k6r7t0zYrk5pDlo8w==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-relative-color-syntax@^3.0.10":
+ version "3.0.10"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.10.tgz#daa840583969461e1e06b12e9c591e52a790ec86"
+ integrity sha512-8+0kQbQGg9yYG8hv0dtEpOMLwB9M+P7PhacgIzVzJpixxV4Eq9AUQtQw8adMmAJU1RBBmIlpmtmm3XTRd/T00g==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+"@csstools/postcss-scope-pseudo-class@^4.0.1":
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-scope-pseudo-class/-/postcss-scope-pseudo-class-4.0.1.tgz#9fe60e9d6d91d58fb5fc6c768a40f6e47e89a235"
+ integrity sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+"@csstools/postcss-sign-functions@^1.1.4":
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-sign-functions/-/postcss-sign-functions-1.1.4.tgz#a9ac56954014ae4c513475b3f1b3e3424a1e0c12"
+ integrity sha512-P97h1XqRPcfcJndFdG95Gv/6ZzxUBBISem0IDqPZ7WMvc/wlO+yU0c5D/OCpZ5TJoTt63Ok3knGk64N+o6L2Pg==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-stepped-value-functions@^4.0.9":
+ version "4.0.9"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-stepped-value-functions/-/postcss-stepped-value-functions-4.0.9.tgz#36036f1a0e5e5ee2308e72f3c9cb433567c387b9"
+ integrity sha512-h9btycWrsex4dNLeQfyU3y3w40LMQooJWFMm/SK9lrKguHDcFl4VMkncKKoXi2z5rM9YGWbUQABI8BT2UydIcA==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-text-decoration-shorthand@^4.0.2":
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.2.tgz#a3bcf80492e6dda36477538ab8e8943908c9f80a"
+ integrity sha512-8XvCRrFNseBSAGxeaVTaNijAu+FzUvjwFXtcrynmazGb/9WUdsPCpBX+mHEHShVRq47Gy4peYAoxYs8ltUnmzA==
+ dependencies:
+ "@csstools/color-helpers" "^5.0.2"
+ postcss-value-parser "^4.2.0"
+
+"@csstools/postcss-trigonometric-functions@^4.0.9":
+ version "4.0.9"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-trigonometric-functions/-/postcss-trigonometric-functions-4.0.9.tgz#3f94ed2e319b57f2c59720b64e4d0a8a6fb8c3b2"
+ integrity sha512-Hnh5zJUdpNrJqK9v1/E3BbrQhaDTj5YiX7P61TOvUhoDHnUmsNNxcDAgkQ32RrcWx9GVUvfUNPcUkn8R3vIX6A==
+ dependencies:
+ "@csstools/css-calc" "^2.1.4"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+
+"@csstools/postcss-unset-value@^4.0.0":
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/postcss-unset-value/-/postcss-unset-value-4.0.0.tgz#7caa981a34196d06a737754864baf77d64de4bba"
+ integrity sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==
+
+"@csstools/selector-resolve-nested@^3.0.0":
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/selector-resolve-nested/-/selector-resolve-nested-3.0.0.tgz#704a9b637975680e025e069a4c58b3beb3e2752a"
+ integrity sha512-ZoK24Yku6VJU1gS79a5PFmC8yn3wIapiKmPgun0hZgEI5AOqgH2kiPRsPz1qkGv4HL+wuDLH83yQyk6inMYrJQ==
+
+"@csstools/selector-specificity@^5.0.0":
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz#037817b574262134cabd68fc4ec1a454f168407b"
+ integrity sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==
+
+"@csstools/utilities@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@csstools/utilities/-/utilities-2.0.0.tgz#f7ff0fee38c9ffb5646d47b6906e0bc8868bde60"
+ integrity sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==
+
+"@discoveryjs/json-ext@0.5.7":
+ version "0.5.7"
+ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70"
+ integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
+
+"@docsearch/css@3.9.0":
+ version "3.9.0"
+ resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-3.9.0.tgz#3bc29c96bf024350d73b0cfb7c2a7b71bf251cd5"
+ integrity sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA==
+
+"@docsearch/react@^3.9.0":
+ version "3.9.0"
+ resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-3.9.0.tgz#d0842b700c3ee26696786f3c8ae9f10c1a3f0db3"
+ integrity sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ==
+ dependencies:
+ "@algolia/autocomplete-core" "1.17.9"
+ "@algolia/autocomplete-preset-algolia" "1.17.9"
+ "@docsearch/css" "3.9.0"
+ algoliasearch "^5.14.2"
+
+"@docusaurus/babel@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/babel/-/babel-3.8.0.tgz#2f390cc4e588a96ec496d87921e44890899738a6"
+ integrity sha512-9EJwSgS6TgB8IzGk1L8XddJLhZod8fXT4ULYMx6SKqyCBqCFpVCEjR/hNXXhnmtVM2irDuzYoVLGWv7srG/VOA==
+ dependencies:
+ "@babel/core" "^7.25.9"
+ "@babel/generator" "^7.25.9"
+ "@babel/plugin-syntax-dynamic-import" "^7.8.3"
+ "@babel/plugin-transform-runtime" "^7.25.9"
+ "@babel/preset-env" "^7.25.9"
+ "@babel/preset-react" "^7.25.9"
+ "@babel/preset-typescript" "^7.25.9"
+ "@babel/runtime" "^7.25.9"
+ "@babel/runtime-corejs3" "^7.25.9"
+ "@babel/traverse" "^7.25.9"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ babel-plugin-dynamic-import-node "^2.3.3"
+ fs-extra "^11.1.1"
+ tslib "^2.6.0"
+
+"@docusaurus/bundler@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/bundler/-/bundler-3.8.0.tgz#386f54dca594d81bac6b617c71822e0808d6e2f6"
+ integrity sha512-Rq4Z/MSeAHjVzBLirLeMcjLIAQy92pF1OI+2rmt18fSlMARfTGLWRE8Vb+ljQPTOSfJxwDYSzsK6i7XloD2rNA==
+ dependencies:
+ "@babel/core" "^7.25.9"
+ "@docusaurus/babel" "3.8.0"
+ "@docusaurus/cssnano-preset" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ babel-loader "^9.2.1"
+ clean-css "^5.3.2"
+ copy-webpack-plugin "^11.0.0"
+ css-loader "^6.8.1"
+ css-minimizer-webpack-plugin "^5.0.1"
+ cssnano "^6.1.2"
+ file-loader "^6.2.0"
+ html-minifier-terser "^7.2.0"
+ mini-css-extract-plugin "^2.9.1"
+ null-loader "^4.0.1"
+ postcss "^8.4.26"
+ postcss-loader "^7.3.3"
+ postcss-preset-env "^10.1.0"
+ terser-webpack-plugin "^5.3.9"
+ tslib "^2.6.0"
+ url-loader "^4.1.1"
+ webpack "^5.95.0"
+ webpackbar "^6.0.1"
+
+"@docusaurus/core@3.8.0", "@docusaurus/core@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.8.0.tgz#79d5e1084415c8834a8a5cb87162ca13f52fe147"
+ integrity sha512-c7u6zFELmSGPEP9WSubhVDjgnpiHgDqMh1qVdCB7rTflh4Jx0msTYmMiO91Ez0KtHj4sIsDsASnjwfJ2IZp3Vw==
+ dependencies:
+ "@docusaurus/babel" "3.8.0"
+ "@docusaurus/bundler" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ boxen "^6.2.1"
+ chalk "^4.1.2"
+ chokidar "^3.5.3"
+ cli-table3 "^0.6.3"
+ combine-promises "^1.1.0"
+ commander "^5.1.0"
+ core-js "^3.31.1"
+ detect-port "^1.5.1"
+ escape-html "^1.0.3"
+ eta "^2.2.0"
+ eval "^0.1.8"
+ execa "5.1.1"
+ fs-extra "^11.1.1"
+ html-tags "^3.3.1"
+ html-webpack-plugin "^5.6.0"
+ leven "^3.1.0"
+ lodash "^4.17.21"
+ open "^8.4.0"
+ p-map "^4.0.0"
+ prompts "^2.4.2"
+ react-helmet-async "npm:@slorber/react-helmet-async@1.3.0"
+ react-loadable "npm:@docusaurus/react-loadable@6.0.0"
+ react-loadable-ssr-addon-v5-slorber "^1.0.1"
+ react-router "^5.3.4"
+ react-router-config "^5.1.1"
+ react-router-dom "^5.3.4"
+ semver "^7.5.4"
+ serve-handler "^6.1.6"
+ tinypool "^1.0.2"
+ tslib "^2.6.0"
+ update-notifier "^6.0.2"
+ webpack "^5.95.0"
+ webpack-bundle-analyzer "^4.10.2"
+ webpack-dev-server "^4.15.2"
+ webpack-merge "^6.0.1"
+
+"@docusaurus/cssnano-preset@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.8.0.tgz#a70f19e2995be2299f5ef9c3da3e5d4d5c14bff2"
+ integrity sha512-UJ4hAS2T0R4WNy+phwVff2Q0L5+RXW9cwlH6AEphHR5qw3m/yacfWcSK7ort2pMMbDn8uGrD38BTm4oLkuuNoQ==
+ dependencies:
+ cssnano-preset-advanced "^6.1.2"
+ postcss "^8.4.38"
+ postcss-sort-media-queries "^5.2.0"
+ tslib "^2.6.0"
+
+"@docusaurus/faster@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/faster/-/faster-3.8.0.tgz#2814c5ea4f19e10a6cebf9296b6f15f8a621bf61"
+ integrity sha512-v9+8rT2gw/4zIRBwc4fIVhrTH/yFVDQgJgyYZjqr3fgojOypdQCOwkN6Z8dOwTei4/zo+b/zDPB4x1UvghJZRg==
+ dependencies:
+ "@docusaurus/types" "3.8.0"
+ "@rspack/core" "^1.3.10"
+ "@swc/core" "^1.7.39"
+ "@swc/html" "^1.7.39"
+ browserslist "^4.24.2"
+ lightningcss "^1.27.0"
+ swc-loader "^0.2.6"
+ tslib "^2.6.0"
+ webpack "^5.95.0"
+
+"@docusaurus/logger@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.8.0.tgz#c1abbb084a8058dc0047d57070fb9cd0241a679d"
+ integrity sha512-7eEMaFIam5Q+v8XwGqF/n0ZoCld4hV4eCCgQkfcN9Mq5inoZa6PHHW9Wu6lmgzoK5Kx3keEeABcO2SxwraoPDQ==
+ dependencies:
+ chalk "^4.1.2"
+ tslib "^2.6.0"
+
+"@docusaurus/mdx-loader@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.8.0.tgz#2b225cd2b1159cc49b10b1cac63a927a8368274b"
+ integrity sha512-mDPSzssRnpjSdCGuv7z2EIAnPS1MHuZGTaRLwPn4oQwszu4afjWZ/60sfKjTnjBjI8Vl4OgJl2vMmfmiNDX4Ng==
+ dependencies:
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ "@mdx-js/mdx" "^3.0.0"
+ "@slorber/remark-comment" "^1.0.0"
+ escape-html "^1.0.3"
+ estree-util-value-to-estree "^3.0.1"
+ file-loader "^6.2.0"
+ fs-extra "^11.1.1"
+ image-size "^2.0.2"
+ mdast-util-mdx "^3.0.0"
+ mdast-util-to-string "^4.0.0"
+ rehype-raw "^7.0.0"
+ remark-directive "^3.0.0"
+ remark-emoji "^4.0.0"
+ remark-frontmatter "^5.0.0"
+ remark-gfm "^4.0.0"
+ stringify-object "^3.3.0"
+ tslib "^2.6.0"
+ unified "^11.0.3"
+ unist-util-visit "^5.0.0"
+ url-loader "^4.1.1"
+ vfile "^6.0.1"
+ webpack "^5.88.1"
+
+"@docusaurus/module-type-aliases@3.8.0", "@docusaurus/module-type-aliases@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.8.0.tgz#e487052c372538c5dcf2200999e13f328fa5ffaa"
+ integrity sha512-/uMb4Ipt5J/QnD13MpnoC/A4EYAe6DKNWqTWLlGrqsPJwJv73vSwkA25xnYunwfqWk0FlUQfGv/Swdh5eCCg7g==
+ dependencies:
+ "@docusaurus/types" "3.8.0"
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+ "@types/react-router-config" "*"
+ "@types/react-router-dom" "*"
+ react-helmet-async "npm:@slorber/react-helmet-async@1.3.0"
+ react-loadable "npm:@docusaurus/react-loadable@6.0.0"
+
+"@docusaurus/plugin-client-redirects@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-client-redirects/-/plugin-client-redirects-3.8.0.tgz#b4309a998e674632a57f5c76bf7cd9751b8e8c06"
+ integrity sha512-J8f5qzAlO61BnG1I91+N5WH1b/lPWqn6ifTxf/Bluz9JVe1bhFNSl0yW03p+Ff3AFOINDy2ofX70al9nOnOLyw==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ eta "^2.2.0"
+ fs-extra "^11.1.1"
+ lodash "^4.17.21"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-content-blog@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.8.0.tgz#0c200b1fb821e09e9e975c45255e5ddfab06c392"
+ integrity sha512-0SlOTd9R55WEr1GgIXu+hhTT0hzARYx3zIScA5IzpdekZQesI/hKEa5LPHBd415fLkWMjdD59TaW/3qQKpJ0Lg==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/theme-common" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ cheerio "1.0.0-rc.12"
+ feed "^4.2.2"
+ fs-extra "^11.1.1"
+ lodash "^4.17.21"
+ schema-dts "^1.1.2"
+ srcset "^4.0.0"
+ tslib "^2.6.0"
+ unist-util-visit "^5.0.0"
+ utility-types "^3.10.0"
+ webpack "^5.88.1"
+
+"@docusaurus/plugin-content-docs@3.8.0", "@docusaurus/plugin-content-docs@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.8.0.tgz#6aedb1261da1f0c8c2fa11cfaa6df4577a9b7826"
+ integrity sha512-fRDMFLbUN6eVRXcjP8s3Y7HpAt9pzPYh1F/7KKXOCxvJhjjCtbon4VJW0WndEPInVz4t8QUXn5QZkU2tGVCE2g==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/module-type-aliases" "3.8.0"
+ "@docusaurus/theme-common" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ "@types/react-router-config" "^5.0.7"
+ combine-promises "^1.1.0"
+ fs-extra "^11.1.1"
+ js-yaml "^4.1.0"
+ lodash "^4.17.21"
+ schema-dts "^1.1.2"
+ tslib "^2.6.0"
+ utility-types "^3.10.0"
+ webpack "^5.88.1"
+
+"@docusaurus/plugin-content-pages@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.8.0.tgz#2db5f990872684c621665d0d0d8d9b5831fd2999"
+ integrity sha512-39EDx2y1GA0Pxfion5tQZLNJxL4gq6susd1xzetVBjVIQtwpCdyloOfQBAgX0FylqQxfJrYqL0DIUuq7rd7uBw==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ fs-extra "^11.1.1"
+ tslib "^2.6.0"
+ webpack "^5.88.1"
+
+"@docusaurus/plugin-css-cascade-layers@3.8.0", "@docusaurus/plugin-css-cascade-layers@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-css-cascade-layers/-/plugin-css-cascade-layers-3.8.0.tgz#a0741ae32917a88ce7ce76b6f472495fa4bf576d"
+ integrity sha512-/VBTNymPIxQB8oA3ZQ4GFFRYdH4ZxDRRBECxyjRyv486mfUPXfcdk+im4S5mKWa6EK2JzBz95IH/Wu0qQgJ5yQ==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-debug@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.8.0.tgz#297c159ae99924e60042426d2ad6ee0d5e9126b3"
+ integrity sha512-teonJvJsDB9o2OnG6ifbhblg/PXzZvpUKHFgD8dOL1UJ58u0lk8o0ZOkvaYEBa9nDgqzoWrRk9w+e3qaG2mOhQ==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ fs-extra "^11.1.1"
+ react-json-view-lite "^2.3.0"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-google-analytics@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.8.0.tgz#fb97097af331beb13553a384081dc83607539b31"
+ integrity sha512-aKKa7Q8+3xRSRESipNvlFgNp3FNPELKhuo48Cg/svQbGNwidSHbZT03JqbW4cBaQnyyVchO1ttk+kJ5VC9Gx0w==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-google-gtag@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.8.0.tgz#b5a60006c28ac582859a469fb92e53d383b0a055"
+ integrity sha512-ugQYMGF4BjbAW/JIBtVcp+9eZEgT9HRdvdcDudl5rywNPBA0lct+lXMG3r17s02rrhInMpjMahN3Yc9Cb3H5/g==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ "@types/gtag.js" "^0.0.12"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-google-tag-manager@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.8.0.tgz#612aa63e161fb273bf7db2591034c0142951727d"
+ integrity sha512-9juRWxbwZD3SV02Jd9QB6yeN7eu+7T4zB0bvJLcVQwi+am51wAxn2CwbdL0YCCX+9OfiXbADE8D8Q65Hbopu/w==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-sitemap@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.8.0.tgz#a39e3b5aa2f059aba0052ed11a6b4fbf78ac0dad"
+ integrity sha512-fGpOIyJvNiuAb90nSJ2Gfy/hUOaDu6826e5w5UxPmbpCIc7KlBHNAZ5g4L4ZuHhc4hdfq4mzVBsQSnne+8Ze1g==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ fs-extra "^11.1.1"
+ sitemap "^7.1.1"
+ tslib "^2.6.0"
+
+"@docusaurus/plugin-svgr@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/plugin-svgr/-/plugin-svgr-3.8.0.tgz#6d2d43f14b32b4bb2dd8dc87a70c6e78754c1e85"
+ integrity sha512-kEDyry+4OMz6BWLG/lEqrNsL/w818bywK70N1gytViw4m9iAmoxCUT7Ri9Dgs7xUdzCHJ3OujolEmD88Wy44OA==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ "@svgr/core" "8.1.0"
+ "@svgr/webpack" "^8.1.0"
+ tslib "^2.6.0"
+ webpack "^5.88.1"
+
+"@docusaurus/preset-classic@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.8.0.tgz#ac8bc17e3b7b443d8a24f2f1da0c0be396950fef"
+ integrity sha512-qOu6tQDOWv+rpTlKu+eJATCJVGnABpRCPuqf7LbEaQ1mNY//N/P8cHQwkpAU+aweQfarcZ0XfwCqRHJfjeSV/g==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/plugin-content-blog" "3.8.0"
+ "@docusaurus/plugin-content-docs" "3.8.0"
+ "@docusaurus/plugin-content-pages" "3.8.0"
+ "@docusaurus/plugin-css-cascade-layers" "3.8.0"
+ "@docusaurus/plugin-debug" "3.8.0"
+ "@docusaurus/plugin-google-analytics" "3.8.0"
+ "@docusaurus/plugin-google-gtag" "3.8.0"
+ "@docusaurus/plugin-google-tag-manager" "3.8.0"
+ "@docusaurus/plugin-sitemap" "3.8.0"
+ "@docusaurus/plugin-svgr" "3.8.0"
+ "@docusaurus/theme-classic" "3.8.0"
+ "@docusaurus/theme-common" "3.8.0"
+ "@docusaurus/theme-search-algolia" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+
+"@docusaurus/theme-classic@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.8.0.tgz#6d44fb801b86a7c7af01cda0325af1a3300b3ac2"
+ integrity sha512-nQWFiD5ZjoT76OaELt2n33P3WVuuCz8Dt5KFRP2fCBo2r9JCLsp2GJjZpnaG24LZ5/arRjv4VqWKgpK0/YLt7g==
+ dependencies:
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/module-type-aliases" "3.8.0"
+ "@docusaurus/plugin-content-blog" "3.8.0"
+ "@docusaurus/plugin-content-docs" "3.8.0"
+ "@docusaurus/plugin-content-pages" "3.8.0"
+ "@docusaurus/theme-common" "3.8.0"
+ "@docusaurus/theme-translations" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ "@mdx-js/react" "^3.0.0"
+ clsx "^2.0.0"
+ copy-text-to-clipboard "^3.2.0"
+ infima "0.2.0-alpha.45"
+ lodash "^4.17.21"
+ nprogress "^0.2.0"
+ postcss "^8.4.26"
+ prism-react-renderer "^2.3.0"
+ prismjs "^1.29.0"
+ react-router-dom "^5.3.4"
+ rtlcss "^4.1.0"
+ tslib "^2.6.0"
+ utility-types "^3.10.0"
+
+"@docusaurus/theme-common@3.8.0", "@docusaurus/theme-common@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.8.0.tgz#102c385c3d1d3b7a6b52d1911c7e88c38d9a977e"
+ integrity sha512-YqV2vAWpXGLA+A3PMLrOMtqgTHJLDcT+1Caa6RF7N4/IWgrevy5diY8oIHFkXR/eybjcrFFjUPrHif8gSGs3Tw==
+ dependencies:
+ "@docusaurus/mdx-loader" "3.8.0"
+ "@docusaurus/module-type-aliases" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+ "@types/react-router-config" "*"
+ clsx "^2.0.0"
+ parse-numeric-range "^1.3.0"
+ prism-react-renderer "^2.3.0"
+ tslib "^2.6.0"
+ utility-types "^3.10.0"
+
+"@docusaurus/theme-search-algolia@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.8.0.tgz#21c2f18e07a73d13ca3b44fcf0ae9aac33bef60f"
+ integrity sha512-GBZ5UOcPgiu6nUw153+0+PNWvFKweSnvKIL6Rp04H9olKb475jfKjAwCCtju5D2xs5qXHvCMvzWOg5o9f6DtuQ==
+ dependencies:
+ "@docsearch/react" "^3.9.0"
+ "@docusaurus/core" "3.8.0"
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/plugin-content-docs" "3.8.0"
+ "@docusaurus/theme-common" "3.8.0"
+ "@docusaurus/theme-translations" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-validation" "3.8.0"
+ algoliasearch "^5.17.1"
+ algoliasearch-helper "^3.22.6"
+ clsx "^2.0.0"
+ eta "^2.2.0"
+ fs-extra "^11.1.1"
+ lodash "^4.17.21"
+ tslib "^2.6.0"
+ utility-types "^3.10.0"
+
+"@docusaurus/theme-translations@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.8.0.tgz#deb64dccab74361624c3cb352a4949a7ac868c74"
+ integrity sha512-1DTy/snHicgkCkryWq54fZvsAglTdjTx4qjOXgqnXJ+DIty1B+aPQrAVUu8LiM+6BiILfmNxYsxhKTj+BS3PZg==
+ dependencies:
+ fs-extra "^11.1.1"
+ tslib "^2.6.0"
+
+"@docusaurus/tsconfig@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/tsconfig/-/tsconfig-3.8.0.tgz#ea7ee0917e1562cf0a6e95e049c42f1f61351f32"
+ integrity sha512-utLl48nNjSYBoq47RKukZ9fPLEX3nJWThzrujb0ndQQ1jc/gh4RhTRaAqItH9nImnsgGKmLMnyoMBpfGmoop+w==
+
+"@docusaurus/types@3.8.0", "@docusaurus/types@^3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.8.0.tgz#f6cd31c4e3e392e0270b8137d7fe4365ea7a022e"
+ integrity sha512-RDEClpwNxZq02c+JlaKLWoS13qwWhjcNsi2wG1UpzmEnuti/z1Wx4SGpqbUqRPNSd8QWWePR8Cb7DvG0VN/TtA==
+ dependencies:
+ "@mdx-js/mdx" "^3.0.0"
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+ commander "^5.1.0"
+ joi "^17.9.2"
+ react-helmet-async "npm:@slorber/react-helmet-async@1.3.0"
+ utility-types "^3.10.0"
+ webpack "^5.95.0"
+ webpack-merge "^5.9.0"
+
+"@docusaurus/utils-common@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.8.0.tgz#2b1a6b1ec4a7fac62f1898d523d42f8cc4a8258f"
+ integrity sha512-3TGF+wVTGgQ3pAc9+5jVchES4uXUAhAt9pwv7uws4mVOxL4alvU3ue/EZ+R4XuGk94pDy7CNXjRXpPjlfZXQfw==
+ dependencies:
+ "@docusaurus/types" "3.8.0"
+ tslib "^2.6.0"
+
+"@docusaurus/utils-validation@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.8.0.tgz#aa02e9d998e20998fbcaacd94873878bc3b9a4cd"
+ integrity sha512-MrnEbkigr54HkdFeg8e4FKc4EF+E9dlVwsY3XQZsNkbv3MKZnbHQ5LsNJDIKDROFe8PBf5C4qCAg5TPBpsjrjg==
+ dependencies:
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/utils" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ fs-extra "^11.2.0"
+ joi "^17.9.2"
+ js-yaml "^4.1.0"
+ lodash "^4.17.21"
+ tslib "^2.6.0"
+
+"@docusaurus/utils@3.8.0":
+ version "3.8.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.8.0.tgz#92bad89d2a11f5f246196af153093b12cd79f9ac"
+ integrity sha512-2wvtG28ALCN/A1WCSLxPASFBFzXCnP0YKCAFIPcvEb6imNu1wg7ni/Svcp71b3Z2FaOFFIv4Hq+j4gD7gA0yfQ==
+ dependencies:
+ "@docusaurus/logger" "3.8.0"
+ "@docusaurus/types" "3.8.0"
+ "@docusaurus/utils-common" "3.8.0"
+ escape-string-regexp "^4.0.0"
+ execa "5.1.1"
+ file-loader "^6.2.0"
+ fs-extra "^11.1.1"
+ github-slugger "^1.5.0"
+ globby "^11.1.0"
+ gray-matter "^4.0.3"
+ jiti "^1.20.0"
+ js-yaml "^4.1.0"
+ lodash "^4.17.21"
+ micromatch "^4.0.5"
+ p-queue "^6.6.2"
+ prompts "^2.4.2"
+ resolve-pathname "^3.0.0"
+ tslib "^2.6.0"
+ url-loader "^4.1.1"
+ utility-types "^3.10.0"
+ webpack "^5.88.1"
+
+"@emotion/hash@^0.9.0":
+ version "0.9.2"
+ resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.9.2.tgz#ff9221b9f58b4dfe61e619a7788734bd63f6898b"
+ integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g==
+
+"@eslint-community/eslint-utils@^4.2.0":
+ version "4.7.0"
+ resolved "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.7.0.tgz#607084630c6c033992a082de6e6fbc1a8b52175a"
+ integrity sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==
+ dependencies:
+ eslint-visitor-keys "^3.4.3"
+
+"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.6.1":
+ version "4.12.1"
+ resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.12.1.tgz#cfc6cffe39df390a3841cde2abccf92eaa7ae0e0"
+ integrity sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==
+
+"@eslint/eslintrc@^2.1.4":
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-2.1.4.tgz#388a269f0f25c1b6adc317b5a2c55714894c70ad"
+ integrity sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==
+ dependencies:
+ ajv "^6.12.4"
+ debug "^4.3.2"
+ espree "^9.6.0"
+ globals "^13.19.0"
+ ignore "^5.2.0"
+ import-fresh "^3.2.1"
+ js-yaml "^4.1.0"
+ minimatch "^3.1.2"
+ strip-json-comments "^3.1.1"
+
+"@eslint/js@8.57.1":
+ version "8.57.1"
+ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.57.1.tgz#de633db3ec2ef6a3c89e2f19038063e8a122e2c2"
+ integrity sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==
+
+"@floating-ui/core@^1.7.1":
+ version "1.7.1"
+ resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.7.1.tgz#1abc6b157d4a936174f9dbd078278c3a81c8bc6b"
+ integrity sha512-azI0DrjMMfIug/ExbBaeDVJXcY0a7EPvPjb2xAJPa4HeimBX+Z18HK8QQR3jb6356SnDDdxx+hinMLcJEDdOjw==
+ dependencies:
+ "@floating-ui/utils" "^0.2.9"
+
+"@floating-ui/dom@^1.0.0":
+ version "1.7.1"
+ resolved "https://registry.yarnpkg.com/@floating-ui/dom/-/dom-1.7.1.tgz#76a4e3cbf7a08edf40c34711cf64e0cc8053d912"
+ integrity sha512-cwsmW/zyw5ltYTUeeYJ60CnQuPqmGwuGVhG9w0PRaRKkAyi38BT5CKrpIbb+jtahSwUl04cWzSx9ZOIxeS6RsQ==
+ dependencies:
+ "@floating-ui/core" "^1.7.1"
+ "@floating-ui/utils" "^0.2.9"
+
+"@floating-ui/react-dom@^2.0.0":
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@floating-ui/react-dom/-/react-dom-2.1.3.tgz#1dea32e59514a67d182f0c89c8975ff959774b61"
+ integrity sha512-huMBfiU9UnQ2oBwIhgzyIiSpVgvlDstU8CX0AF+wS+KzmYMs0J2a3GwuFHV1Lz+jlrQGeC1fF+Nv0QoumyV0bA==
+ dependencies:
+ "@floating-ui/dom" "^1.0.0"
+
+"@floating-ui/utils@^0.2.9":
+ version "0.2.9"
+ resolved "https://registry.yarnpkg.com/@floating-ui/utils/-/utils-0.2.9.tgz#50dea3616bc8191fb8e112283b49eaff03e78429"
+ integrity sha512-MDWhGtE+eHw5JW7lq4qhc5yRLS11ERl1c7Z6Xd0a58DozHES6EnNNwUWbMiG4J9Cgj053Bhk8zvlhFYKVhULwg==
+
+"@fluentui/react-icons@^2.0.271":
+ version "2.0.302"
+ resolved "https://registry.yarnpkg.com/@fluentui/react-icons/-/react-icons-2.0.302.tgz#70e9fba3124013cdbf71cf75e322d232d97c1e2c"
+ integrity sha512-NK8w51dvucc6bu9oNoFZTWhXVelZ93JKnQbUH4Po344NJiBnzblv5ey4Vxz2SJj7T2t3oYBE+kb/ixTxwbxlaQ==
+ dependencies:
+ "@griffel/react" "^1.0.0"
+ tslib "^2.1.0"
+
+"@gerrit0/mini-shiki@^3.2.2":
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/@gerrit0/mini-shiki/-/mini-shiki-3.4.2.tgz#f2ac3989a172cb98fe1ca6f75b31ffa160ed5f9e"
+ integrity sha512-3jXo5bNjvvimvdbIhKGfFxSnKCX+MA8wzHv55ptzk/cx8wOzT+BRcYgj8aFN3yTiTs+zvQQiaZFr7Jce1ZG3fw==
+ dependencies:
+ "@shikijs/engine-oniguruma" "^3.4.2"
+ "@shikijs/langs" "^3.4.2"
+ "@shikijs/themes" "^3.4.2"
+ "@shikijs/types" "^3.4.2"
+ "@shikijs/vscode-textmate" "^10.0.2"
+
+"@griffel/core@^1.19.2":
+ version "1.19.2"
+ resolved "https://registry.yarnpkg.com/@griffel/core/-/core-1.19.2.tgz#994070585bb49795d882355fc0787eb9878db71c"
+ integrity sha512-WkB/QQkjy9dE4vrNYGhQvRRUHFkYVOuaznVOMNTDT4pS9aTJ9XPrMTXXlkpcwaf0D3vNKoerj4zAwnU2lBzbOg==
+ dependencies:
+ "@emotion/hash" "^0.9.0"
+ "@griffel/style-types" "^1.3.0"
+ csstype "^3.1.3"
+ rtl-css-js "^1.16.1"
+ stylis "^4.2.0"
+ tslib "^2.1.0"
+
+"@griffel/react@^1.0.0":
+ version "1.5.30"
+ resolved "https://registry.yarnpkg.com/@griffel/react/-/react-1.5.30.tgz#6638e79d88573e5a71651a909326428cac2ce9c3"
+ integrity sha512-1q4ojbEVFY5YA0j1NamP0WWF4BKh+GHsVugltDYeEgEaVbH3odJ7tJabuhQgY+7Nhka0pyEFWSiHJev0K3FSew==
+ dependencies:
+ "@griffel/core" "^1.19.2"
+ tslib "^2.1.0"
+
+"@griffel/style-types@^1.3.0":
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@griffel/style-types/-/style-types-1.3.0.tgz#42b4f1902a0221a9a8334fda12a2fe88f13d65ee"
+ integrity sha512-bHwD3sUE84Xwv4dH011gOKe1jul77M1S6ZFN9Tnq8pvZ48UMdY//vtES6fv7GRS5wXYT4iqxQPBluAiYAfkpmw==
+ dependencies:
+ csstype "^3.1.3"
+
+"@hapi/hoek@^9.0.0", "@hapi/hoek@^9.3.0":
+ version "9.3.0"
+ resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb"
+ integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==
+
+"@hapi/topo@^5.1.0":
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/@hapi/topo/-/topo-5.1.0.tgz#dc448e332c6c6e37a4dc02fd84ba8d44b9afb012"
+ integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==
+ dependencies:
+ "@hapi/hoek" "^9.0.0"
+
+"@humanwhocodes/config-array@^0.13.0":
+ version "0.13.0"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.13.0.tgz#fb907624df3256d04b9aa2df50d7aa97ec648748"
+ integrity sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==
+ dependencies:
+ "@humanwhocodes/object-schema" "^2.0.3"
+ debug "^4.3.1"
+ minimatch "^3.0.5"
+
+"@humanwhocodes/module-importer@^1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c"
+ integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==
+
+"@humanwhocodes/object-schema@^2.0.3":
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz#4a2868d75d6d6963e423bcf90b7fd1be343409d3"
+ integrity sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==
+
+"@isaacs/cliui@^8.0.2":
+ version "8.0.2"
+ resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550"
+ integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==
+ dependencies:
+ string-width "^5.1.2"
+ string-width-cjs "npm:string-width@^4.2.0"
+ strip-ansi "^7.0.1"
+ strip-ansi-cjs "npm:strip-ansi@^6.0.1"
+ wrap-ansi "^8.1.0"
+ wrap-ansi-cjs "npm:wrap-ansi@^7.0.0"
+
+"@jest/schemas@^29.6.3":
+ version "29.6.3"
+ resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03"
+ integrity sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==
+ dependencies:
+ "@sinclair/typebox" "^0.27.8"
+
+"@jest/types@^29.6.3":
+ version "29.6.3"
+ resolved "https://registry.yarnpkg.com/@jest/types/-/types-29.6.3.tgz#1131f8cf634e7e84c5e77bab12f052af585fba59"
+ integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==
+ dependencies:
+ "@jest/schemas" "^29.6.3"
+ "@types/istanbul-lib-coverage" "^2.0.0"
+ "@types/istanbul-reports" "^3.0.0"
+ "@types/node" "*"
+ "@types/yargs" "^17.0.8"
+ chalk "^4.0.0"
+
+"@jridgewell/gen-mapping@^0.3.2", "@jridgewell/gen-mapping@^0.3.5":
+ version "0.3.8"
+ resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz#4f0e06362e01362f823d348f1872b08f666d8142"
+ integrity sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==
+ dependencies:
+ "@jridgewell/set-array" "^1.2.1"
+ "@jridgewell/sourcemap-codec" "^1.4.10"
+ "@jridgewell/trace-mapping" "^0.3.24"
+
+"@jridgewell/resolve-uri@^3.1.0":
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz#7a0ee601f60f99a20c7c7c5ff0c80388c1189bd6"
+ integrity sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==
+
+"@jridgewell/set-array@^1.2.1":
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280"
+ integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==
+
+"@jridgewell/source-map@^0.3.3":
+ version "0.3.6"
+ resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.6.tgz#9d71ca886e32502eb9362c9a74a46787c36df81a"
+ integrity sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==
+ dependencies:
+ "@jridgewell/gen-mapping" "^0.3.5"
+ "@jridgewell/trace-mapping" "^0.3.25"
+
+"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz#3188bcb273a414b0d215fd22a58540b989b9409a"
+ integrity sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==
+
+"@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25":
+ version "0.3.25"
+ resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0"
+ integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==
+ dependencies:
+ "@jridgewell/resolve-uri" "^3.1.0"
+ "@jridgewell/sourcemap-codec" "^1.4.14"
+
+"@leichtgewicht/ip-codec@^2.0.1":
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz#4fc56c15c580b9adb7dc3c333a134e540b44bfb1"
+ integrity sha512-Vo+PSpZG2/fmgmiNzYK9qWRh8h/CHrwD0mo1h1DzL4yzHNSfWYujGTYsWGreD000gcgmZ7K4Ys6Tx9TxtsKdDw==
+
+"@mdx-js/mdx@^3.0.0":
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/@mdx-js/mdx/-/mdx-3.1.0.tgz#10235cab8ad7d356c262e8c21c68df5850a97dc3"
+ integrity sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ "@types/estree-jsx" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ "@types/mdx" "^2.0.0"
+ collapse-white-space "^2.0.0"
+ devlop "^1.0.0"
+ estree-util-is-identifier-name "^3.0.0"
+ estree-util-scope "^1.0.0"
+ estree-walker "^3.0.0"
+ hast-util-to-jsx-runtime "^2.0.0"
+ markdown-extensions "^2.0.0"
+ recma-build-jsx "^1.0.0"
+ recma-jsx "^1.0.0"
+ recma-stringify "^1.0.0"
+ rehype-recma "^1.0.0"
+ remark-mdx "^3.0.0"
+ remark-parse "^11.0.0"
+ remark-rehype "^11.0.0"
+ source-map "^0.7.0"
+ unified "^11.0.0"
+ unist-util-position-from-estree "^2.0.0"
+ unist-util-stringify-position "^4.0.0"
+ unist-util-visit "^5.0.0"
+ vfile "^6.0.0"
+
+"@mdx-js/react@^3.0.0", "@mdx-js/react@^3.1.0":
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/@mdx-js/react/-/react-3.1.0.tgz#c4522e335b3897b9a845db1dbdd2f966ae8fb0ed"
+ integrity sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==
+ dependencies:
+ "@types/mdx" "^2.0.0"
+
+"@module-federation/error-codes@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/error-codes/-/error-codes-0.14.3.tgz#e6b5c380240f5650bcf67a1906b22271b891d2c5"
+ integrity sha512-sBJ3XKU9g5Up31jFeXPFsD8AgORV7TLO/cCSMuRewSfgYbG/3vSKLJmfHrO6+PvjZSb9VyV2UaF02ojktW65vw==
+
+"@module-federation/runtime-core@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/runtime-core/-/runtime-core-0.14.3.tgz#434025c1304278e30bbc024aaeab086d80f9e196"
+ integrity sha512-xMFQXflLVW/AJTWb4soAFP+LB4XuhE7ryiLIX8oTyUoBBgV6U2OPghnFljPjeXbud72O08NYlQ1qsHw1kN/V8Q==
+ dependencies:
+ "@module-federation/error-codes" "0.14.3"
+ "@module-federation/sdk" "0.14.3"
+
+"@module-federation/runtime-tools@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/runtime-tools/-/runtime-tools-0.14.3.tgz#fa1414b449cbe5fb6dcbde4ed02c85e0cdcc758b"
+ integrity sha512-QBETX7iMYXdSa3JtqFlYU+YkpymxETZqyIIRiqg0gW+XGpH3jgU68yjrme2NBJp7URQi/CFZG8KWtfClk0Pjgw==
+ dependencies:
+ "@module-federation/runtime" "0.14.3"
+ "@module-federation/webpack-bundler-runtime" "0.14.3"
+
+"@module-federation/runtime@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/runtime/-/runtime-0.14.3.tgz#fc9142c093001c67a0fcacaf53d4eb5749e9bbd6"
+ integrity sha512-7ZHpa3teUDVhraYdxQGkfGHzPbjna4LtwbpudgzAxSLLFxLDNanaxCuSeIgSM9c+8sVUNC9kvzUgJEZB0krPJw==
+ dependencies:
+ "@module-federation/error-codes" "0.14.3"
+ "@module-federation/runtime-core" "0.14.3"
+ "@module-federation/sdk" "0.14.3"
+
+"@module-federation/sdk@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/sdk/-/sdk-0.14.3.tgz#a03e37f1cb018283542cfc66a87e7a37e39cfe1a"
+ integrity sha512-THJZMfbXpqjQOLblCQ8jjcBFFXsGRJwUWE9l/Q4SmuCSKMgAwie7yLT0qSGrHmyBYrsUjAuy+xNB4nfKP0pnGw==
+
+"@module-federation/webpack-bundler-runtime@0.14.3":
+ version "0.14.3"
+ resolved "https://registry.yarnpkg.com/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.14.3.tgz#2d6bf63e93f626a2f5e469bc57fb5bcc098fee37"
+ integrity sha512-hIyJFu34P7bY2NeMIUHAS/mYUHEY71VTAsN0A0AqEJFSVPszheopu9VdXq0VDLrP9KQfuXT8SDxeYeJXyj0mgA==
+ dependencies:
+ "@module-federation/runtime" "0.14.3"
+ "@module-federation/sdk" "0.14.3"
+
+"@nodelib/fs.scandir@2.1.5":
+ version "2.1.5"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
+ integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
+ dependencies:
+ "@nodelib/fs.stat" "2.0.5"
+ run-parallel "^1.1.9"
+
+"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
+ integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
+
+"@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8":
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
+ integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
+ dependencies:
+ "@nodelib/fs.scandir" "2.1.5"
+ fastq "^1.6.0"
+
+"@pkgjs/parseargs@^0.11.0":
+ version "0.11.0"
+ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33"
+ integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==
+
+"@pnpm/config.env-replace@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c"
+ integrity sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==
+
+"@pnpm/network.ca-file@^1.0.1":
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz#2ab05e09c1af0cdf2fcf5035bea1484e222f7983"
+ integrity sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==
+ dependencies:
+ graceful-fs "4.2.10"
+
+"@pnpm/npm-conf@^2.1.0":
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz#bb375a571a0bd63ab0a23bece33033c683e9b6b0"
+ integrity sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==
+ dependencies:
+ "@pnpm/config.env-replace" "^1.1.0"
+ "@pnpm/network.ca-file" "^1.0.1"
+ config-chain "^1.1.11"
+
+"@polka/url@^1.0.0-next.24":
+ version "1.0.0-next.29"
+ resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.29.tgz#5a40109a1ab5f84d6fd8fc928b19f367cbe7e7b1"
+ integrity sha512-wwQAWhWSuHaag8c4q/KN/vCoeOJYshAIvMQwD4GpSb3OiZklFfvAgmj0VCBBImRpuF/aFgIRzllXlVX93Jevww==
+
+"@radix-ui/number@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/number/-/number-1.1.1.tgz#7b2c9225fbf1b126539551f5985769d0048d9090"
+ integrity sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==
+
+"@radix-ui/primitive@1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-1.1.2.tgz#83f415c4425f21e3d27914c12b3272a32e3dae65"
+ integrity sha512-XnbHrrprsNqZKQhStrSwgRUQzoCI1glLzdw79xiZPoofhGICeZRSQ3dIxAKH1gb3OHfNf4d6f+vAv3kil2eggA==
+
+"@radix-ui/react-arrow@1.1.7":
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-arrow/-/react-arrow-1.1.7.tgz#e14a2657c81d961598c5e72b73dd6098acc04f09"
+ integrity sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==
+ dependencies:
+ "@radix-ui/react-primitive" "2.1.3"
+
+"@radix-ui/react-collection@1.1.7":
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-collection/-/react-collection-1.1.7.tgz#d05c25ca9ac4695cc19ba91f42f686e3ea2d9aec"
+ integrity sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==
+ dependencies:
+ "@radix-ui/react-compose-refs" "1.1.2"
+ "@radix-ui/react-context" "1.1.2"
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-slot" "1.2.3"
+
+"@radix-ui/react-compose-refs@1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.2.tgz#a2c4c47af6337048ee78ff6dc0d090b390d2bb30"
+ integrity sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==
+
+"@radix-ui/react-context@1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-1.1.2.tgz#61628ef269a433382c364f6f1e3788a6dc213a36"
+ integrity sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==
+
+"@radix-ui/react-direction@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-direction/-/react-direction-1.1.1.tgz#39e5a5769e676c753204b792fbe6cf508e550a14"
+ integrity sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==
+
+"@radix-ui/react-dismissable-layer@1.1.10":
+ version "1.1.10"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.10.tgz#429b9bada3672c6895a5d6a642aca6ecaf4f18c3"
+ integrity sha512-IM1zzRV4W3HtVgftdQiiOmA0AdJlCtMLe00FXaHwgt3rAnNsIyDqshvkIW3hj/iu5hu8ERP7KIYki6NkqDxAwQ==
+ dependencies:
+ "@radix-ui/primitive" "1.1.2"
+ "@radix-ui/react-compose-refs" "1.1.2"
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-use-callback-ref" "1.1.1"
+ "@radix-ui/react-use-escape-keydown" "1.1.1"
+
+"@radix-ui/react-focus-guards@1.1.2":
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.2.tgz#4ec9a7e50925f7fb661394460045b46212a33bed"
+ integrity sha512-fyjAACV62oPV925xFCrH8DR5xWhg9KYtJT4s3u54jxp+L/hbpTY2kIeEFFbFe+a/HCE94zGQMZLIpVTPVZDhaA==
+
+"@radix-ui/react-focus-scope@1.1.7":
+ version "1.1.7"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.7.tgz#dfe76fc103537d80bf42723a183773fd07bfb58d"
+ integrity sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==
+ dependencies:
+ "@radix-ui/react-compose-refs" "1.1.2"
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-use-callback-ref" "1.1.1"
+
+"@radix-ui/react-id@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-1.1.1.tgz#1404002e79a03fe062b7e3864aa01e24bd1471f7"
+ integrity sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==
+ dependencies:
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+
+"@radix-ui/react-popper@1.2.7":
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-popper/-/react-popper-1.2.7.tgz#531cf2eebb3d3270d58f7d8136e4517646429978"
+ integrity sha512-IUFAccz1JyKcf/RjB552PlWwxjeCJB8/4KxT7EhBHOJM+mN7LdW+B3kacJXILm32xawcMMjb2i0cIZpo+f9kiQ==
+ dependencies:
+ "@floating-ui/react-dom" "^2.0.0"
+ "@radix-ui/react-arrow" "1.1.7"
+ "@radix-ui/react-compose-refs" "1.1.2"
+ "@radix-ui/react-context" "1.1.2"
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-use-callback-ref" "1.1.1"
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+ "@radix-ui/react-use-rect" "1.1.1"
+ "@radix-ui/react-use-size" "1.1.1"
+ "@radix-ui/rect" "1.1.1"
+
+"@radix-ui/react-portal@1.1.9":
+ version "1.1.9"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-1.1.9.tgz#14c3649fe48ec474ac51ed9f2b9f5da4d91c4472"
+ integrity sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==
+ dependencies:
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+
+"@radix-ui/react-primitive@2.1.3":
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-2.1.3.tgz#db9b8bcff49e01be510ad79893fb0e4cda50f1bc"
+ integrity sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==
+ dependencies:
+ "@radix-ui/react-slot" "1.2.3"
+
+"@radix-ui/react-select@^2.1.1":
+ version "2.2.5"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-select/-/react-select-2.2.5.tgz#9e2fa5b8f4cc99b86ef5bba3cb9b73828afb51f0"
+ integrity sha512-HnMTdXEVuuyzx63ME0ut4+sEMYW6oouHWNGUZc7ddvUWIcfCva/AMoqEW/3wnEllriMWBa0RHspCYnfCWJQYmA==
+ dependencies:
+ "@radix-ui/number" "1.1.1"
+ "@radix-ui/primitive" "1.1.2"
+ "@radix-ui/react-collection" "1.1.7"
+ "@radix-ui/react-compose-refs" "1.1.2"
+ "@radix-ui/react-context" "1.1.2"
+ "@radix-ui/react-direction" "1.1.1"
+ "@radix-ui/react-dismissable-layer" "1.1.10"
+ "@radix-ui/react-focus-guards" "1.1.2"
+ "@radix-ui/react-focus-scope" "1.1.7"
+ "@radix-ui/react-id" "1.1.1"
+ "@radix-ui/react-popper" "1.2.7"
+ "@radix-ui/react-portal" "1.1.9"
+ "@radix-ui/react-primitive" "2.1.3"
+ "@radix-ui/react-slot" "1.2.3"
+ "@radix-ui/react-use-callback-ref" "1.1.1"
+ "@radix-ui/react-use-controllable-state" "1.2.2"
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+ "@radix-ui/react-use-previous" "1.1.1"
+ "@radix-ui/react-visually-hidden" "1.2.3"
+ aria-hidden "^1.2.4"
+ react-remove-scroll "^2.6.3"
+
+"@radix-ui/react-slot@1.2.3":
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-1.2.3.tgz#502d6e354fc847d4169c3bc5f189de777f68cfe1"
+ integrity sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==
+ dependencies:
+ "@radix-ui/react-compose-refs" "1.1.2"
+
+"@radix-ui/react-use-callback-ref@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.1.tgz#62a4dba8b3255fdc5cc7787faeac1c6e4cc58d40"
+ integrity sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==
+
+"@radix-ui/react-use-controllable-state@1.2.2":
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.2.2.tgz#905793405de57d61a439f4afebbb17d0645f3190"
+ integrity sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==
+ dependencies:
+ "@radix-ui/react-use-effect-event" "0.0.2"
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+
+"@radix-ui/react-use-effect-event@0.0.2":
+ version "0.0.2"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-effect-event/-/react-use-effect-event-0.0.2.tgz#090cf30d00a4c7632a15548512e9152217593907"
+ integrity sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==
+ dependencies:
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+
+"@radix-ui/react-use-escape-keydown@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.1.tgz#b3fed9bbea366a118f40427ac40500aa1423cc29"
+ integrity sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==
+ dependencies:
+ "@radix-ui/react-use-callback-ref" "1.1.1"
+
+"@radix-ui/react-use-layout-effect@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.1.tgz#0c4230a9eed49d4589c967e2d9c0d9d60a23971e"
+ integrity sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==
+
+"@radix-ui/react-use-previous@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-previous/-/react-use-previous-1.1.1.tgz#1a1ad5568973d24051ed0af687766f6c7cb9b5b5"
+ integrity sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==
+
+"@radix-ui/react-use-rect@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-rect/-/react-use-rect-1.1.1.tgz#01443ca8ed071d33023c1113e5173b5ed8769152"
+ integrity sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==
+ dependencies:
+ "@radix-ui/rect" "1.1.1"
+
+"@radix-ui/react-use-size@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-use-size/-/react-use-size-1.1.1.tgz#6de276ffbc389a537ffe4316f5b0f24129405b37"
+ integrity sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==
+ dependencies:
+ "@radix-ui/react-use-layout-effect" "1.1.1"
+
+"@radix-ui/react-visually-hidden@1.2.3":
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.2.3.tgz#a8c38c8607735dc9f05c32f87ab0f9c2b109efbf"
+ integrity sha512-pzJq12tEaaIhqjbzpCuv/OypJY/BPavOofm+dbab+MHLajy277+1lLm6JFcGgF5eskJ6mquGirhXY2GD/8u8Ug==
+ dependencies:
+ "@radix-ui/react-primitive" "2.1.3"
+
+"@radix-ui/rect@1.1.1":
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-1.1.1.tgz#78244efe12930c56fd255d7923865857c41ac8cb"
+ integrity sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==
+
+"@rspack/binding-darwin-arm64@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-1.3.13.tgz#bb4463b9269387ba932840e4e73248d1f08dc353"
+ integrity sha512-1c+KC+TFaKRWu+SO4cJZ5oHKOFuDhTIitbSIG9boJpDRoZmJxHDmFyTTxVI2r2QUjxJaDdUlSFepybhhJ3UiPg==
+
+"@rspack/binding-darwin-x64@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-darwin-x64/-/binding-darwin-x64-1.3.13.tgz#31ffa263591ad1796d0d6e2aa9e2aac20fb5a6f2"
+ integrity sha512-YBF+XjoGSjhJ5o/xOaCBd39BntMudMeup11j2Dz+rrTH+wG6TvH017HYIgDMT3UBVv66eNsQpzA0ZW5raJ0lbA==
+
+"@rspack/binding-linux-arm64-gnu@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.3.13.tgz#f10fdce01619b85fe39bca6612611376c2ec42a6"
+ integrity sha512-II71Ez7Z0/5ZpcK+kCgvXFKK0AysS9La8LNQbqf2wmzxDJi5H8eVUiwkM5BabICxzOWYtTGJLZ89QbCYaFbqCg==
+
+"@rspack/binding-linux-arm64-musl@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.3.13.tgz#8f4b29efa953a89e73860dc1d1cb00d0afd8980d"
+ integrity sha512-JFFhqglKVjlWcmmVwdS80Kw6v35yY9xlQJup09mL8gMtiiFiT36wTyTujz15Iv+2+S/Dv0Z+UeUJ99KRbQxgcQ==
+
+"@rspack/binding-linux-x64-gnu@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.3.13.tgz#b7792f78789fa99beb8622e5eaf012c4ccd91e1a"
+ integrity sha512-ogm4rt+PMQHkMg/0mA9VTjfGE3c+YaHZQT8KrFgTsoj2YCW9WO2J/RjdMc6STG4Y10BWO9Ar2azLxxHrKb+8UQ==
+
+"@rspack/binding-linux-x64-musl@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-1.3.13.tgz#aca11e2a5a6751c7db72ecb9e30aeb6d9593b943"
+ integrity sha512-8icDyXhg1iMKhQ3X2FTgAGQTQqnli9FyqHCuRIBauxy1V4W478Mp9Y+V+ErVUY1YxbZEUrkt3a59hssjGeDEeg==
+
+"@rspack/binding-win32-arm64-msvc@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.3.13.tgz#a90186ab3002a37b3c7cc4754fc0bb525468cbd9"
+ integrity sha512-y5XxwxDW4DrPKy+8P6t7I7IbA7B/iXjLoaS0jP/EwjSHWf/EnZzq9MgWqdop1km8Mwx6s1zcj+0qs73jL2N98w==
+
+"@rspack/binding-win32-ia32-msvc@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.3.13.tgz#ef1a097e8009796b3aa3ef061996f11bbd9b40cb"
+ integrity sha512-n24sznsZe3lC8ok6MgsT1nG4lVx3SQ/lZ0g23i2BGMRN8/p+kaC2eoPaHe/4m9Liz/W4Z5LhZCCvg4DQMEzeLA==
+
+"@rspack/binding-win32-x64-msvc@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.3.13.tgz#145ccae0a6f29fb317aa9709898b74c11660fff3"
+ integrity sha512-CLyTNo0OrOD7xFKusFciKKG+8CXPowjPz+tcdkkrKYqGzAPzOcszblikITJhMbc7DLMzdTRSZUTkKLRydYH9sw==
+
+"@rspack/binding@1.3.13":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/binding/-/binding-1.3.13.tgz#a7bfd429507c7911aac9be13486d05ad97b860f1"
+ integrity sha512-BdM6tfLCP7/0H5uGc+okG6AYsU9JEnR5bRHq4YuGaS4tb+N5ct0czm0LprGMZ7zRAnIql/zoLn/bHlheNxZw3g==
+ optionalDependencies:
+ "@rspack/binding-darwin-arm64" "1.3.13"
+ "@rspack/binding-darwin-x64" "1.3.13"
+ "@rspack/binding-linux-arm64-gnu" "1.3.13"
+ "@rspack/binding-linux-arm64-musl" "1.3.13"
+ "@rspack/binding-linux-x64-gnu" "1.3.13"
+ "@rspack/binding-linux-x64-musl" "1.3.13"
+ "@rspack/binding-win32-arm64-msvc" "1.3.13"
+ "@rspack/binding-win32-ia32-msvc" "1.3.13"
+ "@rspack/binding-win32-x64-msvc" "1.3.13"
+
+"@rspack/core@^1.3.10":
+ version "1.3.13"
+ resolved "https://registry.yarnpkg.com/@rspack/core/-/core-1.3.13.tgz#1988d16b56fe9483023ca0a55e203b94fb52eee6"
+ integrity sha512-j9jsNzKeEN14yraqX4jAFrM/nMfX5YEPgEMPlp4g5NAu3siaBa8gDF5brbdNq6TDXnTHK1MwwjaMdKA+3YeBKQ==
+ dependencies:
+ "@module-federation/runtime-tools" "0.14.3"
+ "@rspack/binding" "1.3.13"
+ "@rspack/lite-tapable" "1.0.1"
+
+"@rspack/lite-tapable@1.0.1":
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/@rspack/lite-tapable/-/lite-tapable-1.0.1.tgz#d4540a5d28bd6177164bc0ba0bee4bdec0458591"
+ integrity sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==
+
+"@shikijs/engine-oniguruma@^3.4.2":
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/@shikijs/engine-oniguruma/-/engine-oniguruma-3.4.2.tgz#e8187f86b1f58b9bc2544994de2cc769ba44d1f8"
+ integrity sha512-zcZKMnNndgRa3ORja6Iemsr3DrLtkX3cAF7lTJkdMB6v9alhlBsX9uNiCpqofNrXOvpA3h6lHcLJxgCIhVOU5Q==
+ dependencies:
+ "@shikijs/types" "3.4.2"
+ "@shikijs/vscode-textmate" "^10.0.2"
+
+"@shikijs/langs@^3.4.2":
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.4.2.tgz#1d37272dac923c08789e1c8249f73384ae5ef59a"
+ integrity sha512-H6azIAM+OXD98yztIfs/KH5H4PU39t+SREhmM8LaNXyUrqj2mx+zVkr8MWYqjceSjDw9I1jawm1WdFqU806rMA==
+ dependencies:
+ "@shikijs/types" "3.4.2"
+
+"@shikijs/themes@^3.4.2":
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.4.2.tgz#05ef9d924c73ba841e2209e918642aa385b91da7"
+ integrity sha512-qAEuAQh+brd8Jyej2UDDf+b4V2g1Rm8aBIdvt32XhDPrHvDkEnpb7Kzc9hSuHUxz0Iuflmq7elaDuQAP9bHIhg==
+ dependencies:
+ "@shikijs/types" "3.4.2"
+
+"@shikijs/types@3.4.2", "@shikijs/types@^3.4.2":
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.4.2.tgz#b5cd9d366a2cef075b1fa4dfe740adc0116a79c9"
+ integrity sha512-zHC1l7L+eQlDXLnxvM9R91Efh2V4+rN3oMVS2swCBssbj2U/FBwybD1eeLaq8yl/iwT+zih8iUbTBCgGZOYlVg==
+ dependencies:
+ "@shikijs/vscode-textmate" "^10.0.2"
+ "@types/hast" "^3.0.4"
+
+"@shikijs/vscode-textmate@^10.0.2":
+ version "10.0.2"
+ resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz#a90ab31d0cc1dfb54c66a69e515bf624fa7b2224"
+ integrity sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==
+
+"@sideway/address@^4.1.5":
+ version "4.1.5"
+ resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5"
+ integrity sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==
+ dependencies:
+ "@hapi/hoek" "^9.0.0"
+
+"@sideway/formula@^3.0.1":
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/@sideway/formula/-/formula-3.0.1.tgz#80fcbcbaf7ce031e0ef2dd29b1bfc7c3f583611f"
+ integrity sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==
+
+"@sideway/pinpoint@^2.0.0":
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/@sideway/pinpoint/-/pinpoint-2.0.0.tgz#cff8ffadc372ad29fd3f78277aeb29e632cc70df"
+ integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==
+
+"@sinclair/typebox@^0.27.8":
+ version "0.27.8"
+ resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e"
+ integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==
+
+"@sindresorhus/is@^4.6.0":
+ version "4.6.0"
+ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.6.0.tgz#3c7c9c46e678feefe7a2e5bb609d3dbd665ffb3f"
+ integrity sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==
+
+"@sindresorhus/is@^5.2.0":
+ version "5.6.0"
+ resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-5.6.0.tgz#41dd6093d34652cddb5d5bdeee04eafc33826668"
+ integrity sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==
+
+"@slorber/remark-comment@^1.0.0":
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/@slorber/remark-comment/-/remark-comment-1.0.0.tgz#2a020b3f4579c89dec0361673206c28d67e08f5a"
+ integrity sha512-RCE24n7jsOj1M0UPvIQCHTe7fI0sFL4S2nwKVWwHyVr/wI/H8GosgsJGyhnsZoGFnD/P2hLf1mSbrrgSLN93NA==
+ dependencies:
+ micromark-factory-space "^1.0.0"
+ micromark-util-character "^1.1.0"
+ micromark-util-symbol "^1.0.1"
+
+"@svgr/babel-plugin-add-jsx-attribute@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-8.0.0.tgz#4001f5d5dd87fa13303e36ee106e3ff3a7eb8b22"
+ integrity sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==
+
+"@svgr/babel-plugin-remove-jsx-attribute@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz#69177f7937233caca3a1afb051906698f2f59186"
+ integrity sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==
+
+"@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz#c2c48104cfd7dcd557f373b70a56e9e3bdae1d44"
+ integrity sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==
+
+"@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-8.0.0.tgz#8fbb6b2e91fa26ac5d4aa25c6b6e4f20f9c0ae27"
+ integrity sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==
+
+"@svgr/babel-plugin-svg-dynamic-title@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-8.0.0.tgz#1d5ba1d281363fc0f2f29a60d6d936f9bbc657b0"
+ integrity sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==
+
+"@svgr/babel-plugin-svg-em-dimensions@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-8.0.0.tgz#35e08df300ea8b1d41cb8f62309c241b0369e501"
+ integrity sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==
+
+"@svgr/babel-plugin-transform-react-native-svg@8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-8.1.0.tgz#90a8b63998b688b284f255c6a5248abd5b28d754"
+ integrity sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==
+
+"@svgr/babel-plugin-transform-svg-component@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-8.0.0.tgz#013b4bfca88779711f0ed2739f3f7efcefcf4f7e"
+ integrity sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==
+
+"@svgr/babel-preset@8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/babel-preset/-/babel-preset-8.1.0.tgz#0e87119aecdf1c424840b9d4565b7137cabf9ece"
+ integrity sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==
+ dependencies:
+ "@svgr/babel-plugin-add-jsx-attribute" "8.0.0"
+ "@svgr/babel-plugin-remove-jsx-attribute" "8.0.0"
+ "@svgr/babel-plugin-remove-jsx-empty-expression" "8.0.0"
+ "@svgr/babel-plugin-replace-jsx-attribute-value" "8.0.0"
+ "@svgr/babel-plugin-svg-dynamic-title" "8.0.0"
+ "@svgr/babel-plugin-svg-em-dimensions" "8.0.0"
+ "@svgr/babel-plugin-transform-react-native-svg" "8.1.0"
+ "@svgr/babel-plugin-transform-svg-component" "8.0.0"
+
+"@svgr/core@8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/core/-/core-8.1.0.tgz#41146f9b40b1a10beaf5cc4f361a16a3c1885e88"
+ integrity sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==
+ dependencies:
+ "@babel/core" "^7.21.3"
+ "@svgr/babel-preset" "8.1.0"
+ camelcase "^6.2.0"
+ cosmiconfig "^8.1.3"
+ snake-case "^3.0.4"
+
+"@svgr/hast-util-to-babel-ast@8.0.0":
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-8.0.0.tgz#6952fd9ce0f470e1aded293b792a2705faf4ffd4"
+ integrity sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==
+ dependencies:
+ "@babel/types" "^7.21.3"
+ entities "^4.4.0"
+
+"@svgr/plugin-jsx@8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/plugin-jsx/-/plugin-jsx-8.1.0.tgz#96969f04a24b58b174ee4cd974c60475acbd6928"
+ integrity sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==
+ dependencies:
+ "@babel/core" "^7.21.3"
+ "@svgr/babel-preset" "8.1.0"
+ "@svgr/hast-util-to-babel-ast" "8.0.0"
+ svg-parser "^2.0.4"
+
+"@svgr/plugin-svgo@8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/plugin-svgo/-/plugin-svgo-8.1.0.tgz#b115b7b967b564f89ac58feae89b88c3decd0f00"
+ integrity sha512-Ywtl837OGO9pTLIN/onoWLmDQ4zFUycI1g76vuKGEz6evR/ZTJlJuz3G/fIkb6OVBJ2g0o6CGJzaEjfmEo3AHA==
+ dependencies:
+ cosmiconfig "^8.1.3"
+ deepmerge "^4.3.1"
+ svgo "^3.0.2"
+
+"@svgr/webpack@^8.1.0":
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/@svgr/webpack/-/webpack-8.1.0.tgz#16f1b5346f102f89fda6ec7338b96a701d8be0c2"
+ integrity sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==
+ dependencies:
+ "@babel/core" "^7.21.3"
+ "@babel/plugin-transform-react-constant-elements" "^7.21.3"
+ "@babel/preset-env" "^7.20.2"
+ "@babel/preset-react" "^7.18.6"
+ "@babel/preset-typescript" "^7.21.0"
+ "@svgr/core" "8.1.0"
+ "@svgr/plugin-jsx" "8.1.0"
+ "@svgr/plugin-svgo" "8.1.0"
+
+"@swc/core-darwin-arm64@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.11.29.tgz#bf66e3f4f00e6fe9d95e8a33f780e6c40fca946d"
+ integrity sha512-whsCX7URzbuS5aET58c75Dloby3Gtj/ITk2vc4WW6pSDQKSPDuONsIcZ7B2ng8oz0K6ttbi4p3H/PNPQLJ4maQ==
+
+"@swc/core-darwin-x64@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.11.29.tgz#0a77d2d79ef2c789f9d40a86784bbf52c5f9877f"
+ integrity sha512-S3eTo/KYFk+76cWJRgX30hylN5XkSmjYtCBnM4jPLYn7L6zWYEPajsFLmruQEiTEDUg0gBEWLMNyUeghtswouw==
+
+"@swc/core-linux-arm-gnueabihf@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.11.29.tgz#80fa3a6a36034ffdbbba73e26c8f27cb13111a33"
+ integrity sha512-o9gdshbzkUMG6azldHdmKklcfrcMx+a23d/2qHQHPDLUPAN+Trd+sDQUYArK5Fcm7TlpG4sczz95ghN0DMkM7g==
+
+"@swc/core-linux-arm64-gnu@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.11.29.tgz#42da87f445bc3e26da01d494246884006d9b9a1a"
+ integrity sha512-sLoaciOgUKQF1KX9T6hPGzvhOQaJn+3DHy4LOHeXhQqvBgr+7QcZ+hl4uixPKTzxk6hy6Hb0QOvQEdBAAR1gXw==
+
+"@swc/core-linux-arm64-musl@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.11.29.tgz#c9cec610525dc9e9b11ef26319db3780812dfa54"
+ integrity sha512-PwjB10BC0N+Ce7RU/L23eYch6lXFHz7r3NFavIcwDNa/AAqywfxyxh13OeRy+P0cg7NDpWEETWspXeI4Ek8otw==
+
+"@swc/core-linux-x64-gnu@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.11.29.tgz#1cda2df38a4ab8905ba6ac3aa16e4ad710b6f2de"
+ integrity sha512-i62vBVoPaVe9A3mc6gJG07n0/e7FVeAvdD9uzZTtGLiuIfVfIBta8EMquzvf+POLycSk79Z6lRhGPZPJPYiQaA==
+
+"@swc/core-linux-x64-musl@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.11.29.tgz#5d634efff33f47c8d6addd84291ab606903d1cfd"
+ integrity sha512-YER0XU1xqFdK0hKkfSVX1YIyCvMDI7K07GIpefPvcfyNGs38AXKhb2byySDjbVxkdl4dycaxxhRyhQ2gKSlsFQ==
+
+"@swc/core-win32-arm64-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.11.29.tgz#bc54f2e3f8f180113b7a092b1ee1eaaab24df62b"
+ integrity sha512-po+WHw+k9g6FAg5IJ+sMwtA/fIUL3zPQ4m/uJgONBATCVnDDkyW6dBA49uHNVtSEvjvhuD8DVWdFP847YTcITw==
+
+"@swc/core-win32-ia32-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.11.29.tgz#f1df344c06283643d1fe66c6931b350347b73722"
+ integrity sha512-h+NjOrbqdRBYr5ItmStmQt6x3tnhqgwbj9YxdGPepbTDamFv7vFnhZR0YfB3jz3UKJ8H3uGJ65Zw1VsC+xpFkg==
+
+"@swc/core-win32-x64-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.11.29.tgz#a6f9dc1df66c8db96d70091abedd78cc52544724"
+ integrity sha512-Q8cs2BDV9wqDvqobkXOYdC+pLUSEpX/KvI0Dgfun1F+LzuLotRFuDhrvkU9ETJA6OnD2+Fn/ieHgloiKA/Mn/g==
+
+"@swc/core@^1.7.39":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.11.29.tgz#bce20113c47fcd6251d06262b8b8c063f8e86a20"
+ integrity sha512-g4mThMIpWbNhV8G2rWp5a5/Igv8/2UFRJx2yImrLGMgrDDYZIopqZ/z0jZxDgqNA1QDx93rpwNF7jGsxVWcMlA==
+ dependencies:
+ "@swc/counter" "^0.1.3"
+ "@swc/types" "^0.1.21"
+ optionalDependencies:
+ "@swc/core-darwin-arm64" "1.11.29"
+ "@swc/core-darwin-x64" "1.11.29"
+ "@swc/core-linux-arm-gnueabihf" "1.11.29"
+ "@swc/core-linux-arm64-gnu" "1.11.29"
+ "@swc/core-linux-arm64-musl" "1.11.29"
+ "@swc/core-linux-x64-gnu" "1.11.29"
+ "@swc/core-linux-x64-musl" "1.11.29"
+ "@swc/core-win32-arm64-msvc" "1.11.29"
+ "@swc/core-win32-ia32-msvc" "1.11.29"
+ "@swc/core-win32-x64-msvc" "1.11.29"
+
+"@swc/counter@^0.1.3":
+ version "0.1.3"
+ resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9"
+ integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==
+
+"@swc/html-darwin-arm64@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-darwin-arm64/-/html-darwin-arm64-1.11.29.tgz#7bd6d10115ffe155ecd757387b5aff318b02b5a0"
+ integrity sha512-q53kn/HI0n/+pecsOB2gxqITbRAhtBG7VI520SIWuCGXHPsTQ/1VOrhLMNvyfw1xVhRyFal7BpAvfGUORCl0sw==
+
+"@swc/html-darwin-x64@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-darwin-x64/-/html-darwin-x64-1.11.29.tgz#ccafed56081932ffaa51be1788cef88eb9a144d1"
+ integrity sha512-YfQPjh5WoDqOxsA7vDOOSnxEPc1Ki4SuZ0ufR4t8jYdMOFsU3AhZQ/sgBZLpTzegBTutUn7/7yy8VSoFngeR7Q==
+
+"@swc/html-linux-arm-gnueabihf@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-linux-arm-gnueabihf/-/html-linux-arm-gnueabihf-1.11.29.tgz#e784a1a0f69034e9dd52a9019ff80f0d5eb91433"
+ integrity sha512-dC3aEv1mqAUkY9TiZWOE2IcYpvxJzw0LdvkDzGW5072JSlZZYQMqq2Llwg63LIp6qBlj1JLHMLnBqk7Ubatmjw==
+
+"@swc/html-linux-arm64-gnu@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-linux-arm64-gnu/-/html-linux-arm64-gnu-1.11.29.tgz#ef015d81d3a011d6c273a428eee130b3aac790b7"
+ integrity sha512-seo+lCiBUggTR9NsHE4qVC+7+XIfLHK7yxWiIsXb8nNAXDcqVZ0Rxv8O1Y1GTeJfUlcCt1koahCG2AeyWpYFBg==
+
+"@swc/html-linux-arm64-musl@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-linux-arm64-musl/-/html-linux-arm64-musl-1.11.29.tgz#b20e4b442287367c4c1d62db2b8065106542f432"
+ integrity sha512-bK8K6t3hHgaZZ1vMNaZ+8x42EWJPEX1Dx4zi6ulMhKa1uan+DjW5SiMlUg0an16fFSYfE+r9oFC4cFEbGP1o4Q==
+
+"@swc/html-linux-x64-gnu@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-linux-x64-gnu/-/html-linux-x64-gnu-1.11.29.tgz#c45505b3e22c02dc8bdef8b3da48ba855527a62c"
+ integrity sha512-34tSms5TkRUCr+J6uuSE/11ECcfIpp5R1ODuIgxZRUd/u88pQGKzLVNLWGPLw4b3cZSjnAn+PFJl7BtaYl0UyQ==
+
+"@swc/html-linux-x64-musl@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-linux-x64-musl/-/html-linux-x64-musl-1.11.29.tgz#86116e7db3cf02b1a627bc94c374d26ce6f9d68a"
+ integrity sha512-oJLLrX94ccaniWdQt8PH6K2u8aN/ehBo/YPg84LycFtaud/k73Fa1kh6Neq8vbWI4CugIWTl4LXWoHm+l+QYeA==
+
+"@swc/html-win32-arm64-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-win32-arm64-msvc/-/html-win32-arm64-msvc-1.11.29.tgz#cf7e57b8c0b52f7f93abc307b0cb78d8213b3c13"
+ integrity sha512-nw4TCFfA4YV6jicRdicJZPKW+ihOZPMKEG/4bj1/6HqXw1T2pXI070ASOLE0KOHYuoyV/jConEHfIjlU0olneA==
+
+"@swc/html-win32-ia32-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-win32-ia32-msvc/-/html-win32-ia32-msvc-1.11.29.tgz#61c91409c3fcdf942891c02aa2a2eac1892d1907"
+ integrity sha512-rO6X4qOofGpKV8pyZ7VblJn+J3PHEqeWHJkJfzwP7c04Flr1oLyuLbTU8lwf8enXrTAZqitHZs+OpofKcUwHEw==
+
+"@swc/html-win32-x64-msvc@1.11.29":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html-win32-x64-msvc/-/html-win32-x64-msvc-1.11.29.tgz#0e78b507d2bf28315487655852008cdecfe84535"
+ integrity sha512-GSCihzBItEPJAeLzkAtw0ZGbxRGMsGt1Z1ugo0uHva1R3Eybkqu9qoax1tGAON+EJzeiHRqphhNgh8MVDpnKnQ==
+
+"@swc/html@^1.7.39":
+ version "1.11.29"
+ resolved "https://registry.yarnpkg.com/@swc/html/-/html-1.11.29.tgz#6e9e1b8ea65baa0d6f25cb883565a5e7d22d2858"
+ integrity sha512-Tsk/o6Eo3lDvHPGjLqVwXGEdC1bemGzByPWx/TrF5N7qEsanRblPeRcJzLl6LbWa80pRYIRB6T4VqdXXZqklaw==
+ dependencies:
+ "@swc/counter" "^0.1.3"
+ optionalDependencies:
+ "@swc/html-darwin-arm64" "1.11.29"
+ "@swc/html-darwin-x64" "1.11.29"
+ "@swc/html-linux-arm-gnueabihf" "1.11.29"
+ "@swc/html-linux-arm64-gnu" "1.11.29"
+ "@swc/html-linux-arm64-musl" "1.11.29"
+ "@swc/html-linux-x64-gnu" "1.11.29"
+ "@swc/html-linux-x64-musl" "1.11.29"
+ "@swc/html-win32-arm64-msvc" "1.11.29"
+ "@swc/html-win32-ia32-msvc" "1.11.29"
+ "@swc/html-win32-x64-msvc" "1.11.29"
+
+"@swc/types@^0.1.21":
+ version "0.1.21"
+ resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.21.tgz#6fcadbeca1d8bc89e1ab3de4948cef12344a38c0"
+ integrity sha512-2YEtj5HJVbKivud9N4bpPBAyZhj4S2Ipe5LkUG94alTpr7in/GU/EARgPAd3BwU+YOmFVJC2+kjqhGRi3r0ZpQ==
+ dependencies:
+ "@swc/counter" "^0.1.3"
+
+"@szmarczak/http-timer@^5.0.1":
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a"
+ integrity sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==
+ dependencies:
+ defer-to-connect "^2.0.1"
+
+"@tanstack/react-table@latest":
+ version "8.21.3"
+ resolved "https://registry.yarnpkg.com/@tanstack/react-table/-/react-table-8.21.3.tgz#2c38c747a5731c1a07174fda764b9c2b1fb5e91b"
+ integrity sha512-5nNMTSETP4ykGegmVkhjcS8tTLW6Vl4axfEGQN3v0zdHYbK4UfoqfPChclTrJ4EoK9QynqAu9oUf8VEmrpZ5Ww==
+ dependencies:
+ "@tanstack/table-core" "8.21.3"
+
+"@tanstack/table-core@8.21.3":
+ version "8.21.3"
+ resolved "https://registry.yarnpkg.com/@tanstack/table-core/-/table-core-8.21.3.tgz#2977727d8fc8dfa079112d9f4d4c019110f1732c"
+ integrity sha512-ldZXEhOBb8Is7xLs01fR3YEc3DERiz5silj8tnGkFZytt1abEvl/GhUmCE0PMLaMPTa3Jk4HbKmRlHmu+gCftg==
+
+"@trysound/sax@0.2.0":
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad"
+ integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==
+
+"@types/body-parser@*":
+ version "1.19.5"
+ resolved "https://registry.yarnpkg.com/@types/body-parser/-/body-parser-1.19.5.tgz#04ce9a3b677dc8bd681a17da1ab9835dc9d3ede4"
+ integrity sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==
+ dependencies:
+ "@types/connect" "*"
+ "@types/node" "*"
+
+"@types/bonjour@^3.5.9":
+ version "3.5.13"
+ resolved "https://registry.yarnpkg.com/@types/bonjour/-/bonjour-3.5.13.tgz#adf90ce1a105e81dd1f9c61fdc5afda1bfb92956"
+ integrity sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==
+ dependencies:
+ "@types/node" "*"
+
+"@types/connect-history-api-fallback@^1.3.5":
+ version "1.5.4"
+ resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz#7de71645a103056b48ac3ce07b3520b819c1d5b3"
+ integrity sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw==
+ dependencies:
+ "@types/express-serve-static-core" "*"
+ "@types/node" "*"
+
+"@types/connect@*":
+ version "3.4.38"
+ resolved "https://registry.yarnpkg.com/@types/connect/-/connect-3.4.38.tgz#5ba7f3bc4fbbdeaff8dded952e5ff2cc53f8d858"
+ integrity sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==
+ dependencies:
+ "@types/node" "*"
+
+"@types/debug@^4.0.0":
+ version "4.1.12"
+ resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917"
+ integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==
+ dependencies:
+ "@types/ms" "*"
+
+"@types/eslint-scope@^3.7.7":
+ version "3.7.7"
+ resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5"
+ integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==
+ dependencies:
+ "@types/eslint" "*"
+ "@types/estree" "*"
+
+"@types/eslint@*":
+ version "9.6.1"
+ resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584"
+ integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==
+ dependencies:
+ "@types/estree" "*"
+ "@types/json-schema" "*"
+
+"@types/estree-jsx@^1.0.0":
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/@types/estree-jsx/-/estree-jsx-1.0.5.tgz#858a88ea20f34fe65111f005a689fa1ebf70dc18"
+ integrity sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==
+ dependencies:
+ "@types/estree" "*"
+
+"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.6":
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.7.tgz#4158d3105276773d5b7695cd4834b1722e4f37a8"
+ integrity sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==
+
+"@types/express-serve-static-core@*", "@types/express-serve-static-core@^5.0.0":
+ version "5.0.6"
+ resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.6.tgz#41fec4ea20e9c7b22f024ab88a95c6bb288f51b8"
+ integrity sha512-3xhRnjJPkULekpSzgtoNYYcTWgEZkp4myc+Saevii5JPnHNvHMRlBSHDbs7Bh1iPPoVTERHEZXyhyLbMEsExsA==
+ dependencies:
+ "@types/node" "*"
+ "@types/qs" "*"
+ "@types/range-parser" "*"
+ "@types/send" "*"
+
+"@types/express-serve-static-core@^4.17.33":
+ version "4.19.6"
+ resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz#e01324c2a024ff367d92c66f48553ced0ab50267"
+ integrity sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==
+ dependencies:
+ "@types/node" "*"
+ "@types/qs" "*"
+ "@types/range-parser" "*"
+ "@types/send" "*"
+
+"@types/express@*":
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.2.tgz#7be9e337a5745d6b43ef5b0c352dad94a7f0c256"
+ integrity sha512-BtjL3ZwbCQriyb0DGw+Rt12qAXPiBTPs815lsUvtt1Grk0vLRMZNMUZ741d5rjk+UQOxfDiBZ3dxpX00vSkK3g==
+ dependencies:
+ "@types/body-parser" "*"
+ "@types/express-serve-static-core" "^5.0.0"
+ "@types/serve-static" "*"
+
+"@types/express@^4.17.13":
+ version "4.17.22"
+ resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.22.tgz#14cfcf120f7eb56ebb8ca77b7fa9a14d21de7c96"
+ integrity sha512-eZUmSnhRX9YRSkplpz0N+k6NljUUn5l3EWZIKZvYzhvMphEuNiyyy1viH/ejgt66JWgALwC/gtSUAeQKtSwW/w==
+ dependencies:
+ "@types/body-parser" "*"
+ "@types/express-serve-static-core" "^4.17.33"
+ "@types/qs" "*"
+ "@types/serve-static" "*"
+
+"@types/gtag.js@^0.0.12":
+ version "0.0.12"
+ resolved "https://registry.yarnpkg.com/@types/gtag.js/-/gtag.js-0.0.12.tgz#095122edca896689bdfcdd73b057e23064d23572"
+ integrity sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg==
+
+"@types/hast@^2.0.0":
+ version "2.3.10"
+ resolved "https://registry.yarnpkg.com/@types/hast/-/hast-2.3.10.tgz#5c9d9e0b304bbb8879b857225c5ebab2d81d7643"
+ integrity sha512-McWspRw8xx8J9HurkVBfYj0xKoE25tOFlHGdx4MJ5xORQrMGZNqJhVQWaIbm6Oyla5kYOXtDiopzKRJzEOkwJw==
+ dependencies:
+ "@types/unist" "^2"
+
+"@types/hast@^3.0.0", "@types/hast@^3.0.4":
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/@types/hast/-/hast-3.0.4.tgz#1d6b39993b82cea6ad783945b0508c25903e15aa"
+ integrity sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==
+ dependencies:
+ "@types/unist" "*"
+
+"@types/history@^4.7.11":
+ version "4.7.11"
+ resolved "https://registry.yarnpkg.com/@types/history/-/history-4.7.11.tgz#56588b17ae8f50c53983a524fc3cc47437969d64"
+ integrity sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==
+
+"@types/html-minifier-terser@^6.0.0":
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#4fc33a00c1d0c16987b1a20cf92d20614c55ac35"
+ integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==
+
+"@types/http-cache-semantics@^4.0.2":
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz#b979ebad3919799c979b17c72621c0bc0a31c6c4"
+ integrity sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==
+
+"@types/http-errors@*":
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.4.tgz#7eb47726c391b7345a6ec35ad7f4de469cf5ba4f"
+ integrity sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==
+
+"@types/http-proxy@^1.17.8":
+ version "1.17.16"
+ resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.16.tgz#dee360707b35b3cc85afcde89ffeebff7d7f9240"
+ integrity sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w==
+ dependencies:
+ "@types/node" "*"
+
+"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz#7739c232a1fee9b4d3ce8985f314c0c6d33549d7"
+ integrity sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==
+
+"@types/istanbul-lib-report@*":
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz#53047614ae72e19fc0401d872de3ae2b4ce350bf"
+ integrity sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==
+ dependencies:
+ "@types/istanbul-lib-coverage" "*"
+
+"@types/istanbul-reports@^3.0.0":
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz#0f03e3d2f670fbdac586e34b433783070cc16f54"
+ integrity sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==
+ dependencies:
+ "@types/istanbul-lib-report" "*"
+
+"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9":
+ version "7.0.15"
+ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841"
+ integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==
+
+"@types/katex@^0.16.0":
+ version "0.16.7"
+ resolved "https://registry.yarnpkg.com/@types/katex/-/katex-0.16.7.tgz#03ab680ab4fa4fbc6cb46ecf987ecad5d8019868"
+ integrity sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==
+
+"@types/mdast@^3.0.0":
+ version "3.0.15"
+ resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.15.tgz#49c524a263f30ffa28b71ae282f813ed000ab9f5"
+ integrity sha512-LnwD+mUEfxWMa1QpDraczIn6k0Ee3SMicuYSSzS6ZYl2gKS09EClnJYGd8Du6rfc5r/GZEk5o1mRb8TaTj03sQ==
+ dependencies:
+ "@types/unist" "^2"
+
+"@types/mdast@^4.0.0", "@types/mdast@^4.0.2":
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-4.0.4.tgz#7ccf72edd2f1aa7dd3437e180c64373585804dd6"
+ integrity sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==
+ dependencies:
+ "@types/unist" "*"
+
+"@types/mdx@^2.0.0":
+ version "2.0.13"
+ resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.13.tgz#68f6877043d377092890ff5b298152b0a21671bd"
+ integrity sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==
+
+"@types/mime@^1":
+ version "1.3.5"
+ resolved "https://registry.yarnpkg.com/@types/mime/-/mime-1.3.5.tgz#1ef302e01cf7d2b5a0fa526790c9123bf1d06690"
+ integrity sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==
+
+"@types/ms@*":
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/@types/ms/-/ms-2.1.0.tgz#052aa67a48eccc4309d7f0191b7e41434b90bb78"
+ integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==
+
+"@types/node-forge@^1.3.0":
+ version "1.3.11"
+ resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.11.tgz#0972ea538ddb0f4d9c2fa0ec5db5724773a604da"
+ integrity sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ==
+ dependencies:
+ "@types/node" "*"
+
+"@types/node@*":
+ version "22.15.29"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-22.15.29.tgz#c75999124a8224a3f79dd8b6ccfb37d74098f678"
+ integrity sha512-LNdjOkUDlU1RZb8e1kOIUpN1qQUlzGkEtbVNo53vbrwDg5om6oduhm4SiUaPW5ASTXhAiP0jInWG8Qx9fVlOeQ==
+ dependencies:
+ undici-types "~6.21.0"
+
+"@types/node@^17.0.5":
+ version "17.0.45"
+ resolved "https://registry.yarnpkg.com/@types/node/-/node-17.0.45.tgz#2c0fafd78705e7a18b7906b5201a522719dc5190"
+ integrity sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==
+
+"@types/prismjs@^1.26.0":
+ version "1.26.5"
+ resolved "https://registry.yarnpkg.com/@types/prismjs/-/prismjs-1.26.5.tgz#72499abbb4c4ec9982446509d2f14fb8483869d6"
+ integrity sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ==
+
+"@types/prop-types@*", "@types/prop-types@^15.0.0":
+ version "15.7.14"
+ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.14.tgz#1433419d73b2a7ebfc6918dcefd2ec0d5cd698f2"
+ integrity sha512-gNMvNH49DJ7OJYv+KAKn0Xp45p8PLl6zo2YnvDIbTd4J6MER2BmWN49TG7n9LvkyihINxeKW8+3bfS2yDC9dzQ==
+
+"@types/qs@*":
+ version "6.14.0"
+ resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.14.0.tgz#d8b60cecf62f2db0fb68e5e006077b9178b85de5"
+ integrity sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==
+
+"@types/range-parser@*":
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.7.tgz#50ae4353eaaddc04044279812f52c8c65857dbcb"
+ integrity sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==
+
+"@types/react-router-config@*", "@types/react-router-config@^5.0.7":
+ version "5.0.11"
+ resolved "https://registry.yarnpkg.com/@types/react-router-config/-/react-router-config-5.0.11.tgz#2761a23acc7905a66a94419ee40294a65aaa483a"
+ integrity sha512-WmSAg7WgqW7m4x8Mt4N6ZyKz0BubSj/2tVUMsAHp+Yd2AMwcSbeFq9WympT19p5heCFmF97R9eD5uUR/t4HEqw==
+ dependencies:
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+ "@types/react-router" "^5.1.0"
+
+"@types/react-router-dom@*":
+ version "5.3.3"
+ resolved "https://registry.yarnpkg.com/@types/react-router-dom/-/react-router-dom-5.3.3.tgz#e9d6b4a66fcdbd651a5f106c2656a30088cc1e83"
+ integrity sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==
+ dependencies:
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+ "@types/react-router" "*"
+
+"@types/react-router@*", "@types/react-router@^5.1.0":
+ version "5.1.20"
+ resolved "https://registry.yarnpkg.com/@types/react-router/-/react-router-5.1.20.tgz#88eccaa122a82405ef3efbcaaa5dcdd9f021387c"
+ integrity sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==
+ dependencies:
+ "@types/history" "^4.7.11"
+ "@types/react" "*"
+
+"@types/react@*":
+ version "19.1.6"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-19.1.6.tgz#dee39f3e1e9a7d693f156a5840570b6d57f325ea"
+ integrity sha512-JeG0rEWak0N6Itr6QUx+X60uQmN+5t3j9r/OVDtWzFXKaj6kD1BwJzOksD0FF6iWxZlbE1kB0q9vtnU2ekqa1Q==
+ dependencies:
+ csstype "^3.0.2"
+
+"@types/react@^18.2.0":
+ version "18.3.23"
+ resolved "https://registry.yarnpkg.com/@types/react/-/react-18.3.23.tgz#86ae6f6b95a48c418fecdaccc8069e0fbb63696a"
+ integrity sha512-/LDXMQh55EzZQ0uVAZmKKhfENivEvWz6E+EYzh+/MCjMhNsotd+ZHhBGIjFDTi6+fz0OhQQQLbTgdQIxxCsC0w==
+ dependencies:
+ "@types/prop-types" "*"
+ csstype "^3.0.2"
+
+"@types/retry@0.12.0":
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d"
+ integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==
+
+"@types/sax@^1.2.1":
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/@types/sax/-/sax-1.2.7.tgz#ba5fe7df9aa9c89b6dff7688a19023dd2963091d"
+ integrity sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==
+ dependencies:
+ "@types/node" "*"
+
+"@types/semver@^7.3.12":
+ version "7.7.0"
+ resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.7.0.tgz#64c441bdae033b378b6eef7d0c3d77c329b9378e"
+ integrity sha512-k107IF4+Xr7UHjwDc7Cfd6PRQfbdkiRabXGRjo07b4WyPahFBZCZ1sE+BNxYIJPPg73UkfOsVOLwqVc/6ETrIA==
+
+"@types/send@*":
+ version "0.17.4"
+ resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.4.tgz#6619cd24e7270793702e4e6a4b958a9010cfc57a"
+ integrity sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==
+ dependencies:
+ "@types/mime" "^1"
+ "@types/node" "*"
+
+"@types/serve-index@^1.9.1":
+ version "1.9.4"
+ resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.4.tgz#e6ae13d5053cb06ed36392110b4f9a49ac4ec898"
+ integrity sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==
+ dependencies:
+ "@types/express" "*"
+
+"@types/serve-static@*", "@types/serve-static@^1.13.10":
+ version "1.15.7"
+ resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.7.tgz#22174bbd74fb97fe303109738e9b5c2f3064f714"
+ integrity sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==
+ dependencies:
+ "@types/http-errors" "*"
+ "@types/node" "*"
+ "@types/send" "*"
+
+"@types/sockjs@^0.3.33":
+ version "0.3.36"
+ resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.36.tgz#ce322cf07bcc119d4cbf7f88954f3a3bd0f67535"
+ integrity sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==
+ dependencies:
+ "@types/node" "*"
+
+"@types/unist@*", "@types/unist@^3.0.0":
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c"
+ integrity sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==
+
+"@types/unist@^2", "@types/unist@^2.0.0":
+ version "2.0.11"
+ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4"
+ integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==
+
+"@types/ws@^8.5.5":
+ version "8.18.1"
+ resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.18.1.tgz#48464e4bf2ddfd17db13d845467f6070ffea4aa9"
+ integrity sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==
+ dependencies:
+ "@types/node" "*"
+
+"@types/yargs-parser@*":
+ version "21.0.3"
+ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.3.tgz#815e30b786d2e8f0dcd85fd5bcf5e1a04d008f15"
+ integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==
+
+"@types/yargs@^17.0.8":
+ version "17.0.33"
+ resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d"
+ integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==
+ dependencies:
+ "@types/yargs-parser" "*"
+
+"@typescript-eslint/eslint-plugin@^5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz#aeef0328d172b9e37d9bab6dbc13b87ed88977db"
+ integrity sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==
+ dependencies:
+ "@eslint-community/regexpp" "^4.4.0"
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/type-utils" "5.62.0"
+ "@typescript-eslint/utils" "5.62.0"
+ debug "^4.3.4"
+ graphemer "^1.4.0"
+ ignore "^5.2.0"
+ natural-compare-lite "^1.4.0"
+ semver "^7.3.7"
+ tsutils "^3.21.0"
+
+"@typescript-eslint/parser@^5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.62.0.tgz#1b63d082d849a2fcae8a569248fbe2ee1b8a56c7"
+ integrity sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==
+ dependencies:
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ debug "^4.3.4"
+
+"@typescript-eslint/scope-manager@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz#d9457ccc6a0b8d6b37d0eb252a23022478c5460c"
+ integrity sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/visitor-keys" "5.62.0"
+
+"@typescript-eslint/type-utils@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a"
+ integrity sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==
+ dependencies:
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ "@typescript-eslint/utils" "5.62.0"
+ debug "^4.3.4"
+ tsutils "^3.21.0"
+
+"@typescript-eslint/types@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
+ integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
+
+"@typescript-eslint/typescript-estree@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz#7d17794b77fabcac615d6a48fb143330d962eb9b"
+ integrity sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/visitor-keys" "5.62.0"
+ debug "^4.3.4"
+ globby "^11.1.0"
+ is-glob "^4.0.3"
+ semver "^7.3.7"
+ tsutils "^3.21.0"
+
+"@typescript-eslint/utils@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.62.0.tgz#141e809c71636e4a75daa39faed2fb5f4b10df86"
+ integrity sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.2.0"
+ "@types/json-schema" "^7.0.9"
+ "@types/semver" "^7.3.12"
+ "@typescript-eslint/scope-manager" "5.62.0"
+ "@typescript-eslint/types" "5.62.0"
+ "@typescript-eslint/typescript-estree" "5.62.0"
+ eslint-scope "^5.1.1"
+ semver "^7.3.7"
+
+"@typescript-eslint/visitor-keys@5.62.0":
+ version "5.62.0"
+ resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz#2174011917ce582875954ffe2f6912d5931e353e"
+ integrity sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==
+ dependencies:
+ "@typescript-eslint/types" "5.62.0"
+ eslint-visitor-keys "^3.3.0"
+
+"@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.2.0":
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8"
+ integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==
+
+"@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.14.1.tgz#a9f6a07f2b03c95c8d38c4536a1fdfb521ff55b6"
+ integrity sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==
+ dependencies:
+ "@webassemblyjs/helper-numbers" "1.13.2"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+
+"@webassemblyjs/floating-point-hex-parser@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz#fcca1eeddb1cc4e7b6eed4fc7956d6813b21b9fb"
+ integrity sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==
+
+"@webassemblyjs/helper-api-error@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz#e0a16152248bc38daee76dd7e21f15c5ef3ab1e7"
+ integrity sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==
+
+"@webassemblyjs/helper-buffer@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz#822a9bc603166531f7d5df84e67b5bf99b72b96b"
+ integrity sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==
+
+"@webassemblyjs/helper-numbers@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.13.2.tgz#dbd932548e7119f4b8a7877fd5a8d20e63490b2d"
+ integrity sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==
+ dependencies:
+ "@webassemblyjs/floating-point-hex-parser" "1.13.2"
+ "@webassemblyjs/helper-api-error" "1.13.2"
+ "@xtuc/long" "4.2.2"
+
+"@webassemblyjs/helper-wasm-bytecode@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz#e556108758f448aae84c850e593ce18a0eb31e0b"
+ integrity sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==
+
+"@webassemblyjs/helper-wasm-section@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.14.1.tgz#9629dda9c4430eab54b591053d6dc6f3ba050348"
+ integrity sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/wasm-gen" "1.14.1"
+
+"@webassemblyjs/ieee754@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.13.2.tgz#1c5eaace1d606ada2c7fd7045ea9356c59ee0dba"
+ integrity sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==
+ dependencies:
+ "@xtuc/ieee754" "^1.2.0"
+
+"@webassemblyjs/leb128@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.13.2.tgz#57c5c3deb0105d02ce25fa3fd74f4ebc9fd0bbb0"
+ integrity sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==
+ dependencies:
+ "@xtuc/long" "4.2.2"
+
+"@webassemblyjs/utf8@1.13.2":
+ version "1.13.2"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.13.2.tgz#917a20e93f71ad5602966c2d685ae0c6c21f60f1"
+ integrity sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==
+
+"@webassemblyjs/wasm-edit@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.14.1.tgz#ac6689f502219b59198ddec42dcd496b1004d597"
+ integrity sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/helper-wasm-section" "1.14.1"
+ "@webassemblyjs/wasm-gen" "1.14.1"
+ "@webassemblyjs/wasm-opt" "1.14.1"
+ "@webassemblyjs/wasm-parser" "1.14.1"
+ "@webassemblyjs/wast-printer" "1.14.1"
+
+"@webassemblyjs/wasm-gen@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.14.1.tgz#991e7f0c090cb0bb62bbac882076e3d219da9570"
+ integrity sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/ieee754" "1.13.2"
+ "@webassemblyjs/leb128" "1.13.2"
+ "@webassemblyjs/utf8" "1.13.2"
+
+"@webassemblyjs/wasm-opt@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.14.1.tgz#e6f71ed7ccae46781c206017d3c14c50efa8106b"
+ integrity sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-buffer" "1.14.1"
+ "@webassemblyjs/wasm-gen" "1.14.1"
+ "@webassemblyjs/wasm-parser" "1.14.1"
+
+"@webassemblyjs/wasm-parser@1.14.1", "@webassemblyjs/wasm-parser@^1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.14.1.tgz#b3e13f1893605ca78b52c68e54cf6a865f90b9fb"
+ integrity sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@webassemblyjs/helper-api-error" "1.13.2"
+ "@webassemblyjs/helper-wasm-bytecode" "1.13.2"
+ "@webassemblyjs/ieee754" "1.13.2"
+ "@webassemblyjs/leb128" "1.13.2"
+ "@webassemblyjs/utf8" "1.13.2"
+
+"@webassemblyjs/wast-printer@1.14.1":
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.14.1.tgz#3bb3e9638a8ae5fdaf9610e7a06b4d9f9aa6fe07"
+ integrity sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==
+ dependencies:
+ "@webassemblyjs/ast" "1.14.1"
+ "@xtuc/long" "4.2.2"
+
+"@xtuc/ieee754@^1.2.0":
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
+ integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
+
+"@xtuc/long@4.2.2":
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
+ integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
+
+"@yarnpkg/lockfile@^1.1.0":
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31"
+ integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==
+
+accepts@~1.3.4, accepts@~1.3.8:
+ version "1.3.8"
+ resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e"
+ integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==
+ dependencies:
+ mime-types "~2.1.34"
+ negotiator "0.6.3"
+
+acorn-jsx@^5.0.0, acorn-jsx@^5.3.2:
+ version "5.3.2"
+ resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
+ integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
+
+acorn-walk@^8.0.0:
+ version "8.3.4"
+ resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7"
+ integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==
+ dependencies:
+ acorn "^8.11.0"
+
+acorn@^8.0.0, acorn@^8.0.4, acorn@^8.11.0, acorn@^8.14.0, acorn@^8.9.0:
+ version "8.14.1"
+ resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb"
+ integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==
+
+address@^1.0.1:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e"
+ integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==
+
+aggregate-error@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a"
+ integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==
+ dependencies:
+ clean-stack "^2.0.0"
+ indent-string "^4.0.0"
+
+ajv-formats@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520"
+ integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==
+ dependencies:
+ ajv "^8.0.0"
+
+ajv-keywords@^3.5.2:
+ version "3.5.2"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
+ integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
+
+ajv-keywords@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz#69d4d385a4733cdbeab44964a1170a88f87f0e16"
+ integrity sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==
+ dependencies:
+ fast-deep-equal "^3.1.3"
+
+ajv@^6.12.4, ajv@^6.12.5:
+ version "6.12.6"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
+ integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
+ dependencies:
+ fast-deep-equal "^3.1.1"
+ fast-json-stable-stringify "^2.0.0"
+ json-schema-traverse "^0.4.1"
+ uri-js "^4.2.2"
+
+ajv@^8.0.0, ajv@^8.9.0:
+ version "8.17.1"
+ resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6"
+ integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==
+ dependencies:
+ fast-deep-equal "^3.1.3"
+ fast-uri "^3.0.1"
+ json-schema-traverse "^1.0.0"
+ require-from-string "^2.0.2"
+
+algoliasearch-helper@^3.22.6:
+ version "3.25.0"
+ resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.25.0.tgz#15cc79ad7909db66b8bb5a5a9c38b40e3941fa2f"
+ integrity sha512-vQoK43U6HXA9/euCqLjvyNdM4G2Fiu/VFp4ae0Gau9sZeIKBPvUPnXfLYAe65Bg7PFuw03coeu5K6lTPSXRObw==
+ dependencies:
+ "@algolia/events" "^4.0.1"
+
+algoliasearch@^5.14.2, algoliasearch@^5.17.1:
+ version "5.25.0"
+ resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-5.25.0.tgz#7337b097deadeca0e6e985c0f8724abea189994f"
+ integrity sha512-n73BVorL4HIwKlfJKb4SEzAYkR3Buwfwbh+MYxg2mloFph2fFGV58E90QTzdbfzWrLn4HE5Czx/WTjI8fcHaMg==
+ dependencies:
+ "@algolia/client-abtesting" "5.25.0"
+ "@algolia/client-analytics" "5.25.0"
+ "@algolia/client-common" "5.25.0"
+ "@algolia/client-insights" "5.25.0"
+ "@algolia/client-personalization" "5.25.0"
+ "@algolia/client-query-suggestions" "5.25.0"
+ "@algolia/client-search" "5.25.0"
+ "@algolia/ingestion" "1.25.0"
+ "@algolia/monitoring" "1.25.0"
+ "@algolia/recommend" "5.25.0"
+ "@algolia/requester-browser-xhr" "5.25.0"
+ "@algolia/requester-fetch" "5.25.0"
+ "@algolia/requester-node-http" "5.25.0"
+
+ansi-align@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-3.0.1.tgz#0cdf12e111ace773a86e9a1fad1225c43cb19a59"
+ integrity sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==
+ dependencies:
+ string-width "^4.1.0"
+
+ansi-escapes@^4.3.2:
+ version "4.3.2"
+ resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e"
+ integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==
+ dependencies:
+ type-fest "^0.21.3"
+
+ansi-html-community@^0.0.8:
+ version "0.0.8"
+ resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41"
+ integrity sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==
+
+ansi-regex@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
+ integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
+
+ansi-regex@^6.0.1:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.1.0.tgz#95ec409c69619d6cb1b8b34f14b660ef28ebd654"
+ integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==
+
+ansi-styles@^4.0.0, ansi-styles@^4.1.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
+ integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
+ dependencies:
+ color-convert "^2.0.1"
+
+ansi-styles@^6.1.0:
+ version "6.2.1"
+ resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5"
+ integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==
+
+any-promise@^1.0.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f"
+ integrity sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==
+
+anymatch@~3.1.2:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e"
+ integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==
+ dependencies:
+ normalize-path "^3.0.0"
+ picomatch "^2.0.4"
+
+arg@^5.0.0, arg@^5.0.2:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c"
+ integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==
+
+argparse@^1.0.7:
+ version "1.0.10"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
+ integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
+ dependencies:
+ sprintf-js "~1.0.2"
+
+argparse@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
+ integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
+
+aria-hidden@^1.2.4:
+ version "1.2.6"
+ resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.2.6.tgz#73051c9b088114c795b1ea414e9c0fff874ffc1a"
+ integrity sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==
+ dependencies:
+ tslib "^2.0.0"
+
+array-flatten@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
+ integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==
+
+array-union@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
+ integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
+
+astring@^1.8.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/astring/-/astring-1.9.0.tgz#cc73e6062a7eb03e7d19c22d8b0b3451fd9bfeef"
+ integrity sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==
+
+at-least-node@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2"
+ integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==
+
+autoprefixer@^10.4.19, autoprefixer@^10.4.21:
+ version "10.4.21"
+ resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.21.tgz#77189468e7a8ad1d9a37fbc08efc9f480cf0a95d"
+ integrity sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==
+ dependencies:
+ browserslist "^4.24.4"
+ caniuse-lite "^1.0.30001702"
+ fraction.js "^4.3.7"
+ normalize-range "^0.1.2"
+ picocolors "^1.1.1"
+ postcss-value-parser "^4.2.0"
+
+babel-loader@^9.2.1:
+ version "9.2.1"
+ resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-9.2.1.tgz#04c7835db16c246dd19ba0914418f3937797587b"
+ integrity sha512-fqe8naHt46e0yIdkjUZYqddSXfej3AHajX+CSO5X7oy0EmPc6o5Xh+RClNoHjnieWz9AW4kZxW9yyFMhVB1QLA==
+ dependencies:
+ find-cache-dir "^4.0.0"
+ schema-utils "^4.0.0"
+
+babel-plugin-dynamic-import-node@^2.3.3:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz#84fda19c976ec5c6defef57f9427b3def66e17a3"
+ integrity sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==
+ dependencies:
+ object.assign "^4.1.0"
+
+babel-plugin-polyfill-corejs2@^0.4.10:
+ version "0.4.13"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.13.tgz#7d445f0e0607ebc8fb6b01d7e8fb02069b91dd8b"
+ integrity sha512-3sX/eOms8kd3q2KZ6DAhKPc0dgm525Gqq5NtWKZ7QYYZEv57OQ54KtblzJzH1lQF/eQxO8KjWGIK9IPUJNus5g==
+ dependencies:
+ "@babel/compat-data" "^7.22.6"
+ "@babel/helper-define-polyfill-provider" "^0.6.4"
+ semver "^6.3.1"
+
+babel-plugin-polyfill-corejs3@^0.11.0:
+ version "0.11.1"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.11.1.tgz#4e4e182f1bb37c7ba62e2af81d8dd09df31344f6"
+ integrity sha512-yGCqvBT4rwMczo28xkH/noxJ6MZ4nJfkVYdoDaC/utLtWrXxv27HVrzAeSbqR8SxDsp46n0YF47EbHoixy6rXQ==
+ dependencies:
+ "@babel/helper-define-polyfill-provider" "^0.6.3"
+ core-js-compat "^3.40.0"
+
+babel-plugin-polyfill-regenerator@^0.6.1:
+ version "0.6.4"
+ resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.4.tgz#428c615d3c177292a22b4f93ed99e358d7906a9b"
+ integrity sha512-7gD3pRadPrbjhjLyxebmx/WrFYcuSjZ0XbdUujQMZ/fcE9oeewk2U/7PCvez84UeuK3oSjmPZ0Ch0dlupQvGzw==
+ dependencies:
+ "@babel/helper-define-polyfill-provider" "^0.6.4"
+
+bail@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/bail/-/bail-2.0.2.tgz#d26f5cd8fe5d6f832a31517b9f7c356040ba6d5d"
+ integrity sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==
+
+balanced-match@^1.0.0:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee"
+ integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
+
+base64-js@^1.3.1:
+ version "1.5.1"
+ resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a"
+ integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==
+
+batch@0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16"
+ integrity sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==
+
+big.js@^5.2.2:
+ version "5.2.2"
+ resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328"
+ integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==
+
+binary-extensions@^2.0.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522"
+ integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==
+
+body-parser@1.20.3:
+ version "1.20.3"
+ resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6"
+ integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==
+ dependencies:
+ bytes "3.1.2"
+ content-type "~1.0.5"
+ debug "2.6.9"
+ depd "2.0.0"
+ destroy "1.2.0"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ on-finished "2.4.1"
+ qs "6.13.0"
+ raw-body "2.5.2"
+ type-is "~1.6.18"
+ unpipe "1.0.0"
+
+bonjour-service@^1.0.11:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.3.0.tgz#80d867430b5a0da64e82a8047fc1e355bdb71722"
+ integrity sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA==
+ dependencies:
+ fast-deep-equal "^3.1.3"
+ multicast-dns "^7.2.5"
+
+boolbase@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
+ integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==
+
+boxen@^6.2.1:
+ version "6.2.1"
+ resolved "https://registry.yarnpkg.com/boxen/-/boxen-6.2.1.tgz#b098a2278b2cd2845deef2dff2efc38d329b434d"
+ integrity sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==
+ dependencies:
+ ansi-align "^3.0.1"
+ camelcase "^6.2.0"
+ chalk "^4.1.2"
+ cli-boxes "^3.0.0"
+ string-width "^5.0.1"
+ type-fest "^2.5.0"
+ widest-line "^4.0.1"
+ wrap-ansi "^8.0.1"
+
+boxen@^7.0.0:
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/boxen/-/boxen-7.1.1.tgz#f9ba525413c2fec9cdb88987d835c4f7cad9c8f4"
+ integrity sha512-2hCgjEmP8YLWQ130n2FerGv7rYpfBmnmp9Uy2Le1vge6X3gZIfSmEzP5QTDElFxcvVcXlEn8Aq6MU/PZygIOog==
+ dependencies:
+ ansi-align "^3.0.1"
+ camelcase "^7.0.1"
+ chalk "^5.2.0"
+ cli-boxes "^3.0.0"
+ string-width "^5.1.2"
+ type-fest "^2.13.0"
+ widest-line "^4.0.1"
+ wrap-ansi "^8.1.0"
+
+brace-expansion@^1.1.7:
+ version "1.1.11"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
+ integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
+ dependencies:
+ balanced-match "^1.0.0"
+ concat-map "0.0.1"
+
+brace-expansion@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae"
+ integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==
+ dependencies:
+ balanced-match "^1.0.0"
+
+braces@^3.0.3, braces@~3.0.2:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789"
+ integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==
+ dependencies:
+ fill-range "^7.1.1"
+
+browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.24.2, browserslist@^4.24.4, browserslist@^4.24.5:
+ version "4.25.0"
+ resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.25.0.tgz#986aa9c6d87916885da2b50d8eb577ac8d133b2c"
+ integrity sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==
+ dependencies:
+ caniuse-lite "^1.0.30001718"
+ electron-to-chromium "^1.5.160"
+ node-releases "^2.0.19"
+ update-browserslist-db "^1.1.3"
+
+buffer-from@^1.0.0:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
+ integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
+
+buffer@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6"
+ integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==
+ dependencies:
+ base64-js "^1.3.1"
+ ieee754 "^1.2.1"
+
+bytes@3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048"
+ integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==
+
+bytes@3.1.2:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5"
+ integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==
+
+cacheable-lookup@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27"
+ integrity sha512-+qJyx4xiKra8mZrcwhjMRMUhD5NR1R8esPkzIYxX96JiecFoxAXFuz/GpR3+ev4PE1WamHip78wV0vcmPQtp8w==
+
+cacheable-request@^10.2.8:
+ version "10.2.14"
+ resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-10.2.14.tgz#eb915b665fda41b79652782df3f553449c406b9d"
+ integrity sha512-zkDT5WAF4hSSoUgyfg5tFIxz8XQK+25W/TLVojJTMKBaxevLBBtLxgqguAuVQB8PVW79FVjHcU+GJ9tVbDZ9mQ==
+ dependencies:
+ "@types/http-cache-semantics" "^4.0.2"
+ get-stream "^6.0.1"
+ http-cache-semantics "^4.1.1"
+ keyv "^4.5.3"
+ mimic-response "^4.0.0"
+ normalize-url "^8.0.0"
+ responselike "^3.0.0"
+
+call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6"
+ integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==
+ dependencies:
+ es-errors "^1.3.0"
+ function-bind "^1.1.2"
+
+call-bind@^1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c"
+ integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==
+ dependencies:
+ call-bind-apply-helpers "^1.0.0"
+ es-define-property "^1.0.0"
+ get-intrinsic "^1.2.4"
+ set-function-length "^1.2.2"
+
+call-bound@^1.0.2, call-bound@^1.0.3:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/call-bound/-/call-bound-1.0.4.tgz#238de935d2a2a692928c538c7ccfa91067fd062a"
+ integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==
+ dependencies:
+ call-bind-apply-helpers "^1.0.2"
+ get-intrinsic "^1.3.0"
+
+callsites@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
+ integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
+
+camel-case@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a"
+ integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==
+ dependencies:
+ pascal-case "^3.1.2"
+ tslib "^2.0.3"
+
+camelcase-css@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5"
+ integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==
+
+camelcase@^6.2.0:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a"
+ integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==
+
+camelcase@^7.0.1:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-7.0.1.tgz#f02e50af9fd7782bc8b88a3558c32fd3a388f048"
+ integrity sha512-xlx1yCK2Oc1APsPXDL2LdlNP6+uu8OCDdhOBSVT279M/S+y75O30C2VuD8T2ogdePBBl7PfPF4504tnLgX3zfw==
+
+caniuse-api@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-3.0.0.tgz#5e4d90e2274961d46291997df599e3ed008ee4c0"
+ integrity sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==
+ dependencies:
+ browserslist "^4.0.0"
+ caniuse-lite "^1.0.0"
+ lodash.memoize "^4.1.2"
+ lodash.uniq "^4.5.0"
+
+caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001702, caniuse-lite@^1.0.30001718:
+ version "1.0.30001720"
+ resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001720.tgz#c138cb6026d362be9d8d7b0e4bcd0183a850edfd"
+ integrity sha512-Ec/2yV2nNPwb4DnTANEV99ZWwm3ZWfdlfkQbWSDDt+PsXEVYwlhPH8tdMaPunYTKKmz7AnHi2oNEi1GcmKCD8g==
+
+ccount@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/ccount/-/ccount-2.0.1.tgz#17a3bf82302e0870d6da43a01311a8bc02a3ecf5"
+ integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==
+
+chalk@^4.0.0, chalk@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
+ integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
+ dependencies:
+ ansi-styles "^4.1.0"
+ supports-color "^7.1.0"
+
+chalk@^5.0.1, chalk@^5.2.0:
+ version "5.4.1"
+ resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.4.1.tgz#1b48bf0963ec158dce2aacf69c093ae2dd2092d8"
+ integrity sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==
+
+char-regex@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf"
+ integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==
+
+character-entities-html4@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-2.1.0.tgz#1f1adb940c971a4b22ba39ddca6b618dc6e56b2b"
+ integrity sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==
+
+character-entities-legacy@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz#76bc83a90738901d7bc223a9e93759fdd560125b"
+ integrity sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==
+
+character-entities@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/character-entities/-/character-entities-2.0.2.tgz#2d09c2e72cd9523076ccb21157dff66ad43fcc22"
+ integrity sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==
+
+character-reference-invalid@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/character-reference-invalid/-/character-reference-invalid-2.0.1.tgz#85c66b041e43b47210faf401278abf808ac45cb9"
+ integrity sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==
+
+cheerio-select@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-2.1.0.tgz#4d8673286b8126ca2a8e42740d5e3c4884ae21b4"
+ integrity sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==
+ dependencies:
+ boolbase "^1.0.0"
+ css-select "^5.1.0"
+ css-what "^6.1.0"
+ domelementtype "^2.3.0"
+ domhandler "^5.0.3"
+ domutils "^3.0.1"
+
+cheerio@1.0.0-rc.12:
+ version "1.0.0-rc.12"
+ resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.12.tgz#788bf7466506b1c6bf5fae51d24a2c4d62e47683"
+ integrity sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==
+ dependencies:
+ cheerio-select "^2.1.0"
+ dom-serializer "^2.0.0"
+ domhandler "^5.0.3"
+ domutils "^3.0.1"
+ htmlparser2 "^8.0.1"
+ parse5 "^7.0.0"
+ parse5-htmlparser2-tree-adapter "^7.0.0"
+
+chokidar@^3.5.3, chokidar@^3.6.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b"
+ integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==
+ dependencies:
+ anymatch "~3.1.2"
+ braces "~3.0.2"
+ glob-parent "~5.1.2"
+ is-binary-path "~2.1.0"
+ is-glob "~4.0.1"
+ normalize-path "~3.0.0"
+ readdirp "~3.6.0"
+ optionalDependencies:
+ fsevents "~2.3.2"
+
+chrome-trace-event@^1.0.2:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b"
+ integrity sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==
+
+ci-info@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46"
+ integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==
+
+ci-info@^3.2.0:
+ version "3.9.0"
+ resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4"
+ integrity sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==
+
+clean-css@^5.2.2, clean-css@^5.3.2, clean-css@~5.3.2:
+ version "5.3.3"
+ resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.3.3.tgz#b330653cd3bd6b75009cc25c714cae7b93351ccd"
+ integrity sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==
+ dependencies:
+ source-map "~0.6.0"
+
+clean-stack@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b"
+ integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==
+
+cli-boxes@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-3.0.0.tgz#71a10c716feeba005e4504f36329ef0b17cf3145"
+ integrity sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==
+
+cli-table3@^0.6.3:
+ version "0.6.5"
+ resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.6.5.tgz#013b91351762739c16a9567c21a04632e449bf2f"
+ integrity sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==
+ dependencies:
+ string-width "^4.2.0"
+ optionalDependencies:
+ "@colors/colors" "1.5.0"
+
+clone-deep@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387"
+ integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==
+ dependencies:
+ is-plain-object "^2.0.4"
+ kind-of "^6.0.2"
+ shallow-clone "^3.0.0"
+
+clsx@^2.0.0, clsx@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/clsx/-/clsx-2.1.1.tgz#eed397c9fd8bd882bfb18deab7102049a2f32999"
+ integrity sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==
+
+collapse-white-space@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/collapse-white-space/-/collapse-white-space-2.1.0.tgz#640257174f9f42c740b40f3b55ee752924feefca"
+ integrity sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==
+
+color-convert@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
+ integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
+ dependencies:
+ color-name "~1.1.4"
+
+color-name@~1.1.4:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
+ integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
+
+colord@^2.9.3:
+ version "2.9.3"
+ resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43"
+ integrity sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==
+
+colorette@^2.0.10:
+ version "2.0.20"
+ resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.20.tgz#9eb793e6833067f7235902fcd3b09917a000a95a"
+ integrity sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==
+
+combine-promises@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/combine-promises/-/combine-promises-1.2.0.tgz#5f2e68451862acf85761ded4d9e2af7769c2ca6a"
+ integrity sha512-VcQB1ziGD0NXrhKxiwyNbCDmRzs/OShMs2GqW2DlU2A/Sd0nQxE1oWDAE5O0ygSx5mgQOn9eIFh7yKPgFRVkPQ==
+
+comma-separated-tokens@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee"
+ integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==
+
+commander@^10.0.0:
+ version "10.0.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06"
+ integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==
+
+commander@^2.20.0:
+ version "2.20.3"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
+ integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
+
+commander@^4.0.0:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068"
+ integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==
+
+commander@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae"
+ integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==
+
+commander@^7.2.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7"
+ integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==
+
+commander@^8.3.0:
+ version "8.3.0"
+ resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66"
+ integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==
+
+common-path-prefix@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-3.0.0.tgz#7d007a7e07c58c4b4d5f433131a19141b29f11e0"
+ integrity sha512-QE33hToZseCH3jS0qN96O/bSh3kaw/h+Tq7ngyY9eWDUnTlTNUyqfqvCXioLe5Na5jFsL78ra/wuBU4iuEgd4w==
+
+compressible@~2.0.18:
+ version "2.0.18"
+ resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba"
+ integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==
+ dependencies:
+ mime-db ">= 1.43.0 < 2"
+
+compression@^1.7.4:
+ version "1.8.0"
+ resolved "https://registry.yarnpkg.com/compression/-/compression-1.8.0.tgz#09420efc96e11a0f44f3a558de59e321364180f7"
+ integrity sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==
+ dependencies:
+ bytes "3.1.2"
+ compressible "~2.0.18"
+ debug "2.6.9"
+ negotiator "~0.6.4"
+ on-headers "~1.0.2"
+ safe-buffer "5.2.1"
+ vary "~1.1.2"
+
+concat-map@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
+ integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
+
+config-chain@^1.1.11:
+ version "1.1.13"
+ resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4"
+ integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==
+ dependencies:
+ ini "^1.3.4"
+ proto-list "~1.2.1"
+
+configstore@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/configstore/-/configstore-6.0.0.tgz#49eca2ebc80983f77e09394a1a56e0aca8235566"
+ integrity sha512-cD31W1v3GqUlQvbBCGcXmd2Nj9SvLDOP1oQ0YFuLETufzSPaKp11rYBsSOm7rCsW3OnIRAFM3OxRhceaXNYHkA==
+ dependencies:
+ dot-prop "^6.0.1"
+ graceful-fs "^4.2.6"
+ unique-string "^3.0.0"
+ write-file-atomic "^3.0.3"
+ xdg-basedir "^5.0.1"
+
+connect-history-api-fallback@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz#647264845251a0daf25b97ce87834cace0f5f1c8"
+ integrity sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==
+
+consola@^3.2.3:
+ version "3.4.2"
+ resolved "https://registry.yarnpkg.com/consola/-/consola-3.4.2.tgz#5af110145397bb67afdab77013fdc34cae590ea7"
+ integrity sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==
+
+content-disposition@0.5.2:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4"
+ integrity sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==
+
+content-disposition@0.5.4:
+ version "0.5.4"
+ resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe"
+ integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==
+ dependencies:
+ safe-buffer "5.2.1"
+
+content-type@~1.0.4, content-type@~1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918"
+ integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==
+
+convert-source-map@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a"
+ integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==
+
+cookie-signature@1.0.6:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c"
+ integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==
+
+cookie@0.7.1:
+ version "0.7.1"
+ resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9"
+ integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==
+
+copy-text-to-clipboard@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz#0202b2d9bdae30a49a53f898626dcc3b49ad960b"
+ integrity sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==
+
+copy-webpack-plugin@^11.0.0:
+ version "11.0.0"
+ resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz#96d4dbdb5f73d02dd72d0528d1958721ab72e04a"
+ integrity sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==
+ dependencies:
+ fast-glob "^3.2.11"
+ glob-parent "^6.0.1"
+ globby "^13.1.1"
+ normalize-path "^3.0.0"
+ schema-utils "^4.0.0"
+ serialize-javascript "^6.0.0"
+
+core-js-compat@^3.40.0:
+ version "3.42.0"
+ resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.42.0.tgz#ce19c29706ee5806e26d3cb3c542d4cfc0ed51bb"
+ integrity sha512-bQasjMfyDGyaeWKBIu33lHh9qlSR0MFE/Nmc6nMjf/iU9b3rSMdAYz1Baxrv4lPdGUsTqZudHA4jIGSJy0SWZQ==
+ dependencies:
+ browserslist "^4.24.4"
+
+core-js-pure@^3.30.2:
+ version "3.42.0"
+ resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.42.0.tgz#e86c45a7f3bdcb608823e872f73d1ad9ddf0531d"
+ integrity sha512-007bM04u91fF4kMgwom2I5cQxAFIy8jVulgr9eozILl/SZE53QOqnW/+vviC+wQWLv+AunBG+8Q0TLoeSsSxRQ==
+
+core-js@^3.31.1:
+ version "3.42.0"
+ resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.42.0.tgz#edbe91f78ac8cfb6df8d997e74d368a68082fe37"
+ integrity sha512-Sz4PP4ZA+Rq4II21qkNqOEDTDrCvcANId3xpIgB34NDkWc3UduWj2dqEtN9yZIq8Dk3HyPI33x9sqqU5C8sr0g==
+
+core-util-is@~1.0.0:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85"
+ integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==
+
+cosmiconfig@^8.1.3, cosmiconfig@^8.3.5:
+ version "8.3.6"
+ resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.3.6.tgz#060a2b871d66dba6c8538ea1118ba1ac16f5fae3"
+ integrity sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==
+ dependencies:
+ import-fresh "^3.3.0"
+ js-yaml "^4.1.0"
+ parse-json "^5.2.0"
+ path-type "^4.0.0"
+
+cross-spawn@^6.0.5:
+ version "6.0.6"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.6.tgz#30d0efa0712ddb7eb5a76e1e8721bffafa6b5d57"
+ integrity sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==
+ dependencies:
+ nice-try "^1.0.4"
+ path-key "^2.0.1"
+ semver "^5.5.0"
+ shebang-command "^1.2.0"
+ which "^1.2.9"
+
+cross-spawn@^7.0.2, cross-spawn@^7.0.3, cross-spawn@^7.0.6:
+ version "7.0.6"
+ resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f"
+ integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==
+ dependencies:
+ path-key "^3.1.0"
+ shebang-command "^2.0.0"
+ which "^2.0.1"
+
+crypto-random-string@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-4.0.0.tgz#5a3cc53d7dd86183df5da0312816ceeeb5bb1fc2"
+ integrity sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==
+ dependencies:
+ type-fest "^1.0.1"
+
+css-blank-pseudo@^7.0.1:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/css-blank-pseudo/-/css-blank-pseudo-7.0.1.tgz#32020bff20a209a53ad71b8675852b49e8d57e46"
+ integrity sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+css-declaration-sorter@^7.2.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz#6dec1c9523bc4a643e088aab8f09e67a54961024"
+ integrity sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==
+
+css-has-pseudo@^7.0.2:
+ version "7.0.2"
+ resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-7.0.2.tgz#fb42e8de7371f2896961e1f6308f13c2c7019b72"
+ integrity sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==
+ dependencies:
+ "@csstools/selector-specificity" "^5.0.0"
+ postcss-selector-parser "^7.0.0"
+ postcss-value-parser "^4.2.0"
+
+css-loader@^6.8.1:
+ version "6.11.0"
+ resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.11.0.tgz#33bae3bf6363d0a7c2cf9031c96c744ff54d85ba"
+ integrity sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==
+ dependencies:
+ icss-utils "^5.1.0"
+ postcss "^8.4.33"
+ postcss-modules-extract-imports "^3.1.0"
+ postcss-modules-local-by-default "^4.0.5"
+ postcss-modules-scope "^3.2.0"
+ postcss-modules-values "^4.0.0"
+ postcss-value-parser "^4.2.0"
+ semver "^7.5.4"
+
+css-minimizer-webpack-plugin@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-5.0.1.tgz#33effe662edb1a0bf08ad633c32fa75d0f7ec565"
+ integrity sha512-3caImjKFQkS+ws1TGcFn0V1HyDJFq1Euy589JlD6/3rV2kj+w7r5G9WDMgSHvpvXHNZ2calVypZWuEDQd9wfLg==
+ dependencies:
+ "@jridgewell/trace-mapping" "^0.3.18"
+ cssnano "^6.0.1"
+ jest-worker "^29.4.3"
+ postcss "^8.4.24"
+ schema-utils "^4.0.1"
+ serialize-javascript "^6.0.1"
+
+css-prefers-color-scheme@^10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/css-prefers-color-scheme/-/css-prefers-color-scheme-10.0.0.tgz#ba001b99b8105b8896ca26fc38309ddb2278bd3c"
+ integrity sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==
+
+css-select@^4.1.3:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.3.0.tgz#db7129b2846662fd8628cfc496abb2b59e41529b"
+ integrity sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==
+ dependencies:
+ boolbase "^1.0.0"
+ css-what "^6.0.1"
+ domhandler "^4.3.1"
+ domutils "^2.8.0"
+ nth-check "^2.0.1"
+
+css-select@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/css-select/-/css-select-5.1.0.tgz#b8ebd6554c3637ccc76688804ad3f6a6fdaea8a6"
+ integrity sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==
+ dependencies:
+ boolbase "^1.0.0"
+ css-what "^6.1.0"
+ domhandler "^5.0.2"
+ domutils "^3.0.1"
+ nth-check "^2.0.1"
+
+css-tree@^2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.3.1.tgz#10264ce1e5442e8572fc82fbe490644ff54b5c20"
+ integrity sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==
+ dependencies:
+ mdn-data "2.0.30"
+ source-map-js "^1.0.1"
+
+css-tree@~2.2.0:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-2.2.1.tgz#36115d382d60afd271e377f9c5f67d02bd48c032"
+ integrity sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==
+ dependencies:
+ mdn-data "2.0.28"
+ source-map-js "^1.0.1"
+
+css-what@^6.0.1, css-what@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.1.0.tgz#fb5effcf76f1ddea2c81bdfaa4de44e79bac70f4"
+ integrity sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==
+
+cssdb@^8.3.0:
+ version "8.3.0"
+ resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-8.3.0.tgz#940becad497b8509ad822a28fb0cfe54c969ccfe"
+ integrity sha512-c7bmItIg38DgGjSwDPZOYF/2o0QU/sSgkWOMyl8votOfgFuyiFKWPesmCGEsrGLxEA9uL540cp8LdaGEjUGsZQ==
+
+cssesc@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee"
+ integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==
+
+cssnano-preset-advanced@^6.1.2:
+ version "6.1.2"
+ resolved "https://registry.yarnpkg.com/cssnano-preset-advanced/-/cssnano-preset-advanced-6.1.2.tgz#82b090872b8f98c471f681d541c735acf8b94d3f"
+ integrity sha512-Nhao7eD8ph2DoHolEzQs5CfRpiEP0xa1HBdnFZ82kvqdmbwVBUr2r1QuQ4t1pi+D1ZpqpcO4T+wy/7RxzJ/WPQ==
+ dependencies:
+ autoprefixer "^10.4.19"
+ browserslist "^4.23.0"
+ cssnano-preset-default "^6.1.2"
+ postcss-discard-unused "^6.0.5"
+ postcss-merge-idents "^6.0.3"
+ postcss-reduce-idents "^6.0.3"
+ postcss-zindex "^6.0.2"
+
+cssnano-preset-default@^6.1.2:
+ version "6.1.2"
+ resolved "https://registry.yarnpkg.com/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz#adf4b89b975aa775f2750c89dbaf199bbd9da35e"
+ integrity sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==
+ dependencies:
+ browserslist "^4.23.0"
+ css-declaration-sorter "^7.2.0"
+ cssnano-utils "^4.0.2"
+ postcss-calc "^9.0.1"
+ postcss-colormin "^6.1.0"
+ postcss-convert-values "^6.1.0"
+ postcss-discard-comments "^6.0.2"
+ postcss-discard-duplicates "^6.0.3"
+ postcss-discard-empty "^6.0.3"
+ postcss-discard-overridden "^6.0.2"
+ postcss-merge-longhand "^6.0.5"
+ postcss-merge-rules "^6.1.1"
+ postcss-minify-font-values "^6.1.0"
+ postcss-minify-gradients "^6.0.3"
+ postcss-minify-params "^6.1.0"
+ postcss-minify-selectors "^6.0.4"
+ postcss-normalize-charset "^6.0.2"
+ postcss-normalize-display-values "^6.0.2"
+ postcss-normalize-positions "^6.0.2"
+ postcss-normalize-repeat-style "^6.0.2"
+ postcss-normalize-string "^6.0.2"
+ postcss-normalize-timing-functions "^6.0.2"
+ postcss-normalize-unicode "^6.1.0"
+ postcss-normalize-url "^6.0.2"
+ postcss-normalize-whitespace "^6.0.2"
+ postcss-ordered-values "^6.0.2"
+ postcss-reduce-initial "^6.1.0"
+ postcss-reduce-transforms "^6.0.2"
+ postcss-svgo "^6.0.3"
+ postcss-unique-selectors "^6.0.4"
+
+cssnano-utils@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/cssnano-utils/-/cssnano-utils-4.0.2.tgz#56f61c126cd0f11f2eef1596239d730d9fceff3c"
+ integrity sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==
+
+cssnano@^6.0.1, cssnano@^6.1.2:
+ version "6.1.2"
+ resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-6.1.2.tgz#4bd19e505bd37ee7cf0dc902d3d869f6d79c66b8"
+ integrity sha512-rYk5UeX7VAM/u0lNqewCdasdtPK81CgX8wJFLEIXHbV2oldWRgJAsZrdhRXkV1NJzA2g850KiFm9mMU2HxNxMA==
+ dependencies:
+ cssnano-preset-default "^6.1.2"
+ lilconfig "^3.1.1"
+
+csso@^5.0.5:
+ version "5.0.5"
+ resolved "https://registry.yarnpkg.com/csso/-/csso-5.0.5.tgz#f9b7fe6cc6ac0b7d90781bb16d5e9874303e2ca6"
+ integrity sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==
+ dependencies:
+ css-tree "~2.2.0"
+
+csstype@^3.0.2, csstype@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81"
+ integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==
+
+debounce@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/debounce/-/debounce-1.2.1.tgz#38881d8f4166a5c5848020c11827b834bcb3e0a5"
+ integrity sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==
+
+debug@2.6.9:
+ version "2.6.9"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f"
+ integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
+ dependencies:
+ ms "2.0.0"
+
+debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4:
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b"
+ integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==
+ dependencies:
+ ms "^2.1.3"
+
+decode-named-character-reference@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.1.0.tgz#5d6ce68792808901210dac42a8e9853511e2b8bf"
+ integrity sha512-Wy+JTSbFThEOXQIR2L6mxJvEs+veIzpmqD7ynWxMXGpnk3smkHQOp6forLdHsKpAMW9iJpaBBIxz285t1n1C3w==
+ dependencies:
+ character-entities "^2.0.0"
+
+decompress-response@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
+ integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
+ dependencies:
+ mimic-response "^3.1.0"
+
+deep-extend@^0.6.0:
+ version "0.6.0"
+ resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac"
+ integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==
+
+deep-is@^0.1.3:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
+ integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
+
+deepmerge@^4.3.1:
+ version "4.3.1"
+ resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a"
+ integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==
+
+default-gateway@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-6.0.3.tgz#819494c888053bdb743edbf343d6cdf7f2943a71"
+ integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==
+ dependencies:
+ execa "^5.0.0"
+
+defer-to-connect@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
+ integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
+
+define-data-property@^1.0.1, define-data-property@^1.1.4:
+ version "1.1.4"
+ resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e"
+ integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==
+ dependencies:
+ es-define-property "^1.0.0"
+ es-errors "^1.3.0"
+ gopd "^1.0.1"
+
+define-lazy-prop@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f"
+ integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==
+
+define-properties@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c"
+ integrity sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==
+ dependencies:
+ define-data-property "^1.0.1"
+ has-property-descriptors "^1.0.0"
+ object-keys "^1.1.1"
+
+depd@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df"
+ integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==
+
+depd@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9"
+ integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==
+
+dequal@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
+ integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
+
+destroy@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015"
+ integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==
+
+detect-libc@^2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.4.tgz#f04715b8ba815e53b4d8109655b6508a6865a7e8"
+ integrity sha512-3UDv+G9CsCKO1WKMGw9fwq/SWJYbI0c5Y7LU1AXYoDdbhE2AHQ6N6Nb34sG8Fj7T5APy8qXDCKuuIHd1BR0tVA==
+
+detect-node-es@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493"
+ integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==
+
+detect-node@^2.0.4:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1"
+ integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==
+
+detect-port@^1.5.1:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.6.1.tgz#45e4073997c5f292b957cb678fb0bb8ed4250a67"
+ integrity sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q==
+ dependencies:
+ address "^1.0.1"
+ debug "4"
+
+devlop@^1.0.0, devlop@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/devlop/-/devlop-1.1.0.tgz#4db7c2ca4dc6e0e834c30be70c94bbc976dc7018"
+ integrity sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==
+ dependencies:
+ dequal "^2.0.0"
+
+didyoumean@^1.2.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037"
+ integrity sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==
+
+diff@^5.0.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/diff/-/diff-5.2.0.tgz#26ded047cd1179b78b9537d5ef725503ce1ae531"
+ integrity sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==
+
+dir-glob@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
+ integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
+ dependencies:
+ path-type "^4.0.0"
+
+dlv@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/dlv/-/dlv-1.1.3.tgz#5c198a8a11453596e751494d49874bc7732f2e79"
+ integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==
+
+dns-packet@^5.2.2:
+ version "5.6.1"
+ resolved "https://registry.yarnpkg.com/dns-packet/-/dns-packet-5.6.1.tgz#ae888ad425a9d1478a0674256ab866de1012cf2f"
+ integrity sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==
+ dependencies:
+ "@leichtgewicht/ip-codec" "^2.0.1"
+
+doctrine@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
+ integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
+ dependencies:
+ esutils "^2.0.2"
+
+docusaurus-plugin-drawio@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/docusaurus-plugin-drawio/-/docusaurus-plugin-drawio-0.4.0.tgz#3ace168188a4ac2a0bc377da21b3d544a2768416"
+ integrity sha512-7y3cgtwdQ3evWY/phq/iGJectDlRzpRrKzbcBeT79o+w+OStU0noTcTOmVd/oTiylu2OJXhQWF9z+4CoxTgAtA==
+ dependencies:
+ raw-loader "^4.0.2"
+
+docusaurus-plugin-typedoc@^0.18.0:
+ version "0.18.0"
+ resolved "https://registry.yarnpkg.com/docusaurus-plugin-typedoc/-/docusaurus-plugin-typedoc-0.18.0.tgz#d04966c4ed843a285c72cdd641e2fb3973684f9f"
+ integrity sha512-kurIUu8LhVIOPT88HoeBcu0/D2GMDdg0pUYaFlqeuXT9an6Wlgvuy0C22ZMYcJUcp/gA/Mw2XdUHubsLK2M4uA==
+
+dom-converter@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768"
+ integrity sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==
+ dependencies:
+ utila "~0.4"
+
+dom-serializer@^1.0.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.4.1.tgz#de5d41b1aea290215dc45a6dae8adcf1d32e2d30"
+ integrity sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==
+ dependencies:
+ domelementtype "^2.0.1"
+ domhandler "^4.2.0"
+ entities "^2.0.0"
+
+dom-serializer@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-2.0.0.tgz#e41b802e1eedf9f6cae183ce5e622d789d7d8e53"
+ integrity sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==
+ dependencies:
+ domelementtype "^2.3.0"
+ domhandler "^5.0.2"
+ entities "^4.2.0"
+
+domelementtype@^2.0.1, domelementtype@^2.2.0, domelementtype@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.3.0.tgz#5c45e8e869952626331d7aab326d01daf65d589d"
+ integrity sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==
+
+domhandler@^4.0.0, domhandler@^4.2.0, domhandler@^4.3.1:
+ version "4.3.1"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c"
+ integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==
+ dependencies:
+ domelementtype "^2.2.0"
+
+domhandler@^5.0.2, domhandler@^5.0.3:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-5.0.3.tgz#cc385f7f751f1d1fc650c21374804254538c7d31"
+ integrity sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==
+ dependencies:
+ domelementtype "^2.3.0"
+
+domutils@^2.5.2, domutils@^2.8.0:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
+ integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
+ dependencies:
+ dom-serializer "^1.0.1"
+ domelementtype "^2.2.0"
+ domhandler "^4.2.0"
+
+domutils@^3.0.1:
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/domutils/-/domutils-3.2.2.tgz#edbfe2b668b0c1d97c24baf0f1062b132221bc78"
+ integrity sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==
+ dependencies:
+ dom-serializer "^2.0.0"
+ domelementtype "^2.3.0"
+ domhandler "^5.0.3"
+
+dot-case@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751"
+ integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==
+ dependencies:
+ no-case "^3.0.4"
+ tslib "^2.0.3"
+
+dot-prop@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083"
+ integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA==
+ dependencies:
+ is-obj "^2.0.0"
+
+dotenv@^16.4.5:
+ version "16.5.0"
+ resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.5.0.tgz#092b49f25f808f020050051d1ff258e404c78692"
+ integrity sha512-m/C+AwOAr9/W1UOIZUo232ejMNnJAJtYQjUbHoNTBNTJSvqzzDh7vnrei3o3r3m9blf6ZoDkvcw0VmozNRFJxg==
+
+dunder-proto@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/dunder-proto/-/dunder-proto-1.0.1.tgz#d7ae667e1dc83482f8b70fd0f6eefc50da30f58a"
+ integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==
+ dependencies:
+ call-bind-apply-helpers "^1.0.1"
+ es-errors "^1.3.0"
+ gopd "^1.2.0"
+
+duplexer@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
+ integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
+
+eastasianwidth@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb"
+ integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==
+
+ee-first@1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d"
+ integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==
+
+electron-to-chromium@^1.5.160:
+ version "1.5.161"
+ resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.161.tgz#650376bd3be7ff8e581031409fc2d4f150620b12"
+ integrity sha512-hwtetwfKNZo/UlwHIVBlKZVdy7o8bIZxxKs0Mv/ROPiQQQmDgdm5a+KvKtBsxM8ZjFzTaCeLoodZ8jiBE3o9rA==
+
+emoji-regex@^8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37"
+ integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==
+
+emoji-regex@^9.2.2:
+ version "9.2.2"
+ resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72"
+ integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==
+
+emojilib@^2.4.0:
+ version "2.4.0"
+ resolved "https://registry.yarnpkg.com/emojilib/-/emojilib-2.4.0.tgz#ac518a8bb0d5f76dda57289ccb2fdf9d39ae721e"
+ integrity sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==
+
+emojis-list@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
+ integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
+
+emoticon@^4.0.1:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/emoticon/-/emoticon-4.1.0.tgz#d5a156868ee173095627a33de3f1e914c3dde79e"
+ integrity sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ==
+
+encodeurl@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
+ integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==
+
+encodeurl@~2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58"
+ integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==
+
+enhanced-resolve@^5.17.1:
+ version "5.18.1"
+ resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.1.tgz#728ab082f8b7b6836de51f1637aab5d3b9568faf"
+ integrity sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==
+ dependencies:
+ graceful-fs "^4.2.4"
+ tapable "^2.2.0"
+
+entities@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
+ integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
+
+entities@^4.2.0, entities@^4.4.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48"
+ integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==
+
+entities@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/entities/-/entities-6.0.0.tgz#09c9e29cb79b0a6459a9b9db9efb418ac5bb8e51"
+ integrity sha512-aKstq2TDOndCn4diEyp9Uq/Flu2i1GlLkc6XIDQSDMuaFE3OPW5OphLCyQ5SpSJZTb4reN+kTcYru5yIfXoRPw==
+
+error-ex@^1.3.1:
+ version "1.3.2"
+ resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
+ integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
+ dependencies:
+ is-arrayish "^0.2.1"
+
+es-define-property@^1.0.0, es-define-property@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.1.tgz#983eb2f9a6724e9303f61addf011c72e09e0b0fa"
+ integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==
+
+es-errors@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f"
+ integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==
+
+es-module-lexer@^1.2.1:
+ version "1.7.0"
+ resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a"
+ integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==
+
+es-object-atoms@^1.0.0, es-object-atoms@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1"
+ integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==
+ dependencies:
+ es-errors "^1.3.0"
+
+esast-util-from-estree@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz#8d1cfb51ad534d2f159dc250e604f3478a79f1ad"
+ integrity sha512-4CyanoAudUSBAn5K13H4JhsMH6L9ZP7XbLVe/dKybkxMO7eDyLsT8UHl9TRNrU2Gr9nz+FovfSIjuXWJ81uVwQ==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ devlop "^1.0.0"
+ estree-util-visit "^2.0.0"
+ unist-util-position-from-estree "^2.0.0"
+
+esast-util-from-js@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/esast-util-from-js/-/esast-util-from-js-2.0.1.tgz#5147bec34cc9da44accf52f87f239a40ac3e8225"
+ integrity sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ acorn "^8.0.0"
+ esast-util-from-estree "^2.0.0"
+ vfile-message "^4.0.0"
+
+escalade@^3.1.1, escalade@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5"
+ integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==
+
+escape-goat@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-goat/-/escape-goat-4.0.0.tgz#9424820331b510b0666b98f7873fe11ac4aa8081"
+ integrity sha512-2Sd4ShcWxbx6OY1IHyla/CVNwvg7XwZVoXZHcSu9w9SReNP1EzzD5T8NWKIR38fIqEns9kDWKUQTXXAmlDrdPg==
+
+escape-html@^1.0.3, escape-html@~1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"
+ integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==
+
+escape-string-regexp@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
+ integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==
+
+escape-string-regexp@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
+ integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
+
+escape-string-regexp@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz#4683126b500b61762f2dbebace1806e8be31b1c8"
+ integrity sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==
+
+eslint-config-prettier@^8.10.0:
+ version "8.10.0"
+ resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-8.10.0.tgz#3a06a662130807e2502fc3ff8b4143d8a0658e11"
+ integrity sha512-SM8AMJdeQqRYT9O9zguiruQZaN7+z+E4eAP9oiLNGKMtomwaB1E9dcgUD6ZAn/eQAb52USbvezbiljfZUhbJcg==
+
+eslint-plugin-prettier@^4.2.1:
+ version "4.2.1"
+ resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz#651cbb88b1dab98bfd42f017a12fa6b2d993f94b"
+ integrity sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==
+ dependencies:
+ prettier-linter-helpers "^1.0.0"
+
+eslint-scope@5.1.1, eslint-scope@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
+ integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
+ dependencies:
+ esrecurse "^4.3.0"
+ estraverse "^4.1.1"
+
+eslint-scope@^7.2.2:
+ version "7.2.2"
+ resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.2.2.tgz#deb4f92563390f32006894af62a22dba1c46423f"
+ integrity sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==
+ dependencies:
+ esrecurse "^4.3.0"
+ estraverse "^5.2.0"
+
+eslint-visitor-keys@^3.3.0, eslint-visitor-keys@^3.4.1, eslint-visitor-keys@^3.4.3:
+ version "3.4.3"
+ resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800"
+ integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==
+
+eslint@^8.57.0:
+ version "8.57.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.57.1.tgz#7df109654aba7e3bbe5c8eae533c5e461d3c6ca9"
+ integrity sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==
+ dependencies:
+ "@eslint-community/eslint-utils" "^4.2.0"
+ "@eslint-community/regexpp" "^4.6.1"
+ "@eslint/eslintrc" "^2.1.4"
+ "@eslint/js" "8.57.1"
+ "@humanwhocodes/config-array" "^0.13.0"
+ "@humanwhocodes/module-importer" "^1.0.1"
+ "@nodelib/fs.walk" "^1.2.8"
+ "@ungap/structured-clone" "^1.2.0"
+ ajv "^6.12.4"
+ chalk "^4.0.0"
+ cross-spawn "^7.0.2"
+ debug "^4.3.2"
+ doctrine "^3.0.0"
+ escape-string-regexp "^4.0.0"
+ eslint-scope "^7.2.2"
+ eslint-visitor-keys "^3.4.3"
+ espree "^9.6.1"
+ esquery "^1.4.2"
+ esutils "^2.0.2"
+ fast-deep-equal "^3.1.3"
+ file-entry-cache "^6.0.1"
+ find-up "^5.0.0"
+ glob-parent "^6.0.2"
+ globals "^13.19.0"
+ graphemer "^1.4.0"
+ ignore "^5.2.0"
+ imurmurhash "^0.1.4"
+ is-glob "^4.0.0"
+ is-path-inside "^3.0.3"
+ js-yaml "^4.1.0"
+ json-stable-stringify-without-jsonify "^1.0.1"
+ levn "^0.4.1"
+ lodash.merge "^4.6.2"
+ minimatch "^3.1.2"
+ natural-compare "^1.4.0"
+ optionator "^0.9.3"
+ strip-ansi "^6.0.1"
+ text-table "^0.2.0"
+
+espree@^9.6.0, espree@^9.6.1:
+ version "9.6.1"
+ resolved "https://registry.yarnpkg.com/espree/-/espree-9.6.1.tgz#a2a17b8e434690a5432f2f8018ce71d331a48c6f"
+ integrity sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==
+ dependencies:
+ acorn "^8.9.0"
+ acorn-jsx "^5.3.2"
+ eslint-visitor-keys "^3.4.1"
+
+esprima@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
+ integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
+
+esquery@^1.4.2:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.6.0.tgz#91419234f804d852a82dceec3e16cdc22cf9dae7"
+ integrity sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==
+ dependencies:
+ estraverse "^5.1.0"
+
+esrecurse@^4.3.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
+ integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
+ dependencies:
+ estraverse "^5.2.0"
+
+estraverse@^4.1.1:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
+ integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
+
+estraverse@^5.1.0, estraverse@^5.2.0:
+ version "5.3.0"
+ resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
+ integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
+
+estree-util-attach-comments@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/estree-util-attach-comments/-/estree-util-attach-comments-3.0.0.tgz#344bde6a64c8a31d15231e5ee9e297566a691c2d"
+ integrity sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==
+ dependencies:
+ "@types/estree" "^1.0.0"
+
+estree-util-build-jsx@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/estree-util-build-jsx/-/estree-util-build-jsx-3.0.1.tgz#b6d0bced1dcc4f06f25cf0ceda2b2dcaf98168f1"
+ integrity sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ devlop "^1.0.0"
+ estree-util-is-identifier-name "^3.0.0"
+ estree-walker "^3.0.0"
+
+estree-util-is-identifier-name@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/estree-util-is-identifier-name/-/estree-util-is-identifier-name-3.0.0.tgz#0b5ef4c4ff13508b34dcd01ecfa945f61fce5dbd"
+ integrity sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==
+
+estree-util-scope@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/estree-util-scope/-/estree-util-scope-1.0.0.tgz#9cbdfc77f5cb51e3d9ed4ad9c4adbff22d43e585"
+ integrity sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ devlop "^1.0.0"
+
+estree-util-to-js@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/estree-util-to-js/-/estree-util-to-js-2.0.0.tgz#10a6fb924814e6abb62becf0d2bc4dea51d04f17"
+ integrity sha512-WDF+xj5rRWmD5tj6bIqRi6CkLIXbbNQUcxQHzGysQzvHmdYG2G7p/Tf0J0gpxGgkeMZNTIjT/AoSvC9Xehcgdg==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ astring "^1.8.0"
+ source-map "^0.7.0"
+
+estree-util-value-to-estree@^3.0.1:
+ version "3.4.0"
+ resolved "https://registry.yarnpkg.com/estree-util-value-to-estree/-/estree-util-value-to-estree-3.4.0.tgz#827122e40c3a756d3c4cf5d5d296fa06026a1a4f"
+ integrity sha512-Zlp+gxis+gCfK12d3Srl2PdX2ybsEA8ZYy6vQGVQTNNYLEGRQQ56XB64bjemN8kxIKXP1nC9ip4Z+ILy9LGzvQ==
+ dependencies:
+ "@types/estree" "^1.0.0"
+
+estree-util-visit@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/estree-util-visit/-/estree-util-visit-2.0.0.tgz#13a9a9f40ff50ed0c022f831ddf4b58d05446feb"
+ integrity sha512-m5KgiH85xAhhW8Wta0vShLcUvOsh3LLPI2YVwcbio1l7E09NTLL1EyMZFM1OyWowoH0skScNbhOPl4kcBgzTww==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ "@types/unist" "^3.0.0"
+
+estree-walker@^3.0.0:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-3.0.3.tgz#67c3e549ec402a487b4fc193d1953a524752340d"
+ integrity sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==
+ dependencies:
+ "@types/estree" "^1.0.0"
+
+esutils@^2.0.2:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64"
+ integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
+
+eta@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/eta/-/eta-2.2.0.tgz#eb8b5f8c4e8b6306561a455e62cd7492fe3a9b8a"
+ integrity sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==
+
+etag@~1.8.1:
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
+ integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
+
+eval@^0.1.8:
+ version "0.1.8"
+ resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85"
+ integrity sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==
+ dependencies:
+ "@types/node" "*"
+ require-like ">= 0.1.1"
+
+eventemitter3@^4.0.0, eventemitter3@^4.0.4:
+ version "4.0.7"
+ resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
+ integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==
+
+events@^3.2.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
+ integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
+
+execa@5.1.1, execa@^5.0.0:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd"
+ integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==
+ dependencies:
+ cross-spawn "^7.0.3"
+ get-stream "^6.0.0"
+ human-signals "^2.1.0"
+ is-stream "^2.0.0"
+ merge-stream "^2.0.0"
+ npm-run-path "^4.0.1"
+ onetime "^5.1.2"
+ signal-exit "^3.0.3"
+ strip-final-newline "^2.0.0"
+
+express@^4.17.3:
+ version "4.21.2"
+ resolved "https://registry.yarnpkg.com/express/-/express-4.21.2.tgz#cf250e48362174ead6cea4a566abef0162c1ec32"
+ integrity sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==
+ dependencies:
+ accepts "~1.3.8"
+ array-flatten "1.1.1"
+ body-parser "1.20.3"
+ content-disposition "0.5.4"
+ content-type "~1.0.4"
+ cookie "0.7.1"
+ cookie-signature "1.0.6"
+ debug "2.6.9"
+ depd "2.0.0"
+ encodeurl "~2.0.0"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ finalhandler "1.3.1"
+ fresh "0.5.2"
+ http-errors "2.0.0"
+ merge-descriptors "1.0.3"
+ methods "~1.1.2"
+ on-finished "2.4.1"
+ parseurl "~1.3.3"
+ path-to-regexp "0.1.12"
+ proxy-addr "~2.0.7"
+ qs "6.13.0"
+ range-parser "~1.2.1"
+ safe-buffer "5.2.1"
+ send "0.19.0"
+ serve-static "1.16.2"
+ setprototypeof "1.2.0"
+ statuses "2.0.1"
+ type-is "~1.6.18"
+ utils-merge "1.0.1"
+ vary "~1.1.2"
+
+extend-shallow@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f"
+ integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==
+ dependencies:
+ is-extendable "^0.1.0"
+
+extend@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
+ integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
+
+fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
+ integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
+
+fast-diff@^1.1.2:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.3.0.tgz#ece407fa550a64d638536cd727e129c61616e0f0"
+ integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==
+
+fast-glob@^3.2.11, fast-glob@^3.2.9, fast-glob@^3.3.0, fast-glob@^3.3.2:
+ version "3.3.3"
+ resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818"
+ integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==
+ dependencies:
+ "@nodelib/fs.stat" "^2.0.2"
+ "@nodelib/fs.walk" "^1.2.3"
+ glob-parent "^5.1.2"
+ merge2 "^1.3.0"
+ micromatch "^4.0.8"
+
+fast-json-stable-stringify@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
+ integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
+
+fast-levenshtein@^2.0.6:
+ version "2.0.6"
+ resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
+ integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==
+
+fast-uri@^3.0.1:
+ version "3.0.6"
+ resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.0.6.tgz#88f130b77cfaea2378d56bf970dea21257a68748"
+ integrity sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==
+
+fastq@^1.6.0:
+ version "1.19.1"
+ resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5"
+ integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==
+ dependencies:
+ reusify "^1.0.4"
+
+fault@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/fault/-/fault-2.0.1.tgz#d47ca9f37ca26e4bd38374a7c500b5a384755b6c"
+ integrity sha512-WtySTkS4OKev5JtpHXnib4Gxiurzh5NCGvWrFaZ34m6JehfTUhKZvn9njTfw48t6JumVQOmrKqpmGcdwxnhqBQ==
+ dependencies:
+ format "^0.2.0"
+
+faye-websocket@^0.11.3:
+ version "0.11.4"
+ resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da"
+ integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==
+ dependencies:
+ websocket-driver ">=0.5.1"
+
+feed@^4.2.2:
+ version "4.2.2"
+ resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e"
+ integrity sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==
+ dependencies:
+ xml-js "^1.6.11"
+
+figures@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af"
+ integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==
+ dependencies:
+ escape-string-regexp "^1.0.5"
+
+file-entry-cache@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
+ integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
+ dependencies:
+ flat-cache "^3.0.4"
+
+file-loader@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d"
+ integrity sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==
+ dependencies:
+ loader-utils "^2.0.0"
+ schema-utils "^3.0.0"
+
+fill-range@^7.1.1:
+ version "7.1.1"
+ resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292"
+ integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==
+ dependencies:
+ to-regex-range "^5.0.1"
+
+finalhandler@1.3.1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019"
+ integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==
+ dependencies:
+ debug "2.6.9"
+ encodeurl "~2.0.0"
+ escape-html "~1.0.3"
+ on-finished "2.4.1"
+ parseurl "~1.3.3"
+ statuses "2.0.1"
+ unpipe "~1.0.0"
+
+find-cache-dir@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-4.0.0.tgz#a30ee0448f81a3990708f6453633c733e2f6eec2"
+ integrity sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==
+ dependencies:
+ common-path-prefix "^3.0.0"
+ pkg-dir "^7.0.0"
+
+find-up@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc"
+ integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==
+ dependencies:
+ locate-path "^6.0.0"
+ path-exists "^4.0.0"
+
+find-up@^6.3.0:
+ version "6.3.0"
+ resolved "https://registry.yarnpkg.com/find-up/-/find-up-6.3.0.tgz#2abab3d3280b2dc7ac10199ef324c4e002c8c790"
+ integrity sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==
+ dependencies:
+ locate-path "^7.1.0"
+ path-exists "^5.0.0"
+
+find-yarn-workspace-root@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz#f47fb8d239c900eb78179aa81b66673eac88f7bd"
+ integrity sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==
+ dependencies:
+ micromatch "^4.0.2"
+
+flat-cache@^3.0.4:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.2.0.tgz#2c0c2d5040c99b1632771a9d105725c0115363ee"
+ integrity sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==
+ dependencies:
+ flatted "^3.2.9"
+ keyv "^4.5.3"
+ rimraf "^3.0.2"
+
+flat@^5.0.2:
+ version "5.0.2"
+ resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
+ integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
+
+flatted@^3.2.9:
+ version "3.3.3"
+ resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.3.3.tgz#67c8fad95454a7c7abebf74bb78ee74a44023358"
+ integrity sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==
+
+follow-redirects@^1.0.0:
+ version "1.15.9"
+ resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.9.tgz#a604fa10e443bf98ca94228d9eebcc2e8a2c8ee1"
+ integrity sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==
+
+foreground-child@^3.1.0:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f"
+ integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==
+ dependencies:
+ cross-spawn "^7.0.6"
+ signal-exit "^4.0.1"
+
+form-data-encoder@^2.1.2:
+ version "2.1.4"
+ resolved "https://registry.yarnpkg.com/form-data-encoder/-/form-data-encoder-2.1.4.tgz#261ea35d2a70d48d30ec7a9603130fa5515e9cd5"
+ integrity sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==
+
+format@^0.2.0:
+ version "0.2.2"
+ resolved "https://registry.yarnpkg.com/format/-/format-0.2.2.tgz#d6170107e9efdc4ed30c9dc39016df942b5cb58b"
+ integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww==
+
+forwarded@0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811"
+ integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==
+
+fraction.js@^4.3.7:
+ version "4.3.7"
+ resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7"
+ integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==
+
+fresh@0.5.2:
+ version "0.5.2"
+ resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
+ integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==
+
+fs-extra@^11.1.1, fs-extra@^11.2.0:
+ version "11.3.0"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.0.tgz#0daced136bbaf65a555a326719af931adc7a314d"
+ integrity sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==
+ dependencies:
+ graceful-fs "^4.2.0"
+ jsonfile "^6.0.1"
+ universalify "^2.0.0"
+
+fs-extra@^9.0.0:
+ version "9.1.0"
+ resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d"
+ integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==
+ dependencies:
+ at-least-node "^1.0.0"
+ graceful-fs "^4.2.0"
+ jsonfile "^6.0.1"
+ universalify "^2.0.0"
+
+fs-monkey@^1.0.4:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.6.tgz#8ead082953e88d992cf3ff844faa907b26756da2"
+ integrity sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==
+
+fs.realpath@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
+ integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
+
+fsevents@~2.3.2:
+ version "2.3.3"
+ resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6"
+ integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
+
+function-bind@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c"
+ integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==
+
+gensync@^1.0.0-beta.2:
+ version "1.0.0-beta.2"
+ resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0"
+ integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==
+
+get-intrinsic@^1.2.4, get-intrinsic@^1.2.5, get-intrinsic@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz#743f0e3b6964a93a5491ed1bffaae054d7f98d01"
+ integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==
+ dependencies:
+ call-bind-apply-helpers "^1.0.2"
+ es-define-property "^1.0.1"
+ es-errors "^1.3.0"
+ es-object-atoms "^1.1.1"
+ function-bind "^1.1.2"
+ get-proto "^1.0.1"
+ gopd "^1.2.0"
+ has-symbols "^1.1.0"
+ hasown "^2.0.2"
+ math-intrinsics "^1.1.0"
+
+get-nonce@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3"
+ integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==
+
+get-own-enumerable-property-symbols@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664"
+ integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==
+
+get-proto@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/get-proto/-/get-proto-1.0.1.tgz#150b3f2743869ef3e851ec0c49d15b1d14d00ee1"
+ integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==
+ dependencies:
+ dunder-proto "^1.0.1"
+ es-object-atoms "^1.0.0"
+
+get-stream@^6.0.0, get-stream@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
+ integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==
+
+github-slugger@^1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d"
+ integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==
+
+glob-parent@^5.1.2, glob-parent@~5.1.2:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
+ integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
+ dependencies:
+ is-glob "^4.0.1"
+
+glob-parent@^6.0.1, glob-parent@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
+ integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
+ dependencies:
+ is-glob "^4.0.3"
+
+glob-to-regexp@^0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
+ integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
+
+glob@^10.3.10:
+ version "10.4.5"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.5.tgz#f4d9f0b90ffdbab09c9d77f5f29b4262517b0956"
+ integrity sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==
+ dependencies:
+ foreground-child "^3.1.0"
+ jackspeak "^3.1.2"
+ minimatch "^9.0.4"
+ minipass "^7.1.2"
+ package-json-from-dist "^1.0.0"
+ path-scurry "^1.11.1"
+
+glob@^7.1.3:
+ version "7.2.3"
+ resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
+ integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
+ dependencies:
+ fs.realpath "^1.0.0"
+ inflight "^1.0.4"
+ inherits "2"
+ minimatch "^3.1.1"
+ once "^1.3.0"
+ path-is-absolute "^1.0.0"
+
+global-dirs@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-3.0.1.tgz#0c488971f066baceda21447aecb1a8b911d22485"
+ integrity sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==
+ dependencies:
+ ini "2.0.0"
+
+globals@^11.1.0:
+ version "11.12.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e"
+ integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==
+
+globals@^13.19.0:
+ version "13.24.0"
+ resolved "https://registry.yarnpkg.com/globals/-/globals-13.24.0.tgz#8432a19d78ce0c1e833949c36adb345400bb1171"
+ integrity sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==
+ dependencies:
+ type-fest "^0.20.2"
+
+globby@^11.1.0:
+ version "11.1.0"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
+ integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
+ dependencies:
+ array-union "^2.1.0"
+ dir-glob "^3.0.1"
+ fast-glob "^3.2.9"
+ ignore "^5.2.0"
+ merge2 "^1.4.1"
+ slash "^3.0.0"
+
+globby@^13.1.1:
+ version "13.2.2"
+ resolved "https://registry.yarnpkg.com/globby/-/globby-13.2.2.tgz#63b90b1bf68619c2135475cbd4e71e66aa090592"
+ integrity sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==
+ dependencies:
+ dir-glob "^3.0.1"
+ fast-glob "^3.3.0"
+ ignore "^5.2.4"
+ merge2 "^1.4.1"
+ slash "^4.0.0"
+
+gopd@^1.0.1, gopd@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.2.0.tgz#89f56b8217bdbc8802bd299df6d7f1081d7e51a1"
+ integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==
+
+got@^12.1.0:
+ version "12.6.1"
+ resolved "https://registry.yarnpkg.com/got/-/got-12.6.1.tgz#8869560d1383353204b5a9435f782df9c091f549"
+ integrity sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==
+ dependencies:
+ "@sindresorhus/is" "^5.2.0"
+ "@szmarczak/http-timer" "^5.0.1"
+ cacheable-lookup "^7.0.0"
+ cacheable-request "^10.2.8"
+ decompress-response "^6.0.0"
+ form-data-encoder "^2.1.2"
+ get-stream "^6.0.1"
+ http2-wrapper "^2.1.10"
+ lowercase-keys "^3.0.0"
+ p-cancelable "^3.0.0"
+ responselike "^3.0.0"
+
+graceful-fs@4.2.10:
+ version "4.2.10"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c"
+ integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==
+
+graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, graceful-fs@^4.2.4, graceful-fs@^4.2.6, graceful-fs@^4.2.9:
+ version "4.2.11"
+ resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3"
+ integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==
+
+graphemer@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
+ integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
+
+gray-matter@^4.0.3:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.3.tgz#e893c064825de73ea1f5f7d88c7a9f7274288798"
+ integrity sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==
+ dependencies:
+ js-yaml "^3.13.1"
+ kind-of "^6.0.2"
+ section-matter "^1.0.0"
+ strip-bom-string "^1.0.0"
+
+gzip-size@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462"
+ integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==
+ dependencies:
+ duplexer "^0.1.2"
+
+handle-thing@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e"
+ integrity sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==
+
+has-flag@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
+ integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
+
+has-property-descriptors@^1.0.0, has-property-descriptors@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854"
+ integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==
+ dependencies:
+ es-define-property "^1.0.0"
+
+has-symbols@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338"
+ integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==
+
+has-yarn@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d"
+ integrity sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA==
+
+hasown@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003"
+ integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==
+ dependencies:
+ function-bind "^1.1.2"
+
+hast-util-from-dom@^5.0.0:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/hast-util-from-dom/-/hast-util-from-dom-5.0.1.tgz#c3c92fbd8d4e1c1625edeb3a773952b9e4ad64a8"
+ integrity sha512-N+LqofjR2zuzTjCPzyDUdSshy4Ma6li7p/c3pA78uTwzFgENbgbUrm2ugwsOdcjI1muO+o6Dgzp9p8WHtn/39Q==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ hastscript "^9.0.0"
+ web-namespaces "^2.0.0"
+
+hast-util-from-html-isomorphic@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/hast-util-from-html-isomorphic/-/hast-util-from-html-isomorphic-2.0.0.tgz#b31baee386a899a2472326a3c5692f29f86d1d3c"
+ integrity sha512-zJfpXq44yff2hmE0XmwEOzdWin5xwH+QIhMLOScpX91e/NSGPsAzNCvLQDIEPyO2TXi+lBmU6hjLIhV8MwP2kw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ hast-util-from-dom "^5.0.0"
+ hast-util-from-html "^2.0.0"
+ unist-util-remove-position "^5.0.0"
+
+hast-util-from-html@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/hast-util-from-html/-/hast-util-from-html-2.0.3.tgz#485c74785358beb80c4ba6346299311ac4c49c82"
+ integrity sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ devlop "^1.1.0"
+ hast-util-from-parse5 "^8.0.0"
+ parse5 "^7.0.0"
+ vfile "^6.0.0"
+ vfile-message "^4.0.0"
+
+hast-util-from-parse5@^8.0.0:
+ version "8.0.3"
+ resolved "https://registry.yarnpkg.com/hast-util-from-parse5/-/hast-util-from-parse5-8.0.3.tgz#830a35022fff28c3fea3697a98c2f4cc6b835a2e"
+ integrity sha512-3kxEVkEKt0zvcZ3hCRYI8rqrgwtlIOFMWkbclACvjlDw8Li9S2hk/d51OI0nr/gIpdMHNepwgOKqZ/sy0Clpyg==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/unist" "^3.0.0"
+ devlop "^1.0.0"
+ hastscript "^9.0.0"
+ property-information "^7.0.0"
+ vfile "^6.0.0"
+ vfile-location "^5.0.0"
+ web-namespaces "^2.0.0"
+
+hast-util-is-element@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-1.1.0.tgz#3b3ed5159a2707c6137b48637fbfe068e175a425"
+ integrity sha512-oUmNua0bFbdrD/ELDSSEadRVtWZOf3iF6Lbv81naqsIV99RnSCieTbWuWCY8BAeEfKJTKl0gRdokv+dELutHGQ==
+
+hast-util-is-element@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz#6e31a6532c217e5b533848c7e52c9d9369ca0932"
+ integrity sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==
+ dependencies:
+ "@types/hast" "^3.0.0"
+
+hast-util-parse-selector@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/hast-util-parse-selector/-/hast-util-parse-selector-4.0.0.tgz#352879fa86e25616036037dd8931fb5f34cb4a27"
+ integrity sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==
+ dependencies:
+ "@types/hast" "^3.0.0"
+
+hast-util-raw@^9.0.0:
+ version "9.1.0"
+ resolved "https://registry.yarnpkg.com/hast-util-raw/-/hast-util-raw-9.1.0.tgz#79b66b26f6f68fb50dfb4716b2cdca90d92adf2e"
+ integrity sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/unist" "^3.0.0"
+ "@ungap/structured-clone" "^1.0.0"
+ hast-util-from-parse5 "^8.0.0"
+ hast-util-to-parse5 "^8.0.0"
+ html-void-elements "^3.0.0"
+ mdast-util-to-hast "^13.0.0"
+ parse5 "^7.0.0"
+ unist-util-position "^5.0.0"
+ unist-util-visit "^5.0.0"
+ vfile "^6.0.0"
+ web-namespaces "^2.0.0"
+ zwitch "^2.0.0"
+
+hast-util-to-estree@^3.0.0:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/hast-util-to-estree/-/hast-util-to-estree-3.1.3.tgz#e654c1c9374645135695cc0ab9f70b8fcaf733d7"
+ integrity sha512-48+B/rJWAp0jamNbAAf9M7Uf//UVqAoMmgXhBdxTDJLGKY+LRnZ99qcG+Qjl5HfMpYNzS5v4EAwVEF34LeAj7w==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ "@types/estree-jsx" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ comma-separated-tokens "^2.0.0"
+ devlop "^1.0.0"
+ estree-util-attach-comments "^3.0.0"
+ estree-util-is-identifier-name "^3.0.0"
+ hast-util-whitespace "^3.0.0"
+ mdast-util-mdx-expression "^2.0.0"
+ mdast-util-mdx-jsx "^3.0.0"
+ mdast-util-mdxjs-esm "^2.0.0"
+ property-information "^7.0.0"
+ space-separated-tokens "^2.0.0"
+ style-to-js "^1.0.0"
+ unist-util-position "^5.0.0"
+ zwitch "^2.0.0"
+
+hast-util-to-jsx-runtime@^2.0.0:
+ version "2.3.6"
+ resolved "https://registry.yarnpkg.com/hast-util-to-jsx-runtime/-/hast-util-to-jsx-runtime-2.3.6.tgz#ff31897aae59f62232e21594eac7ef6b63333e98"
+ integrity sha512-zl6s8LwNyo1P9uw+XJGvZtdFF1GdAkOg8ujOw+4Pyb76874fLps4ueHXDhXWdk6YHQ6OgUtinliG7RsYvCbbBg==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ "@types/unist" "^3.0.0"
+ comma-separated-tokens "^2.0.0"
+ devlop "^1.0.0"
+ estree-util-is-identifier-name "^3.0.0"
+ hast-util-whitespace "^3.0.0"
+ mdast-util-mdx-expression "^2.0.0"
+ mdast-util-mdx-jsx "^3.0.0"
+ mdast-util-mdxjs-esm "^2.0.0"
+ property-information "^7.0.0"
+ space-separated-tokens "^2.0.0"
+ style-to-js "^1.0.0"
+ unist-util-position "^5.0.0"
+ vfile-message "^4.0.0"
+
+hast-util-to-parse5@^8.0.0:
+ version "8.0.0"
+ resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz#477cd42d278d4f036bc2ea58586130f6f39ee6ed"
+ integrity sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ comma-separated-tokens "^2.0.0"
+ devlop "^1.0.0"
+ property-information "^6.0.0"
+ space-separated-tokens "^2.0.0"
+ web-namespaces "^2.0.0"
+ zwitch "^2.0.0"
+
+hast-util-to-text@^4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/hast-util-to-text/-/hast-util-to-text-4.0.2.tgz#57b676931e71bf9cb852453678495b3080bfae3e"
+ integrity sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/unist" "^3.0.0"
+ hast-util-is-element "^3.0.0"
+ unist-util-find-after "^5.0.0"
+
+hast-util-whitespace@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-2.0.1.tgz#0ec64e257e6fc216c7d14c8a1b74d27d650b4557"
+ integrity sha512-nAxA0v8+vXSBDt3AnRUNjyRIQ0rD+ntpbAp4LnPkumc5M9yUbSMa4XDU9Q6etY4f1Wp4bNgvc1yjiZtsTTrSng==
+
+hast-util-whitespace@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz#7778ed9d3c92dd9e8c5c8f648a49c21fc51cb621"
+ integrity sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+
+hastscript@^9.0.0:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/hastscript/-/hastscript-9.0.1.tgz#dbc84bef6051d40084342c229c451cd9dc567dff"
+ integrity sha512-g7df9rMFX/SPi34tyGCyUBREQoKkapwdY/T04Qn9TDWfHhAYt4/I0gMVirzK5wEzeUqIjEB+LXC/ypb7Aqno5w==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ comma-separated-tokens "^2.0.0"
+ hast-util-parse-selector "^4.0.0"
+ property-information "^7.0.0"
+ space-separated-tokens "^2.0.0"
+
+he@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
+ integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
+
+history@^4.9.0:
+ version "4.10.1"
+ resolved "https://registry.yarnpkg.com/history/-/history-4.10.1.tgz#33371a65e3a83b267434e2b3f3b1b4c58aad4cf3"
+ integrity sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==
+ dependencies:
+ "@babel/runtime" "^7.1.2"
+ loose-envify "^1.2.0"
+ resolve-pathname "^3.0.0"
+ tiny-invariant "^1.0.2"
+ tiny-warning "^1.0.0"
+ value-equal "^1.0.1"
+
+hoist-non-react-statics@^3.1.0:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
+ integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
+ dependencies:
+ react-is "^16.7.0"
+
+hpack.js@^2.1.6:
+ version "2.1.6"
+ resolved "https://registry.yarnpkg.com/hpack.js/-/hpack.js-2.1.6.tgz#87774c0949e513f42e84575b3c45681fade2a0b2"
+ integrity sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==
+ dependencies:
+ inherits "^2.0.1"
+ obuf "^1.0.0"
+ readable-stream "^2.0.1"
+ wbuf "^1.1.0"
+
+html-entities@^2.3.2:
+ version "2.6.0"
+ resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.6.0.tgz#7c64f1ea3b36818ccae3d3fb48b6974208e984f8"
+ integrity sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==
+
+html-escaper@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
+ integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
+
+html-minifier-terser@^6.0.2:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz#bfc818934cc07918f6b3669f5774ecdfd48f32ab"
+ integrity sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==
+ dependencies:
+ camel-case "^4.1.2"
+ clean-css "^5.2.2"
+ commander "^8.3.0"
+ he "^1.2.0"
+ param-case "^3.0.4"
+ relateurl "^0.2.7"
+ terser "^5.10.0"
+
+html-minifier-terser@^7.2.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz#18752e23a2f0ed4b0f550f217bb41693e975b942"
+ integrity sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==
+ dependencies:
+ camel-case "^4.1.2"
+ clean-css "~5.3.2"
+ commander "^10.0.0"
+ entities "^4.4.0"
+ param-case "^3.0.4"
+ relateurl "^0.2.7"
+ terser "^5.15.1"
+
+html-tags@^3.3.1:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.3.1.tgz#a04026a18c882e4bba8a01a3d39cfe465d40b5ce"
+ integrity sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==
+
+html-void-elements@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/html-void-elements/-/html-void-elements-3.0.0.tgz#fc9dbd84af9e747249034d4d62602def6517f1d7"
+ integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==
+
+html-webpack-plugin@^5.6.0:
+ version "5.6.3"
+ resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.6.3.tgz#a31145f0fee4184d53a794f9513147df1e653685"
+ integrity sha512-QSf1yjtSAsmf7rYBV7XX86uua4W/vkhIt0xNXKbsi2foEeW7vjJQz4bhnpL3xH+l1ryl1680uNv968Z+X6jSYg==
+ dependencies:
+ "@types/html-minifier-terser" "^6.0.0"
+ html-minifier-terser "^6.0.2"
+ lodash "^4.17.21"
+ pretty-error "^4.0.0"
+ tapable "^2.0.0"
+
+htmlparser2@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7"
+ integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==
+ dependencies:
+ domelementtype "^2.0.1"
+ domhandler "^4.0.0"
+ domutils "^2.5.2"
+ entities "^2.0.0"
+
+htmlparser2@^8.0.1:
+ version "8.0.2"
+ resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-8.0.2.tgz#f002151705b383e62433b5cf466f5b716edaec21"
+ integrity sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==
+ dependencies:
+ domelementtype "^2.3.0"
+ domhandler "^5.0.3"
+ domutils "^3.0.1"
+ entities "^4.4.0"
+
+http-cache-semantics@^4.1.1:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#205f4db64f8562b76a4ff9235aa5279839a09dd5"
+ integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==
+
+http-deceiver@^1.2.7:
+ version "1.2.7"
+ resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87"
+ integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==
+
+http-errors@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3"
+ integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==
+ dependencies:
+ depd "2.0.0"
+ inherits "2.0.4"
+ setprototypeof "1.2.0"
+ statuses "2.0.1"
+ toidentifier "1.0.1"
+
+http-errors@~1.6.2:
+ version "1.6.3"
+ resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d"
+ integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==
+ dependencies:
+ depd "~1.1.2"
+ inherits "2.0.3"
+ setprototypeof "1.1.0"
+ statuses ">= 1.4.0 < 2"
+
+http-parser-js@>=0.5.1:
+ version "0.5.10"
+ resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.10.tgz#b3277bd6d7ed5588e20ea73bf724fcbe44609075"
+ integrity sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA==
+
+http-proxy-middleware@^2.0.3:
+ version "2.0.9"
+ resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz#e9e63d68afaa4eee3d147f39149ab84c0c2815ef"
+ integrity sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q==
+ dependencies:
+ "@types/http-proxy" "^1.17.8"
+ http-proxy "^1.18.1"
+ is-glob "^4.0.1"
+ is-plain-obj "^3.0.0"
+ micromatch "^4.0.2"
+
+http-proxy@^1.18.1:
+ version "1.18.1"
+ resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.18.1.tgz#401541f0534884bbf95260334e72f88ee3976549"
+ integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==
+ dependencies:
+ eventemitter3 "^4.0.0"
+ follow-redirects "^1.0.0"
+ requires-port "^1.0.0"
+
+http2-wrapper@^2.1.10:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-2.2.1.tgz#310968153dcdedb160d8b72114363ef5fce1f64a"
+ integrity sha512-V5nVw1PAOgfI3Lmeaj2Exmeg7fenjhRUgz1lPSezy1CuhPYbgQtbQj4jZfEAEMlaL+vupsvhjqCyjzob0yxsmQ==
+ dependencies:
+ quick-lru "^5.1.1"
+ resolve-alpn "^1.2.0"
+
+human-signals@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0"
+ integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==
+
+iconv-lite@0.4.24:
+ version "0.4.24"
+ resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
+ integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==
+ dependencies:
+ safer-buffer ">= 2.1.2 < 3"
+
+icss-utils@^5.0.0, icss-utils@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae"
+ integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==
+
+ieee754@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352"
+ integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==
+
+ignore@^5.2.0, ignore@^5.2.4:
+ version "5.3.2"
+ resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5"
+ integrity sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==
+
+image-size@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/image-size/-/image-size-2.0.2.tgz#84a7b43704db5736f364bf0d1b029821299b4bdc"
+ integrity sha512-IRqXKlaXwgSMAMtpNzZa1ZAe8m+Sa1770Dhk8VkSsP9LS+iHD62Zd8FQKs8fbPiagBE7BzoFX23cxFnwshpV6w==
+
+import-fresh@^3.2.1, import-fresh@^3.3.0:
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.1.tgz#9cecb56503c0ada1f2741dbbd6546e4b13b57ccf"
+ integrity sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==
+ dependencies:
+ parent-module "^1.0.0"
+ resolve-from "^4.0.0"
+
+import-lazy@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153"
+ integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==
+
+imurmurhash@^0.1.4:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
+ integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==
+
+indent-string@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251"
+ integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==
+
+infima@0.2.0-alpha.45:
+ version "0.2.0-alpha.45"
+ resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.45.tgz#542aab5a249274d81679631b492973dd2c1e7466"
+ integrity sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw==
+
+inflight@^1.0.4:
+ version "1.0.6"
+ resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
+ integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
+ dependencies:
+ once "^1.3.0"
+ wrappy "1"
+
+inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3, inherits@~2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
+ integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
+
+inherits@2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
+ integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==
+
+ini@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5"
+ integrity sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==
+
+ini@^1.3.4, ini@~1.3.0:
+ version "1.3.8"
+ resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c"
+ integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==
+
+inline-style-parser@0.1.1:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.1.1.tgz#ec8a3b429274e9c0a1f1c4ffa9453a7fef72cea1"
+ integrity sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==
+
+inline-style-parser@0.2.4:
+ version "0.2.4"
+ resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22"
+ integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==
+
+invariant@^2.2.4:
+ version "2.2.4"
+ resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
+ integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
+ dependencies:
+ loose-envify "^1.0.0"
+
+ipaddr.js@1.9.1:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3"
+ integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==
+
+ipaddr.js@^2.0.1:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8"
+ integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA==
+
+is-alphabetical@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-2.0.1.tgz#01072053ea7c1036df3c7d19a6daaec7f19e789b"
+ integrity sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==
+
+is-alphanumerical@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-2.0.1.tgz#7c03fbe96e3e931113e57f964b0a368cc2dfd875"
+ integrity sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==
+ dependencies:
+ is-alphabetical "^2.0.0"
+ is-decimal "^2.0.0"
+
+is-arrayish@^0.2.1:
+ version "0.2.1"
+ resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
+ integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==
+
+is-binary-path@~2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09"
+ integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==
+ dependencies:
+ binary-extensions "^2.0.0"
+
+is-buffer@^2.0.0:
+ version "2.0.5"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.5.tgz#ebc252e400d22ff8d77fa09888821a24a658c191"
+ integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==
+
+is-ci@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c"
+ integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==
+ dependencies:
+ ci-info "^2.0.0"
+
+is-ci@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz#db6ecbed1bd659c43dac0f45661e7674103d1867"
+ integrity sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==
+ dependencies:
+ ci-info "^3.2.0"
+
+is-core-module@^2.16.0:
+ version "2.16.1"
+ resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4"
+ integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==
+ dependencies:
+ hasown "^2.0.2"
+
+is-decimal@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-2.0.1.tgz#9469d2dc190d0214fd87d78b78caecc0cc14eef7"
+ integrity sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==
+
+is-docker@^2.0.0, is-docker@^2.1.1:
+ version "2.2.1"
+ resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa"
+ integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==
+
+is-extendable@^0.1.0:
+ version "0.1.1"
+ resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89"
+ integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==
+
+is-extglob@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2"
+ integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==
+
+is-fullwidth-code-point@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d"
+ integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==
+
+is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1:
+ version "4.0.3"
+ resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084"
+ integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
+ dependencies:
+ is-extglob "^2.1.1"
+
+is-hexadecimal@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027"
+ integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==
+
+is-installed-globally@^0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520"
+ integrity sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==
+ dependencies:
+ global-dirs "^3.0.0"
+ is-path-inside "^3.0.2"
+
+is-npm@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-6.0.0.tgz#b59e75e8915543ca5d881ecff864077cba095261"
+ integrity sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==
+
+is-number@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
+ integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
+
+is-obj@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
+ integrity sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==
+
+is-obj@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982"
+ integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==
+
+is-path-inside@^3.0.2, is-path-inside@^3.0.3:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283"
+ integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==
+
+is-plain-obj@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz#af6f2ea14ac5a646183a5bbdb5baabbc156ad9d7"
+ integrity sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==
+
+is-plain-obj@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-4.1.0.tgz#d65025edec3657ce032fd7db63c97883eaed71f0"
+ integrity sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==
+
+is-plain-object@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677"
+ integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==
+ dependencies:
+ isobject "^3.0.1"
+
+is-regexp@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069"
+ integrity sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==
+
+is-stream@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077"
+ integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==
+
+is-typedarray@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
+ integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==
+
+is-wsl@^2.1.1, is-wsl@^2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271"
+ integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==
+ dependencies:
+ is-docker "^2.0.0"
+
+is-yarn-global@^0.4.0:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.4.1.tgz#b312d902b313f81e4eaf98b6361ba2b45cd694bb"
+ integrity sha512-/kppl+R+LO5VmhYSEWARUFjodS25D68gvj8W7z0I7OWhUla5xWu8KL6CtB2V0R6yqhnRgbcaREMr4EEM6htLPQ==
+
+isarray@0.0.1:
+ version "0.0.1"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
+ integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==
+
+isarray@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
+ integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==
+
+isexe@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
+ integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==
+
+isobject@^3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
+ integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==
+
+jackspeak@^3.1.2:
+ version "3.4.3"
+ resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a"
+ integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==
+ dependencies:
+ "@isaacs/cliui" "^8.0.2"
+ optionalDependencies:
+ "@pkgjs/parseargs" "^0.11.0"
+
+jest-util@^29.7.0:
+ version "29.7.0"
+ resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-29.7.0.tgz#23c2b62bfb22be82b44de98055802ff3710fc0bc"
+ integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==
+ dependencies:
+ "@jest/types" "^29.6.3"
+ "@types/node" "*"
+ chalk "^4.0.0"
+ ci-info "^3.2.0"
+ graceful-fs "^4.2.9"
+ picomatch "^2.2.3"
+
+jest-worker@^27.4.5:
+ version "27.5.1"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.5.1.tgz#8d146f0900e8973b106b6f73cc1e9a8cb86f8db0"
+ integrity sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==
+ dependencies:
+ "@types/node" "*"
+ merge-stream "^2.0.0"
+ supports-color "^8.0.0"
+
+jest-worker@^29.4.3:
+ version "29.7.0"
+ resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-29.7.0.tgz#acad073acbbaeb7262bd5389e1bcf43e10058d4a"
+ integrity sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==
+ dependencies:
+ "@types/node" "*"
+ jest-util "^29.7.0"
+ merge-stream "^2.0.0"
+ supports-color "^8.0.0"
+
+jiti@^1.20.0, jiti@^1.21.6:
+ version "1.21.7"
+ resolved "https://registry.yarnpkg.com/jiti/-/jiti-1.21.7.tgz#9dd81043424a3d28458b193d965f0d18a2300ba9"
+ integrity sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==
+
+joi@^17.9.2:
+ version "17.13.3"
+ resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.3.tgz#0f5cc1169c999b30d344366d384b12d92558bcec"
+ integrity sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA==
+ dependencies:
+ "@hapi/hoek" "^9.3.0"
+ "@hapi/topo" "^5.1.0"
+ "@sideway/address" "^4.1.5"
+ "@sideway/formula" "^3.0.1"
+ "@sideway/pinpoint" "^2.0.0"
+
+"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
+ integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
+
+js-yaml@^3.13.1:
+ version "3.14.1"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537"
+ integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==
+ dependencies:
+ argparse "^1.0.7"
+ esprima "^4.0.0"
+
+js-yaml@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
+ integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
+ dependencies:
+ argparse "^2.0.1"
+
+jsesc@^3.0.2:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d"
+ integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==
+
+jsesc@~3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e"
+ integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==
+
+json-buffer@3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
+ integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
+
+json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d"
+ integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==
+
+json-schema-traverse@^0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
+ integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
+
+json-schema-traverse@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2"
+ integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==
+
+json-stable-stringify-without-jsonify@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
+ integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==
+
+json5@^2.1.2, json5@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283"
+ integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==
+
+jsonfile@^6.0.1:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae"
+ integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==
+ dependencies:
+ universalify "^2.0.0"
+ optionalDependencies:
+ graceful-fs "^4.1.6"
+
+katex@^0.16.0:
+ version "0.16.22"
+ resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.22.tgz#d2b3d66464b1e6d69e6463b28a86ced5a02c5ccd"
+ integrity sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==
+ dependencies:
+ commander "^8.3.0"
+
+keyv@^4.5.3:
+ version "4.5.4"
+ resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93"
+ integrity sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==
+ dependencies:
+ json-buffer "3.0.1"
+
+kind-of@^6.0.0, kind-of@^6.0.2:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd"
+ integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==
+
+klaw-sync@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/klaw-sync/-/klaw-sync-6.0.0.tgz#1fd2cfd56ebb6250181114f0a581167099c2b28c"
+ integrity sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==
+ dependencies:
+ graceful-fs "^4.1.11"
+
+kleur@^3.0.3:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
+ integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==
+
+kleur@^4.0.3:
+ version "4.1.5"
+ resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz#95106101795f7050c6c650f350c683febddb1780"
+ integrity sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==
+
+latest-version@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-7.0.0.tgz#843201591ea81a4d404932eeb61240fe04e9e5da"
+ integrity sha512-KvNT4XqAMzdcL6ka6Tl3i2lYeFDgXNCuIX+xNx6ZMVR1dFq+idXd9FLKNMOIx0t9mJ9/HudyX4oZWXZQ0UJHeg==
+ dependencies:
+ package-json "^8.1.0"
+
+launch-editor@^2.6.0:
+ version "2.10.0"
+ resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.10.0.tgz#5ca3edfcb9667df1e8721310f3a40f1127d4bc42"
+ integrity sha512-D7dBRJo/qcGX9xlvt/6wUYzQxjh5G1RvZPgPv8vi4KRU99DVQL/oW7tnVOCCTm2HGeo3C5HvGE5Yrh6UBoZ0vA==
+ dependencies:
+ picocolors "^1.0.0"
+ shell-quote "^1.8.1"
+
+leven@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2"
+ integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==
+
+levn@^0.4.1:
+ version "0.4.1"
+ resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
+ integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
+ dependencies:
+ prelude-ls "^1.2.1"
+ type-check "~0.4.0"
+
+lightningcss-darwin-arm64@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.1.tgz#3d47ce5e221b9567c703950edf2529ca4a3700ae"
+ integrity sha512-c8JK7hyE65X1MHMN+Viq9n11RRC7hgin3HhYKhrMyaXflk5GVplZ60IxyoVtzILeKr+xAJwg6zK6sjTBJ0FKYQ==
+
+lightningcss-darwin-x64@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.1.tgz#e81105d3fd6330860c15fe860f64d39cff5fbd22"
+ integrity sha512-k1EvjakfumAQoTfcXUcHQZhSpLlkAuEkdMBsI/ivWw9hL+7FtilQc0Cy3hrx0AAQrVtQAbMI7YjCgYgvn37PzA==
+
+lightningcss-freebsd-x64@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.1.tgz#a0e732031083ff9d625c5db021d09eb085af8be4"
+ integrity sha512-kmW6UGCGg2PcyUE59K5r0kWfKPAVy4SltVeut+umLCFoJ53RdCUWxcRDzO1eTaxf/7Q2H7LTquFHPL5R+Gjyig==
+
+lightningcss-linux-arm-gnueabihf@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.1.tgz#1f5ecca6095528ddb649f9304ba2560c72474908"
+ integrity sha512-MjxUShl1v8pit+6D/zSPq9S9dQ2NPFSQwGvxBCYaBYLPlCWuPh9/t1MRS8iUaR8i+a6w7aps+B4N0S1TYP/R+Q==
+
+lightningcss-linux-arm64-gnu@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.1.tgz#eee7799726103bffff1e88993df726f6911ec009"
+ integrity sha512-gB72maP8rmrKsnKYy8XUuXi/4OctJiuQjcuqWNlJQ6jZiWqtPvqFziskH3hnajfvKB27ynbVCucKSm2rkQp4Bw==
+
+lightningcss-linux-arm64-musl@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.1.tgz#f2e4b53f42892feeef8f620cbb889f7c064a7dfe"
+ integrity sha512-jmUQVx4331m6LIX+0wUhBbmMX7TCfjF5FoOH6SD1CttzuYlGNVpA7QnrmLxrsub43ClTINfGSYyHe2HWeLl5CQ==
+
+lightningcss-linux-x64-gnu@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.1.tgz#2fc7096224bc000ebb97eea94aea248c5b0eb157"
+ integrity sha512-piWx3z4wN8J8z3+O5kO74+yr6ze/dKmPnI7vLqfSqI8bccaTGY5xiSGVIJBDd5K5BHlvVLpUB3S2YCfelyJ1bw==
+
+lightningcss-linux-x64-musl@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.1.tgz#66dca2b159fd819ea832c44895d07e5b31d75f26"
+ integrity sha512-rRomAK7eIkL+tHY0YPxbc5Dra2gXlI63HL+v1Pdi1a3sC+tJTcFrHX+E86sulgAXeI7rSzDYhPSeHHjqFhqfeQ==
+
+lightningcss-win32-arm64-msvc@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.1.tgz#7d8110a19d7c2d22bfdf2f2bb8be68e7d1b69039"
+ integrity sha512-mSL4rqPi4iXq5YVqzSsJgMVFENoa4nGTT/GjO2c0Yl9OuQfPsIfncvLrEW6RbbB24WtZ3xP/2CCmI3tNkNV4oA==
+
+lightningcss-win32-x64-msvc@1.30.1:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.1.tgz#fd7dd008ea98494b85d24b4bea016793f2e0e352"
+ integrity sha512-PVqXh48wh4T53F/1CCu8PIPCxLzWyCnn/9T5W1Jpmdy5h9Cwd+0YQS6/LwhHXSafuc61/xg9Lv5OrCby6a++jg==
+
+lightningcss@^1.27.0:
+ version "1.30.1"
+ resolved "https://registry.yarnpkg.com/lightningcss/-/lightningcss-1.30.1.tgz#78e979c2d595bfcb90d2a8c0eb632fe6c5bfed5d"
+ integrity sha512-xi6IyHML+c9+Q3W0S4fCQJOym42pyurFiJUHEcEyHS0CeKzia4yZDEsLlqOFykxOdHpNy0NmvVO31vcSqAxJCg==
+ dependencies:
+ detect-libc "^2.0.3"
+ optionalDependencies:
+ lightningcss-darwin-arm64 "1.30.1"
+ lightningcss-darwin-x64 "1.30.1"
+ lightningcss-freebsd-x64 "1.30.1"
+ lightningcss-linux-arm-gnueabihf "1.30.1"
+ lightningcss-linux-arm64-gnu "1.30.1"
+ lightningcss-linux-arm64-musl "1.30.1"
+ lightningcss-linux-x64-gnu "1.30.1"
+ lightningcss-linux-x64-musl "1.30.1"
+ lightningcss-win32-arm64-msvc "1.30.1"
+ lightningcss-win32-x64-msvc "1.30.1"
+
+lilconfig@^3.0.0, lilconfig@^3.1.1, lilconfig@^3.1.3:
+ version "3.1.3"
+ resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4"
+ integrity sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==
+
+lines-and-columns@^1.1.6:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632"
+ integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==
+
+linkify-it@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/linkify-it/-/linkify-it-5.0.0.tgz#9ef238bfa6dc70bd8e7f9572b52d369af569b421"
+ integrity sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==
+ dependencies:
+ uc.micro "^2.0.0"
+
+loader-runner@^4.2.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1"
+ integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==
+
+loader-utils@^2.0.0:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.4.tgz#8b5cb38b5c34a9a018ee1fc0e6a066d1dfcc528c"
+ integrity sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==
+ dependencies:
+ big.js "^5.2.2"
+ emojis-list "^3.0.0"
+ json5 "^2.1.2"
+
+locate-path@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286"
+ integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==
+ dependencies:
+ p-locate "^5.0.0"
+
+locate-path@^7.1.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-7.2.0.tgz#69cb1779bd90b35ab1e771e1f2f89a202c2a8a8a"
+ integrity sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==
+ dependencies:
+ p-locate "^6.0.0"
+
+lodash.debounce@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af"
+ integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==
+
+lodash.memoize@^4.1.2:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
+ integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==
+
+lodash.merge@^4.6.2:
+ version "4.6.2"
+ resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
+ integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
+
+lodash.uniq@^4.5.0:
+ version "4.5.0"
+ resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
+ integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==
+
+lodash@^4.17.20, lodash@^4.17.21:
+ version "4.17.21"
+ resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
+ integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
+
+longest-streak@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/longest-streak/-/longest-streak-3.1.0.tgz#62fa67cd958742a1574af9f39866364102d90cd4"
+ integrity sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==
+
+loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
+ integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==
+ dependencies:
+ js-tokens "^3.0.0 || ^4.0.0"
+
+lower-case@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28"
+ integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==
+ dependencies:
+ tslib "^2.0.3"
+
+lowercase-keys@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2"
+ integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ==
+
+lru-cache@^10.2.0:
+ version "10.4.3"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119"
+ integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==
+
+lru-cache@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920"
+ integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==
+ dependencies:
+ yallist "^3.0.2"
+
+lunr@^2.3.9:
+ version "2.3.9"
+ resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1"
+ integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==
+
+markdown-extensions@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/markdown-extensions/-/markdown-extensions-2.0.0.tgz#34bebc83e9938cae16e0e017e4a9814a8330d3c4"
+ integrity sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q==
+
+markdown-it@^14.1.0:
+ version "14.1.0"
+ resolved "https://registry.yarnpkg.com/markdown-it/-/markdown-it-14.1.0.tgz#3c3c5992883c633db4714ccb4d7b5935d98b7d45"
+ integrity sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==
+ dependencies:
+ argparse "^2.0.1"
+ entities "^4.4.0"
+ linkify-it "^5.0.0"
+ mdurl "^2.0.0"
+ punycode.js "^2.3.1"
+ uc.micro "^2.1.0"
+
+markdown-table@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b"
+ integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A==
+ dependencies:
+ repeat-string "^1.0.0"
+
+markdown-table@^3.0.0:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.4.tgz#fe44d6d410ff9d6f2ea1797a3f60aa4d2b631c2a"
+ integrity sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==
+
+math-intrinsics@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9"
+ integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==
+
+mdast-util-definitions@^5.0.0:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-definitions/-/mdast-util-definitions-5.1.2.tgz#9910abb60ac5d7115d6819b57ae0bcef07a3f7a7"
+ integrity sha512-8SVPMuHqlPME/z3gqVwWY4zVXn8lqKv/pAhC57FuJ40ImXyBpmO5ukh98zB2v7Blql2FiHjHv9LVztSIqjY+MA==
+ dependencies:
+ "@types/mdast" "^3.0.0"
+ "@types/unist" "^2.0.0"
+ unist-util-visit "^4.0.0"
+
+mdast-util-directive@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-directive/-/mdast-util-directive-3.1.0.tgz#f3656f4aab6ae3767d3c72cfab5e8055572ccba1"
+ integrity sha512-I3fNFt+DHmpWCYAT7quoM6lHf9wuqtI+oCOfvILnoicNIqjh5E3dEJWiXuYME2gNe8vl1iMQwyUHa7bgFmak6Q==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ "@types/unist" "^3.0.0"
+ ccount "^2.0.0"
+ devlop "^1.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+ parse-entities "^4.0.0"
+ stringify-entities "^4.0.0"
+ unist-util-visit-parents "^6.0.0"
+
+mdast-util-find-and-replace@^3.0.0, mdast-util-find-and-replace@^3.0.1:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz#70a3174c894e14df722abf43bc250cbae44b11df"
+ integrity sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ escape-string-regexp "^5.0.0"
+ unist-util-is "^6.0.0"
+ unist-util-visit-parents "^6.0.0"
+
+mdast-util-from-markdown@^1.0.0:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-1.3.1.tgz#9421a5a247f10d31d2faed2a30df5ec89ceafcf0"
+ integrity sha512-4xTO/M8c82qBcnQc1tgpNtubGUW/Y1tBQ1B0i5CtSoelOLKFYlElIr3bvgREYYO5iRqbMY1YuqZng0GVOI8Qww==
+ dependencies:
+ "@types/mdast" "^3.0.0"
+ "@types/unist" "^2.0.0"
+ decode-named-character-reference "^1.0.0"
+ mdast-util-to-string "^3.1.0"
+ micromark "^3.0.0"
+ micromark-util-decode-numeric-character-reference "^1.0.0"
+ micromark-util-decode-string "^1.0.0"
+ micromark-util-normalize-identifier "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+ unist-util-stringify-position "^3.0.0"
+ uvu "^0.5.0"
+
+mdast-util-from-markdown@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz#4850390ca7cf17413a9b9a0fbefcd1bc0eb4160a"
+ integrity sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ "@types/unist" "^3.0.0"
+ decode-named-character-reference "^1.0.0"
+ devlop "^1.0.0"
+ mdast-util-to-string "^4.0.0"
+ micromark "^4.0.0"
+ micromark-util-decode-numeric-character-reference "^2.0.0"
+ micromark-util-decode-string "^2.0.0"
+ micromark-util-normalize-identifier "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ unist-util-stringify-position "^4.0.0"
+
+mdast-util-frontmatter@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-frontmatter/-/mdast-util-frontmatter-2.0.1.tgz#f5f929eb1eb36c8a7737475c7eb438261f964ee8"
+ integrity sha512-LRqI9+wdgC25P0URIJY9vwocIzCcksduHQ9OF2joxQoyTNVduwLAFUzjoopuRJbJAReaKrNQKAZKL3uCMugWJA==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ escape-string-regexp "^5.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+ micromark-extension-frontmatter "^2.0.0"
+
+mdast-util-gfm-autolink-literal@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz#abd557630337bd30a6d5a4bd8252e1c2dc0875d5"
+ integrity sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ ccount "^2.0.0"
+ devlop "^1.0.0"
+ mdast-util-find-and-replace "^3.0.0"
+ micromark-util-character "^2.0.0"
+
+mdast-util-gfm-footnote@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz#7778e9d9ca3df7238cc2bd3fa2b1bf6a65b19403"
+ integrity sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ devlop "^1.1.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+ micromark-util-normalize-identifier "^2.0.0"
+
+mdast-util-gfm-strikethrough@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz#d44ef9e8ed283ac8c1165ab0d0dfd058c2764c16"
+ integrity sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-gfm-table@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz#7a435fb6223a72b0862b33afbd712b6dae878d38"
+ integrity sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ markdown-table "^3.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-gfm-task-list-item@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz#e68095d2f8a4303ef24094ab642e1047b991a936"
+ integrity sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-gfm@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz#2cdf63b92c2a331406b0fb0db4c077c1b0331751"
+ integrity sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==
+ dependencies:
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-gfm-autolink-literal "^2.0.0"
+ mdast-util-gfm-footnote "^2.0.0"
+ mdast-util-gfm-strikethrough "^2.0.0"
+ mdast-util-gfm-table "^2.0.0"
+ mdast-util-gfm-task-list-item "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-math@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-math/-/mdast-util-math-3.0.0.tgz#8d79dd3baf8ab8ac781f62b8853768190b9a00b0"
+ integrity sha512-Tl9GBNeG/AhJnQM221bJR2HPvLOSnLE/T9cJI9tlc6zwQk2nPk/4f0cHkOdEixQPC/j8UtKDdITswvLAy1OZ1w==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ longest-streak "^3.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.1.0"
+ unist-util-remove-position "^5.0.0"
+
+mdast-util-mdx-expression@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdx-expression/-/mdast-util-mdx-expression-2.0.1.tgz#43f0abac9adc756e2086f63822a38c8d3c3a5096"
+ integrity sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-mdx-jsx@^3.0.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdx-jsx/-/mdast-util-mdx-jsx-3.2.0.tgz#fd04c67a2a7499efb905a8a5c578dddc9fdada0d"
+ integrity sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ "@types/unist" "^3.0.0"
+ ccount "^2.0.0"
+ devlop "^1.1.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+ parse-entities "^4.0.0"
+ stringify-entities "^4.0.0"
+ unist-util-stringify-position "^4.0.0"
+ vfile-message "^4.0.0"
+
+mdast-util-mdx@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdx/-/mdast-util-mdx-3.0.0.tgz#792f9cf0361b46bee1fdf1ef36beac424a099c41"
+ integrity sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==
+ dependencies:
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-mdx-expression "^2.0.0"
+ mdast-util-mdx-jsx "^3.0.0"
+ mdast-util-mdxjs-esm "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-mdxjs-esm@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mdast-util-mdxjs-esm/-/mdast-util-mdxjs-esm-2.0.1.tgz#019cfbe757ad62dd557db35a695e7314bcc9fa97"
+ integrity sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==
+ dependencies:
+ "@types/estree-jsx" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ devlop "^1.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ mdast-util-to-markdown "^2.0.0"
+
+mdast-util-phrasing@^4.0.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz#7cc0a8dec30eaf04b7b1a9661a92adb3382aa6e3"
+ integrity sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ unist-util-is "^6.0.0"
+
+mdast-util-to-hast@^12.1.0:
+ version "12.3.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-12.3.0.tgz#045d2825fb04374e59970f5b3f279b5700f6fb49"
+ integrity sha512-pits93r8PhnIoU4Vy9bjW39M2jJ6/tdHyja9rrot9uujkN7UTU9SDnE6WNJz/IGyQk3XHX6yNNtrBH6cQzm8Hw==
+ dependencies:
+ "@types/hast" "^2.0.0"
+ "@types/mdast" "^3.0.0"
+ mdast-util-definitions "^5.0.0"
+ micromark-util-sanitize-uri "^1.1.0"
+ trim-lines "^3.0.0"
+ unist-util-generated "^2.0.0"
+ unist-util-position "^4.0.0"
+ unist-util-visit "^4.0.0"
+
+mdast-util-to-hast@^13.0.0:
+ version "13.2.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4"
+ integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ "@ungap/structured-clone" "^1.0.0"
+ devlop "^1.0.0"
+ micromark-util-sanitize-uri "^2.0.0"
+ trim-lines "^3.0.0"
+ unist-util-position "^5.0.0"
+ unist-util-visit "^5.0.0"
+ vfile "^6.0.0"
+
+mdast-util-to-markdown@^2.0.0, mdast-util-to-markdown@^2.1.0:
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-markdown/-/mdast-util-to-markdown-2.1.2.tgz#f910ffe60897f04bb4b7e7ee434486f76288361b"
+ integrity sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ "@types/unist" "^3.0.0"
+ longest-streak "^3.0.0"
+ mdast-util-phrasing "^4.0.0"
+ mdast-util-to-string "^4.0.0"
+ micromark-util-classify-character "^2.0.0"
+ micromark-util-decode-string "^2.0.0"
+ unist-util-visit "^5.0.0"
+ zwitch "^2.0.0"
+
+mdast-util-to-string@^3.1.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-3.2.0.tgz#66f7bb6324756741c5f47a53557f0cbf16b6f789"
+ integrity sha512-V4Zn/ncyN1QNSqSBxTrMOLpjr+IKdHl2v3KVLoWmDPscP4r9GcCi71gjgvUV1SFSKh92AjAG4peFuBl2/YgCJg==
+ dependencies:
+ "@types/mdast" "^3.0.0"
+
+mdast-util-to-string@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/mdast-util-to-string/-/mdast-util-to-string-4.0.0.tgz#7a5121475556a04e7eddeb67b264aae79d312814"
+ integrity sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+
+mdn-data@2.0.28:
+ version "2.0.28"
+ resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.28.tgz#5ec48e7bef120654539069e1ae4ddc81ca490eba"
+ integrity sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==
+
+mdn-data@2.0.30:
+ version "2.0.30"
+ resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.30.tgz#ce4df6f80af6cfbe218ecd5c552ba13c4dfa08cc"
+ integrity sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==
+
+mdurl@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/mdurl/-/mdurl-2.0.0.tgz#80676ec0433025dd3e17ee983d0fe8de5a2237e0"
+ integrity sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==
+
+media-typer@0.3.0:
+ version "0.3.0"
+ resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748"
+ integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==
+
+memfs@^3.4.3:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6"
+ integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ==
+ dependencies:
+ fs-monkey "^1.0.4"
+
+merge-descriptors@1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5"
+ integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==
+
+merge-stream@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
+ integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
+
+merge2@^1.3.0, merge2@^1.4.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
+ integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
+
+methods@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee"
+ integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==
+
+micromark-core-commonmark@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-1.1.0.tgz#1386628df59946b2d39fb2edfd10f3e8e0a75bb8"
+ integrity sha512-BgHO1aRbolh2hcrzL2d1La37V0Aoz73ymF8rAcKnohLy93titmv62E0gP8Hrx9PKcKrqCZ1BbLGbP3bEhoXYlw==
+ dependencies:
+ decode-named-character-reference "^1.0.0"
+ micromark-factory-destination "^1.0.0"
+ micromark-factory-label "^1.0.0"
+ micromark-factory-space "^1.0.0"
+ micromark-factory-title "^1.0.0"
+ micromark-factory-whitespace "^1.0.0"
+ micromark-util-character "^1.0.0"
+ micromark-util-chunked "^1.0.0"
+ micromark-util-classify-character "^1.0.0"
+ micromark-util-html-tag-name "^1.0.0"
+ micromark-util-normalize-identifier "^1.0.0"
+ micromark-util-resolve-all "^1.0.0"
+ micromark-util-subtokenize "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.1"
+ uvu "^0.5.0"
+
+micromark-core-commonmark@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/micromark-core-commonmark/-/micromark-core-commonmark-2.0.3.tgz#c691630e485021a68cf28dbc2b2ca27ebf678cd4"
+ integrity sha512-RDBrHEMSxVFLg6xvnXmb1Ayr2WzLAWjeSATAoxwKYJV94TeNavgoIdA0a9ytzDSVzBy2YKFK+emCPOEibLeCrg==
+ dependencies:
+ decode-named-character-reference "^1.0.0"
+ devlop "^1.0.0"
+ micromark-factory-destination "^2.0.0"
+ micromark-factory-label "^2.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-factory-title "^2.0.0"
+ micromark-factory-whitespace "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-chunked "^2.0.0"
+ micromark-util-classify-character "^2.0.0"
+ micromark-util-html-tag-name "^2.0.0"
+ micromark-util-normalize-identifier "^2.0.0"
+ micromark-util-resolve-all "^2.0.0"
+ micromark-util-subtokenize "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-directive@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-extension-directive/-/micromark-extension-directive-3.0.2.tgz#2eb61985d1995a7c1ff7621676a4f32af29409e8"
+ integrity sha512-wjcXHgk+PPdmvR58Le9d7zQYWy+vKEU9Se44p2CrCDPiLr2FMyiT4Fyb5UFKFC66wGB3kPlgD7q3TnoqPS7SZA==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-factory-whitespace "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ parse-entities "^4.0.0"
+
+micromark-extension-frontmatter@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-frontmatter/-/micromark-extension-frontmatter-2.0.0.tgz#651c52ffa5d7a8eeed687c513cd869885882d67a"
+ integrity sha512-C4AkuM3dA58cgZha7zVnuVxBhDsbttIMiytjgsM2XbHAB2faRVaHRle40558FBN+DJcrLNCoqG5mlrpdU4cRtg==
+ dependencies:
+ fault "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-autolink-literal@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz#6286aee9686c4462c1e3552a9d505feddceeb935"
+ integrity sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==
+ dependencies:
+ micromark-util-character "^2.0.0"
+ micromark-util-sanitize-uri "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-footnote@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz#4dab56d4e398b9853f6fe4efac4fc9361f3e0750"
+ integrity sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-core-commonmark "^2.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-normalize-identifier "^2.0.0"
+ micromark-util-sanitize-uri "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-strikethrough@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz#86106df8b3a692b5f6a92280d3879be6be46d923"
+ integrity sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-util-chunked "^2.0.0"
+ micromark-util-classify-character "^2.0.0"
+ micromark-util-resolve-all "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-table@^2.0.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz#fac70bcbf51fe65f5f44033118d39be8a9b5940b"
+ integrity sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-tagfilter@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz#f26d8a7807b5985fba13cf61465b58ca5ff7dc57"
+ integrity sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==
+ dependencies:
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm-task-list-item@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz#bcc34d805639829990ec175c3eea12bb5b781f2c"
+ integrity sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-gfm@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz#3e13376ab95dd7a5cfd0e29560dfe999657b3c5b"
+ integrity sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==
+ dependencies:
+ micromark-extension-gfm-autolink-literal "^2.0.0"
+ micromark-extension-gfm-footnote "^2.0.0"
+ micromark-extension-gfm-strikethrough "^2.0.0"
+ micromark-extension-gfm-table "^2.0.0"
+ micromark-extension-gfm-tagfilter "^2.0.0"
+ micromark-extension-gfm-task-list-item "^2.0.0"
+ micromark-util-combine-extensions "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-math@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-math/-/micromark-extension-math-3.1.0.tgz#c42ee3b1dd5a9a03584e83dd8f08e3de510212c1"
+ integrity sha512-lvEqd+fHjATVs+2v/8kg9i5Q0AP2k85H0WUOwpIVvUML8BapsMvh1XAogmQjOCsLpoKRCVQqEkQBB3NhVBcsOg==
+ dependencies:
+ "@types/katex" "^0.16.0"
+ devlop "^1.0.0"
+ katex "^0.16.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-mdx-expression@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-extension-mdx-expression/-/micromark-extension-mdx-expression-3.0.1.tgz#43d058d999532fb3041195a3c3c05c46fa84543b"
+ integrity sha512-dD/ADLJ1AeMvSAKBwO22zG22N4ybhe7kFIZ3LsDI0GlsNr2A3KYxb0LdC1u5rj4Nw+CHKY0RVdnHX8vj8ejm4Q==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ devlop "^1.0.0"
+ micromark-factory-mdx-expression "^2.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-events-to-acorn "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-extension-mdx-jsx@^3.0.0:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-extension-mdx-jsx/-/micromark-extension-mdx-jsx-3.0.2.tgz#ffc98bdb649798902fa9fc5689f67f9c1c902044"
+ integrity sha512-e5+q1DjMh62LZAJOnDraSSbDMvGJ8x3cbjygy2qFEi7HCeUT4BDKCvMozPozcD6WmOt6sVvYDNBKhFSz3kjOVQ==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ devlop "^1.0.0"
+ estree-util-is-identifier-name "^3.0.0"
+ micromark-factory-mdx-expression "^2.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-events-to-acorn "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ vfile-message "^4.0.0"
+
+micromark-extension-mdx-md@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-mdx-md/-/micromark-extension-mdx-md-2.0.0.tgz#1d252881ea35d74698423ab44917e1f5b197b92d"
+ integrity sha512-EpAiszsB3blw4Rpba7xTOUptcFeBFi+6PY8VnJ2hhimH+vCQDirWgsMpz7w1XcZE7LVrSAUGb9VJpG9ghlYvYQ==
+ dependencies:
+ micromark-util-types "^2.0.0"
+
+micromark-extension-mdxjs-esm@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs-esm/-/micromark-extension-mdxjs-esm-3.0.0.tgz#de21b2b045fd2059bd00d36746081de38390d54a"
+ integrity sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ devlop "^1.0.0"
+ micromark-core-commonmark "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-events-to-acorn "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ unist-util-position-from-estree "^2.0.0"
+ vfile-message "^4.0.0"
+
+micromark-extension-mdxjs@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/micromark-extension-mdxjs/-/micromark-extension-mdxjs-3.0.0.tgz#b5a2e0ed449288f3f6f6c544358159557549de18"
+ integrity sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==
+ dependencies:
+ acorn "^8.0.0"
+ acorn-jsx "^5.0.0"
+ micromark-extension-mdx-expression "^3.0.0"
+ micromark-extension-mdx-jsx "^3.0.0"
+ micromark-extension-mdx-md "^2.0.0"
+ micromark-extension-mdxjs-esm "^3.0.0"
+ micromark-util-combine-extensions "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-factory-destination@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-1.1.0.tgz#eb815957d83e6d44479b3df640f010edad667b9f"
+ integrity sha512-XaNDROBgx9SgSChd69pjiGKbV+nfHGDPVYFs5dOoDd7ZnMAE+Cuu91BCpsY8RT2NP9vo/B8pds2VQNCLiu0zhg==
+ dependencies:
+ micromark-util-character "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-factory-destination@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz#8fef8e0f7081f0474fbdd92deb50c990a0264639"
+ integrity sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==
+ dependencies:
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-factory-label@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-1.1.0.tgz#cc95d5478269085cfa2a7282b3de26eb2e2dec68"
+ integrity sha512-OLtyez4vZo/1NjxGhcpDSbHQ+m0IIGnT8BoPamh+7jVlzLJBH98zzuCoUeMxvM6WsNeh8wx8cKvqLiPHEACn0w==
+ dependencies:
+ micromark-util-character "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+ uvu "^0.5.0"
+
+micromark-factory-label@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-label/-/micromark-factory-label-2.0.1.tgz#5267efa97f1e5254efc7f20b459a38cb21058ba1"
+ integrity sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-factory-mdx-expression@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/micromark-factory-mdx-expression/-/micromark-factory-mdx-expression-2.0.3.tgz#bb09988610589c07d1c1e4425285895041b3dfa9"
+ integrity sha512-kQnEtA3vzucU2BkrIa8/VaSAsP+EJ3CKOvhMuJgOEGg9KDC6OAY6nSnNDVRiVNRqj7Y4SlSzcStaH/5jge8JdQ==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ devlop "^1.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-events-to-acorn "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ unist-util-position-from-estree "^2.0.0"
+ vfile-message "^4.0.0"
+
+micromark-factory-space@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-1.1.0.tgz#c8f40b0640a0150751d3345ed885a080b0d15faf"
+ integrity sha512-cRzEj7c0OL4Mw2v6nwzttyOZe8XY/Z8G0rzmWQZTBi/jjwyw/U4uqKtUORXQrR5bAZZnbTI/feRV/R7hc4jQYQ==
+ dependencies:
+ micromark-util-character "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-factory-space@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-space/-/micromark-factory-space-2.0.1.tgz#36d0212e962b2b3121f8525fc7a3c7c029f334fc"
+ integrity sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==
+ dependencies:
+ micromark-util-character "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-factory-title@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-1.1.0.tgz#dd0fe951d7a0ac71bdc5ee13e5d1465ad7f50ea1"
+ integrity sha512-J7n9R3vMmgjDOCY8NPw55jiyaQnH5kBdV2/UXCtZIpnHH3P6nHUKaH7XXEYuWwx/xUJcawa8plLBEjMPU24HzQ==
+ dependencies:
+ micromark-factory-space "^1.0.0"
+ micromark-util-character "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-factory-title@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-title/-/micromark-factory-title-2.0.1.tgz#237e4aa5d58a95863f01032d9ee9b090f1de6e94"
+ integrity sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==
+ dependencies:
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-factory-whitespace@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-1.1.0.tgz#798fb7489f4c8abafa7ca77eed6b5745853c9705"
+ integrity sha512-v2WlmiymVSp5oMg+1Q0N1Lxmt6pMhIHD457whWM7/GUlEks1hI9xj5w3zbc4uuMKXGisksZk8DzP2UyGbGqNsQ==
+ dependencies:
+ micromark-factory-space "^1.0.0"
+ micromark-util-character "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-factory-whitespace@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-factory-whitespace/-/micromark-factory-whitespace-2.0.1.tgz#06b26b2983c4d27bfcc657b33e25134d4868b0b1"
+ integrity sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==
+ dependencies:
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-util-character@^1.0.0, micromark-util-character@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-1.2.0.tgz#4fedaa3646db249bc58caeb000eb3549a8ca5dcc"
+ integrity sha512-lXraTwcX3yH/vMDaFWCQJP1uIszLVebzUa3ZHdrgxr7KEU/9mL4mVgCpGbyhvNLNlauROiNUq7WN5u7ndbY6xg==
+ dependencies:
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-util-character@^2.0.0:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-character/-/micromark-util-character-2.1.1.tgz#2f987831a40d4c510ac261e89852c4e9703ccda6"
+ integrity sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==
+ dependencies:
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-util-chunked@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-1.1.0.tgz#37a24d33333c8c69a74ba12a14651fd9ea8a368b"
+ integrity sha512-Ye01HXpkZPNcV6FiyoW2fGZDUw4Yc7vT0E9Sad83+bEDiCJ1uXu0S3mr8WLpsz3HaG3x2q0HM6CTuPdcZcluFQ==
+ dependencies:
+ micromark-util-symbol "^1.0.0"
+
+micromark-util-chunked@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-chunked/-/micromark-util-chunked-2.0.1.tgz#47fbcd93471a3fccab86cff03847fc3552db1051"
+ integrity sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==
+ dependencies:
+ micromark-util-symbol "^2.0.0"
+
+micromark-util-classify-character@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-1.1.0.tgz#6a7f8c8838e8a120c8e3c4f2ae97a2bff9190e9d"
+ integrity sha512-SL0wLxtKSnklKSUplok1WQFoGhUdWYKggKUiqhX+Swala+BtptGCu5iPRc+xvzJ4PXE/hwM3FNXsfEVgoZsWbw==
+ dependencies:
+ micromark-util-character "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-util-classify-character@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-classify-character/-/micromark-util-classify-character-2.0.1.tgz#d399faf9c45ca14c8b4be98b1ea481bced87b629"
+ integrity sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==
+ dependencies:
+ micromark-util-character "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-util-combine-extensions@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-1.1.0.tgz#192e2b3d6567660a85f735e54d8ea6e3952dbe84"
+ integrity sha512-Q20sp4mfNf9yEqDL50WwuWZHUrCO4fEyeDCnMGmG5Pr0Cz15Uo7KBs6jq+dq0EgX4DPwwrh9m0X+zPV1ypFvUA==
+ dependencies:
+ micromark-util-chunked "^1.0.0"
+ micromark-util-types "^1.0.0"
+
+micromark-util-combine-extensions@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-combine-extensions/-/micromark-util-combine-extensions-2.0.1.tgz#2a0f490ab08bff5cc2fd5eec6dd0ca04f89b30a9"
+ integrity sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==
+ dependencies:
+ micromark-util-chunked "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-util-decode-numeric-character-reference@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-1.1.0.tgz#b1e6e17009b1f20bc652a521309c5f22c85eb1c6"
+ integrity sha512-m9V0ExGv0jB1OT21mrWcuf4QhP46pH1KkfWy9ZEezqHKAxkj4mPCy3nIH1rkbdMlChLHX531eOrymlwyZIf2iw==
+ dependencies:
+ micromark-util-symbol "^1.0.0"
+
+micromark-util-decode-numeric-character-reference@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-numeric-character-reference/-/micromark-util-decode-numeric-character-reference-2.0.2.tgz#fcf15b660979388e6f118cdb6bf7d79d73d26fe5"
+ integrity sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==
+ dependencies:
+ micromark-util-symbol "^2.0.0"
+
+micromark-util-decode-string@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-1.1.0.tgz#dc12b078cba7a3ff690d0203f95b5d5537f2809c"
+ integrity sha512-YphLGCK8gM1tG1bd54azwyrQRjCFcmgj2S2GoJDNnh4vYtnL38JS8M4gpxzOPNyHdNEpheyWXCTnnTDY3N+NVQ==
+ dependencies:
+ decode-named-character-reference "^1.0.0"
+ micromark-util-character "^1.0.0"
+ micromark-util-decode-numeric-character-reference "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+
+micromark-util-decode-string@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-decode-string/-/micromark-util-decode-string-2.0.1.tgz#6cb99582e5d271e84efca8e61a807994d7161eb2"
+ integrity sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==
+ dependencies:
+ decode-named-character-reference "^1.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-decode-numeric-character-reference "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+
+micromark-util-encode@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-1.1.0.tgz#92e4f565fd4ccb19e0dcae1afab9a173bbeb19a5"
+ integrity sha512-EuEzTWSTAj9PA5GOAs992GzNh2dGQO52UvAbtSOMvXTxv3Criqb6IOzJUBCmEqrrXSblJIJBbFFv6zPxpreiJw==
+
+micromark-util-encode@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-encode/-/micromark-util-encode-2.0.1.tgz#0d51d1c095551cfaac368326963cf55f15f540b8"
+ integrity sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==
+
+micromark-util-events-to-acorn@^2.0.0:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/micromark-util-events-to-acorn/-/micromark-util-events-to-acorn-2.0.3.tgz#e7a8a6b55a47e5a06c720d5a1c4abae8c37c98f3"
+ integrity sha512-jmsiEIiZ1n7X1Rr5k8wVExBQCg5jy4UXVADItHmNk1zkwEVhBuIUKRu3fqv+hs4nxLISi2DQGlqIOGiFxgbfHg==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ "@types/unist" "^3.0.0"
+ devlop "^1.0.0"
+ estree-util-visit "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+ vfile-message "^4.0.0"
+
+micromark-util-html-tag-name@^1.0.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-1.2.0.tgz#48fd7a25826f29d2f71479d3b4e83e94829b3588"
+ integrity sha512-VTQzcuQgFUD7yYztuQFKXT49KghjtETQ+Wv/zUjGSGBioZnkA4P1XXZPT1FHeJA6RwRXSF47yvJ1tsJdoxwO+Q==
+
+micromark-util-html-tag-name@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-html-tag-name/-/micromark-util-html-tag-name-2.0.1.tgz#e40403096481986b41c106627f98f72d4d10b825"
+ integrity sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==
+
+micromark-util-normalize-identifier@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-1.1.0.tgz#7a73f824eb9f10d442b4d7f120fecb9b38ebf8b7"
+ integrity sha512-N+w5vhqrBihhjdpM8+5Xsxy71QWqGn7HYNUvch71iV2PM7+E3uWGox1Qp90loa1ephtCxG2ftRV/Conitc6P2Q==
+ dependencies:
+ micromark-util-symbol "^1.0.0"
+
+micromark-util-normalize-identifier@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-normalize-identifier/-/micromark-util-normalize-identifier-2.0.1.tgz#c30d77b2e832acf6526f8bf1aa47bc9c9438c16d"
+ integrity sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==
+ dependencies:
+ micromark-util-symbol "^2.0.0"
+
+micromark-util-resolve-all@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-1.1.0.tgz#4652a591ee8c8fa06714c9b54cd6c8e693671188"
+ integrity sha512-b/G6BTMSg+bX+xVCshPTPyAu2tmA0E4X98NSR7eIbeC6ycCqCeE7wjfDIgzEbkzdEVJXRtOG4FbEm/uGbCRouA==
+ dependencies:
+ micromark-util-types "^1.0.0"
+
+micromark-util-resolve-all@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-resolve-all/-/micromark-util-resolve-all-2.0.1.tgz#e1a2d62cdd237230a2ae11839027b19381e31e8b"
+ integrity sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==
+ dependencies:
+ micromark-util-types "^2.0.0"
+
+micromark-util-sanitize-uri@^1.0.0, micromark-util-sanitize-uri@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-1.2.0.tgz#613f738e4400c6eedbc53590c67b197e30d7f90d"
+ integrity sha512-QO4GXv0XZfWey4pYFndLUKEAktKkG5kZTdUNaTAkzbuJxn2tNBOr+QtxR2XpWaMhbImT2dPzyLrPXLlPhph34A==
+ dependencies:
+ micromark-util-character "^1.0.0"
+ micromark-util-encode "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+
+micromark-util-sanitize-uri@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.1.tgz#ab89789b818a58752b73d6b55238621b7faa8fd7"
+ integrity sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==
+ dependencies:
+ micromark-util-character "^2.0.0"
+ micromark-util-encode "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+
+micromark-util-subtokenize@^1.0.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-1.1.0.tgz#941c74f93a93eaf687b9054aeb94642b0e92edb1"
+ integrity sha512-kUQHyzRoxvZO2PuLzMt2P/dwVsTiivCK8icYTeR+3WgbuPqfHgPPy7nFKbeqRivBvn/3N3GBiNC+JRTMSxEC7A==
+ dependencies:
+ micromark-util-chunked "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.0"
+ uvu "^0.5.0"
+
+micromark-util-subtokenize@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-subtokenize/-/micromark-util-subtokenize-2.1.0.tgz#d8ade5ba0f3197a1cf6a2999fbbfe6357a1a19ee"
+ integrity sha512-XQLu552iSctvnEcgXw6+Sx75GflAPNED1qx7eBJ+wydBb2KCbRZe+NwvIEEMM83uml1+2WSXpBAcp9IUCgCYWA==
+ dependencies:
+ devlop "^1.0.0"
+ micromark-util-chunked "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromark-util-symbol@^1.0.0, micromark-util-symbol@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-1.1.0.tgz#813cd17837bdb912d069a12ebe3a44b6f7063142"
+ integrity sha512-uEjpEYY6KMs1g7QfJ2eX1SQEV+ZT4rUD3UcF6l57acZvLNK7PBZL+ty82Z1qhK1/yXIY4bdx04FKMgR0g4IAag==
+
+micromark-util-symbol@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/micromark-util-symbol/-/micromark-util-symbol-2.0.1.tgz#e5da494e8eb2b071a0d08fb34f6cefec6c0a19b8"
+ integrity sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==
+
+micromark-util-types@^1.0.0, micromark-util-types@^1.0.1:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-1.1.0.tgz#e6676a8cae0bb86a2171c498167971886cb7e283"
+ integrity sha512-ukRBgie8TIAcacscVHSiddHjO4k/q3pnedmzMQ4iwDcK0FtFCohKOlFbaOL/mPgfnPsL3C1ZyxJa4sbWrBl3jg==
+
+micromark-util-types@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/micromark-util-types/-/micromark-util-types-2.0.2.tgz#f00225f5f5a0ebc3254f96c36b6605c4b393908e"
+ integrity sha512-Yw0ECSpJoViF1qTU4DC6NwtC4aWGt1EkzaQB8KPPyCRR8z9TWeV0HbEFGTO+ZY1wB22zmxnJqhPyTpOVCpeHTA==
+
+micromark@^3.0.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/micromark/-/micromark-3.2.0.tgz#1af9fef3f995ea1ea4ac9c7e2f19c48fd5c006e9"
+ integrity sha512-uD66tJj54JLYq0De10AhWycZWGQNUvDI55xPgk2sQM5kn1JYlhbCMTtEeT27+vAhW2FBQxLlOmS3pmA7/2z4aA==
+ dependencies:
+ "@types/debug" "^4.0.0"
+ debug "^4.0.0"
+ decode-named-character-reference "^1.0.0"
+ micromark-core-commonmark "^1.0.1"
+ micromark-factory-space "^1.0.0"
+ micromark-util-character "^1.0.0"
+ micromark-util-chunked "^1.0.0"
+ micromark-util-combine-extensions "^1.0.0"
+ micromark-util-decode-numeric-character-reference "^1.0.0"
+ micromark-util-encode "^1.0.0"
+ micromark-util-normalize-identifier "^1.0.0"
+ micromark-util-resolve-all "^1.0.0"
+ micromark-util-sanitize-uri "^1.0.0"
+ micromark-util-subtokenize "^1.0.0"
+ micromark-util-symbol "^1.0.0"
+ micromark-util-types "^1.0.1"
+ uvu "^0.5.0"
+
+micromark@^4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/micromark/-/micromark-4.0.2.tgz#91395a3e1884a198e62116e33c9c568e39936fdb"
+ integrity sha512-zpe98Q6kvavpCr1NPVSCMebCKfD7CA2NqZ+rykeNhONIJBpc1tFKt9hucLGwha3jNTNI8lHpctWJWoimVF4PfA==
+ dependencies:
+ "@types/debug" "^4.0.0"
+ debug "^4.0.0"
+ decode-named-character-reference "^1.0.0"
+ devlop "^1.0.0"
+ micromark-core-commonmark "^2.0.0"
+ micromark-factory-space "^2.0.0"
+ micromark-util-character "^2.0.0"
+ micromark-util-chunked "^2.0.0"
+ micromark-util-combine-extensions "^2.0.0"
+ micromark-util-decode-numeric-character-reference "^2.0.0"
+ micromark-util-encode "^2.0.0"
+ micromark-util-normalize-identifier "^2.0.0"
+ micromark-util-resolve-all "^2.0.0"
+ micromark-util-sanitize-uri "^2.0.0"
+ micromark-util-subtokenize "^2.0.0"
+ micromark-util-symbol "^2.0.0"
+ micromark-util-types "^2.0.0"
+
+micromatch@^4.0.2, micromatch@^4.0.5, micromatch@^4.0.8:
+ version "4.0.8"
+ resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202"
+ integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==
+ dependencies:
+ braces "^3.0.3"
+ picomatch "^2.3.1"
+
+mime-db@1.52.0:
+ version "1.52.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
+ integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==
+
+"mime-db@>= 1.43.0 < 2":
+ version "1.54.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5"
+ integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==
+
+mime-db@~1.33.0:
+ version "1.33.0"
+ resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db"
+ integrity sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==
+
+mime-types@2.1.18:
+ version "2.1.18"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8"
+ integrity sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==
+ dependencies:
+ mime-db "~1.33.0"
+
+mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34:
+ version "2.1.35"
+ resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a"
+ integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==
+ dependencies:
+ mime-db "1.52.0"
+
+mime@1.6.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1"
+ integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==
+
+mimic-fn@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
+ integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
+
+mimic-response@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
+ integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
+
+mimic-response@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-4.0.0.tgz#35468b19e7c75d10f5165ea25e75a5ceea7cf70f"
+ integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg==
+
+mini-css-extract-plugin@^2.9.1:
+ version "2.9.2"
+ resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.2.tgz#966031b468917a5446f4c24a80854b2947503c5b"
+ integrity sha512-GJuACcS//jtq4kCtd5ii/M0SZf7OZRH+BxdqXZHaJfb8TJiVl+NgQRPwiYt2EuqeSkNydn/7vP+bcE27C5mb9w==
+ dependencies:
+ schema-utils "^4.0.0"
+ tapable "^2.2.1"
+
+minimalistic-assert@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
+ integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==
+
+minimatch@3.1.2, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
+ integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
+ dependencies:
+ brace-expansion "^1.1.7"
+
+minimatch@^9.0.4, minimatch@^9.0.5:
+ version "9.0.5"
+ resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5"
+ integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==
+ dependencies:
+ brace-expansion "^2.0.1"
+
+minimist@^1.2.0, minimist@^1.2.6:
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c"
+ integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==
+
+"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2:
+ version "7.1.2"
+ resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707"
+ integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==
+
+mri@^1.1.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/mri/-/mri-1.2.0.tgz#6721480fec2a11a4889861115a48b6cbe7cc8f0b"
+ integrity sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==
+
+mrmime@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.1.tgz#bc3e87f7987853a54c9850eeb1f1078cd44adddc"
+ integrity sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==
+
+ms@2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
+ integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==
+
+ms@2.1.3, ms@^2.1.3:
+ version "2.1.3"
+ resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2"
+ integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==
+
+multicast-dns@^7.2.5:
+ version "7.2.5"
+ resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced"
+ integrity sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==
+ dependencies:
+ dns-packet "^5.2.2"
+ thunky "^1.0.2"
+
+mz@^2.7.0:
+ version "2.7.0"
+ resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32"
+ integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==
+ dependencies:
+ any-promise "^1.0.0"
+ object-assign "^4.0.1"
+ thenify-all "^1.0.0"
+
+nanoid@^3.3.11:
+ version "3.3.11"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b"
+ integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==
+
+natural-compare-lite@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4"
+ integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==
+
+natural-compare@^1.4.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
+ integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==
+
+negotiator@0.6.3:
+ version "0.6.3"
+ resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd"
+ integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==
+
+negotiator@~0.6.4:
+ version "0.6.4"
+ resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7"
+ integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==
+
+neo-async@^2.6.2:
+ version "2.6.2"
+ resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
+ integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
+
+nice-try@^1.0.4:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
+ integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
+
+no-case@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d"
+ integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==
+ dependencies:
+ lower-case "^2.0.2"
+ tslib "^2.0.3"
+
+node-emoji@^2.1.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.2.0.tgz#1d000e3c76e462577895be1b436f4aa2d6760eb0"
+ integrity sha512-Z3lTE9pLaJF47NyMhd4ww1yFTAP8YhYI8SleJiHzM46Fgpm5cnNzSl9XfzFNqbaz+VlJrIj3fXQ4DeN1Rjm6cw==
+ dependencies:
+ "@sindresorhus/is" "^4.6.0"
+ char-regex "^1.0.2"
+ emojilib "^2.4.0"
+ skin-tone "^2.0.0"
+
+node-forge@^1:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3"
+ integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==
+
+node-releases@^2.0.19:
+ version "2.0.19"
+ resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.19.tgz#9e445a52950951ec4d177d843af370b411caf314"
+ integrity sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==
+
+normalize-path@^3.0.0, normalize-path@~3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
+ integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
+
+normalize-range@^0.1.2:
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942"
+ integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==
+
+normalize-url@^8.0.0:
+ version "8.0.1"
+ resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.0.1.tgz#9b7d96af9836577c58f5883e939365fa15623a4a"
+ integrity sha512-IO9QvjUMWxPQQhs60oOu10CRkWCiZzSUkzbXGGV9pviYl1fXYcvkzQ5jV9z8Y6un8ARoVRl4EtC6v6jNqbaJ/w==
+
+npm-run-path@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea"
+ integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==
+ dependencies:
+ path-key "^3.0.0"
+
+nprogress@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1"
+ integrity sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==
+
+nth-check@^2.0.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.1.1.tgz#c9eab428effce36cd6b92c924bdb000ef1f1ed1d"
+ integrity sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==
+ dependencies:
+ boolbase "^1.0.0"
+
+null-loader@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/null-loader/-/null-loader-4.0.1.tgz#8e63bd3a2dd3c64236a4679428632edd0a6dbc6a"
+ integrity sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==
+ dependencies:
+ loader-utils "^2.0.0"
+ schema-utils "^3.0.0"
+
+object-assign@^4.0.1, object-assign@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
+ integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==
+
+object-hash@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-3.0.0.tgz#73f97f753e7baffc0e2cc9d6e079079744ac82e9"
+ integrity sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==
+
+object-inspect@^1.13.3:
+ version "1.13.4"
+ resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213"
+ integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==
+
+object-keys@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
+ integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
+
+object.assign@^4.1.0:
+ version "4.1.7"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.7.tgz#8c14ca1a424c6a561b0bb2a22f66f5049a945d3d"
+ integrity sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==
+ dependencies:
+ call-bind "^1.0.8"
+ call-bound "^1.0.3"
+ define-properties "^1.2.1"
+ es-object-atoms "^1.0.0"
+ has-symbols "^1.1.0"
+ object-keys "^1.1.1"
+
+obuf@^1.0.0, obuf@^1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e"
+ integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==
+
+on-finished@2.4.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f"
+ integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==
+ dependencies:
+ ee-first "1.1.1"
+
+on-headers@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f"
+ integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==
+
+once@^1.3.0:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
+ integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
+ dependencies:
+ wrappy "1"
+
+onetime@^5.1.2:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e"
+ integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==
+ dependencies:
+ mimic-fn "^2.1.0"
+
+open@^7.4.2:
+ version "7.4.2"
+ resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321"
+ integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==
+ dependencies:
+ is-docker "^2.0.0"
+ is-wsl "^2.1.1"
+
+open@^8.0.9, open@^8.4.0:
+ version "8.4.2"
+ resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9"
+ integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==
+ dependencies:
+ define-lazy-prop "^2.0.0"
+ is-docker "^2.1.1"
+ is-wsl "^2.2.0"
+
+opener@^1.5.2:
+ version "1.5.2"
+ resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598"
+ integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==
+
+optionator@^0.9.3:
+ version "0.9.4"
+ resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734"
+ integrity sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==
+ dependencies:
+ deep-is "^0.1.3"
+ fast-levenshtein "^2.0.6"
+ levn "^0.4.1"
+ prelude-ls "^1.2.1"
+ type-check "^0.4.0"
+ word-wrap "^1.2.5"
+
+os-tmpdir@~1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274"
+ integrity sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==
+
+p-cancelable@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-3.0.0.tgz#63826694b54d61ca1c20ebcb6d3ecf5e14cd8050"
+ integrity sha512-mlVgR3PGuzlo0MmTdk4cXqXWlwQDLnONTAg6sm62XkMJEiRxN3GL3SffkYvqwonbkJBcrI7Uvv5Zh9yjvn2iUw==
+
+p-finally@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
+ integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==
+
+p-limit@^3.0.2:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
+ integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
+ dependencies:
+ yocto-queue "^0.1.0"
+
+p-limit@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-4.0.0.tgz#914af6544ed32bfa54670b061cafcbd04984b644"
+ integrity sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==
+ dependencies:
+ yocto-queue "^1.0.0"
+
+p-locate@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834"
+ integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==
+ dependencies:
+ p-limit "^3.0.2"
+
+p-locate@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-6.0.0.tgz#3da9a49d4934b901089dca3302fa65dc5a05c04f"
+ integrity sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==
+ dependencies:
+ p-limit "^4.0.0"
+
+p-map@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b"
+ integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==
+ dependencies:
+ aggregate-error "^3.0.0"
+
+p-queue@^6.6.2:
+ version "6.6.2"
+ resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426"
+ integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==
+ dependencies:
+ eventemitter3 "^4.0.4"
+ p-timeout "^3.2.0"
+
+p-retry@^4.5.0:
+ version "4.6.2"
+ resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16"
+ integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==
+ dependencies:
+ "@types/retry" "0.12.0"
+ retry "^0.13.1"
+
+p-timeout@^3.2.0:
+ version "3.2.0"
+ resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe"
+ integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==
+ dependencies:
+ p-finally "^1.0.0"
+
+package-json-from-dist@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505"
+ integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==
+
+package-json@^8.1.0:
+ version "8.1.1"
+ resolved "https://registry.yarnpkg.com/package-json/-/package-json-8.1.1.tgz#3e9948e43df40d1e8e78a85485f1070bf8f03dc8"
+ integrity sha512-cbH9IAIJHNj9uXi196JVsRlt7cHKak6u/e6AkL/bkRelZ7rlL3X1YKxsZwa36xipOEKAsdtmaG6aAJoM1fx2zA==
+ dependencies:
+ got "^12.1.0"
+ registry-auth-token "^5.0.1"
+ registry-url "^6.0.0"
+ semver "^7.3.7"
+
+param-case@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5"
+ integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==
+ dependencies:
+ dot-case "^3.0.4"
+ tslib "^2.0.3"
+
+parent-module@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
+ integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
+ dependencies:
+ callsites "^3.0.0"
+
+parse-entities@^4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/parse-entities/-/parse-entities-4.0.2.tgz#61d46f5ed28e4ee62e9ddc43d6b010188443f159"
+ integrity sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ character-entities-legacy "^3.0.0"
+ character-reference-invalid "^2.0.0"
+ decode-named-character-reference "^1.0.0"
+ is-alphanumerical "^2.0.0"
+ is-decimal "^2.0.0"
+ is-hexadecimal "^2.0.0"
+
+parse-json@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd"
+ integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==
+ dependencies:
+ "@babel/code-frame" "^7.0.0"
+ error-ex "^1.3.1"
+ json-parse-even-better-errors "^2.3.0"
+ lines-and-columns "^1.1.6"
+
+parse-numeric-range@^1.3.0:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz#7c63b61190d61e4d53a1197f0c83c47bb670ffa3"
+ integrity sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==
+
+parse5-htmlparser2-tree-adapter@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz#b5a806548ed893a43e24ccb42fbb78069311e81b"
+ integrity sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==
+ dependencies:
+ domhandler "^5.0.3"
+ parse5 "^7.0.0"
+
+parse5@^7.0.0:
+ version "7.3.0"
+ resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.3.0.tgz#d7e224fa72399c7a175099f45fc2ad024b05ec05"
+ integrity sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==
+ dependencies:
+ entities "^6.0.0"
+
+parseurl@~1.3.2, parseurl@~1.3.3:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4"
+ integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==
+
+pascal-case@^3.1.2:
+ version "3.1.2"
+ resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb"
+ integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==
+ dependencies:
+ no-case "^3.0.4"
+ tslib "^2.0.3"
+
+patch-package@^6.5.1:
+ version "6.5.1"
+ resolved "https://registry.yarnpkg.com/patch-package/-/patch-package-6.5.1.tgz#3e5d00c16997e6160291fee06a521c42ac99b621"
+ integrity sha512-I/4Zsalfhc6bphmJTlrLoOcAF87jcxko4q0qsv4bGcurbr8IskEOtdnt9iCmsQVGL1B+iUhSQqweyTLJfCF9rA==
+ dependencies:
+ "@yarnpkg/lockfile" "^1.1.0"
+ chalk "^4.1.2"
+ cross-spawn "^6.0.5"
+ find-yarn-workspace-root "^2.0.0"
+ fs-extra "^9.0.0"
+ is-ci "^2.0.0"
+ klaw-sync "^6.0.0"
+ minimist "^1.2.6"
+ open "^7.4.2"
+ rimraf "^2.6.3"
+ semver "^5.6.0"
+ slash "^2.0.0"
+ tmp "^0.0.33"
+ yaml "^1.10.2"
+
+path-browserify@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd"
+ integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==
+
+path-exists@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3"
+ integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==
+
+path-exists@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7"
+ integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==
+
+path-is-absolute@^1.0.0:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
+ integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
+
+path-is-inside@1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
+ integrity sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==
+
+path-key@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40"
+ integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==
+
+path-key@^3.0.0, path-key@^3.1.0:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
+ integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
+
+path-parse@^1.0.7:
+ version "1.0.7"
+ resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735"
+ integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
+
+path-scurry@^1.11.1:
+ version "1.11.1"
+ resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2"
+ integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==
+ dependencies:
+ lru-cache "^10.2.0"
+ minipass "^5.0.0 || ^6.0.2 || ^7.0.0"
+
+path-to-regexp@0.1.12:
+ version "0.1.12"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7"
+ integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==
+
+path-to-regexp@3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-3.3.0.tgz#f7f31d32e8518c2660862b644414b6d5c63a611b"
+ integrity sha512-qyCH421YQPS2WFDxDjftfc1ZR5WKQzVzqsp4n9M2kQhVOo/ByahFoUNJfl58kOcEGfQ//7weFTDhm+ss8Ecxgw==
+
+path-to-regexp@^1.7.0:
+ version "1.9.0"
+ resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-1.9.0.tgz#5dc0753acbf8521ca2e0f137b4578b917b10cf24"
+ integrity sha512-xIp7/apCFJuUHdDLWe8O1HIkb0kQrOMb/0u6FXQjemHn/ii5LrIzU6bdECnsiTF/GjZkMEKg1xdiZwNqDYlZ6g==
+ dependencies:
+ isarray "0.0.1"
+
+path-type@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
+ integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
+
+picocolors@^1.0.0, picocolors@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
+ integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
+
+picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
+ integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
+
+pify@^2.3.0:
+ version "2.3.0"
+ resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c"
+ integrity sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==
+
+pirates@^4.0.1:
+ version "4.0.7"
+ resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.7.tgz#643b4a18c4257c8a65104b73f3049ce9a0a15e22"
+ integrity sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==
+
+pkg-dir@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-7.0.0.tgz#8f0c08d6df4476756c5ff29b3282d0bab7517d11"
+ integrity sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==
+ dependencies:
+ find-up "^6.3.0"
+
+postcss-attribute-case-insensitive@^7.0.1:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-7.0.1.tgz#0c4500e3bcb2141848e89382c05b5a31c23033a3"
+ integrity sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-calc@^9.0.1:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-9.0.1.tgz#a744fd592438a93d6de0f1434c572670361eb6c6"
+ integrity sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==
+ dependencies:
+ postcss-selector-parser "^6.0.11"
+ postcss-value-parser "^4.2.0"
+
+postcss-clamp@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-clamp/-/postcss-clamp-4.1.0.tgz#7263e95abadd8c2ba1bd911b0b5a5c9c93e02363"
+ integrity sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-color-functional-notation@^7.0.10:
+ version "7.0.10"
+ resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.10.tgz#f1e9c3e4371889dcdfeabfa8515464fd8338cedc"
+ integrity sha512-k9qX+aXHBiLTRrWoCJuUFI6F1iF6QJQUXNVWJVSbqZgj57jDhBlOvD8gNUGl35tgqDivbGLhZeW3Ongz4feuKA==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+postcss-color-hex-alpha@^10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-color-hex-alpha/-/postcss-color-hex-alpha-10.0.0.tgz#5dd3eba1f8facb4ea306cba6e3f7712e876b0c76"
+ integrity sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==
+ dependencies:
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-color-rebeccapurple@^10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-10.0.0.tgz#5ada28406ac47e0796dff4056b0a9d5a6ecead98"
+ integrity sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==
+ dependencies:
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-colormin@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-6.1.0.tgz#076e8d3fb291fbff7b10e6b063be9da42ff6488d"
+ integrity sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==
+ dependencies:
+ browserslist "^4.23.0"
+ caniuse-api "^3.0.0"
+ colord "^2.9.3"
+ postcss-value-parser "^4.2.0"
+
+postcss-convert-values@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz#3498387f8efedb817cbc63901d45bd1ceaa40f48"
+ integrity sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==
+ dependencies:
+ browserslist "^4.23.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-custom-media@^11.0.6:
+ version "11.0.6"
+ resolved "https://registry.yarnpkg.com/postcss-custom-media/-/postcss-custom-media-11.0.6.tgz#6b450e5bfa209efb736830066682e6567bd04967"
+ integrity sha512-C4lD4b7mUIw+RZhtY7qUbf4eADmb7Ey8BFA2px9jUbwg7pjTZDl4KY4bvlUV+/vXQvzQRfiGEVJyAbtOsCMInw==
+ dependencies:
+ "@csstools/cascade-layer-name-parser" "^2.0.5"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/media-query-list-parser" "^4.0.3"
+
+postcss-custom-properties@^14.0.5:
+ version "14.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-custom-properties/-/postcss-custom-properties-14.0.5.tgz#a180444de695f6e11ee2390be93ff6537663e86c"
+ integrity sha512-UWf/vhMapZatv+zOuqlfLmYXeOhhHLh8U8HAKGI2VJ00xLRYoAJh4xv8iX6FB6+TLXeDnm0DBLMi00E0hodbQw==
+ dependencies:
+ "@csstools/cascade-layer-name-parser" "^2.0.5"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-custom-selectors@^8.0.5:
+ version "8.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-custom-selectors/-/postcss-custom-selectors-8.0.5.tgz#9448ed37a12271d7ab6cb364b6f76a46a4a323e8"
+ integrity sha512-9PGmckHQswiB2usSO6XMSswO2yFWVoCAuih1yl9FVcwkscLjRKjwsjM3t+NIWpSU2Jx3eOiK2+t4vVTQaoCHHg==
+ dependencies:
+ "@csstools/cascade-layer-name-parser" "^2.0.5"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ postcss-selector-parser "^7.0.0"
+
+postcss-dir-pseudo-class@^9.0.1:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-9.0.1.tgz#80d9e842c9ae9d29f6bf5fd3cf9972891d6cc0ca"
+ integrity sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-discard-comments@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz#e768dcfdc33e0216380623652b0a4f69f4678b6c"
+ integrity sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==
+
+postcss-discard-duplicates@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz#d121e893c38dc58a67277f75bb58ba43fce4c3eb"
+ integrity sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==
+
+postcss-discard-empty@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz#ee39c327219bb70473a066f772621f81435a79d9"
+ integrity sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==
+
+postcss-discard-overridden@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz#4e9f9c62ecd2df46e8fdb44dc17e189776572e2d"
+ integrity sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==
+
+postcss-discard-unused@^6.0.5:
+ version "6.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-6.0.5.tgz#c1b0e8c032c6054c3fbd22aaddba5b248136f338"
+ integrity sha512-wHalBlRHkaNnNwfC8z+ppX57VhvS+HWgjW508esjdaEYr3Mx7Gnn2xA4R/CKf5+Z9S5qsqC+Uzh4ueENWwCVUA==
+ dependencies:
+ postcss-selector-parser "^6.0.16"
+
+postcss-double-position-gradients@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.2.tgz#185f8eab2db9cf4e34be69b5706c905895bb52ae"
+ integrity sha512-7qTqnL7nfLRyJK/AHSVrrXOuvDDzettC+wGoienURV8v2svNbu6zJC52ruZtHaO6mfcagFmuTGFdzRsJKB3k5Q==
+ dependencies:
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-focus-visible@^10.0.1:
+ version "10.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-focus-visible/-/postcss-focus-visible-10.0.1.tgz#1f7904904368a2d1180b220595d77b6f8a957868"
+ integrity sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-focus-within@^9.0.1:
+ version "9.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-focus-within/-/postcss-focus-within-9.0.1.tgz#ac01ce80d3f2e8b2b3eac4ff84f8e15cd0057bc7"
+ integrity sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-font-variant@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-font-variant/-/postcss-font-variant-5.0.0.tgz#efd59b4b7ea8bb06127f2d031bfbb7f24d32fa66"
+ integrity sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==
+
+postcss-gap-properties@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-gap-properties/-/postcss-gap-properties-6.0.0.tgz#d5ff0bdf923c06686499ed2b12e125fe64054fed"
+ integrity sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==
+
+postcss-image-set-function@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-image-set-function/-/postcss-image-set-function-7.0.0.tgz#538e94e16716be47f9df0573b56bbaca86e1da53"
+ integrity sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==
+ dependencies:
+ "@csstools/utilities" "^2.0.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-import@^15.1.0:
+ version "15.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70"
+ integrity sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==
+ dependencies:
+ postcss-value-parser "^4.0.0"
+ read-cache "^1.0.0"
+ resolve "^1.1.7"
+
+postcss-js@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-4.0.1.tgz#61598186f3703bab052f1c4f7d805f3991bee9d2"
+ integrity sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==
+ dependencies:
+ camelcase-css "^2.0.1"
+
+postcss-lab-function@^7.0.10:
+ version "7.0.10"
+ resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-7.0.10.tgz#0537bd7245b935fc133298c8896bcbd160540cae"
+ integrity sha512-tqs6TCEv9tC1Riq6fOzHuHcZyhg4k3gIAMB8GGY/zA1ssGdm6puHMVE7t75aOSoFg7UD2wyrFFhbldiCMyyFTQ==
+ dependencies:
+ "@csstools/css-color-parser" "^3.0.10"
+ "@csstools/css-parser-algorithms" "^3.0.5"
+ "@csstools/css-tokenizer" "^3.0.4"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/utilities" "^2.0.0"
+
+postcss-load-config@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-4.0.2.tgz#7159dcf626118d33e299f485d6afe4aff7c4a3e3"
+ integrity sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==
+ dependencies:
+ lilconfig "^3.0.0"
+ yaml "^2.3.4"
+
+postcss-loader@^7.3.3:
+ version "7.3.4"
+ resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-7.3.4.tgz#aed9b79ce4ed7e9e89e56199d25ad1ec8f606209"
+ integrity sha512-iW5WTTBSC5BfsBJ9daFMPVrLT36MrNiC6fqOZTTaHjBNX6Pfd5p+hSBqe/fEeNd7pc13QiAyGt7VdGMw4eRC4A==
+ dependencies:
+ cosmiconfig "^8.3.5"
+ jiti "^1.20.0"
+ semver "^7.5.4"
+
+postcss-logical@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-logical/-/postcss-logical-8.1.0.tgz#4092b16b49e3ecda70c4d8945257da403d167228"
+ integrity sha512-pL1hXFQ2fEXNKiNiAgtfA005T9FBxky5zkX6s4GZM2D8RkVgRqz3f4g1JUoq925zXv495qk8UNldDwh8uGEDoA==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-merge-idents@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-6.0.3.tgz#7b9c31c7bc823c94bec50f297f04e3c2b838ea65"
+ integrity sha512-1oIoAsODUs6IHQZkLQGO15uGEbK3EAl5wi9SS8hs45VgsxQfMnxvt+L+zIr7ifZFIH14cfAeVe2uCTa+SPRa3g==
+ dependencies:
+ cssnano-utils "^4.0.2"
+ postcss-value-parser "^4.2.0"
+
+postcss-merge-longhand@^6.0.5:
+ version "6.0.5"
+ resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz#ba8a8d473617c34a36abbea8dda2b215750a065a"
+ integrity sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+ stylehacks "^6.1.1"
+
+postcss-merge-rules@^6.1.1:
+ version "6.1.1"
+ resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz#7aa539dceddab56019469c0edd7d22b64c3dea9d"
+ integrity sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==
+ dependencies:
+ browserslist "^4.23.0"
+ caniuse-api "^3.0.0"
+ cssnano-utils "^4.0.2"
+ postcss-selector-parser "^6.0.16"
+
+postcss-minify-font-values@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz#a0e574c02ee3f299be2846369211f3b957ea4c59"
+ integrity sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-minify-gradients@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz#ca3eb55a7bdb48a1e187a55c6377be918743dbd6"
+ integrity sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==
+ dependencies:
+ colord "^2.9.3"
+ cssnano-utils "^4.0.2"
+ postcss-value-parser "^4.2.0"
+
+postcss-minify-params@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz#54551dec77b9a45a29c3cb5953bf7325a399ba08"
+ integrity sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==
+ dependencies:
+ browserslist "^4.23.0"
+ cssnano-utils "^4.0.2"
+ postcss-value-parser "^4.2.0"
+
+postcss-minify-selectors@^6.0.4:
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz#197f7d72e6dd19eed47916d575d69dc38b396aff"
+ integrity sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==
+ dependencies:
+ postcss-selector-parser "^6.0.16"
+
+postcss-modules-extract-imports@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.1.0.tgz#b4497cb85a9c0c4b5aabeb759bb25e8d89f15002"
+ integrity sha512-k3kNe0aNFQDAZGbin48pL2VNidTF0w4/eASDsxlyspobzU3wZQLOGj7L9gfRe0Jo9/4uud09DsjFNH7winGv8Q==
+
+postcss-modules-local-by-default@^4.0.5:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.2.0.tgz#d150f43837831dae25e4085596e84f6f5d6ec368"
+ integrity sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==
+ dependencies:
+ icss-utils "^5.0.0"
+ postcss-selector-parser "^7.0.0"
+ postcss-value-parser "^4.1.0"
+
+postcss-modules-scope@^3.2.0:
+ version "3.2.1"
+ resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.2.1.tgz#1bbccddcb398f1d7a511e0a2d1d047718af4078c"
+ integrity sha512-m9jZstCVaqGjTAuny8MdgE88scJnCiQSlSrOWcTQgM2t32UBe+MUmFSO5t7VMSfAf/FJKImAxBav8ooCHJXCJA==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-modules-values@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c"
+ integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==
+ dependencies:
+ icss-utils "^5.0.0"
+
+postcss-nested@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-6.2.0.tgz#4c2d22ab5f20b9cb61e2c5c5915950784d068131"
+ integrity sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==
+ dependencies:
+ postcss-selector-parser "^6.1.1"
+
+postcss-nesting@^13.0.1:
+ version "13.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-nesting/-/postcss-nesting-13.0.1.tgz#c405796d7245a3e4c267a9956cacfe9670b5d43e"
+ integrity sha512-VbqqHkOBOt4Uu3G8Dm8n6lU5+9cJFxiuty9+4rcoyRPO9zZS1JIs6td49VIoix3qYqELHlJIn46Oih9SAKo+yQ==
+ dependencies:
+ "@csstools/selector-resolve-nested" "^3.0.0"
+ "@csstools/selector-specificity" "^5.0.0"
+ postcss-selector-parser "^7.0.0"
+
+postcss-normalize-charset@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz#1ec25c435057a8001dac942942a95ffe66f721e1"
+ integrity sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==
+
+postcss-normalize-display-values@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz#54f02764fed0b288d5363cbb140d6950dbbdd535"
+ integrity sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-positions@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz#e982d284ec878b9b819796266f640852dbbb723a"
+ integrity sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-repeat-style@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz#f8006942fd0617c73f049dd8b6201c3a3040ecf3"
+ integrity sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-string@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz#e3cc6ad5c95581acd1fc8774b309dd7c06e5e363"
+ integrity sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-timing-functions@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz#40cb8726cef999de984527cbd9d1db1f3e9062c0"
+ integrity sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-unicode@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz#aaf8bbd34c306e230777e80f7f12a4b7d27ce06e"
+ integrity sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==
+ dependencies:
+ browserslist "^4.23.0"
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-url@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz#292792386be51a8de9a454cb7b5c58ae22db0f79"
+ integrity sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-normalize-whitespace@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz#fbb009e6ebd312f8b2efb225c2fcc7cf32b400cd"
+ integrity sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-opacity-percentage@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-opacity-percentage/-/postcss-opacity-percentage-3.0.0.tgz#0b0db5ed5db5670e067044b8030b89c216e1eb0a"
+ integrity sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==
+
+postcss-ordered-values@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz#366bb663919707093451ab70c3f99c05672aaae5"
+ integrity sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==
+ dependencies:
+ cssnano-utils "^4.0.2"
+ postcss-value-parser "^4.2.0"
+
+postcss-overflow-shorthand@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-overflow-shorthand/-/postcss-overflow-shorthand-6.0.0.tgz#f5252b4a2ee16c68cd8a9029edb5370c4a9808af"
+ integrity sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-page-break@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/postcss-page-break/-/postcss-page-break-3.0.4.tgz#7fbf741c233621622b68d435babfb70dd8c1ee5f"
+ integrity sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==
+
+postcss-place@^10.0.0:
+ version "10.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-place/-/postcss-place-10.0.0.tgz#ba36ee4786ca401377ced17a39d9050ed772e5a9"
+ integrity sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-preset-env@^10.1.0:
+ version "10.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-10.2.0.tgz#ea95a6fc70efb1a26f81e5cf0ccdb321a3439b6e"
+ integrity sha512-cl13sPBbSqo1Q7Ryb19oT5NZO5IHFolRbIMdgDq4f9w1MHYiL6uZS7uSsjXJ1KzRIcX5BMjEeyxmAevVXENa3Q==
+ dependencies:
+ "@csstools/postcss-cascade-layers" "^5.0.1"
+ "@csstools/postcss-color-function" "^4.0.10"
+ "@csstools/postcss-color-mix-function" "^3.0.10"
+ "@csstools/postcss-color-mix-variadic-function-arguments" "^1.0.0"
+ "@csstools/postcss-content-alt-text" "^2.0.6"
+ "@csstools/postcss-exponential-functions" "^2.0.9"
+ "@csstools/postcss-font-format-keywords" "^4.0.0"
+ "@csstools/postcss-gamut-mapping" "^2.0.10"
+ "@csstools/postcss-gradients-interpolation-method" "^5.0.10"
+ "@csstools/postcss-hwb-function" "^4.0.10"
+ "@csstools/postcss-ic-unit" "^4.0.2"
+ "@csstools/postcss-initial" "^2.0.1"
+ "@csstools/postcss-is-pseudo-class" "^5.0.1"
+ "@csstools/postcss-light-dark-function" "^2.0.9"
+ "@csstools/postcss-logical-float-and-clear" "^3.0.0"
+ "@csstools/postcss-logical-overflow" "^2.0.0"
+ "@csstools/postcss-logical-overscroll-behavior" "^2.0.0"
+ "@csstools/postcss-logical-resize" "^3.0.0"
+ "@csstools/postcss-logical-viewport-units" "^3.0.4"
+ "@csstools/postcss-media-minmax" "^2.0.9"
+ "@csstools/postcss-media-queries-aspect-ratio-number-values" "^3.0.5"
+ "@csstools/postcss-nested-calc" "^4.0.0"
+ "@csstools/postcss-normalize-display-values" "^4.0.0"
+ "@csstools/postcss-oklab-function" "^4.0.10"
+ "@csstools/postcss-progressive-custom-properties" "^4.1.0"
+ "@csstools/postcss-random-function" "^2.0.1"
+ "@csstools/postcss-relative-color-syntax" "^3.0.10"
+ "@csstools/postcss-scope-pseudo-class" "^4.0.1"
+ "@csstools/postcss-sign-functions" "^1.1.4"
+ "@csstools/postcss-stepped-value-functions" "^4.0.9"
+ "@csstools/postcss-text-decoration-shorthand" "^4.0.2"
+ "@csstools/postcss-trigonometric-functions" "^4.0.9"
+ "@csstools/postcss-unset-value" "^4.0.0"
+ autoprefixer "^10.4.21"
+ browserslist "^4.24.5"
+ css-blank-pseudo "^7.0.1"
+ css-has-pseudo "^7.0.2"
+ css-prefers-color-scheme "^10.0.0"
+ cssdb "^8.3.0"
+ postcss-attribute-case-insensitive "^7.0.1"
+ postcss-clamp "^4.1.0"
+ postcss-color-functional-notation "^7.0.10"
+ postcss-color-hex-alpha "^10.0.0"
+ postcss-color-rebeccapurple "^10.0.0"
+ postcss-custom-media "^11.0.6"
+ postcss-custom-properties "^14.0.5"
+ postcss-custom-selectors "^8.0.5"
+ postcss-dir-pseudo-class "^9.0.1"
+ postcss-double-position-gradients "^6.0.2"
+ postcss-focus-visible "^10.0.1"
+ postcss-focus-within "^9.0.1"
+ postcss-font-variant "^5.0.0"
+ postcss-gap-properties "^6.0.0"
+ postcss-image-set-function "^7.0.0"
+ postcss-lab-function "^7.0.10"
+ postcss-logical "^8.1.0"
+ postcss-nesting "^13.0.1"
+ postcss-opacity-percentage "^3.0.0"
+ postcss-overflow-shorthand "^6.0.0"
+ postcss-page-break "^3.0.4"
+ postcss-place "^10.0.0"
+ postcss-pseudo-class-any-link "^10.0.1"
+ postcss-replace-overflow-wrap "^4.0.0"
+ postcss-selector-not "^8.0.1"
+
+postcss-pseudo-class-any-link@^10.0.1:
+ version "10.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-10.0.1.tgz#06455431171bf44b84d79ebaeee9fd1c05946544"
+ integrity sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-reduce-idents@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-6.0.3.tgz#b0d9c84316d2a547714ebab523ec7d13704cd486"
+ integrity sha512-G3yCqZDpsNPoQgbDUy3T0E6hqOQ5xigUtBQyrmq3tn2GxlyiL0yyl7H+T8ulQR6kOcHJ9t7/9H4/R2tv8tJbMA==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-reduce-initial@^6.1.0:
+ version "6.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz#4401297d8e35cb6e92c8e9586963e267105586ba"
+ integrity sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==
+ dependencies:
+ browserslist "^4.23.0"
+ caniuse-api "^3.0.0"
+
+postcss-reduce-transforms@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz#6fa2c586bdc091a7373caeee4be75a0f3e12965d"
+ integrity sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+
+postcss-replace-overflow-wrap@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-4.0.0.tgz#d2df6bed10b477bf9c52fab28c568b4b29ca4319"
+ integrity sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==
+
+postcss-selector-not@^8.0.1:
+ version "8.0.1"
+ resolved "https://registry.yarnpkg.com/postcss-selector-not/-/postcss-selector-not-8.0.1.tgz#f2df9c6ac9f95e9fe4416ca41a957eda16130172"
+ integrity sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==
+ dependencies:
+ postcss-selector-parser "^7.0.0"
+
+postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.16, postcss-selector-parser@^6.1.1, postcss-selector-parser@^6.1.2:
+ version "6.1.2"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de"
+ integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==
+ dependencies:
+ cssesc "^3.0.0"
+ util-deprecate "^1.0.2"
+
+postcss-selector-parser@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz#4d6af97eba65d73bc4d84bcb343e865d7dd16262"
+ integrity sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==
+ dependencies:
+ cssesc "^3.0.0"
+ util-deprecate "^1.0.2"
+
+postcss-sort-media-queries@^5.2.0:
+ version "5.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-sort-media-queries/-/postcss-sort-media-queries-5.2.0.tgz#4556b3f982ef27d3bac526b99b6c0d3359a6cf97"
+ integrity sha512-AZ5fDMLD8SldlAYlvi8NIqo0+Z8xnXU2ia0jxmuhxAU+Lqt9K+AlmLNJ/zWEnE9x+Zx3qL3+1K20ATgNOr3fAA==
+ dependencies:
+ sort-css-media-queries "2.2.0"
+
+postcss-svgo@^6.0.3:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-6.0.3.tgz#1d6e180d6df1fa8a3b30b729aaa9161e94f04eaa"
+ integrity sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==
+ dependencies:
+ postcss-value-parser "^4.2.0"
+ svgo "^3.2.0"
+
+postcss-unique-selectors@^6.0.4:
+ version "6.0.4"
+ resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz#983ab308896b4bf3f2baaf2336e14e52c11a2088"
+ integrity sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==
+ dependencies:
+ postcss-selector-parser "^6.0.16"
+
+postcss-value-parser@^4.0.0, postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
+ version "4.2.0"
+ resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
+ integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
+
+postcss-zindex@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-6.0.2.tgz#e498304b83a8b165755f53db40e2ea65a99b56e1"
+ integrity sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg==
+
+postcss@^8.4.21, postcss@^8.4.24, postcss@^8.4.26, postcss@^8.4.33, postcss@^8.4.38, postcss@^8.4.47:
+ version "8.5.4"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.4.tgz#d61014ac00e11d5f58458ed7247d899bd65f99c0"
+ integrity sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==
+ dependencies:
+ nanoid "^3.3.11"
+ picocolors "^1.1.1"
+ source-map-js "^1.2.1"
+
+prelude-ls@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
+ integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
+
+prettier-linter-helpers@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b"
+ integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==
+ dependencies:
+ fast-diff "^1.1.2"
+
+prettier-plugin-tailwindcss@^0.6.11:
+ version "0.6.12"
+ resolved "https://registry.yarnpkg.com/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.6.12.tgz#280cf901facf18014c79b8641f69623892006f0b"
+ integrity sha512-OuTQKoqNwV7RnxTPwXWzOFXy6Jc4z8oeRZYGuMpRyG3WbuR3jjXdQFK8qFBMBx8UHWdHrddARz2fgUenild6aw==
+
+prettier@^3.4.2:
+ version "3.5.3"
+ resolved "https://registry.yarnpkg.com/prettier/-/prettier-3.5.3.tgz#4fc2ce0d657e7a02e602549f053b239cb7dfe1b5"
+ integrity sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==
+
+pretty-error@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6"
+ integrity sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==
+ dependencies:
+ lodash "^4.17.20"
+ renderkid "^3.0.0"
+
+pretty-time@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/pretty-time/-/pretty-time-1.1.0.tgz#ffb7429afabb8535c346a34e41873adf3d74dd0e"
+ integrity sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==
+
+prism-react-renderer@^2.3.0, prism-react-renderer@^2.3.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/prism-react-renderer/-/prism-react-renderer-2.4.1.tgz#ac63b7f78e56c8f2b5e76e823a976d5ede77e35f"
+ integrity sha512-ey8Ls/+Di31eqzUxC46h8MksNuGx/n0AAC8uKpwFau4RPDYLuE3EXTp8N8G2vX2N7UC/+IXeNUnlWBGGcAG+Ig==
+ dependencies:
+ "@types/prismjs" "^1.26.0"
+ clsx "^2.0.0"
+
+prismjs@^1.29.0:
+ version "1.30.0"
+ resolved "https://registry.yarnpkg.com/prismjs/-/prismjs-1.30.0.tgz#d9709969d9d4e16403f6f348c63553b19f0975a9"
+ integrity sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==
+
+process-nextick-args@~2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
+ integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
+
+process@^0.11.10:
+ version "0.11.10"
+ resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
+ integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==
+
+prompts@^2.4.2:
+ version "2.4.2"
+ resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069"
+ integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==
+ dependencies:
+ kleur "^3.0.3"
+ sisteransi "^1.0.5"
+
+prop-types@^15.0.0, prop-types@^15.5.0, prop-types@^15.6.2, prop-types@^15.7.2:
+ version "15.8.1"
+ resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5"
+ integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==
+ dependencies:
+ loose-envify "^1.4.0"
+ object-assign "^4.1.1"
+ react-is "^16.13.1"
+
+property-information@^6.0.0:
+ version "6.5.0"
+ resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec"
+ integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==
+
+property-information@^7.0.0:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/property-information/-/property-information-7.1.0.tgz#b622e8646e02b580205415586b40804d3e8bfd5d"
+ integrity sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==
+
+proto-list@~1.2.1:
+ version "1.2.4"
+ resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849"
+ integrity sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==
+
+proxy-addr@~2.0.7:
+ version "2.0.7"
+ resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025"
+ integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==
+ dependencies:
+ forwarded "0.2.0"
+ ipaddr.js "1.9.1"
+
+punycode.js@^2.3.1:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/punycode.js/-/punycode.js-2.3.1.tgz#6b53e56ad75588234e79f4affa90972c7dd8cdb7"
+ integrity sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==
+
+punycode@^1.4.1:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
+ integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==
+
+punycode@^2.1.0:
+ version "2.3.1"
+ resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
+ integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
+
+pupa@^3.1.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/pupa/-/pupa-3.1.0.tgz#f15610274376bbcc70c9a3aa8b505ea23f41c579"
+ integrity sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug==
+ dependencies:
+ escape-goat "^4.0.0"
+
+qs@6.13.0:
+ version "6.13.0"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906"
+ integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==
+ dependencies:
+ side-channel "^1.0.6"
+
+qs@^6.12.3:
+ version "6.14.0"
+ resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930"
+ integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==
+ dependencies:
+ side-channel "^1.1.0"
+
+queue-microtask@^1.2.2:
+ version "1.2.3"
+ resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
+ integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
+
+quick-lru@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
+ integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
+
+randombytes@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
+ integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
+ dependencies:
+ safe-buffer "^5.1.0"
+
+range-parser@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e"
+ integrity sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==
+
+range-parser@^1.2.1, range-parser@~1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031"
+ integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==
+
+raw-body@2.5.2:
+ version "2.5.2"
+ resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a"
+ integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==
+ dependencies:
+ bytes "3.1.2"
+ http-errors "2.0.0"
+ iconv-lite "0.4.24"
+ unpipe "1.0.0"
+
+raw-loader@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6"
+ integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==
+ dependencies:
+ loader-utils "^2.0.0"
+ schema-utils "^3.0.0"
+
+rc@1.2.8:
+ version "1.2.8"
+ resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed"
+ integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==
+ dependencies:
+ deep-extend "^0.6.0"
+ ini "~1.3.0"
+ minimist "^1.2.0"
+ strip-json-comments "~2.0.1"
+
+react-dom@^18.2.0:
+ version "18.3.1"
+ resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-18.3.1.tgz#c2265d79511b57d479b3dd3fdfa51536494c5cb4"
+ integrity sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==
+ dependencies:
+ loose-envify "^1.1.0"
+ scheduler "^0.23.2"
+
+react-fast-compare@^3.2.0:
+ version "3.2.2"
+ resolved "https://registry.yarnpkg.com/react-fast-compare/-/react-fast-compare-3.2.2.tgz#929a97a532304ce9fee4bcae44234f1ce2c21d49"
+ integrity sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==
+
+react-feather@^2.0.10:
+ version "2.0.10"
+ resolved "https://registry.yarnpkg.com/react-feather/-/react-feather-2.0.10.tgz#0e9abf05a66754f7b7bb71757ac4da7fb6be3b68"
+ integrity sha512-BLhukwJ+Z92Nmdcs+EMw6dy1Z/VLiJTzEQACDUEnWMClhYnFykJCGWQx+NmwP/qQHGX/5CzQ+TGi8ofg2+HzVQ==
+ dependencies:
+ prop-types "^15.7.2"
+
+"react-helmet-async@npm:@slorber/react-helmet-async@1.3.0":
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/@slorber/react-helmet-async/-/react-helmet-async-1.3.0.tgz#11fbc6094605cf60aa04a28c17e0aab894b4ecff"
+ integrity sha512-e9/OK8VhwUSc67diWI8Rb3I0YgI9/SBQtnhe9aEuK6MhZm7ntZZimXgwXnd8W96YTmSOb9M4d8LwhRZyhWr/1A==
+ dependencies:
+ "@babel/runtime" "^7.12.5"
+ invariant "^2.2.4"
+ prop-types "^15.7.2"
+ react-fast-compare "^3.2.0"
+ shallowequal "^1.1.0"
+
+react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0:
+ version "16.13.1"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
+ integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==
+
+react-is@^18.0.0:
+ version "18.3.1"
+ resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.3.1.tgz#e83557dc12eae63a99e003a46388b1dcbb44db7e"
+ integrity sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==
+
+react-json-view-lite@^2.3.0:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/react-json-view-lite/-/react-json-view-lite-2.4.1.tgz#0d06696a06aaf4a74e890302b76cf8cddcc45d60"
+ integrity sha512-fwFYknRIBxjbFm0kBDrzgBy1xa5tDg2LyXXBepC5f1b+MY3BUClMCsvanMPn089JbV1Eg3nZcrp0VCuH43aXnA==
+
+react-loadable-ssr-addon-v5-slorber@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz#2cdc91e8a744ffdf9e3556caabeb6e4278689883"
+ integrity sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==
+ dependencies:
+ "@babel/runtime" "^7.10.3"
+
+react-loadable@^5.5.0:
+ version "5.5.0"
+ resolved "https://registry.yarnpkg.com/react-loadable/-/react-loadable-5.5.0.tgz#582251679d3da86c32aae2c8e689c59f1196d8c4"
+ integrity sha512-C8Aui0ZpMd4KokxRdVAm2bQtI03k2RMRNzOB+IipV3yxFTSVICv7WoUr5L9ALB5BmKO1iHgZtWM8EvYG83otdg==
+ dependencies:
+ prop-types "^15.5.0"
+
+"react-loadable@npm:@docusaurus/react-loadable@6.0.0":
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz#de6c7f73c96542bd70786b8e522d535d69069dc4"
+ integrity sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==
+ dependencies:
+ "@types/react" "*"
+
+react-markdown@^8.0.7:
+ version "8.0.7"
+ resolved "https://registry.yarnpkg.com/react-markdown/-/react-markdown-8.0.7.tgz#c8dbd1b9ba5f1c5e7e5f2a44de465a3caafdf89b"
+ integrity sha512-bvWbzG4MtOU62XqBx3Xx+zB2raaFFsq4mYiAzfjXJMEz2sixgeAfraA3tvzULF02ZdOMUOKTBFFaZJDDrq+BJQ==
+ dependencies:
+ "@types/hast" "^2.0.0"
+ "@types/prop-types" "^15.0.0"
+ "@types/unist" "^2.0.0"
+ comma-separated-tokens "^2.0.0"
+ hast-util-whitespace "^2.0.0"
+ prop-types "^15.0.0"
+ property-information "^6.0.0"
+ react-is "^18.0.0"
+ remark-parse "^10.0.0"
+ remark-rehype "^10.0.0"
+ space-separated-tokens "^2.0.0"
+ style-to-object "^0.4.0"
+ unified "^10.0.0"
+ unist-util-visit "^4.0.0"
+ vfile "^5.0.0"
+
+react-remove-scroll-bar@^2.3.7:
+ version "2.3.8"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.3.8.tgz#99c20f908ee467b385b68a3469b4a3e750012223"
+ integrity sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==
+ dependencies:
+ react-style-singleton "^2.2.2"
+ tslib "^2.0.0"
+
+react-remove-scroll@^2.6.3:
+ version "2.7.1"
+ resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.7.1.tgz#d2101d414f6d81d7d3bf033f3c1cb4785789f753"
+ integrity sha512-HpMh8+oahmIdOuS5aFKKY6Pyog+FNaZV/XyJOq7b4YFwsFHe5yYfdbIalI4k3vU2nSDql7YskmUseHsRrJqIPA==
+ dependencies:
+ react-remove-scroll-bar "^2.3.7"
+ react-style-singleton "^2.2.3"
+ tslib "^2.1.0"
+ use-callback-ref "^1.3.3"
+ use-sidecar "^1.1.3"
+
+react-router-config@^5.1.1:
+ version "5.1.1"
+ resolved "https://registry.yarnpkg.com/react-router-config/-/react-router-config-5.1.1.tgz#0f4263d1a80c6b2dc7b9c1902c9526478194a988"
+ integrity sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==
+ dependencies:
+ "@babel/runtime" "^7.1.2"
+
+react-router-dom@^5.3.4:
+ version "5.3.4"
+ resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-5.3.4.tgz#2ed62ffd88cae6db134445f4a0c0ae8b91d2e5e6"
+ integrity sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==
+ dependencies:
+ "@babel/runtime" "^7.12.13"
+ history "^4.9.0"
+ loose-envify "^1.3.1"
+ prop-types "^15.6.2"
+ react-router "5.3.4"
+ tiny-invariant "^1.0.2"
+ tiny-warning "^1.0.0"
+
+react-router@5.3.4, react-router@^5.3.4:
+ version "5.3.4"
+ resolved "https://registry.yarnpkg.com/react-router/-/react-router-5.3.4.tgz#8ca252d70fcc37841e31473c7a151cf777887bb5"
+ integrity sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==
+ dependencies:
+ "@babel/runtime" "^7.12.13"
+ history "^4.9.0"
+ hoist-non-react-statics "^3.1.0"
+ loose-envify "^1.3.1"
+ path-to-regexp "^1.7.0"
+ prop-types "^15.6.2"
+ react-is "^16.6.0"
+ tiny-invariant "^1.0.2"
+ tiny-warning "^1.0.0"
+
+react-style-singleton@^2.2.2, react-style-singleton@^2.2.3:
+ version "2.2.3"
+ resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.2.3.tgz#4265608be69a4d70cfe3047f2c6c88b2c3ace388"
+ integrity sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==
+ dependencies:
+ get-nonce "^1.0.0"
+ tslib "^2.0.0"
+
+react@^18.2.0:
+ version "18.3.1"
+ resolved "https://registry.yarnpkg.com/react/-/react-18.3.1.tgz#49ab892009c53933625bd16b2533fc754cab2891"
+ integrity sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==
+ dependencies:
+ loose-envify "^1.1.0"
+
+read-cache@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
+ integrity sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==
+ dependencies:
+ pify "^2.3.0"
+
+readable-stream@^2.0.1:
+ version "2.3.8"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b"
+ integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==
+ dependencies:
+ core-util-is "~1.0.0"
+ inherits "~2.0.3"
+ isarray "~1.0.0"
+ process-nextick-args "~2.0.0"
+ safe-buffer "~5.1.1"
+ string_decoder "~1.1.1"
+ util-deprecate "~1.0.1"
+
+readable-stream@^3.0.6, readable-stream@^3.5.0:
+ version "3.6.2"
+ resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967"
+ integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==
+ dependencies:
+ inherits "^2.0.3"
+ string_decoder "^1.1.1"
+ util-deprecate "^1.0.1"
+
+readdirp@~3.6.0:
+ version "3.6.0"
+ resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7"
+ integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==
+ dependencies:
+ picomatch "^2.2.1"
+
+recma-build-jsx@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/recma-build-jsx/-/recma-build-jsx-1.0.0.tgz#c02f29e047e103d2fab2054954e1761b8ea253c4"
+ integrity sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ estree-util-build-jsx "^3.0.0"
+ vfile "^6.0.0"
+
+recma-jsx@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/recma-jsx/-/recma-jsx-1.0.0.tgz#f7bef02e571a49d6ba3efdfda8e2efab48dbe3aa"
+ integrity sha512-5vwkv65qWwYxg+Atz95acp8DMu1JDSqdGkA2Of1j6rCreyFUE/gp15fC8MnGEuG1W68UKjM6x6+YTWIh7hZM/Q==
+ dependencies:
+ acorn-jsx "^5.0.0"
+ estree-util-to-js "^2.0.0"
+ recma-parse "^1.0.0"
+ recma-stringify "^1.0.0"
+ unified "^11.0.0"
+
+recma-parse@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/recma-parse/-/recma-parse-1.0.0.tgz#c351e161bb0ab47d86b92a98a9d891f9b6814b52"
+ integrity sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ esast-util-from-js "^2.0.0"
+ unified "^11.0.0"
+ vfile "^6.0.0"
+
+recma-stringify@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/recma-stringify/-/recma-stringify-1.0.0.tgz#54632030631e0c7546136ff9ef8fde8e7b44f130"
+ integrity sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ estree-util-to-js "^2.0.0"
+ unified "^11.0.0"
+ vfile "^6.0.0"
+
+regenerate-unicode-properties@^10.2.0:
+ version "10.2.0"
+ resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz#626e39df8c372338ea9b8028d1f99dc3fd9c3db0"
+ integrity sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==
+ dependencies:
+ regenerate "^1.4.2"
+
+regenerate@^1.4.2:
+ version "1.4.2"
+ resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a"
+ integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==
+
+regexpu-core@^6.2.0:
+ version "6.2.0"
+ resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.2.0.tgz#0e5190d79e542bf294955dccabae04d3c7d53826"
+ integrity sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==
+ dependencies:
+ regenerate "^1.4.2"
+ regenerate-unicode-properties "^10.2.0"
+ regjsgen "^0.8.0"
+ regjsparser "^0.12.0"
+ unicode-match-property-ecmascript "^2.0.0"
+ unicode-match-property-value-ecmascript "^2.1.0"
+
+registry-auth-token@^5.0.1:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.1.0.tgz#3c659047ecd4caebd25bc1570a3aa979ae490eca"
+ integrity sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw==
+ dependencies:
+ "@pnpm/npm-conf" "^2.1.0"
+
+registry-url@^6.0.0:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-6.0.1.tgz#056d9343680f2f64400032b1e199faa692286c58"
+ integrity sha512-+crtS5QjFRqFCoQmvGduwYWEBng99ZvmFvF+cUJkGYF1L1BfU8C6Zp9T7f5vPAwyLkUExpvK+ANVZmGU49qi4Q==
+ dependencies:
+ rc "1.2.8"
+
+regjsgen@^0.8.0:
+ version "0.8.0"
+ resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab"
+ integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==
+
+regjsparser@^0.12.0:
+ version "0.12.0"
+ resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc"
+ integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==
+ dependencies:
+ jsesc "~3.0.2"
+
+rehype-katex@^7.0.0:
+ version "7.0.1"
+ resolved "https://registry.yarnpkg.com/rehype-katex/-/rehype-katex-7.0.1.tgz#832e6d7af2744a228981d1b0fe89483a9e7c93a1"
+ integrity sha512-OiM2wrZ/wuhKkigASodFoo8wimG3H12LWQaH8qSPVJn9apWKFSH3YOCtbKpBorTVw/eI7cuT21XBbvwEswbIOA==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/katex" "^0.16.0"
+ hast-util-from-html-isomorphic "^2.0.0"
+ hast-util-to-text "^4.0.0"
+ katex "^0.16.0"
+ unist-util-visit-parents "^6.0.0"
+ vfile "^6.0.0"
+
+rehype-raw@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/rehype-raw/-/rehype-raw-7.0.0.tgz#59d7348fd5dbef3807bbaa1d443efd2dd85ecee4"
+ integrity sha512-/aE8hCfKlQeA8LmyeyQvQF3eBiLRGNlfBJEvWH7ivp9sBqs7TNqBL5X3v157rM4IFETqDnIOO+z5M/biZbo9Ww==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ hast-util-raw "^9.0.0"
+ vfile "^6.0.0"
+
+rehype-recma@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/rehype-recma/-/rehype-recma-1.0.0.tgz#d68ef6344d05916bd96e25400c6261775411aa76"
+ integrity sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==
+ dependencies:
+ "@types/estree" "^1.0.0"
+ "@types/hast" "^3.0.0"
+ hast-util-to-estree "^3.0.0"
+
+relateurl@^0.2.7:
+ version "0.2.7"
+ resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9"
+ integrity sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==
+
+remark-directive@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/remark-directive/-/remark-directive-3.0.1.tgz#689ba332f156cfe1118e849164cc81f157a3ef0a"
+ integrity sha512-gwglrEQEZcZYgVyG1tQuA+h58EZfq5CSULw7J90AFuCTyib1thgHPoqQ+h9iFvU6R+vnZ5oNFQR5QKgGpk741A==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-directive "^3.0.0"
+ micromark-extension-directive "^3.0.0"
+ unified "^11.0.0"
+
+remark-emoji@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/remark-emoji/-/remark-emoji-4.0.1.tgz#671bfda668047689e26b2078c7356540da299f04"
+ integrity sha512-fHdvsTR1dHkWKev9eNyhTo4EFwbUvJ8ka9SgeWkMPYFX4WoI7ViVBms3PjlQYgw5TLvNQso3GUB/b/8t3yo+dg==
+ dependencies:
+ "@types/mdast" "^4.0.2"
+ emoticon "^4.0.1"
+ mdast-util-find-and-replace "^3.0.1"
+ node-emoji "^2.1.0"
+ unified "^11.0.4"
+
+remark-frontmatter@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/remark-frontmatter/-/remark-frontmatter-5.0.0.tgz#b68d61552a421ec412c76f4f66c344627dc187a2"
+ integrity sha512-XTFYvNASMe5iPN0719nPrdItC9aU0ssC4v14mH1BCi1u0n1gAocqcujWUrByftZTbLhRtiKRyjYTSIOcr69UVQ==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-frontmatter "^2.0.0"
+ micromark-extension-frontmatter "^2.0.0"
+ unified "^11.0.0"
+
+remark-gfm@^4.0.0:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/remark-gfm/-/remark-gfm-4.0.1.tgz#33227b2a74397670d357bf05c098eaf8513f0d6b"
+ integrity sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-gfm "^3.0.0"
+ micromark-extension-gfm "^3.0.0"
+ remark-parse "^11.0.0"
+ remark-stringify "^11.0.0"
+ unified "^11.0.0"
+
+remark-math@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/remark-math/-/remark-math-6.0.0.tgz#0acdf74675f1c195fea6efffa78582f7ed7fc0d7"
+ integrity sha512-MMqgnP74Igy+S3WwnhQ7kqGlEerTETXMvJhrUzDikVZ2/uogJCb+WHUg97hK9/jcfc0dkD73s3LN8zU49cTEtA==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-math "^3.0.0"
+ micromark-extension-math "^3.0.0"
+ unified "^11.0.0"
+
+remark-mdx@^3.0.0:
+ version "3.1.0"
+ resolved "https://registry.yarnpkg.com/remark-mdx/-/remark-mdx-3.1.0.tgz#f979be729ecb35318fa48e2135c1169607a78343"
+ integrity sha512-Ngl/H3YXyBV9RcRNdlYsZujAmhsxwzxpDzpDEhFBVAGthS4GDgnctpDjgFl/ULx5UEDzqtW1cyBSNKqYYrqLBA==
+ dependencies:
+ mdast-util-mdx "^3.0.0"
+ micromark-extension-mdxjs "^3.0.0"
+
+remark-parse@^10.0.0:
+ version "10.0.2"
+ resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-10.0.2.tgz#ca241fde8751c2158933f031a4e3efbaeb8bc262"
+ integrity sha512-3ydxgHa/ZQzG8LvC7jTXccARYDcRld3VfcgIIFs7bI6vbRSxJJmzgLEIIoYKyrfhaY+ujuWaf/PJiMZXoiCXgw==
+ dependencies:
+ "@types/mdast" "^3.0.0"
+ mdast-util-from-markdown "^1.0.0"
+ unified "^10.0.0"
+
+remark-parse@^11.0.0:
+ version "11.0.0"
+ resolved "https://registry.yarnpkg.com/remark-parse/-/remark-parse-11.0.0.tgz#aa60743fcb37ebf6b069204eb4da304e40db45a1"
+ integrity sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-from-markdown "^2.0.0"
+ micromark-util-types "^2.0.0"
+ unified "^11.0.0"
+
+remark-rehype@^10.0.0:
+ version "10.1.0"
+ resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-10.1.0.tgz#32dc99d2034c27ecaf2e0150d22a6dcccd9a6279"
+ integrity sha512-EFmR5zppdBp0WQeDVZ/b66CWJipB2q2VLNFMabzDSGR66Z2fQii83G5gTBbgGEnEEA0QRussvrFHxk1HWGJskw==
+ dependencies:
+ "@types/hast" "^2.0.0"
+ "@types/mdast" "^3.0.0"
+ mdast-util-to-hast "^12.1.0"
+ unified "^10.0.0"
+
+remark-rehype@^11.0.0:
+ version "11.1.2"
+ resolved "https://registry.yarnpkg.com/remark-rehype/-/remark-rehype-11.1.2.tgz#2addaadda80ca9bd9aa0da763e74d16327683b37"
+ integrity sha512-Dh7l57ianaEoIpzbp0PC9UKAdCSVklD8E5Rpw7ETfbTl3FqcOOgq5q2LVDhgGCkaBv7p24JXikPdvhhmHvKMsw==
+ dependencies:
+ "@types/hast" "^3.0.0"
+ "@types/mdast" "^4.0.0"
+ mdast-util-to-hast "^13.0.0"
+ unified "^11.0.0"
+ vfile "^6.0.0"
+
+remark-stringify@^11.0.0:
+ version "11.0.0"
+ resolved "https://registry.yarnpkg.com/remark-stringify/-/remark-stringify-11.0.0.tgz#4c5b01dd711c269df1aaae11743eb7e2e7636fd3"
+ integrity sha512-1OSmLd3awB/t8qdoEOMazZkNsfVTeY4fTsgzcQFdXNq8ToTN4ZGwrMnlda4K6smTFKD+GRV6O48i6Z4iKgPPpw==
+ dependencies:
+ "@types/mdast" "^4.0.0"
+ mdast-util-to-markdown "^2.0.0"
+ unified "^11.0.0"
+
+renderkid@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-3.0.0.tgz#5fd823e4d6951d37358ecc9a58b1f06836b6268a"
+ integrity sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==
+ dependencies:
+ css-select "^4.1.3"
+ dom-converter "^0.2.0"
+ htmlparser2 "^6.1.0"
+ lodash "^4.17.21"
+ strip-ansi "^6.0.1"
+
+repeat-string@^1.0.0:
+ version "1.6.1"
+ resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637"
+ integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==
+
+require-from-string@^2.0.2:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
+ integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
+
+"require-like@>= 0.1.1":
+ version "0.1.2"
+ resolved "https://registry.yarnpkg.com/require-like/-/require-like-0.1.2.tgz#ad6f30c13becd797010c468afa775c0c0a6b47fa"
+ integrity sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==
+
+requires-port@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
+ integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==
+
+resolve-alpn@^1.2.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"
+ integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
+
+resolve-from@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
+ integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
+
+resolve-pathname@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd"
+ integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==
+
+resolve@^1.1.7, resolve@^1.14.2, resolve@^1.22.8:
+ version "1.22.10"
+ resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39"
+ integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==
+ dependencies:
+ is-core-module "^2.16.0"
+ path-parse "^1.0.7"
+ supports-preserve-symlinks-flag "^1.0.0"
+
+responselike@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/responselike/-/responselike-3.0.0.tgz#20decb6c298aff0dbee1c355ca95461d42823626"
+ integrity sha512-40yHxbNcl2+rzXvZuVkrYohathsSJlMTXKryG5y8uciHv1+xDLHQpgjG64JUO9nrEq2jGLH6IZ8BcZyw3wrweg==
+ dependencies:
+ lowercase-keys "^3.0.0"
+
+retry@^0.13.1:
+ version "0.13.1"
+ resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658"
+ integrity sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==
+
+reusify@^1.0.4:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f"
+ integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==
+
+rimraf@^2.6.3:
+ version "2.7.1"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec"
+ integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==
+ dependencies:
+ glob "^7.1.3"
+
+rimraf@^3.0.2:
+ version "3.0.2"
+ resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
+ integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
+ dependencies:
+ glob "^7.1.3"
+
+rtl-css-js@^1.16.1:
+ version "1.16.1"
+ resolved "https://registry.yarnpkg.com/rtl-css-js/-/rtl-css-js-1.16.1.tgz#4b48b4354b0ff917a30488d95100fbf7219a3e80"
+ integrity sha512-lRQgou1mu19e+Ya0LsTvKrVJ5TYUbqCVPAiImX3UfLTenarvPUl1QFdvu5Z3PYmHT9RCcwIfbjRQBntExyj3Zg==
+ dependencies:
+ "@babel/runtime" "^7.1.2"
+
+rtlcss@^4.1.0:
+ version "4.3.0"
+ resolved "https://registry.yarnpkg.com/rtlcss/-/rtlcss-4.3.0.tgz#f8efd4d5b64f640ec4af8fa25b65bacd9e07cc97"
+ integrity sha512-FI+pHEn7Wc4NqKXMXFM+VAYKEj/mRIcW4h24YVwVtyjI+EqGrLc2Hx/Ny0lrZ21cBWU2goLy36eqMcNj3AQJig==
+ dependencies:
+ escalade "^3.1.1"
+ picocolors "^1.0.0"
+ postcss "^8.4.21"
+ strip-json-comments "^3.1.1"
+
+run-parallel@^1.1.9:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
+ integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
+ dependencies:
+ queue-microtask "^1.2.2"
+
+sade@^1.7.3:
+ version "1.8.1"
+ resolved "https://registry.yarnpkg.com/sade/-/sade-1.8.1.tgz#0a78e81d658d394887be57d2a409bf703a3b2701"
+ integrity sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==
+ dependencies:
+ mri "^1.1.0"
+
+safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
+ integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
+
+safe-buffer@~5.1.0, safe-buffer@~5.1.1:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
+ integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
+
+"safer-buffer@>= 2.1.2 < 3":
+ version "2.1.2"
+ resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
+ integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
+
+sax@^1.2.4:
+ version "1.4.1"
+ resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f"
+ integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==
+
+scheduler@^0.23.2:
+ version "0.23.2"
+ resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.23.2.tgz#414ba64a3b282892e944cf2108ecc078d115cdc3"
+ integrity sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==
+ dependencies:
+ loose-envify "^1.1.0"
+
+schema-dts@^1.1.2:
+ version "1.1.5"
+ resolved "https://registry.yarnpkg.com/schema-dts/-/schema-dts-1.1.5.tgz#9237725d305bac3469f02b292a035107595dc324"
+ integrity sha512-RJr9EaCmsLzBX2NDiO5Z3ux2BVosNZN5jo0gWgsyKvxKIUL5R3swNvoorulAeL9kLB0iTSX7V6aokhla2m7xbg==
+
+schema-utils@^3.0.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.3.0.tgz#f50a88877c3c01652a15b622ae9e9795df7a60fe"
+ integrity sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==
+ dependencies:
+ "@types/json-schema" "^7.0.8"
+ ajv "^6.12.5"
+ ajv-keywords "^3.5.2"
+
+schema-utils@^4.0.0, schema-utils@^4.0.1, schema-utils@^4.3.0, schema-utils@^4.3.2:
+ version "4.3.2"
+ resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae"
+ integrity sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==
+ dependencies:
+ "@types/json-schema" "^7.0.9"
+ ajv "^8.9.0"
+ ajv-formats "^2.1.1"
+ ajv-keywords "^5.1.0"
+
+search-insights@^2.8.0:
+ version "2.17.3"
+ resolved "https://registry.yarnpkg.com/search-insights/-/search-insights-2.17.3.tgz#8faea5d20507bf348caba0724e5386862847b661"
+ integrity sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==
+
+section-matter@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167"
+ integrity sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==
+ dependencies:
+ extend-shallow "^2.0.1"
+ kind-of "^6.0.0"
+
+select-hose@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/select-hose/-/select-hose-2.0.0.tgz#625d8658f865af43ec962bfc376a37359a4994ca"
+ integrity sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==
+
+selfsigned@^2.1.1:
+ version "2.4.1"
+ resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.4.1.tgz#560d90565442a3ed35b674034cec4e95dceb4ae0"
+ integrity sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==
+ dependencies:
+ "@types/node-forge" "^1.3.0"
+ node-forge "^1"
+
+semver-diff@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-4.0.0.tgz#3afcf5ed6d62259f5c72d0d5d50dffbdc9680df5"
+ integrity sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==
+ dependencies:
+ semver "^7.3.5"
+
+semver@^5.5.0, semver@^5.6.0:
+ version "5.7.2"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
+ integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
+
+semver@^6.3.1:
+ version "6.3.1"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
+ integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
+
+semver@^7.3.5, semver@^7.3.7, semver@^7.5.4:
+ version "7.7.2"
+ resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58"
+ integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==
+
+send@0.19.0:
+ version "0.19.0"
+ resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8"
+ integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==
+ dependencies:
+ debug "2.6.9"
+ depd "2.0.0"
+ destroy "1.2.0"
+ encodeurl "~1.0.2"
+ escape-html "~1.0.3"
+ etag "~1.8.1"
+ fresh "0.5.2"
+ http-errors "2.0.0"
+ mime "1.6.0"
+ ms "2.1.3"
+ on-finished "2.4.1"
+ range-parser "~1.2.1"
+ statuses "2.0.1"
+
+serialize-javascript@^6.0.0, serialize-javascript@^6.0.1, serialize-javascript@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2"
+ integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==
+ dependencies:
+ randombytes "^2.1.0"
+
+serve-handler@^6.1.6:
+ version "6.1.6"
+ resolved "https://registry.yarnpkg.com/serve-handler/-/serve-handler-6.1.6.tgz#50803c1d3e947cd4a341d617f8209b22bd76cfa1"
+ integrity sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ==
+ dependencies:
+ bytes "3.0.0"
+ content-disposition "0.5.2"
+ mime-types "2.1.18"
+ minimatch "3.1.2"
+ path-is-inside "1.0.2"
+ path-to-regexp "3.3.0"
+ range-parser "1.2.0"
+
+serve-index@^1.9.1:
+ version "1.9.1"
+ resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
+ integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==
+ dependencies:
+ accepts "~1.3.4"
+ batch "0.6.1"
+ debug "2.6.9"
+ escape-html "~1.0.3"
+ http-errors "~1.6.2"
+ mime-types "~2.1.17"
+ parseurl "~1.3.2"
+
+serve-static@1.16.2:
+ version "1.16.2"
+ resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296"
+ integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==
+ dependencies:
+ encodeurl "~2.0.0"
+ escape-html "~1.0.3"
+ parseurl "~1.3.3"
+ send "0.19.0"
+
+set-function-length@^1.2.2:
+ version "1.2.2"
+ resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449"
+ integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==
+ dependencies:
+ define-data-property "^1.1.4"
+ es-errors "^1.3.0"
+ function-bind "^1.1.2"
+ get-intrinsic "^1.2.4"
+ gopd "^1.0.1"
+ has-property-descriptors "^1.0.2"
+
+setprototypeof@1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656"
+ integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==
+
+setprototypeof@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424"
+ integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==
+
+shallow-clone@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3"
+ integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==
+ dependencies:
+ kind-of "^6.0.2"
+
+shallowequal@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8"
+ integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==
+
+shebang-command@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
+ integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==
+ dependencies:
+ shebang-regex "^1.0.0"
+
+shebang-command@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
+ integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
+ dependencies:
+ shebang-regex "^3.0.0"
+
+shebang-regex@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3"
+ integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==
+
+shebang-regex@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
+ integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
+
+shell-quote@^1.8.1:
+ version "1.8.3"
+ resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.3.tgz#55e40ef33cf5c689902353a3d8cd1a6725f08b4b"
+ integrity sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==
+
+side-channel-list@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad"
+ integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==
+ dependencies:
+ es-errors "^1.3.0"
+ object-inspect "^1.13.3"
+
+side-channel-map@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/side-channel-map/-/side-channel-map-1.0.1.tgz#d6bb6b37902c6fef5174e5f533fab4c732a26f42"
+ integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==
+ dependencies:
+ call-bound "^1.0.2"
+ es-errors "^1.3.0"
+ get-intrinsic "^1.2.5"
+ object-inspect "^1.13.3"
+
+side-channel-weakmap@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz#11dda19d5368e40ce9ec2bdc1fb0ecbc0790ecea"
+ integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==
+ dependencies:
+ call-bound "^1.0.2"
+ es-errors "^1.3.0"
+ get-intrinsic "^1.2.5"
+ object-inspect "^1.13.3"
+ side-channel-map "^1.0.1"
+
+side-channel@^1.0.6, side-channel@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9"
+ integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==
+ dependencies:
+ es-errors "^1.3.0"
+ object-inspect "^1.13.3"
+ side-channel-list "^1.0.0"
+ side-channel-map "^1.0.1"
+ side-channel-weakmap "^1.0.2"
+
+signal-exit@^3.0.2, signal-exit@^3.0.3:
+ version "3.0.7"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9"
+ integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==
+
+signal-exit@^4.0.1:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04"
+ integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==
+
+sirv@^2.0.3:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0"
+ integrity sha512-94Bdh3cC2PKrbgSOUqTiGPWVZeSiXfKOVZNJniWoqrWrRkB1CJzBU3NEbiTsPcYy1lDsANA/THzS+9WBiy5nfQ==
+ dependencies:
+ "@polka/url" "^1.0.0-next.24"
+ mrmime "^2.0.0"
+ totalist "^3.0.0"
+
+sisteransi@^1.0.5:
+ version "1.0.5"
+ resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed"
+ integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==
+
+sitemap@^7.1.1:
+ version "7.1.2"
+ resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-7.1.2.tgz#6ce1deb43f6f177c68bc59cf93632f54e3ae6b72"
+ integrity sha512-ARCqzHJ0p4gWt+j7NlU5eDlIO9+Rkr/JhPFZKKQ1l5GCus7rJH4UdrlVAh0xC/gDS/Qir2UMxqYNHtsKr2rpCw==
+ dependencies:
+ "@types/node" "^17.0.5"
+ "@types/sax" "^1.2.1"
+ arg "^5.0.0"
+ sax "^1.2.4"
+
+skin-tone@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/skin-tone/-/skin-tone-2.0.0.tgz#4e3933ab45c0d4f4f781745d64b9f4c208e41237"
+ integrity sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==
+ dependencies:
+ unicode-emoji-modifier-base "^1.0.0"
+
+slash@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44"
+ integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==
+
+slash@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
+ integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
+
+slash@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz#2422372176c4c6c5addb5e2ada885af984b396a7"
+ integrity sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==
+
+snake-case@^3.0.4:
+ version "3.0.4"
+ resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-3.0.4.tgz#4f2bbd568e9935abdfd593f34c691dadb49c452c"
+ integrity sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==
+ dependencies:
+ dot-case "^3.0.4"
+ tslib "^2.0.3"
+
+sockjs@^0.3.24:
+ version "0.3.24"
+ resolved "https://registry.yarnpkg.com/sockjs/-/sockjs-0.3.24.tgz#c9bc8995f33a111bea0395ec30aa3206bdb5ccce"
+ integrity sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==
+ dependencies:
+ faye-websocket "^0.11.3"
+ uuid "^8.3.2"
+ websocket-driver "^0.7.4"
+
+sort-css-media-queries@2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/sort-css-media-queries/-/sort-css-media-queries-2.2.0.tgz#aa33cf4a08e0225059448b6c40eddbf9f1c8334c"
+ integrity sha512-0xtkGhWCC9MGt/EzgnvbbbKhqWjl1+/rncmhTh5qCpbYguXh6S/qwePfv/JQ8jePXXmqingylxoC49pCkSPIbA==
+
+source-map-js@^1.0.1, source-map-js@^1.2.1:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.2.1.tgz#1ce5650fddd87abc099eda37dcff024c2667ae46"
+ integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
+
+source-map-support@~0.5.20:
+ version "0.5.21"
+ resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
+ integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==
+ dependencies:
+ buffer-from "^1.0.0"
+ source-map "^0.6.0"
+
+source-map@^0.6.0, source-map@~0.6.0:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
+ integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
+
+source-map@^0.7.0:
+ version "0.7.4"
+ resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656"
+ integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==
+
+space-separated-tokens@^2.0.0:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz#1ecd9d2350a3844572c3f4a312bceb018348859f"
+ integrity sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==
+
+spdy-transport@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/spdy-transport/-/spdy-transport-3.0.0.tgz#00d4863a6400ad75df93361a1608605e5dcdcf31"
+ integrity sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==
+ dependencies:
+ debug "^4.1.0"
+ detect-node "^2.0.4"
+ hpack.js "^2.1.6"
+ obuf "^1.1.2"
+ readable-stream "^3.0.6"
+ wbuf "^1.7.3"
+
+spdy@^4.0.2:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/spdy/-/spdy-4.0.2.tgz#b74f466203a3eda452c02492b91fb9e84a27677b"
+ integrity sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==
+ dependencies:
+ debug "^4.1.0"
+ handle-thing "^2.0.0"
+ http-deceiver "^1.2.7"
+ select-hose "^2.0.0"
+ spdy-transport "^3.0.0"
+
+sprintf-js@~1.0.2:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
+ integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==
+
+srcset@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/srcset/-/srcset-4.0.0.tgz#336816b665b14cd013ba545b6fe62357f86e65f4"
+ integrity sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==
+
+statuses@2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63"
+ integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==
+
+"statuses@>= 1.4.0 < 2":
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c"
+ integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==
+
+std-env@^3.7.0:
+ version "3.9.0"
+ resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.9.0.tgz#1a6f7243b339dca4c9fd55e1c7504c77ef23e8f1"
+ integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==
+
+stream-browserify@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-3.0.0.tgz#22b0a2850cdf6503e73085da1fc7b7d0c2122f2f"
+ integrity sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==
+ dependencies:
+ inherits "~2.0.4"
+ readable-stream "^3.5.0"
+
+"string-width-cjs@npm:string-width@^4.2.0":
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+ integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
+ dependencies:
+ emoji-regex "^8.0.0"
+ is-fullwidth-code-point "^3.0.0"
+ strip-ansi "^6.0.1"
+
+string-width@^4.1.0, string-width@^4.2.0:
+ version "4.2.3"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010"
+ integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==
+ dependencies:
+ emoji-regex "^8.0.0"
+ is-fullwidth-code-point "^3.0.0"
+ strip-ansi "^6.0.1"
+
+string-width@^5.0.1, string-width@^5.1.2:
+ version "5.1.2"
+ resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794"
+ integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==
+ dependencies:
+ eastasianwidth "^0.2.0"
+ emoji-regex "^9.2.2"
+ strip-ansi "^7.0.1"
+
+string_decoder@^1.1.1:
+ version "1.3.0"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
+ integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==
+ dependencies:
+ safe-buffer "~5.2.0"
+
+string_decoder@~1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8"
+ integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==
+ dependencies:
+ safe-buffer "~5.1.0"
+
+stringify-entities@^4.0.0:
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/stringify-entities/-/stringify-entities-4.0.4.tgz#b3b79ef5f277cc4ac73caeb0236c5ba939b3a4f3"
+ integrity sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==
+ dependencies:
+ character-entities-html4 "^2.0.0"
+ character-entities-legacy "^3.0.0"
+
+stringify-object@^3.3.0:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629"
+ integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==
+ dependencies:
+ get-own-enumerable-property-symbols "^3.0.0"
+ is-obj "^1.0.1"
+ is-regexp "^1.0.0"
+
+"strip-ansi-cjs@npm:strip-ansi@^6.0.1":
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+ integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
+ dependencies:
+ ansi-regex "^5.0.1"
+
+strip-ansi@^6.0.0, strip-ansi@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
+ integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
+ dependencies:
+ ansi-regex "^5.0.1"
+
+strip-ansi@^7.0.1:
+ version "7.1.0"
+ resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.0.tgz#d5b6568ca689d8561370b0707685d22434faff45"
+ integrity sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==
+ dependencies:
+ ansi-regex "^6.0.1"
+
+strip-bom-string@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/strip-bom-string/-/strip-bom-string-1.0.0.tgz#e5211e9224369fbb81d633a2f00044dc8cedad92"
+ integrity sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==
+
+strip-final-newline@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad"
+ integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==
+
+strip-json-comments@^3.1.1:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
+ integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
+
+strip-json-comments@~2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
+ integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==
+
+style-to-js@^1.0.0:
+ version "1.1.16"
+ resolved "https://registry.yarnpkg.com/style-to-js/-/style-to-js-1.1.16.tgz#e6bd6cd29e250bcf8fa5e6591d07ced7575dbe7a"
+ integrity sha512-/Q6ld50hKYPH3d/r6nr117TZkHR0w0kGGIVfpG9N6D8NymRPM9RqCUv4pRpJ62E5DqOYx2AFpbZMyCPnjQCnOw==
+ dependencies:
+ style-to-object "1.0.8"
+
+style-to-object@1.0.8:
+ version "1.0.8"
+ resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.8.tgz#67a29bca47eaa587db18118d68f9d95955e81292"
+ integrity sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==
+ dependencies:
+ inline-style-parser "0.2.4"
+
+style-to-object@^0.4.0:
+ version "0.4.4"
+ resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-0.4.4.tgz#266e3dfd56391a7eefb7770423612d043c3f33ec"
+ integrity sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==
+ dependencies:
+ inline-style-parser "0.1.1"
+
+stylehacks@^6.1.1:
+ version "6.1.1"
+ resolved "https://registry.yarnpkg.com/stylehacks/-/stylehacks-6.1.1.tgz#543f91c10d17d00a440430362d419f79c25545a6"
+ integrity sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==
+ dependencies:
+ browserslist "^4.23.0"
+ postcss-selector-parser "^6.0.16"
+
+stylis@^4.2.0:
+ version "4.3.6"
+ resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.3.6.tgz#7c7b97191cb4f195f03ecab7d52f7902ed378320"
+ integrity sha512-yQ3rwFWRfwNUY7H5vpU0wfdkNSnvnJinhF9830Swlaxl03zsOjCfmX0ugac+3LtK0lYSgwL/KXc8oYL3mG4YFQ==
+
+sucrase@^3.35.0:
+ version "3.35.0"
+ resolved "https://registry.yarnpkg.com/sucrase/-/sucrase-3.35.0.tgz#57f17a3d7e19b36d8995f06679d121be914ae263"
+ integrity sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==
+ dependencies:
+ "@jridgewell/gen-mapping" "^0.3.2"
+ commander "^4.0.0"
+ glob "^10.3.10"
+ lines-and-columns "^1.1.6"
+ mz "^2.7.0"
+ pirates "^4.0.1"
+ ts-interface-checker "^0.1.9"
+
+supports-color@^7.1.0:
+ version "7.2.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
+ integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
+ dependencies:
+ has-flag "^4.0.0"
+
+supports-color@^8.0.0:
+ version "8.1.1"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
+ integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
+ dependencies:
+ has-flag "^4.0.0"
+
+supports-preserve-symlinks-flag@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09"
+ integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
+
+svg-parser@^2.0.4:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/svg-parser/-/svg-parser-2.0.4.tgz#fdc2e29e13951736140b76cb122c8ee6630eb6b5"
+ integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==
+
+svgo@^3.0.2, svgo@^3.2.0:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.3.2.tgz#ad58002652dffbb5986fc9716afe52d869ecbda8"
+ integrity sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==
+ dependencies:
+ "@trysound/sax" "0.2.0"
+ commander "^7.2.0"
+ css-select "^5.1.0"
+ css-tree "^2.3.1"
+ css-what "^6.1.0"
+ csso "^5.0.5"
+ picocolors "^1.0.0"
+
+swc-loader@^0.2.6:
+ version "0.2.6"
+ resolved "https://registry.yarnpkg.com/swc-loader/-/swc-loader-0.2.6.tgz#bf0cba8eeff34bb19620ead81d1277fefaec6bc8"
+ integrity sha512-9Zi9UP2YmDpgmQVbyOPJClY0dwf58JDyDMQ7uRc4krmc72twNI2fvlBWHLqVekBpPc7h5NJkGVT1zNDxFrqhvg==
+ dependencies:
+ "@swc/counter" "^0.1.3"
+
+tailwindcss@^3.4.17:
+ version "3.4.17"
+ resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-3.4.17.tgz#ae8406c0f96696a631c790768ff319d46d5e5a63"
+ integrity sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==
+ dependencies:
+ "@alloc/quick-lru" "^5.2.0"
+ arg "^5.0.2"
+ chokidar "^3.6.0"
+ didyoumean "^1.2.2"
+ dlv "^1.1.3"
+ fast-glob "^3.3.2"
+ glob-parent "^6.0.2"
+ is-glob "^4.0.3"
+ jiti "^1.21.6"
+ lilconfig "^3.1.3"
+ micromatch "^4.0.8"
+ normalize-path "^3.0.0"
+ object-hash "^3.0.0"
+ picocolors "^1.1.1"
+ postcss "^8.4.47"
+ postcss-import "^15.1.0"
+ postcss-js "^4.0.1"
+ postcss-load-config "^4.0.2"
+ postcss-nested "^6.2.0"
+ postcss-selector-parser "^6.1.2"
+ resolve "^1.22.8"
+ sucrase "^3.35.0"
+
+tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1:
+ version "2.2.2"
+ resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.2.tgz#ab4984340d30cb9989a490032f086dbb8b56d872"
+ integrity sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==
+
+terser-webpack-plugin@^5.3.11, terser-webpack-plugin@^5.3.9:
+ version "5.3.14"
+ resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06"
+ integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==
+ dependencies:
+ "@jridgewell/trace-mapping" "^0.3.25"
+ jest-worker "^27.4.5"
+ schema-utils "^4.3.0"
+ serialize-javascript "^6.0.2"
+ terser "^5.31.1"
+
+terser@^5.10.0, terser@^5.15.1, terser@^5.31.1:
+ version "5.40.0"
+ resolved "https://registry.yarnpkg.com/terser/-/terser-5.40.0.tgz#839a80db42bfee8340085f44ea99b5cba36c55c8"
+ integrity sha512-cfeKl/jjwSR5ar7d0FGmave9hFGJT8obyo0z+CrQOylLDbk7X81nPU6vq9VORa5jU30SkDnT2FXjLbR8HLP+xA==
+ dependencies:
+ "@jridgewell/source-map" "^0.3.3"
+ acorn "^8.14.0"
+ commander "^2.20.0"
+ source-map-support "~0.5.20"
+
+text-table@^0.2.0:
+ version "0.2.0"
+ resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
+ integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==
+
+thenify-all@^1.0.0:
+ version "1.6.0"
+ resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726"
+ integrity sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==
+ dependencies:
+ thenify ">= 3.1.0 < 4"
+
+"thenify@>= 3.1.0 < 4":
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f"
+ integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==
+ dependencies:
+ any-promise "^1.0.0"
+
+thunky@^1.0.2:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d"
+ integrity sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==
+
+tiny-invariant@^1.0.2:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/tiny-invariant/-/tiny-invariant-1.3.3.tgz#46680b7a873a0d5d10005995eb90a70d74d60127"
+ integrity sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==
+
+tiny-warning@^1.0.0:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754"
+ integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==
+
+tinypool@^1.0.2:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.1.0.tgz#4252913ec76ef8f728f2524e2118f3bef9cf23f4"
+ integrity sha512-7CotroY9a8DKsKprEy/a14aCCm8jYVmR7aFy4fpkZM8sdpNJbKkixuNjgM50yCmip2ezc8z4N7k3oe2+rfRJCQ==
+
+tmp@^0.0.33:
+ version "0.0.33"
+ resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9"
+ integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==
+ dependencies:
+ os-tmpdir "~1.0.2"
+
+to-regex-range@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
+ integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
+ dependencies:
+ is-number "^7.0.0"
+
+toidentifier@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35"
+ integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==
+
+totalist@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8"
+ integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==
+
+trim-lines@^3.0.0:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338"
+ integrity sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==
+
+trough@^2.0.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f"
+ integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==
+
+ts-interface-checker@^0.1.9:
+ version "0.1.13"
+ resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699"
+ integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==
+
+tslib@^1.8.1:
+ version "1.14.1"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
+ integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
+
+tslib@^2.0.0, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.6.0:
+ version "2.8.1"
+ resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
+ integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
+
+tsutils@^3.21.0:
+ version "3.21.0"
+ resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
+ integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
+ dependencies:
+ tslib "^1.8.1"
+
+type-check@^0.4.0, type-check@~0.4.0:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
+ integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
+ dependencies:
+ prelude-ls "^1.2.1"
+
+type-fest@^0.20.2:
+ version "0.20.2"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
+ integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
+
+type-fest@^0.21.3:
+ version "0.21.3"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37"
+ integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==
+
+type-fest@^1.0.1:
+ version "1.4.0"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-1.4.0.tgz#e9fb813fe3bf1744ec359d55d1affefa76f14be1"
+ integrity sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==
+
+type-fest@^2.13.0, type-fest@^2.5.0:
+ version "2.19.0"
+ resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-2.19.0.tgz#88068015bb33036a598b952e55e9311a60fd3a9b"
+ integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==
+
+type-is@~1.6.18:
+ version "1.6.18"
+ resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131"
+ integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==
+ dependencies:
+ media-typer "0.3.0"
+ mime-types "~2.1.24"
+
+typedarray-to-buffer@^3.1.5:
+ version "3.1.5"
+ resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080"
+ integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==
+ dependencies:
+ is-typedarray "^1.0.0"
+
+typedoc-plugin-markdown@^4.6.4:
+ version "4.6.4"
+ resolved "https://registry.yarnpkg.com/typedoc-plugin-markdown/-/typedoc-plugin-markdown-4.6.4.tgz#b28ce1a31b93a1e5a31f74b5fcc6f27f0417cbee"
+ integrity sha512-AnbToFS1T1H+n40QbO2+i0wE6L+55rWnj7zxnM1r781+2gmhMF2dB6dzFpaylWLQYkbg4D1Y13sYnne/6qZwdw==
+
+typedoc@^0.28.0:
+ version "0.28.5"
+ resolved "https://registry.yarnpkg.com/typedoc/-/typedoc-0.28.5.tgz#c6e1303fde05b746b3d2079621aff9c81561eccf"
+ integrity sha512-5PzUddaA9FbaarUzIsEc4wNXCiO4Ot3bJNeMF2qKpYlTmM9TTaSHQ7162w756ERCkXER/+o2purRG6YOAv6EMA==
+ dependencies:
+ "@gerrit0/mini-shiki" "^3.2.2"
+ lunr "^2.3.9"
+ markdown-it "^14.1.0"
+ minimatch "^9.0.5"
+ yaml "^2.7.1"
+
+typescript@^5.1:
+ version "5.8.3"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.8.3.tgz#92f8a3e5e3cf497356f4178c34cd65a7f5e8440e"
+ integrity sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==
+
+uc.micro@^2.0.0, uc.micro@^2.1.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/uc.micro/-/uc.micro-2.1.0.tgz#f8d3f7d0ec4c3dea35a7e3c8efa4cb8b45c9e7ee"
+ integrity sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==
+
+undici-types@~6.21.0:
+ version "6.21.0"
+ resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-6.21.0.tgz#691d00af3909be93a7faa13be61b3a5b50ef12cb"
+ integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==
+
+unicode-canonical-property-names-ecmascript@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2"
+ integrity sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==
+
+unicode-emoji-modifier-base@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unicode-emoji-modifier-base/-/unicode-emoji-modifier-base-1.0.0.tgz#dbbd5b54ba30f287e2a8d5a249da6c0cef369459"
+ integrity sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==
+
+unicode-match-property-ecmascript@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz#54fd16e0ecb167cf04cf1f756bdcc92eba7976c3"
+ integrity sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==
+ dependencies:
+ unicode-canonical-property-names-ecmascript "^2.0.0"
+ unicode-property-aliases-ecmascript "^2.0.0"
+
+unicode-match-property-value-ecmascript@^2.1.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz#a0401aee72714598f739b68b104e4fe3a0cb3c71"
+ integrity sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==
+
+unicode-property-aliases-ecmascript@^2.0.0:
+ version "2.1.0"
+ resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd"
+ integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==
+
+unified@^10.0.0:
+ version "10.1.2"
+ resolved "https://registry.yarnpkg.com/unified/-/unified-10.1.2.tgz#b1d64e55dafe1f0b98bb6c719881103ecf6c86df"
+ integrity sha512-pUSWAi/RAnVy1Pif2kAoeWNBa3JVrx0MId2LASj8G+7AiHWoKZNTomq6LG326T68U7/e263X6fTdcXIy7XnF7Q==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ bail "^2.0.0"
+ extend "^3.0.0"
+ is-buffer "^2.0.0"
+ is-plain-obj "^4.0.0"
+ trough "^2.0.0"
+ vfile "^5.0.0"
+
+unified@^11.0.0, unified@^11.0.3, unified@^11.0.4:
+ version "11.0.5"
+ resolved "https://registry.yarnpkg.com/unified/-/unified-11.0.5.tgz#f66677610a5c0a9ee90cab2b8d4d66037026d9e1"
+ integrity sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ bail "^2.0.0"
+ devlop "^1.0.0"
+ extend "^3.0.0"
+ is-plain-obj "^4.0.0"
+ trough "^2.0.0"
+ vfile "^6.0.0"
+
+unique-string@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-3.0.0.tgz#84a1c377aff5fd7a8bc6b55d8244b2bd90d75b9a"
+ integrity sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==
+ dependencies:
+ crypto-random-string "^4.0.0"
+
+unist-util-find-after@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-find-after/-/unist-util-find-after-5.0.0.tgz#3fccc1b086b56f34c8b798e1ff90b5c54468e896"
+ integrity sha512-amQa0Ep2m6hE2g72AugUItjbuM8X8cGQnFoHk0pGfrFeT9GZhzN5SW8nRsiGKK7Aif4CrACPENkA6P/Lw6fHGQ==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ unist-util-is "^6.0.0"
+
+unist-util-generated@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/unist-util-generated/-/unist-util-generated-2.0.1.tgz#e37c50af35d3ed185ac6ceacb6ca0afb28a85cae"
+ integrity sha512-qF72kLmPxAw0oN2fwpWIqbXAVyEqUzDHMsbtPvOudIlUzXYFIeQIuxXQCRCFh22B7cixvU0MG7m3MW8FTq/S+A==
+
+unist-util-is@^5.0.0:
+ version "5.2.1"
+ resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-5.2.1.tgz#b74960e145c18dcb6226bc57933597f5486deae9"
+ integrity sha512-u9njyyfEh43npf1M+yGKDGVPbY/JWEemg5nH05ncKPfi+kBbKBJoTdsogMu33uhytuLlv9y0O7GH7fEdwLdLQw==
+ dependencies:
+ "@types/unist" "^2.0.0"
+
+unist-util-is@^6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424"
+ integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==
+ dependencies:
+ "@types/unist" "^3.0.0"
+
+unist-util-position-from-estree@^2.0.0:
+ version "2.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-position-from-estree/-/unist-util-position-from-estree-2.0.0.tgz#d94da4df596529d1faa3de506202f0c9a23f2200"
+ integrity sha512-KaFVRjoqLyF6YXCbVLNad/eS4+OfPQQn2yOd7zF/h5T/CSL2v8NpN6a5TPvtbXthAGw5nG+PuTtq+DdIZr+cRQ==
+ dependencies:
+ "@types/unist" "^3.0.0"
+
+unist-util-position@^4.0.0:
+ version "4.0.4"
+ resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-4.0.4.tgz#93f6d8c7d6b373d9b825844645877c127455f037"
+ integrity sha512-kUBE91efOWfIVBo8xzh/uZQ7p9ffYRtUbMRZBNFYwf0RK8koUMx6dGUfwylLOKmaT2cs4wSW96QoYUSXAyEtpg==
+ dependencies:
+ "@types/unist" "^2.0.0"
+
+unist-util-position@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-position/-/unist-util-position-5.0.0.tgz#678f20ab5ca1207a97d7ea8a388373c9cf896be4"
+ integrity sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==
+ dependencies:
+ "@types/unist" "^3.0.0"
+
+unist-util-remove-position@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-remove-position/-/unist-util-remove-position-5.0.0.tgz#fea68a25658409c9460408bc6b4991b965b52163"
+ integrity sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ unist-util-visit "^5.0.0"
+
+unist-util-stringify-position@^3.0.0:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-3.0.3.tgz#03ad3348210c2d930772d64b489580c13a7db39d"
+ integrity sha512-k5GzIBZ/QatR8N5X2y+drfpWG8IDBzdnVj6OInRNWm1oXrzydiaAT2OQiA8DPRRZyAKb9b6I2a6PxYklZD0gKg==
+ dependencies:
+ "@types/unist" "^2.0.0"
+
+unist-util-stringify-position@^4.0.0:
+ version "4.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz#449c6e21a880e0855bf5aabadeb3a740314abac2"
+ integrity sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==
+ dependencies:
+ "@types/unist" "^3.0.0"
+
+unist-util-visit-parents@^5.1.1:
+ version "5.1.3"
+ resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-5.1.3.tgz#b4520811b0ca34285633785045df7a8d6776cfeb"
+ integrity sha512-x6+y8g7wWMyQhL1iZfhIPhDAs7Xwbn9nRosDXl7qoPTSCy0yNxnKc+hWokFifWQIDGi154rdUqKvbCa4+1kLhg==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ unist-util-is "^5.0.0"
+
+unist-util-visit-parents@^6.0.0:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815"
+ integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ unist-util-is "^6.0.0"
+
+unist-util-visit@^4.0.0:
+ version "4.1.2"
+ resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-4.1.2.tgz#125a42d1eb876283715a3cb5cceaa531828c72e2"
+ integrity sha512-MSd8OUGISqHdVvfY9TPhyK2VdUrPgxkUtWSuMHF6XAAFuL4LokseigBnZtPnJMu+FbynTkFNnFlyjxpVKujMRg==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ unist-util-is "^5.0.0"
+ unist-util-visit-parents "^5.1.1"
+
+unist-util-visit@^5.0.0:
+ version "5.0.0"
+ resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6"
+ integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ unist-util-is "^6.0.0"
+ unist-util-visit-parents "^6.0.0"
+
+universalify@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d"
+ integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==
+
+unpipe@1.0.0, unpipe@~1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
+ integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==
+
+update-browserslist-db@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420"
+ integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==
+ dependencies:
+ escalade "^3.2.0"
+ picocolors "^1.1.1"
+
+update-notifier@^6.0.2:
+ version "6.0.2"
+ resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-6.0.2.tgz#a6990253dfe6d5a02bd04fbb6a61543f55026b60"
+ integrity sha512-EDxhTEVPZZRLWYcJ4ZXjGFN0oP7qYvbXWzEgRm/Yql4dHX5wDbvh89YHP6PK1lzZJYrMtXUuZZz8XGK+U6U1og==
+ dependencies:
+ boxen "^7.0.0"
+ chalk "^5.0.1"
+ configstore "^6.0.0"
+ has-yarn "^3.0.0"
+ import-lazy "^4.0.0"
+ is-ci "^3.0.1"
+ is-installed-globally "^0.4.0"
+ is-npm "^6.0.0"
+ is-yarn-global "^0.4.0"
+ latest-version "^7.0.0"
+ pupa "^3.1.0"
+ semver "^7.3.7"
+ semver-diff "^4.0.0"
+ xdg-basedir "^5.1.0"
+
+uri-js@^4.2.2:
+ version "4.4.1"
+ resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
+ integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
+ dependencies:
+ punycode "^2.1.0"
+
+url-loader@^4.1.1:
+ version "4.1.1"
+ resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2"
+ integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==
+ dependencies:
+ loader-utils "^2.0.0"
+ mime-types "^2.1.27"
+ schema-utils "^3.0.0"
+
+url@^0.11.4:
+ version "0.11.4"
+ resolved "https://registry.yarnpkg.com/url/-/url-0.11.4.tgz#adca77b3562d56b72746e76b330b7f27b6721f3c"
+ integrity sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==
+ dependencies:
+ punycode "^1.4.1"
+ qs "^6.12.3"
+
+use-callback-ref@^1.3.3:
+ version "1.3.3"
+ resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.3.tgz#98d9fab067075841c5b2c6852090d5d0feabe2bf"
+ integrity sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==
+ dependencies:
+ tslib "^2.0.0"
+
+use-sidecar@^1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.1.3.tgz#10e7fd897d130b896e2c546c63a5e8233d00efdb"
+ integrity sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==
+ dependencies:
+ detect-node-es "^1.1.0"
+ tslib "^2.0.0"
+
+util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
+ integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==
+
+utila@~0.4:
+ version "0.4.0"
+ resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c"
+ integrity sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==
+
+utility-types@^3.10.0:
+ version "3.11.0"
+ resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.11.0.tgz#607c40edb4f258915e901ea7995607fdf319424c"
+ integrity sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==
+
+utils-merge@1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
+ integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==
+
+uuid@^8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
+ integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
+
+uvu@^0.5.0:
+ version "0.5.6"
+ resolved "https://registry.yarnpkg.com/uvu/-/uvu-0.5.6.tgz#2754ca20bcb0bb59b64e9985e84d2e81058502df"
+ integrity sha512-+g8ENReyr8YsOc6fv/NVJs2vFdHBnBNdfE49rshrTzDWOlUx4Gq7KOS2GD8eqhy2j+Ejq29+SbKH8yjkAqXqoA==
+ dependencies:
+ dequal "^2.0.0"
+ diff "^5.0.0"
+ kleur "^4.0.3"
+ sade "^1.7.3"
+
+value-equal@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c"
+ integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==
+
+vary@~1.1.2:
+ version "1.1.2"
+ resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
+ integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==
+
+vfile-location@^5.0.0:
+ version "5.0.3"
+ resolved "https://registry.yarnpkg.com/vfile-location/-/vfile-location-5.0.3.tgz#cb9eacd20f2b6426d19451e0eafa3d0a846225c3"
+ integrity sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ vfile "^6.0.0"
+
+vfile-message@^3.0.0:
+ version "3.1.4"
+ resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-3.1.4.tgz#15a50816ae7d7c2d1fa87090a7f9f96612b59dea"
+ integrity sha512-fa0Z6P8HUrQN4BZaX05SIVXic+7kE3b05PWAtPuYP9QLHsLKYR7/AlLW3NtOrpXRLeawpDLMsVkmk5DG0NXgWw==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ unist-util-stringify-position "^3.0.0"
+
+vfile-message@^4.0.0:
+ version "4.0.2"
+ resolved "https://registry.yarnpkg.com/vfile-message/-/vfile-message-4.0.2.tgz#c883c9f677c72c166362fd635f21fc165a7d1181"
+ integrity sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ unist-util-stringify-position "^4.0.0"
+
+vfile@^5.0.0:
+ version "5.3.7"
+ resolved "https://registry.yarnpkg.com/vfile/-/vfile-5.3.7.tgz#de0677e6683e3380fafc46544cfe603118826ab7"
+ integrity sha512-r7qlzkgErKjobAmyNIkkSpizsFPYiUPuJb5pNW1RB4JcYVZhs4lIbVqk8XPk033CV/1z8ss5pkax8SuhGpcG8g==
+ dependencies:
+ "@types/unist" "^2.0.0"
+ is-buffer "^2.0.0"
+ unist-util-stringify-position "^3.0.0"
+ vfile-message "^3.0.0"
+
+vfile@^6.0.0, vfile@^6.0.1:
+ version "6.0.3"
+ resolved "https://registry.yarnpkg.com/vfile/-/vfile-6.0.3.tgz#3652ab1c496531852bf55a6bac57af981ebc38ab"
+ integrity sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==
+ dependencies:
+ "@types/unist" "^3.0.0"
+ vfile-message "^4.0.0"
+
+watchpack@^2.4.1:
+ version "2.4.4"
+ resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.4.tgz#473bda72f0850453da6425081ea46fc0d7602947"
+ integrity sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA==
+ dependencies:
+ glob-to-regexp "^0.4.1"
+ graceful-fs "^4.1.2"
+
+wbuf@^1.1.0, wbuf@^1.7.3:
+ version "1.7.3"
+ resolved "https://registry.yarnpkg.com/wbuf/-/wbuf-1.7.3.tgz#c1d8d149316d3ea852848895cb6a0bfe887b87df"
+ integrity sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==
+ dependencies:
+ minimalistic-assert "^1.0.0"
+
+web-namespaces@^2.0.0:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/web-namespaces/-/web-namespaces-2.0.1.tgz#1010ff7c650eccb2592cebeeaf9a1b253fd40692"
+ integrity sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==
+
+webpack-bundle-analyzer@^4.10.2:
+ version "4.10.2"
+ resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.10.2.tgz#633af2862c213730be3dbdf40456db171b60d5bd"
+ integrity sha512-vJptkMm9pk5si4Bv922ZbKLV8UTT4zib4FPgXMhgzUny0bfDDkLXAVQs3ly3fS4/TN9ROFtb0NFrm04UXFE/Vw==
+ dependencies:
+ "@discoveryjs/json-ext" "0.5.7"
+ acorn "^8.0.4"
+ acorn-walk "^8.0.0"
+ commander "^7.2.0"
+ debounce "^1.2.1"
+ escape-string-regexp "^4.0.0"
+ gzip-size "^6.0.0"
+ html-escaper "^2.0.2"
+ opener "^1.5.2"
+ picocolors "^1.0.0"
+ sirv "^2.0.3"
+ ws "^7.3.1"
+
+webpack-dev-middleware@^5.3.4:
+ version "5.3.4"
+ resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz#eb7b39281cbce10e104eb2b8bf2b63fce49a3517"
+ integrity sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q==
+ dependencies:
+ colorette "^2.0.10"
+ memfs "^3.4.3"
+ mime-types "^2.1.31"
+ range-parser "^1.2.1"
+ schema-utils "^4.0.0"
+
+webpack-dev-server@^4.15.2:
+ version "4.15.2"
+ resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz#9e0c70a42a012560860adb186986da1248333173"
+ integrity sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g==
+ dependencies:
+ "@types/bonjour" "^3.5.9"
+ "@types/connect-history-api-fallback" "^1.3.5"
+ "@types/express" "^4.17.13"
+ "@types/serve-index" "^1.9.1"
+ "@types/serve-static" "^1.13.10"
+ "@types/sockjs" "^0.3.33"
+ "@types/ws" "^8.5.5"
+ ansi-html-community "^0.0.8"
+ bonjour-service "^1.0.11"
+ chokidar "^3.5.3"
+ colorette "^2.0.10"
+ compression "^1.7.4"
+ connect-history-api-fallback "^2.0.0"
+ default-gateway "^6.0.3"
+ express "^4.17.3"
+ graceful-fs "^4.2.6"
+ html-entities "^2.3.2"
+ http-proxy-middleware "^2.0.3"
+ ipaddr.js "^2.0.1"
+ launch-editor "^2.6.0"
+ open "^8.0.9"
+ p-retry "^4.5.0"
+ rimraf "^3.0.2"
+ schema-utils "^4.0.0"
+ selfsigned "^2.1.1"
+ serve-index "^1.9.1"
+ sockjs "^0.3.24"
+ spdy "^4.0.2"
+ webpack-dev-middleware "^5.3.4"
+ ws "^8.13.0"
+
+webpack-merge@^5.9.0:
+ version "5.10.0"
+ resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.10.0.tgz#a3ad5d773241e9c682803abf628d4cd62b8a4177"
+ integrity sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==
+ dependencies:
+ clone-deep "^4.0.1"
+ flat "^5.0.2"
+ wildcard "^2.0.0"
+
+webpack-merge@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-6.0.1.tgz#50c776868e080574725abc5869bd6e4ef0a16c6a"
+ integrity sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==
+ dependencies:
+ clone-deep "^4.0.1"
+ flat "^5.0.2"
+ wildcard "^2.0.1"
+
+webpack-sources@^3.2.3:
+ version "3.3.0"
+ resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.3.0.tgz#8d3449f1ed3f254e722a529a0a344a37d2d17048"
+ integrity sha512-77R0RDmJfj9dyv5p3bM5pOHa+X8/ZkO9c7kpDstigkC4nIDobadsfSGCwB4bKhMVxqAok8tajaoR8rirM7+VFQ==
+
+webpack@^5.88.1, webpack@^5.95.0:
+ version "5.99.9"
+ resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.99.9.tgz#d7de799ec17d0cce3c83b70744b4aedb537d8247"
+ integrity sha512-brOPwM3JnmOa+7kd3NsmOUOwbDAj8FT9xDsG3IW0MgbN9yZV7Oi/s/+MNQ/EcSMqw7qfoRyXPoeEWT8zLVdVGg==
+ dependencies:
+ "@types/eslint-scope" "^3.7.7"
+ "@types/estree" "^1.0.6"
+ "@types/json-schema" "^7.0.15"
+ "@webassemblyjs/ast" "^1.14.1"
+ "@webassemblyjs/wasm-edit" "^1.14.1"
+ "@webassemblyjs/wasm-parser" "^1.14.1"
+ acorn "^8.14.0"
+ browserslist "^4.24.0"
+ chrome-trace-event "^1.0.2"
+ enhanced-resolve "^5.17.1"
+ es-module-lexer "^1.2.1"
+ eslint-scope "5.1.1"
+ events "^3.2.0"
+ glob-to-regexp "^0.4.1"
+ graceful-fs "^4.2.11"
+ json-parse-even-better-errors "^2.3.1"
+ loader-runner "^4.2.0"
+ mime-types "^2.1.27"
+ neo-async "^2.6.2"
+ schema-utils "^4.3.2"
+ tapable "^2.1.1"
+ terser-webpack-plugin "^5.3.11"
+ watchpack "^2.4.1"
+ webpack-sources "^3.2.3"
+
+webpackbar@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-6.0.1.tgz#5ef57d3bf7ced8b19025477bc7496ea9d502076b"
+ integrity sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q==
+ dependencies:
+ ansi-escapes "^4.3.2"
+ chalk "^4.1.2"
+ consola "^3.2.3"
+ figures "^3.2.0"
+ markdown-table "^2.0.0"
+ pretty-time "^1.1.0"
+ std-env "^3.7.0"
+ wrap-ansi "^7.0.0"
+
+websocket-driver@>=0.5.1, websocket-driver@^0.7.4:
+ version "0.7.4"
+ resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760"
+ integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==
+ dependencies:
+ http-parser-js ">=0.5.1"
+ safe-buffer ">=5.1.0"
+ websocket-extensions ">=0.1.1"
+
+websocket-extensions@>=0.1.1:
+ version "0.1.4"
+ resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42"
+ integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==
+
+which@^1.2.9:
+ version "1.3.1"
+ resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
+ integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
+ dependencies:
+ isexe "^2.0.0"
+
+which@^2.0.1:
+ version "2.0.2"
+ resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
+ integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
+ dependencies:
+ isexe "^2.0.0"
+
+widest-line@^4.0.1:
+ version "4.0.1"
+ resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-4.0.1.tgz#a0fc673aaba1ea6f0a0d35b3c2795c9a9cc2ebf2"
+ integrity sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==
+ dependencies:
+ string-width "^5.0.1"
+
+wildcard@^2.0.0, wildcard@^2.0.1:
+ version "2.0.1"
+ resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67"
+ integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==
+
+word-wrap@^1.2.5:
+ version "1.2.5"
+ resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34"
+ integrity sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==
+
+"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0":
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+ integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
+wrap-ansi@^7.0.0:
+ version "7.0.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43"
+ integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==
+ dependencies:
+ ansi-styles "^4.0.0"
+ string-width "^4.1.0"
+ strip-ansi "^6.0.0"
+
+wrap-ansi@^8.0.1, wrap-ansi@^8.1.0:
+ version "8.1.0"
+ resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214"
+ integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==
+ dependencies:
+ ansi-styles "^6.1.0"
+ string-width "^5.0.1"
+ strip-ansi "^7.0.1"
+
+wrappy@1:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
+ integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
+
+write-file-atomic@^3.0.3:
+ version "3.0.3"
+ resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8"
+ integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==
+ dependencies:
+ imurmurhash "^0.1.4"
+ is-typedarray "^1.0.0"
+ signal-exit "^3.0.2"
+ typedarray-to-buffer "^3.1.5"
+
+ws@^7.3.1:
+ version "7.5.10"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9"
+ integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==
+
+ws@^8.13.0:
+ version "8.18.2"
+ resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.2.tgz#42738b2be57ced85f46154320aabb51ab003705a"
+ integrity sha512-DMricUmwGZUVr++AEAe2uiVM7UoO9MAVZMDu05UQOaUII0lp+zOzLLU4Xqh/JvTqklB1T4uELaaPBKyjE1r4fQ==
+
+xdg-basedir@^5.0.1, xdg-basedir@^5.1.0:
+ version "5.1.0"
+ resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-5.1.0.tgz#1efba19425e73be1bc6f2a6ceb52a3d2c884c0c9"
+ integrity sha512-GCPAHLvrIH13+c0SuacwvRYj2SxJXQ4kaVTT5xgL3kPrz56XxkF21IGhjSE1+W0aw7gpBWRGXLCPnPby6lSpmQ==
+
+xml-js@^1.6.11:
+ version "1.6.11"
+ resolved "https://registry.yarnpkg.com/xml-js/-/xml-js-1.6.11.tgz#927d2f6947f7f1c19a316dd8eea3614e8b18f8e9"
+ integrity sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==
+ dependencies:
+ sax "^1.2.4"
+
+yallist@^3.0.2:
+ version "3.1.1"
+ resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd"
+ integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==
+
+yaml@^1.10.2:
+ version "1.10.2"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
+ integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
+
+yaml@^2.3.4, yaml@^2.7.1:
+ version "2.8.0"
+ resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.8.0.tgz#15f8c9866211bdc2d3781a0890e44d4fa1a5fff6"
+ integrity sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==
+
+yocto-queue@^0.1.0:
+ version "0.1.0"
+ resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
+ integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==
+
+yocto-queue@^1.0.0:
+ version "1.2.1"
+ resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.1.tgz#36d7c4739f775b3cbc28e6136e21aa057adec418"
+ integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==
+
+zwitch@^2.0.0:
+ version "2.0.4"
+ resolved "https://registry.yarnpkg.com/zwitch/-/zwitch-2.0.4.tgz#c827d4b0acb76fc3e685a4c6ec2902d51070e9d7"
+ integrity sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==