Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
dynare
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Frédéric Karamé
dynare
Commits
342e8c75
Verified
Commit
342e8c75
authored
6 years ago
by
Sébastien Villemot
Browse files
Options
Downloads
Patches
Plain Diff
Dynare++ tensor library: further notation fixes in documentation
Also fix extensions of source files.
parent
a612c59f
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
dynare++/tl/tl.tex
+8
-6
8 additions, 6 deletions
dynare++/tl/tl.tex
with
8 additions
and
6 deletions
dynare++/tl/tl.tex
+
8
−
6
View file @
342e8c75
...
...
@@ -108,7 +108,7 @@ tensor with nicer symmetry, here folded $\left[B_{y^3u^4}\right]$.
\item
[USubTensor]
Class representing unfolded full symmetry, row-oriented tensor which
contains a few columns of huge product
$
\prod
_{
m
=
1
}^
l
\left
[
g
_{
c
_
m
}
\right
]
^{
\gamma
_
m
}_{
c
_
m
(
\alpha
)
}$
. This is
$
\prod
_{
m
=
1
}^
l
\left
[
g
_{
s
^{
\vert
c
_
m
\vert
}
}
\right
]
^{
\gamma
_
m
}_{
c
_
m
(
\alpha
)
}$
. This is
needed during the Faa Di Bruno for folded matrices.
\item
[IrregTensor]
Class representing a product of columns of derivatives
...
...
@@ -116,7 +116,9 @@ $\left[z_{y^ku^l}\right]$, where $z=[y^T,v^T,w^T]^T$. Since the first
part of
$
z
$
is
$
y
$
, the derivatives contain many zeros, which are not
stored, hence the tensor's irregularity. The tensor is used when
calculating one step of Faa Di Bruno formula, i.e.
$
\left
[
f
_{
z
^
l
}
\right
]
\sum\prod
_{
m
=
1
}^
l
\left
[
z
_{
c
_
m
}
\right
]
^{
\gamma
_
m
}_{
c
_
m
(
\alpha
)
}$
.
$
\left
[
h
_{
y
^
l
}
\right
]
_{
\gamma
_
1
\ldots\gamma
_
l
}
\left
(
\sum
_{
c
\in
M
_{
l,k
}}
\prod
_{
m
=
1
}^
l
\left
[
g
_{
s
^{
\vert
c
_
m
\vert
}}
\right
]
^{
\gamma
_
m
}_{
c
_
m
(
\alpha
)
}
\right
)
$
.
\item
[FSSparseTensor]
Class representing full symmetry, column-oriented, sparse tensor. It
is able to store elements keyed by the multidimensional index, and
...
...
@@ -207,13 +209,13 @@ preset maximum number parallel threads.
\section
{
Tests
}
A few words to the library's test suite. The suite resides in
directory
{
\tt
tl/testing
}
. There is a file
{
\tt
tests.c
pp
}
which
directory
{
\tt
tl/testing
}
. There is a file
{
\tt
tests.c
c
}
which
contains all tests and
{
\tt
main()
}
function. Also there are files
{
\tt
factory.h
}
and
{
\tt
factory.c
pp
}
implementing random generation
{
\tt
factory.h
h
}
and
{
\tt
factory.c
c
}
implementing random generation
of various objects. The important property of these random objects is
that they are the same for all object's invocations. This is very
important in testing and debugging. Further, one can find files
{
\tt
monoms.h
}
and
{
\tt
monoms.c
pp
}
. See below for their explanation.
monoms.h
h
}
and
{
\tt
monoms.c
c
}
. See below for their explanation.
There are a few types of tests:
\begin{itemize}
...
...
@@ -223,7 +225,7 @@ vice-versa. We test whether their coordinates are as expected.
\item
We test the Faa Di Bruno by comparison of the results of
\texttt
{
FGSContainer::multAndAdd
}
against the results of
\texttt
{
UGSContainer::multAndAdd
}
. The two
implementations are pretty different, so this is a good test.
\item
We use a code in
{
\tt
monoms.h
}
and
{
\tt
monoms.c
pp
}
to generate a
\item
We use a code in
{
\tt
monoms.h
h
}
and
{
\tt
monoms.c
c
}
to generate a
random vector function
$
f
(
x
(
y,u
))
$
along with derivatives of
$
\left
[
f
_
x
\right
]
$
,
$
\left
[
x
_{
y
^
ku
^
l
}
\right
]
$
, and
$
\left
[
f
_{
y
^
ku
^
l
}
\right
]
$
. Then we calculate the resulting derivatives
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment