•
|
•
|
•
|
Extrusion. These operators — General Extrusion, Linear Extrusion, Boundary Similarity, and Identity Mapping — connect a source and a destination and take an expression as an argument. When the argument is evaluated at a point in the destination, its value is computed by evaluating the argument at a corresponding point in the source. When the source and destination are of the same space dimension, it is typically a pointwise mapping. When the destination has a higher dimension than the source, the mapping is done by extruding pointwise values to the higher dimensions. For some examples of the use of extrusion coupling operators, see Examples of Extrusion Couplings.
|
•
|
Projection. These operators — General Projection and Linear Projection — evaluate a series of line or curve integrals on the source, where the line or curve positions depend on the positions of the evaluation points in the destination. In this way it is possible to compute the integral of an expression over one space variable for a range of different points along the other space axis, giving a result that varies over the latter space variable. For example, you can obtain the average along the y direction of a variable u defined on some 2D domain in the xy-plane by computing the integral
|
The projection coupling does not project the srcdim-dimensional source onto the destination; it projects the source onto the srcdim−1 lowest dimensions of the intermediate mesh, from which results are fetched using the destination transformation. Any domain where the destination transformation can be evaluated is a valid destination; the destination’s topology is not related to the projection process in any way, except for the constraint that the destination transformation it must map the destination points into the region of srcdim−1-dimensional space where there is any data to fetch.
|
•
|
Scalar. These operators — Integration, Average, Maximum and Minimum — define a scalar value such as an integration, the average over a set of geometric entities, or the maximum or minimum value of an expression and have a “global destination” (that is, they are available everywhere in the model) that you do not need to specify:
|
-
|
An Integration coupling operator is the value of an integral of an expression over the source, which is a set of geometric entities (domains, for example).
|
-
|
An Average coupling operator computes the average of an expression over the source.
|
-
|
A Maximum or Minimum coupling operator computes the maximum or minimum, respectively, of an expression over the source.
|
All the graphics in these examples use General Extrusion nonlocal coupling.
|
All these examples use the General Projection nonlocal coupling, but they can also be done using Linear Projection nonlocal couplings.
|
•
|
On one quarter of the side of this cylinder, you want to integrate the solution along curved lines of the cylinder and project it onto a straight line z = [0, L]. The source map is then z, atan2(y,x), and you leave the z-expression empty. That creates a rectangular source where the x-axis is the z-coordinate and the y-axis is the angle along the side of the cylinder, which is the direction in which you want to integrate the solution for every position along the z-axis. The destination map here is simply z (leave the y-expression empty). The integral of the solution u along the side of the cylinder is available as, for example, genproj1(u). To normalize it taking the length of the curved lines into account, use genproj1(u)/(R*pi/2) or genproj1(u)/genproj1(1), where the latter expression also gives the length of the curved lines.
|
•
|
It is also possible to do a projection with the cylindrical domain as the source and a boundary as target: For example, projecting the integral of u along the z direction onto the bottom surface of the cylinder. To do so, create a General Projection coupling operator (genproj2, for example) with the default source map — x, y, z — and the default destination map: x, y. You can then plot and evaluate the projection of the integrated solution as a 2D plot on the bottom surface using genproj2(u). To get the average value, divide the projected value by the height of the cylinder using genproj2(u)/L or genproj2(u)/genproj2(1).
|
•
|
•
|
As the y-expression: atan2(y,x) (or sys2.phi, for example, from a Cylindrical System coordinate system sys2).
|
•
|
As the z-expression: sqrt(x^2+y^2) (or sys2.r, for example, from a Cylindrical System coordinate system sys2).
|
You can prevent the fill-in of the Jacobian matrix using the nojac operator, which forces COMSOL Multiphysics to exclude the expression that it encloses when forming the Jacobian. Using the nojac operator can slow down the convergence of the solution. Another possible solution is to add a single degree of freedom that represents the value of an expression with a scalar coupling operator.
|