绘制热方程网格

绘制热方程网格

我需要为热方程绘制一个像图片这样的一维网格(我只需要网格以及上面和下面的内容,右边的部分只是为了清晰)

鉴于:

  • x 位于 [a,b] 中,且 a = -b

  • t 在 [0,T] 中

  • h = ba/n+1,其中 n+1 为给定点

  • \tau = T/m,其中 m 个给定点

下方有一个矩形覆盖第一行,其中包含“已知值”

在此处输入图片描述

答案1

使用循环的另一种方法\foreach

在此处输入图片描述

\documentclass[border=5pt]{standalone}

\usepackage{tikz}

\tikzset{%
    every node/.style={font=\strut},
}

\begin{document}
    \begin{tikzpicture}
        
        \foreach \x [count=\i from 1] in {1,...,7} {%
            \foreach \y [count=\ii from 1] in {1,...,4} {%
            \draw[fill=black] (\x,\y) circle[radius=1pt] node (circ-\i-\ii) {};
            \draw (1,\y) -- (7,\y);
            \draw (\x,1) -- (\x,4);         
            }
        }
    
        \node[below] at (circ-1-1) {$x_0=a$};
        \node[below] at (circ-7-1) {$x_{n+1}=b$};
        \node[below=10pt, orange] at (circ-4-1) {known values};
        \node[below] at (circ-4-1) {$t=0$};
        \node[above] at (circ-4-4) {$t_m=T$};
        
        \draw[orange, fill=orange, opacity=0.25] (0.875,0.875) rectangle (7.125,1.125);
        
    \end{tikzpicture}
\end{document}

答案2

只是这个?

网格

\documentclass[tikz,border=3.14mm]{standalone}
\begin{document}
    \begin{tikzpicture}
        \draw (0,0) grid[ystep=0.5] (6,3);
        \draw[orange,rounded corners] (-.25,-.25) rectangle (6.25,0.25) node [midway,below=8pt] {known values};
    \end{tikzpicture}
\end{document}

相关内容