v4 doc: added macroprocessor slides
git-svn-id: https://www.dynare.org/svn/dynare/dynare_v4@1933 ac1d8469-bf42-47a9-8791-bf33cf982152time-shift
parent
de66e31008
commit
400267ab92
Binary file not shown.
|
@ -0,0 +1,516 @@
|
|||
\documentclass{beamer}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage{amsmath}
|
||||
|
||||
\mode<handout>
|
||||
{
|
||||
\usepackage{pgfpages}
|
||||
\pgfpagesuselayout{4 on 1}[a4paper,border shrink=3mm,landscape]
|
||||
\usetheme{Madrid}
|
||||
\usecolortheme{seagull}
|
||||
}
|
||||
|
||||
\mode<beamer>
|
||||
{
|
||||
\usetheme{Madrid}
|
||||
}
|
||||
|
||||
\title{The Dynare Macro-processor}
|
||||
\subtitle{Dynare Summer School 2008}
|
||||
\author{Sébastien Villemot}
|
||||
\institute[BoFrance - PSE]{Bank of France - Paris School of Economics}
|
||||
\date{July 3, 2008}
|
||||
|
||||
\AtBeginSection[]
|
||||
{
|
||||
\begin{frame}
|
||||
\frametitle{Outline}
|
||||
\tableofcontents[currentsection]
|
||||
\end{frame}
|
||||
}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\begin{frame}
|
||||
\titlepage
|
||||
\end{frame}
|
||||
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Outline}
|
||||
\tableofcontents
|
||||
\end{frame}
|
||||
|
||||
\section{Overview}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Motivation}
|
||||
\begin{itemize}
|
||||
\item The \textbf{Dynare language} (used in MOD files) is well suited for describing economic models
|
||||
\item However, it lacks some useful features, such as:
|
||||
\begin{itemize}
|
||||
\item a loop mechanism for automatically repeating similar blocks of equations (such as in multi-country models)
|
||||
\item an operator for indexed sums or products inside equations
|
||||
\item a mechanism for splitting large MOD-files in smaller modular files
|
||||
\item the possibility of conditionally including some equations or some runtime commands
|
||||
\end{itemize}
|
||||
\item The \textbf{Dynare Macro-language} was specifically designed to address these issues
|
||||
\item Being flexible and fairly general, it can also be helpful in other situations
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Design of the macro-language}
|
||||
\begin{itemize}
|
||||
\item The Dynare Macro-language provides a new set of \textbf{macro-commands} which can be inserted inside MOD-files
|
||||
\item Language features include:
|
||||
\begin{itemize}
|
||||
\item file inclusion
|
||||
\item loops
|
||||
\item conditional inclusion (if/then/else structures)
|
||||
\item expression substitution
|
||||
\end{itemize}
|
||||
% \item Technically, this language is independent of the basic Dynare language, and is processed by a separate component of the Dynare pre-processor, called the \textbf{macro-processor}
|
||||
\item The macro-processor transforms a MOD file with macro-commands into a MOD file without macro-commands (doing text expansions/inclusions) and then feeds it to the Dynare parser
|
||||
\item The key point to understand is that the macro-processor only does \textbf{text substitution} (like the C preprocessor or the PHP language)
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Old Dynare design}
|
||||
\includegraphics[width=0.95\linewidth]{old-design.pdf}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{New Dynare design}
|
||||
\includegraphics[width=0.95\linewidth]{new-design.pdf}
|
||||
\end{frame}
|
||||
|
||||
\section{Syntax}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Macro Directives}
|
||||
\begin{itemize}
|
||||
\item Directives begin with an at-sign followed by a pound sign (\verb+@#+) and occupy exactly one line
|
||||
\item However, a directive can be continued on next line by adding two anti-slashes (\verb+\\+) at the end of the line to be continued
|
||||
\item A directive produces no output, but serves to give instructions to the macro processor
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Inclusion directive}
|
||||
This directive simply includes the content of another file at the place where it is inserted.
|
||||
\begin{block}{Syntax}
|
||||
\verb+@#include "+\textit{filename}\verb+"+
|
||||
\end{block}
|
||||
\begin{block}{Example}
|
||||
\begin{verbatim}
|
||||
@#include "modelcomponent.mod"
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
Note that it is possible to include a file from an included file (nested includes).
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Variables}
|
||||
\begin{itemize}
|
||||
\item The macro processor maintains its own list of variables (distinct of model variables and of Matlab variables)
|
||||
\item Variables can be of four types:
|
||||
\begin{itemize}
|
||||
\item integer
|
||||
\item character string (declared between \textit{double} quotes)
|
||||
\item array of integers
|
||||
\item array of strings
|
||||
\end{itemize}
|
||||
\item No boolean type:
|
||||
\begin{itemize}
|
||||
\item false is represented by integer zero
|
||||
\item true is any non-null integer
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Macro-expressions (1/2)}
|
||||
It is possible to construct macro-expressions, using standard operators.
|
||||
\begin{block}{Operators on integers}
|
||||
\begin{itemize}
|
||||
\item arithmetic operators: \texttt{+,-,*,/}
|
||||
\item comparison operators: \texttt{<,>,<=,>=,==,!=}
|
||||
\item logical operators: \verb+&&,||,!+
|
||||
\item integer ranges: \texttt{1:4} is equivalent to integer array \texttt{[1,2,3,4]}
|
||||
\end{itemize}
|
||||
\end{block}
|
||||
|
||||
\begin{block}{Operators on character strings}
|
||||
\begin{itemize}
|
||||
\item comparison operators: \texttt{==,!=}
|
||||
\item concatenation: \texttt{+}
|
||||
\item extraction of substrings: if \texttt{s} is a string, then one can write \texttt{s[3]} or \texttt{s[4:6]}
|
||||
\end{itemize}
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Macro-expressions (2/2)}
|
||||
\begin{block}{Operators on arrays}
|
||||
\begin{itemize}
|
||||
\item dereferencing: if \texttt{v} is an array, then \texttt{v[2]} is its $2^{\textrm{nd}}$ element
|
||||
\item concatenation: \texttt{+}
|
||||
\item difference \texttt{-}: returns the first operand from which the elements of the second operand have been removed
|
||||
\item extraction of sub-arrays: \textit{e.g.} \texttt{v[4:6]}
|
||||
\end{itemize}
|
||||
\end{block}
|
||||
|
||||
Macro-expressions can be used at two places:
|
||||
\begin{itemize}
|
||||
\item inside macro directives, directly
|
||||
\item in the body of the MOD-file, between an at-sign and curly braces (like \verb+@{expr}+): the macro processor will substitute the expression with its value
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Define directive}
|
||||
|
||||
The value of a macro-variable can be defined with the \verb+@#define+ directive.
|
||||
|
||||
\begin{block}{Syntax}
|
||||
\verb+@#define +\textit{variable\_name}\verb+ = +\textit{expression}
|
||||
\end{block}
|
||||
|
||||
\begin{block}{Examples}
|
||||
\begin{verbatim}
|
||||
@#define x = 5
|
||||
@#define y = "foo"
|
||||
@#define v = [ 1, 2, 4 ]
|
||||
@#define w = [ "foo", "bar" ]
|
||||
@#define z = 3+v[2]
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Expression substitution}
|
||||
\framesubtitle{Dummy example}
|
||||
\begin{block}{Before macro-processing}
|
||||
\begin{verbatim}
|
||||
@#define x = [ "B", "C" ]
|
||||
@#define i = 2
|
||||
|
||||
model;
|
||||
A = @{x[i]};
|
||||
end;
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\begin{block}{After macro-processing}
|
||||
\begin{verbatim}
|
||||
model;
|
||||
A = C;
|
||||
end;
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Loop directive}
|
||||
\begin{block}{Syntax}
|
||||
\verb+@#for +\textit{variable\_name}\verb+ in +\textit{array\_expr} \\
|
||||
\verb+ +\textit{loop\_body} \\
|
||||
\verb+@#endfor+
|
||||
\end{block}
|
||||
\begin{block}{Example: before macro-processing}
|
||||
\small
|
||||
\begin{verbatim}
|
||||
model;
|
||||
@#for country in [ "home", "foreign" ]
|
||||
GDP_@{country} = K_@{country}^a * L_@{country}^(1-a)
|
||||
@#endfor
|
||||
end;
|
||||
\end{verbatim}
|
||||
\normalsize
|
||||
\end{block}
|
||||
|
||||
\begin{block}{Example: after macro-processing}
|
||||
\small
|
||||
\begin{verbatim}
|
||||
model;
|
||||
GDP_home = K_home^a * L_home^(1-a);
|
||||
GDP_foreign = K_foreign^a * L_foreign^(1-a);
|
||||
end;
|
||||
\end{verbatim}
|
||||
\normalsize
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Conditional inclusion directive}
|
||||
|
||||
\begin{columns}[T]
|
||||
\column{0.47\linewidth}
|
||||
\begin{block}{Syntax 1}
|
||||
\verb+@#if +\textit{integer\_expr} \\
|
||||
\verb+ +\textit{body included if expr != 0} \\
|
||||
\verb+@#endif+
|
||||
\end{block}
|
||||
|
||||
\column{0.47\linewidth}
|
||||
\begin{block}{Syntax 2}
|
||||
\verb+@#if +\textit{integer\_expr} \\
|
||||
\verb+ +\textit{body included if expr != 0} \\
|
||||
\verb+@#else+ \\
|
||||
\verb+ +\textit{body included if expr == 0} \\
|
||||
\verb+@#endif+
|
||||
\end{block}
|
||||
\end{columns}
|
||||
|
||||
\begin{block}{Example: alternative monetary policy rules}
|
||||
\scriptsize
|
||||
\begin{verbatim}
|
||||
@#define linear_mon_pol = ...
|
||||
...
|
||||
model;
|
||||
@#if linear_mon_pol
|
||||
i = w*i(-1) + (1-w)*i_ss + w2*(pie-piestar)
|
||||
@#else
|
||||
i = i(-1)^w * i_ss^(1-w) * (pie/piestar)^w2
|
||||
@#endif
|
||||
...
|
||||
end;
|
||||
\end{verbatim}
|
||||
\scriptsize
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Echo and error directives}
|
||||
|
||||
\begin{itemize}
|
||||
\item The echo directive will simply display a message on standard output
|
||||
\item The error directive will display the message and make Dynare stop (only makes sense inside a conditional inclusion directive)
|
||||
\end{itemize}
|
||||
|
||||
\begin{block}{Syntax}
|
||||
\verb+@#echo +\textit{string\_expr} \\
|
||||
\verb+@#error +\textit{string\_expr}
|
||||
\end{block}
|
||||
|
||||
\begin{block}{Examples}
|
||||
\begin{verbatim}
|
||||
@#echo "Information message."
|
||||
@#error "Error message!"
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Saving the macro-expanded MOD file}
|
||||
\begin{itemize}
|
||||
\item For \textbf{debugging or learning} purposes, it is possible to save the output of the macro-processor
|
||||
\item This output is a valid MOD-file, obtained after processing the macro-commands of the original MOD-file
|
||||
% \item Useful to understand how the macro-processor works
|
||||
\item Just add the \texttt{savemacro} option on the Dynare command line (after the name of your MOD-file)
|
||||
\item If MOD file is \texttt{filename.mod}, then the macro-expanded version will be saved in \texttt{filename-macroexp.mod}
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
% \begin{frame}
|
||||
% \frametitle{Note on error messages}
|
||||
% \end{frame}
|
||||
|
||||
\section{Typical usages}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Modularization}
|
||||
\begin{itemize}
|
||||
\item The \verb+@#include+ directive can be used to split MOD-files into several modular components
|
||||
\item Example setup:
|
||||
\begin{itemize}
|
||||
\item \texttt{modeldesc.mod}: contains variable declarations, model equations and shocks declarations
|
||||
\item \texttt{simul.mod}: includes \texttt{modeldesc.mod}, calibrates parameters and runs stochastic simulations
|
||||
\item \texttt{estim.mod}: includes \texttt{modeldesc.mod}, declares priors on parameters and runs bayesian estimation
|
||||
\item Dynare can be called on \texttt{simul.mod} and \texttt{estim.mod} (but it makes no sense to run it on \texttt{modeldesc.mod})
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Indexed sums or products}
|
||||
\framesubtitle{Example: moving average}
|
||||
\begin{columns}[T]
|
||||
\column{0.47\linewidth}
|
||||
\begin{block}{Before macro-processing}
|
||||
\begin{verbatim}
|
||||
@#define window = 2
|
||||
|
||||
var x MA_x;
|
||||
...
|
||||
model;
|
||||
...
|
||||
MA_x = 1/@{2*window+1}*(
|
||||
@#for i in -window:window
|
||||
+x(@{i})
|
||||
@#endfor
|
||||
);
|
||||
...
|
||||
end;
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\column{0.47\linewidth}
|
||||
\begin{block}{After macro-processing}
|
||||
\begin{verbatim}
|
||||
var x MA_x;
|
||||
...
|
||||
model;
|
||||
...
|
||||
MA_x = 1/5*(
|
||||
+x(-2)
|
||||
+x(-1)
|
||||
+x(0)
|
||||
+x(1)
|
||||
+x(2)
|
||||
);
|
||||
...
|
||||
end;
|
||||
\end{verbatim}
|
||||
\end{block}
|
||||
\end{columns}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Multi-country models}
|
||||
\framesubtitle{MOD-file skeleton example}
|
||||
\scriptsize
|
||||
\begin{verbatim}
|
||||
@#define countries = [ "US", "EU", "AS", "JP", "RC" ]
|
||||
@#define nth_co = "US"
|
||||
|
||||
@#for co in countries
|
||||
var Y_@{co} K_@{co} L_@{co} i_@{co} E_@{co} ...;
|
||||
parameters a_@{co} ...;
|
||||
varexo ...;
|
||||
@#endfor
|
||||
|
||||
model;
|
||||
@#for co in countries
|
||||
Y_@{co} = K_@{co}^a_@{co} * L_@{co}^(1-a_@{co});
|
||||
...
|
||||
@# if co != nth_co
|
||||
(1+i_@{co}) = (1+i_@{nth_co}) * E_@{co}(+1) / E_@{co}; // UIP relation
|
||||
@# else
|
||||
E_@{co} = 1;
|
||||
@# endif
|
||||
@#endfor
|
||||
end;
|
||||
\end{verbatim}
|
||||
\normalsize
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Endogeneizing parameters (1/3)}
|
||||
\begin{itemize}
|
||||
\item When doing the steady-state calibration of the model, it may be useful to consider a parameter as an endogenous (and vice-versa)
|
||||
\item Example:
|
||||
\begin{gather*}
|
||||
y = \left(\alpha^{\frac{1}{\xi}} \ell^{1-\frac{1}{\xi}} + (1-\alpha)^{\frac{1}{\xi}}k^{1-\frac{1}{\xi}}\right)^{\frac{\xi}{\xi - 1}} \\
|
||||
lab\_rat = \frac{w \ell}{p y}
|
||||
\end{gather*}
|
||||
\item During simulation or estimation, the share parameter $\alpha$ is a parameter, and $lab\_rat$ is an endogenous variable
|
||||
\item But for steady-state calibration, we may want to impose an economically relevant value for $lab\_rat$, and deduce the implied value for $\alpha$ \\
|
||||
$\Rightarrow$ during calibration, $\alpha$ is endogenous and $lab\_rat$ is a parameter
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Endogeneizing parameters (2/3)}
|
||||
\begin{itemize}
|
||||
\item Create \texttt{modeqs.mod} with variable declarations and model equations
|
||||
\item For declaration of \texttt{alpha} and \texttt{lab\_rat}:
|
||||
\footnotesize
|
||||
\begin{verbatim}
|
||||
@#if steady
|
||||
var alpha;
|
||||
parameter lab_rat;
|
||||
@#else
|
||||
parameter alpha;
|
||||
var lab_rat;
|
||||
@#endif
|
||||
\end{verbatim}
|
||||
\normalsize
|
||||
\item Create \texttt{steady.mod}:
|
||||
\begin{itemize}
|
||||
\item begins with \verb+@#define steady = 1+
|
||||
\item then with \verb+@#include "modeqs.mod"+
|
||||
\item initializes parameters (including \texttt{lab\_rat}, excluding \texttt{alpha})
|
||||
\item computes steady state (using hints for endogenous, including \texttt{alpha})
|
||||
\item saves values of parameters and endogenous at steady-state to a file
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Endogeneizing parameters (3/3)}
|
||||
\begin{itemize}
|
||||
\item Create \texttt{simul.mod}:
|
||||
\begin{itemize}
|
||||
\item begins with \verb+@#define steady = 0+
|
||||
\item then with \verb+@#include "modeqs.mod"+
|
||||
\item loads values of parameters and endogenous at steady-state from file
|
||||
\item computes simulations
|
||||
\end{itemize}
|
||||
\item \textit{Note:} functions for saving and loading parameters and endogenous are not yet in Dynare distribution (they should be soon, ask me if you're interested)
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
% \begin{frame}
|
||||
% \frametitle{Matlab loops vs macro-processor loops}
|
||||
% \end{frame}
|
||||
|
||||
\section{Conclusion}
|
||||
|
||||
\begin{frame}[fragile=singleslide]
|
||||
\frametitle{Possible future developments}
|
||||
\begin{itemize}
|
||||
\item Find a nicer syntax for indexed sums/products
|
||||
\item Implement other control structures: \texttt{elsif}, \texttt{switch/case}, \texttt{while/until} loops
|
||||
\item Implement macro-functions (or templates), with a syntax like:
|
||||
\small
|
||||
\verb+@define QUADRATIC_COST(x, x_ss, phi) = phi/2*(x/x_ss-1)^2+
|
||||
\normalsize
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Dynare for Octave (1/2)}
|
||||
\begin{itemize}
|
||||
\item GNU Octave (or simply Octave) is a high-level language, primarily intended for numerical computations
|
||||
\item Basically, it is a free clone of Matlab
|
||||
\item Runs on MS Windows, Linux and MacOS
|
||||
\item Advantages:
|
||||
\begin{itemize}
|
||||
\item mostly compatible with Matlab: same syntax, almost same set of functions
|
||||
\item free software, no license needed
|
||||
\item source code available
|
||||
\item software under constant development
|
||||
\item dynamic and responsive community of developers
|
||||
\end{itemize}
|
||||
\item Inconvenients:
|
||||
\begin{itemize}
|
||||
\item slower than Matlab
|
||||
\item less user-friendly (no fancy graphical user interface)
|
||||
\end{itemize}
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\begin{frame}
|
||||
\frametitle{Dynare for Octave (2/2)}
|
||||
\begin{itemize}
|
||||
\item Small adjustments have been made in recent versions of Dynare to make it run on Octave
|
||||
\item This makes Dynare 100\% free software
|
||||
\item If you're interested in using Dynare for Octave, go to: \\
|
||||
\url{http://www.cepremap.cnrs.fr/DynareWiki/DynareOctave}
|
||||
\item Adapting Dynare for Octave is still a work in progress \\
|
||||
$\Rightarrow$ feedback is welcome
|
||||
\end{itemize}
|
||||
\end{frame}
|
||||
|
||||
\end{document}
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,346 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="862.10712"
|
||||
height="382.82141"
|
||||
id="svg5540"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.45.1"
|
||||
version="1.0"
|
||||
sodipodi:docbase="K:\Commun\Villemot\Macroprocessor"
|
||||
sodipodi:docname="new-design.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape"
|
||||
inkscape:export-filename="K:\Commun\Villemot\Macroprocessor\new-design.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
<defs
|
||||
id="defs5542">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path3243"
|
||||
d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.8,0,0,-0.8,-10,0)" />
|
||||
</marker>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7"
|
||||
inkscape:cx="488.94636"
|
||||
inkscape:cy="380.52134"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
width="1052.3622px"
|
||||
height="744.09448px"
|
||||
inkscape:window-width="1024"
|
||||
inkscape:window-height="712"
|
||||
inkscape:window-x="-4"
|
||||
inkscape:window-y="-4" />
|
||||
<metadata
|
||||
id="metadata5545">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-78.642861,-39.058769)">
|
||||
<g
|
||||
id="g4418"
|
||||
transform="translate(467.50002,289.64286)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4420"
|
||||
y="56.6479"
|
||||
x="361.42862"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan4422"
|
||||
y="56.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">Matlab files</tspan><tspan
|
||||
id="tspan4424"
|
||||
y="81.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">representing</tspan><tspan
|
||||
id="tspan4426"
|
||||
y="106.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">the model</tspan></text>
|
||||
<path
|
||||
transform="matrix(1.0528522,0,0,1.0682674,-22.862484,-9.0197689)"
|
||||
d="M 431.42857 79.808769 A 66.428574 51.42857 0 1 1 298.57143,79.808769 A 66.428574 51.42857 0 1 1 431.42857 79.808769 z"
|
||||
sodipodi:ry="51.42857"
|
||||
sodipodi:rx="66.428574"
|
||||
sodipodi:cy="79.808769"
|
||||
sodipodi:cx="365"
|
||||
id="path4428"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g4430"
|
||||
transform="translate(-555.35711,282.49999)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4432"
|
||||
y="65.21933"
|
||||
x="691.42859"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="65.21933"
|
||||
x="691.42859"
|
||||
id="tspan4434"
|
||||
sodipodi:role="line">Output:</tspan><tspan
|
||||
id="tspan4436"
|
||||
y="90.21933"
|
||||
x="691.42859"
|
||||
sodipodi:role="line">Results,</tspan><tspan
|
||||
id="tspan4438"
|
||||
y="115.21933"
|
||||
x="691.42859"
|
||||
sodipodi:role="line">Graphics</tspan></text>
|
||||
<path
|
||||
d="M 747.14283 85.523056 A 54.285713 51.42857 0 1 1 638.5714,85.523056 A 54.285713 51.42857 0 1 1 747.14283 85.523056 z"
|
||||
sodipodi:ry="51.42857"
|
||||
sodipodi:rx="54.285713"
|
||||
sodipodi:cy="85.523056"
|
||||
sodipodi:cx="692.85712"
|
||||
id="path4440"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g4452"
|
||||
transform="translate(-25.357118,291.07143)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4454"
|
||||
y="68.076462"
|
||||
x="525.71436"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="68.076462"
|
||||
x="525.71436"
|
||||
id="tspan4456"
|
||||
sodipodi:role="line">Dynare</tspan><tspan
|
||||
id="tspan4458"
|
||||
y="93.076462"
|
||||
x="525.71436"
|
||||
sodipodi:role="line">Matlab routines</tspan></text>
|
||||
<rect
|
||||
y="36.951626"
|
||||
x="448.57144"
|
||||
height="75.714287"
|
||||
width="152.85715"
|
||||
id="rect4460"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
</g>
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 757.92859,365.8802 L 577.07147,365.8802"
|
||||
id="path4466"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#g4452"
|
||||
inkscape:connection-start="#g4418" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 422.21432,366.33835 L 192.78572,367.69591"
|
||||
id="path4468"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#g4452"
|
||||
inkscape:connection-end="#g4430" />
|
||||
<g
|
||||
id="g6668">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4470"
|
||||
y="117.30877"
|
||||
x="143.92857"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="117.30877"
|
||||
x="143.92857"
|
||||
id="tspan4472"
|
||||
sodipodi:role="line">MOD file</tspan><tspan
|
||||
id="tspan4474"
|
||||
y="142.30877"
|
||||
x="143.92857"
|
||||
sodipodi:role="line">with macro</tspan><tspan
|
||||
id="tspan4482"
|
||||
y="167.30877"
|
||||
x="143.92857"
|
||||
sodipodi:role="line">commands</tspan></text>
|
||||
<path
|
||||
transform="matrix(1.0725676,0,0,0.999374,99.5973,-252.25554)"
|
||||
d="M 98.57143 390.52304 A 58.57143 56.42857 0 1 1 -18.57143,390.52304 A 58.57143 56.42857 0 1 1 98.57143 390.52304 z"
|
||||
sodipodi:ry="56.42857"
|
||||
sodipodi:rx="58.57143"
|
||||
sodipodi:cy="390.52304"
|
||||
sodipodi:cx="40"
|
||||
id="path4504"
|
||||
style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g5516"
|
||||
transform="translate(316.78572,-245.35715)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4476"
|
||||
y="368.38019"
|
||||
x="307.14285"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="368.38019"
|
||||
x="307.14285"
|
||||
id="tspan4478"
|
||||
sodipodi:role="line">MOD file</tspan><tspan
|
||||
id="tspan4480"
|
||||
y="393.38019"
|
||||
x="307.14285"
|
||||
sodipodi:role="line">without macro</tspan><tspan
|
||||
id="tspan4484"
|
||||
y="418.38019"
|
||||
x="307.14285"
|
||||
sodipodi:role="line">commands</tspan></text>
|
||||
<path
|
||||
transform="translate(-8.5714286,-4.2857143)"
|
||||
d="M 389.99999 391.95163 A 72.85714 65 0 1 1 244.28571,391.95163 A 72.85714 65 0 1 1 389.99999 391.95163 z"
|
||||
sodipodi:ry="65"
|
||||
sodipodi:rx="72.85714"
|
||||
sodipodi:cy="391.95163"
|
||||
sodipodi:cx="317.14285"
|
||||
id="path5475"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g5510"
|
||||
transform="translate(243.92858,-236.78572)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4486"
|
||||
y="372.66592"
|
||||
x="165.71428"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan4490"
|
||||
y="372.66592"
|
||||
x="165.71428"
|
||||
sodipodi:role="line">Macro</tspan><tspan
|
||||
id="tspan4492"
|
||||
y="397.66592"
|
||||
x="165.71428"
|
||||
sodipodi:role="line">Processor</tspan></text>
|
||||
<rect
|
||||
y="339.80878"
|
||||
x="110"
|
||||
height="72.85714"
|
||||
width="115.71429"
|
||||
id="rect5477"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
</g>
|
||||
<g
|
||||
id="g5523"
|
||||
transform="translate(372.5,-249.64286)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text4494"
|
||||
y="368.38019"
|
||||
x="455.71426"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="368.38019"
|
||||
x="455.71426"
|
||||
id="tspan4496"
|
||||
sodipodi:role="line">Parser,</tspan><tspan
|
||||
id="tspan4498"
|
||||
y="393.38019"
|
||||
x="455.71426"
|
||||
sodipodi:role="line">Analytical</tspan><tspan
|
||||
id="tspan4500"
|
||||
y="418.38019"
|
||||
x="455.71426"
|
||||
sodipodi:role="line">derivator...</tspan></text>
|
||||
<rect
|
||||
y="339.80878"
|
||||
x="395.71429"
|
||||
height="94.285713"
|
||||
width="120"
|
||||
id="rect5479"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
</g>
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 206.35715,138.3618 L 352.92858,139.13938"
|
||||
id="path5532"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#g5510"
|
||||
inkscape:connection-start="#g6668" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 470.64287,140.23901 L 551.5,141.32071"
|
||||
id="path5534"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#g5510"
|
||||
inkscape:connection-end="#g5516" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 699.21428,140.48835 L 767.21429,138.81229"
|
||||
id="path5536"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#g5516"
|
||||
inkscape:connection-end="#g5523" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 828.36474,185.45163 L 828.75359,309.8802"
|
||||
id="path5538"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#g4418"
|
||||
inkscape:connection-start="#g5523" />
|
||||
<rect
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:1.5, 4.5;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
id="rect5596"
|
||||
width="634.28571"
|
||||
height="201.42857"
|
||||
x="305.71429"
|
||||
y="39.808769" />
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
x="404.28574"
|
||||
y="232.66591"
|
||||
id="text6567"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan6569"
|
||||
x="404.28574"
|
||||
y="232.66591">Dynare preprocessor</tspan></text>
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 17 KiB |
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,267 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://web.resource.org/cc/"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="657.71429"
|
||||
height="312"
|
||||
id="svg2"
|
||||
sodipodi:version="0.32"
|
||||
inkscape:version="0.45.1"
|
||||
version="1.0"
|
||||
sodipodi:docbase="K:\Commun\Villemot\Macroprocessor"
|
||||
sodipodi:docname="old-design.svg"
|
||||
inkscape:output_extension="org.inkscape.output.svg.inkscape"
|
||||
inkscape:export-filename="K:\Commun\Villemot\Macroprocessor\old-design.png"
|
||||
inkscape:export-xdpi="90"
|
||||
inkscape:export-ydpi="90">
|
||||
<defs
|
||||
id="defs4">
|
||||
<marker
|
||||
inkscape:stockid="Arrow1Lend"
|
||||
orient="auto"
|
||||
refY="0"
|
||||
refX="0"
|
||||
id="Arrow1Lend"
|
||||
style="overflow:visible">
|
||||
<path
|
||||
id="path3243"
|
||||
d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z "
|
||||
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
|
||||
transform="matrix(-0.8,0,0,-0.8,-10,0)" />
|
||||
</marker>
|
||||
</defs>
|
||||
<sodipodi:namedview
|
||||
id="base"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:zoom="0.7"
|
||||
inkscape:cx="555.04474"
|
||||
inkscape:cy="220.62111"
|
||||
inkscape:document-units="px"
|
||||
inkscape:current-layer="layer1"
|
||||
width="1052.3622px"
|
||||
height="744.09448px"
|
||||
inkscape:window-width="1024"
|
||||
inkscape:window-height="712"
|
||||
inkscape:window-x="-4"
|
||||
inkscape:window-y="-4" />
|
||||
<metadata
|
||||
id="metadata7">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(-138.99998,-35.951625)">
|
||||
<text
|
||||
xml:space="preserve"
|
||||
style="font-size:48px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
x="60"
|
||||
y="72.362183"
|
||||
id="text2160"
|
||||
sodipodi:linespacing="125%"><tspan
|
||||
sodipodi:role="line"
|
||||
id="tspan2162"
|
||||
x="60"
|
||||
y="72.362183"></tspan></text>
|
||||
<g
|
||||
id="g6679"
|
||||
transform="translate(-52.857143,-31.428572)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text2164"
|
||||
y="125.21933"
|
||||
x="251.42856"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="125.21933"
|
||||
x="251.42856"
|
||||
id="tspan2166"
|
||||
sodipodi:role="line">MOD</tspan><tspan
|
||||
id="tspan2168"
|
||||
y="150.21933"
|
||||
x="251.42856"
|
||||
sodipodi:role="line">File</tspan></text>
|
||||
<path
|
||||
transform="matrix(1.0924144,0,0,1.1873521,180.35562,37.324342)"
|
||||
d="M 102.85714 79.094482 A 37.142857 33.57143 0 1 1 28.57143,79.094482 A 37.142857 33.57143 0 1 1 102.85714 79.094482 z"
|
||||
sodipodi:ry="33.57143"
|
||||
sodipodi:rx="37.142857"
|
||||
sodipodi:cy="79.094482"
|
||||
sodipodi:cx="65.714287"
|
||||
id="path2216"
|
||||
style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g2239"
|
||||
transform="translate(358.57143,25.714291)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text2178"
|
||||
y="56.6479"
|
||||
x="361.42862"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan2182"
|
||||
y="56.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">Matlab files</tspan><tspan
|
||||
id="tspan2188"
|
||||
y="81.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">representing</tspan><tspan
|
||||
id="tspan2212"
|
||||
y="106.6479"
|
||||
x="361.42862"
|
||||
sodipodi:role="line">the model</tspan></text>
|
||||
<path
|
||||
transform="matrix(1.0528522,0,0,1.0682674,-22.862484,-9.0197689)"
|
||||
d="M 431.42857 79.808769 A 66.428574 51.42857 0 1 1 298.57143,79.808769 A 66.428574 51.42857 0 1 1 431.42857 79.808769 z"
|
||||
sodipodi:ry="51.42857"
|
||||
sodipodi:rx="66.428574"
|
||||
sodipodi:cy="79.808769"
|
||||
sodipodi:cx="365"
|
||||
id="path2218"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g2226"
|
||||
transform="translate(-498.57142,210)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text2200"
|
||||
y="65.21933"
|
||||
x="691.42859"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="65.21933"
|
||||
x="691.42859"
|
||||
id="tspan2202"
|
||||
sodipodi:role="line">Output:</tspan><tspan
|
||||
id="tspan2206"
|
||||
y="90.21933"
|
||||
x="691.42859"
|
||||
sodipodi:role="line">Results,</tspan><tspan
|
||||
id="tspan2210"
|
||||
y="115.21933"
|
||||
x="691.42859"
|
||||
sodipodi:role="line">Graphics</tspan></text>
|
||||
<path
|
||||
d="M 747.14283 85.523056 A 54.285713 51.42857 0 1 1 638.5714,85.523056 A 54.285713 51.42857 0 1 1 747.14283 85.523056 z"
|
||||
sodipodi:ry="51.42857"
|
||||
sodipodi:rx="54.285713"
|
||||
sodipodi:cy="85.523056"
|
||||
sodipodi:cx="692.85712"
|
||||
id="path2220"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
sodipodi:type="arc" />
|
||||
</g>
|
||||
<g
|
||||
id="g5495"
|
||||
transform="translate(257.14285,-64.285714)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text2170"
|
||||
y="132.36218"
|
||||
x="218.57144"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
id="tspan2174"
|
||||
y="132.36218"
|
||||
x="218.57144"
|
||||
sodipodi:role="line">Dynare</tspan><tspan
|
||||
id="tspan2192"
|
||||
y="157.36218"
|
||||
x="218.57144"
|
||||
sodipodi:role="line">Preprocessor:</tspan><tspan
|
||||
y="182.36218"
|
||||
x="218.57144"
|
||||
sodipodi:role="line"
|
||||
id="tspan5483">parser, analytical</tspan><tspan
|
||||
y="207.36218"
|
||||
x="218.57144"
|
||||
sodipodi:role="line"
|
||||
id="tspan5487">derivator</tspan></text>
|
||||
<rect
|
||||
y="101.57445"
|
||||
x="137.47997"
|
||||
height="126.46864"
|
||||
width="163.6115"
|
||||
id="rect2222"
|
||||
style="color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.67421651;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
</g>
|
||||
<g
|
||||
id="g2233"
|
||||
transform="translate(194.28571,221.42857)">
|
||||
<text
|
||||
sodipodi:linespacing="125%"
|
||||
id="text2194"
|
||||
y="68.076462"
|
||||
x="525.71436"
|
||||
style="font-size:20px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Arial"
|
||||
xml:space="preserve"><tspan
|
||||
y="68.076462"
|
||||
x="525.71436"
|
||||
id="tspan2196"
|
||||
sodipodi:role="line">Dynare</tspan><tspan
|
||||
id="tspan2198"
|
||||
y="93.076462"
|
||||
x="525.71436"
|
||||
sodipodi:role="line">Matlab routines</tspan></text>
|
||||
<rect
|
||||
y="36.951626"
|
||||
x="448.57144"
|
||||
height="75.714287"
|
||||
width="152.85715"
|
||||
id="rect2224"
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
|
||||
</g>
|
||||
<path
|
||||
style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
|
||||
d="M 241,99.916281 L 393.28571,100.30877"
|
||||
id="path2258"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#g5495"
|
||||
inkscape:connection-start="#g6679" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 559.57142,101.0107 L 649,101.53521"
|
||||
id="path2260"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-end="#g2239"
|
||||
inkscape:connection-start="#g5495" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 719.79412,157.95162 L 719.42858,257.3802"
|
||||
id="path2262"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#g2239"
|
||||
inkscape:connection-end="#g2233" />
|
||||
<path
|
||||
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.5;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:url(#Arrow1Lend);stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
|
||||
d="M 641.85715,296.13199 L 249.57141,295.59827"
|
||||
id="path2264"
|
||||
inkscape:connector-type="polyline"
|
||||
inkscape:connection-start="#g2233"
|
||||
inkscape:connection-end="#g2226" />
|
||||
</g>
|
||||
</svg>
|
After Width: | Height: | Size: 13 KiB |
Loading…
Reference in New Issue