A large body of computer-aided techniques has been developed in recent years to assist
in the process of modeling, analyzing, and designing communication systems . These
computer-aided techniques fall into two categories: formula-based approaches, where the
computer is used to evaluate complex formulas, and simulation-based approaches, where the
computer is used to simulate the waveforms or signals that flow through the system. The
second approach, which involves “waveform”-level simulation (and often incorporates
analytical techniques), is the subject of this book.
Since performance evaluation and trade off studies are the central issues in the analysis
and design of communication systems, we will focus on the use of simulation for evaluating
the performance of analog and digital communication systems with the emphasis on digitalcommunication systems.
標簽:
computer-aided
techniques
developed
assist
上傳時間:
2014-01-01
上傳用戶:541657925
matlab有限元網格劃分程序
DistMesh is a simple MATLAB code for generation of unstructured triangular and tetrahedral meshes. It was developed by Per-Olof Persson (now at UC Berkeley) and Gilbert Strang in the Department of Mathematics at MIT. A detailed description of the program is provided in our SIAM Review paper, see documentation below.
One reason that the code is short and simple is that the geometries are specified by Signed Distance Functions. These give the shortest distance from any point in space to the boundary of the domain. The sign is negative inside the region and positive outside. A simple example is the unit circle in 2-D, which has the distance function d=r-1, where r is the distance from the origin. For more complicated geometries the distance function can be computed by interpolation between values on a grid, a common representation for level set methods.
For the actual mesh generation, DistMesh uses the Delaunay triangulation routine in MATLAB and tries to optimize the node locations by a force-based smoothing procedure. The topology is regularly updated by Delaunay. The boundary points are only allowed to move tangentially to the boundary by projections using the distance function. This iterative procedure typically results in very well-shaped meshes.
Our aim with this code is simplicity, so that everyone can understand the code and modify it according to their needs. The code is not entirely robust (that is, it might not terminate and return a well-shaped mesh), and it is relatively slow. However, our current research shows that these issues can be resolved in an optimized C++ code, and we believe our simple MATLAB code is important for demonstration of the underlying principles.
To use the code, simply download it from below and run it from MATLAB. For a quick demonstration, type "meshdemo2d" or "meshdemond". For more details see the documentation.
標簽:
matlab有限元網格劃分程序
上傳時間:
2015-08-12
上傳用戶:凜風拂衣袖
Matlab 畫三維立體圖形
The aim of geom3d library is to handle and visualize 3D geometric primitives
such as points, lines, planes, polyhedra... It provides low-level functions
for manipulating 3D geometric primitives, making easier the development of more
complex geometric algorithms.
Some features of the library are:
- creation of various shapes (3D points, 3D lines, planes, polyhedra...)
through an intuitive syntax.
Ex: createPlane(p1, p2, p3) to create a plane through 3 points.
- derivation of new shapes: intersection between 2 planes, intersection between
a plane and a line, between a sphere and a line...
- functions for 3D polygons and polyhedra. Polyhedra use classical vertex-faces
arrays (face array contain indices of vertices), and support faces with any
number of vertices. Some basic models are provided (createOctaedron,
createCubeoctaedron...), as well as some computation (like faceNormal or
centroid)
- manipulation of planar transformation. Ex.:
ROT = createRotationOx(THETA);
P2 = transformPoint3d(P1, ROT);
- direct drawing of shapes with specialized functions. Clipping is performed
automatically for infinite shapes such as lines or rays. Ex:
drawPoint3d([50 50 25; 20 70 10], 'ro'); % draw some points
drawLine3d([X0 Y0 Z0 DX DY DZ]); % clip and draw straight line
Some functions require the geom2d package.
Additional help is provided in geom3d/Contents.m file, as well as summary files
like 'points3d.m' or 'lines3d.m'.
標簽:
Matlab 畫三維立體圖形
上傳時間:
2015-11-02
上傳用戶:A1321