arma-thesis

git clone https://git.igankevich.com/arma-thesis.git
Log | Files | Refs | LICENSE

commit cd02848d183fa4ae0788183dd3b3df64deb075a0
parent e06634dcfe24f90f628dd1e6d600b9f43ba93db5
Author: Ivan Gankevich <igankevich@ya.ru>
Date:   Wed, 20 Jun 2018 17:16:26 +0300

Finish the first section.

Diffstat:
R/nonlinear.R | 14+++++++++++---
arma-slides.org | 116++++++++++++++++++++++++++++++++++++-------------------------------------------
2 files changed, 64 insertions(+), 66 deletions(-)

diff --git a/R/nonlinear.R b/R/nonlinear.R @@ -29,15 +29,23 @@ arma.plot_nonlinear <- function (dirname, args) { aspect_ratio <- 1 plot.new() plot.window(xlim=rx, ylim=rz, asp=1) - axis(1) - axis(2) + axis_args <- list() + if ("axis" %in% names(args)) { + axis_args <- args$axis + } + do.call(axis, c(list(side=1), axis_args)) + do.call(axis, c(list(side=2), axis_args)) lines(zeta_none$x, zeta_none$z, lty='solid') lines(zeta_gcs$x, zeta_gcs$z, lty='dashed') lines(zeta_sn$x, zeta_sn$z, lty='dotted') title(args$title, xlab="x", ylab="z") box() + legend_x <- "bottom" + if ("legend" %in% names(args)) { + legend_x <- args$legend + } legend( - "bottom", + legend_x, legend=paste(args$graphs), lty=paste(args$linetypes), horiz=TRUE diff --git a/arma-slides.org b/arma-slides.org @@ -56,10 +56,12 @@ ** Постановка задачи -Разработать /без предположений линейной теории волн/ +Разработать - трехмерную имитационную модель морского волнения, - метод вычисления поля давлений под взволнованной поверхностью, -- программный комплекс для систем с общей и распределенной памятью. +- программный комплекс для систем с общей и распределенной памятью, +которые являются /альтернативами/ аналогам, разработанным в рамках +линейной теории волн. * Трехмерная модель АРСС @@ -446,70 +448,58 @@ arma.qqplot_grid_adj( #+RESULTS: [[file:build/propagating-wave-qqplots-slides-ru.pdf]] -** Нелинейное волнение +** Моделирование асимметричности :noexport: -#+begin_export latex - \flushleft% - \vskip\baselineskip - \begin{minipage}{0.4\textwidth} - \begin{block}{\small\centering Преобразование аппликат} - \begin{equation} - \label{eq:distribution} - \only<1>{\Phi(\zeta_k)} - \only<2->{\rectemph{oldDist}{\Phi(\zeta_k)}} - = - \only<1>{F(\zeta^{*}_k)} - \only<2->{\rectemph{newDist}{F(\zeta^{*}_k)}} - \end{equation} - \vspace{-\baselineskip} - \end{block} - \end{minipage} - \vskip2\baselineskip - \begin{block}{\small Преобразование АКФ} - \begin{equation*} - \only<1>{K_{\zeta^{*}}} - \only<2->{\rectemph{newACF}{K_{\zeta^{*}}}} - \left( \vec u \right) - = - \sum\limits_{m=0}^{\infty} - C_m^2 \frac{K_\zeta^m \left( \vec u \right)}{m!} - \quad - C_m = \frac{1}{\sqrt{2\pi}} - \int\limits_0^\infty - \only<1>{\zeta^{*}(y)} - \only<2->{\rectemph{solutionDist}{\zeta^{*}(y)}} - \, - \only<1>{H_m(y)} - \only<2->{\rectemph{hermitePoly}{H_m(y)}} - \exp\!\left[ -\frac{y^2}{2} \right] - \end{equation*} - \vspace{-\baselineskip} - \end{block} - \only<2->{% - \begin{tikzpicture}[remember picture,overlay] - % first block - \node[fill=none,baseline,anchor= west,yshift=0cm] (oldDistLabel) at (current page.west) {\small гауссов закон распределения}; - \path[->,thick] (oldDistLabel.north) edge [bend left=20,out=0](oldDist.south); - - % second block - \node[fill=none,anchor=south east,yshift=0.1cm] (hermitePolyLabel) at (current page.south east) {\small полином Эрмита}; - \path[->,thick] (hermitePolyLabel.north) edge [bend left=20,out=0](hermitePoly.south); - \node[fill=none,anchor=south,yshift=0.1cm] (solutionDistLabel) at (current page.south) {\small решение ур.~\ref{eq:distribution}}; - \path[->,thick] (solutionDistLabel.north) edge [bend right=20,out=0](solutionDist.south); - \node[fill=none,baseline,anchor=south west,xshift=0.5cm,yshift=0.1cm] (newACFLabel) at (current page.south west) {\small\hspace{-0.5cm}новая АКФ}; - \path[->,thick] (newACFLabel.north west) edge [bend right=20,out=0](newACF.south); - - % picture - \node[fill=spbuWhite2,anchor=north east,xshift=-0.8cm,yshift=-1.2cm] - (skewNormal2Graph) at (current page.north east) {% - \includegraphics[scale=0.4]{skew-normal-2} - }; - \path[->,thick] (skewNormal2Graph.west) edge [bend left=40](newDist.south); - \end{tikzpicture} +#+begin_src dot :exports results :file build/slides-nit-pipeline-ru.pdf +digraph G { + + node [fontname="Open Sans",fontsize=10,margin="0.055,0",shape=box,fillcolor="#E5E6E5",style="filled",height="0.37"] + graph [nodesep="0.55",ranksep="0.30",rankdir="TB",margin=0,splines=ortho] + edge [fontname="Open Sans",fontsize=10,arrowsize=0.66] + bgcolor="#F5F6F5" + + subgraph step1 { + rank="same" + acf [label="АКФ"] + zeta [label="Поверхность"] } -#+end_export -* Формула для поля давлений :noexport: + subgraph step2 { + rank="same" + acf_tr [label="АКФ'",fillcolor="#E5C6C5"] + zeta_tr [label="Поверхность'",fillcolor="#E5C6C5"] + } + + acf->zeta [color=invis] + acf->acf_tr [label=" Разложение в ряд\l по полиномам Эрмита\l"] + acf_tr->zeta_tr + zeta_tr->zeta [label="Преобразование\lаппликат\l"] + +} +#+end_src + +#+RESULTS: +[[file:build/slides-nit-pipeline-ru.pdf]] + +#+header: :width 4 :height 1.5 :bg #F5F6F5 :font sans +#+begin_src R :file build/slides-nit-ru.pdf +source(file.path("R", "nonlinear.R")) +par(mar=c(2,2,0.3,0.1),cex=0.7,mgp=c(3,0.3,0)) +args <- list( + graphs=c('Гауссово', 'РГШ', 'АНР'), + linetypes=c('solid', 'dashed', 'dotted'), + axis=list(tck=-0.04), + legend="bottom" +) +args$title <- NULL +arma.plot_nonlinear(file.path("build", "nit-standing"), args) +#+end_src + +#+RESULTS: +[[file:build/slides-nit-ru.pdf]] + + +* Формула для поля давлений ** Уравнения потенциального течения #+begin_export latex \begin{align*}