Create a matrix in Simulink and operate with convolution

Hi experts, I'm trying to run the simulation of the 2D Brusselator model in SImulink.
I have done 1D case in Simulink, but in 2D, the laplacian operator needs to be considered. In simple worlds, how can I realize
1. 5*ones(5,5)+randn(5,5)
this is the initial condition for the simulation in 2D case
2. \nabla^2 u
\nabla is the laplacian operator, u is a matrix in code environment, I can do: laplace operator
L = [0 1 0; 1 -4 1; 0 1 0;];
Then
conv(L, u, 'wrap')
How can I do above steps in Simulink? Also how can I display the result (2D grid simulation) in real-time (something like mesh())?
Many thanks Kyle

 채택된 답변

Andrés Guisández
Andrés Guisández 2016년 5월 19일

1 개 추천

i have a solution implemented by Kaier Wang et al. there is a block on simulink called 2D convolution but you must consider another user-defined function to implement boundary conditions. I give you the name of the paper:
Simulations of pattern dynamics for reaction-diffusion systems via SIMULINK Kaier Wang1, Moira L Steyn-Ross1, D Alistair Steyn-Ross1*, Marcus TWilson1, Jamie W Sleigh2 and Yoichi Shiraishi3
for the second question i suggest you to use matrix viewer block.
hope this will be usefull for someone, i know my answer comes late.
Sorry every reader for me limited english

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

질문:

2013년 4월 12일

댓글:

2017년 3월 20일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by