WO2012026383A1 - 計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム - Google Patents

計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム Download PDF

Info

Publication number
WO2012026383A1
WO2012026383A1 PCT/JP2011/068662 JP2011068662W WO2012026383A1 WO 2012026383 A1 WO2012026383 A1 WO 2012026383A1 JP 2011068662 W JP2011068662 W JP 2011068662W WO 2012026383 A1 WO2012026383 A1 WO 2012026383A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
voxel
calculation
storage means
data storage
Prior art date
Application number
PCT/JP2011/068662
Other languages
English (en)
French (fr)
Inventor
植村 健
一貴 柳原
恒洋 齊藤
Original Assignee
旭硝子株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 旭硝子株式会社 filed Critical 旭硝子株式会社
Priority to KR1020137004454A priority Critical patent/KR20130098306A/ko
Priority to EP11819846.4A priority patent/EP2610772A4/en
Priority to RU2013112926/08A priority patent/RU2013112926A/ru
Priority to JP2011551332A priority patent/JP5045853B2/ja
Priority to CN2011800408301A priority patent/CN103080941A/zh
Publication of WO2012026383A1 publication Critical patent/WO2012026383A1/ja
Priority to US13/774,557 priority patent/US20130173239A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors
    • G06F15/8076Details on data register access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Definitions

  • the present invention relates to a calculation data generation device, a calculation data generation method, and a calculation data generation program for generating calculation data for performing numerical analysis.
  • a finite element method, a finite volume method, a voxel method, and a particle method are known as numerical analysis methods for obtaining flow velocity distribution, stress distribution, heat distribution, and the like by numerical analysis.
  • Such a numerical analysis method generally includes pre-processing, solver processing, and post-processing. Then, a calculation data model is created in the pre-processing, and the physical quantity is calculated using the calculation data model and the discretized governing equation (hereinafter referred to as the discretized governing equation) in the solver processing. ing.
  • the conventional finite volume method divides the analysis region into a plurality of regions, and uses the volume of each divided region, the area of the boundary surface of the adjacent divided region, and the normal vector of the boundary surface to determine the physical quantity in each divided region.
  • a calculation data model (usually called a mesh) that includes the coordinates (Vertex) of the vertices of each divided region is created by pre-processing, and Vertex etc. included in the calculation data model by solver processing Is used to calculate the volume of the above-described divided region, the area of the boundary surface, and the normal vector of the boundary surface, and the physical quantity is calculated using these values.
  • Vertex is an amount for defining the geometric shape of the divided area. Therefore, in the finite volume method, it can be said that the volume of the divided region, the area of the boundary surface, and the normal vector of the boundary surface are calculated using the geometric shape of the divided region in the solver process.
  • the finite volume method there may be a portion where the vertex sharing condition between adjacent divided regions is not partially satisfied. For this reason, in the finite volume method, restrictions on the divided regions may be slightly relaxed, but the analysis element types to be used are limited to, for example, a tetra element, a hexa element, a prism element, and a pyramid element.
  • the finite element method is a method for calculating a physical quantity in each divided region using an interpolation function.
  • the geometrical shape of the divided region defined by Vertex or the like in the solver process is used. The geometric shape is used.
  • the voxel method and the particle method are numerical analysis methods that can easily create a data model for calculation as compared with the finite element method and the finite volume method.
  • voxel data that defines an analysis region is created as a calculation data model by using a plurality of voxels (orthogonal lattices) of rectangular parallelepiped shape of the same size, and numerical values are calculated by performing physical quantity calculations using this voxel data. This is a method of analysis.
  • the voxel method is roughly classified into a weighted residual integration method using a governing equation by a weighted residual integration method and a non-integration method using a cell-automaton model, a lattice-Boltzmann model, and the like.
  • Vertex or the like is not necessary as voxel data.
  • the analysis region can be easily defined by dividing the analysis region into voxels, and a calculation data model can be created in a short time.
  • the particle method is a method of performing numerical analysis by creating particle data defining an analysis region by a plurality of particles as a calculation data model and performing physical quantity calculation using the particle data.
  • the particle method uses a non-integral type interaction model as a governing equation.
  • Vertex or the like is not required because there are no divided regions. According to such a particle method, for example, by uniformly arranging particles in the analysis region, the analysis region can be easily defined, and a calculation data model can be created in a short time.
  • Connectivity is information on correspondence between the total node numbers assigned in order to the vertices of all divided areas and the local node numbers assigned in order to the vertices in one divided area. Defined by
  • the computational data model used in the finite volume method increases the degree of freedom of mesh generation compared to the finite element method, as much as the existence of non-shared vertices can be allowed. .
  • calculation is performed under the condition that non-shared vertices exist at least on the side of the adjacent divided region, and generally the shape of the divided region is matched to the preset analysis element type. It is difficult to say that the degree of freedom of mesh generation is high.
  • the three-dimensional shape data is not data formed for numerical analysis, but includes data indicating surface overlap, surface intersection, space between surfaces, minute holes, etc., and has Vertex and Connectivity It contains many conditions that are not suitable for creating a computational data model. Therefore, it is necessary to modify or change the three-dimensional shape data so that a calculation data model having these Vertex and Connectivity can be created. In order to correct or change the three-dimensional shape data so that a calculation data model having Vertex and Connectivity can be created, it is necessary to perform a very large amount of manual work that requires experience and trial and error. This is a big problem when the finite element method and the finite volume method are used in practice.
  • the calculation amount in the solver process further increases, and the calculation in the solver process The load further increases.
  • the voxel method can create a data model for calculation in a short time, but has the following problems.
  • the analysis regions are basically defined by voxels (orthogonal lattices) having the same size.
  • the element size division area size
  • the calculation load for the area is reduced by setting the size large.
  • the voxel method since all the voxels are basically the same size, the calculation load becomes very large when the voxel is set small, and the analysis accuracy deteriorates when the voxel is set large. It becomes.
  • the analysis area In the voxel method, the analysis area must be defined by arranging voxels (orthogonal lattices) of the same size, so the analysis area cannot be smoothed near the boundary with the external area, and is stepped. It may become. That is, even if the region to be actually analyzed has a slope, a curved surface, or the like, the region is represented in a staircase pattern in the voxel data. For this reason, the analysis region shape in the voxel method is different from the region shape to be actually analyzed, and the analysis accuracy deteriorates.
  • a cut cell method has been proposed in which a stepped region of voxel data is cut (boundary correction) along a slope or curved surface of a region to be actually analyzed.
  • a very small divided region is likely to be generated by this boundary correction, and if such a small divided region is generated, the analysis accuracy deteriorates.
  • Vertex is used for forming cut cells and in solver processing.
  • the voxel method without boundary correction does not require Vertex or the like, but there is a limit to the generation of voxels, so-called mesh generation. That is, if sufficient analysis accuracy is to be obtained, the number of voxels increases, and the calculation load in solver processing also increases, which causes a problem. Furthermore, the improved voxel method, which performs boundary correction, requires Vertex as a result, so it will eventually be affected by the geometric shape of the divided region, and the formation of the divided region around the boundary with the external region For this purpose, a very large amount of manual work requiring experience and trial and error is involved, and a shape data model cannot be created in a short time.
  • the present invention has been made in view of the problems of the above-described conventional numerical analysis methods such as the finite element method, the finite volume method, the voxel method, the improved method of the voxel method, and the particle method.
  • Calculation data generation device, calculation data generation method, and calculation data generation that can reduce the work load in creating the calculation data to be input to the numerical analysis device that can reduce the calculation load in the solver processing
  • the purpose is to provide a program.
  • the present invention is a physical quantity calculation method for calculating a physical quantity in a numerical analysis method for numerically analyzing a physical phenomenon, wherein the physical quantity is divided into a plurality of divided regions not depending only on an orthogonal lattice shape.
  • Including a physical quantity calculation step of calculating a physical quantity in the analysis region, and using only a quantity that does not require the vertex coordinates (Vertex) and the vertex connectivity information (Connectivity) of the divided region in the physical quantity calculation step The discretized governing equation derived based on the residual residual integration method, and the boundary surface characteristic amount indicating the volume of each of the divided regions and the characteristic of the boundary surface between the adjacent divided regions, and the vertex of the divided region
  • the physical quantity is calculated using a calculation data model having the coordinates (Vertex) and the vertex connectivity information (Connectivity) as quantities that do not need to be used.
  • the discretized governing equation used in the present invention is not expressed in a form including the quantities (Vertex and Connectivity) that define the geometric shape of the divided region as in the conventional case, but the geometric shape of the divided region. It does not require an amount that prescribes.
  • the discretized governing equation used in the present invention can be obtained by deliberately stopping in the process of deriving an equation using a quantity that defines a conventional geometric shape based on the weighted residual integration method. .
  • Such a discretized governing equation used in the present invention is expressed by an amount that does not require the geometric shape of the divided region (that is, an amount that does not require Vertex and Connectivity).
  • the format can depend on only two of the characteristic quantities.
  • the analysis object is divided into minute regions as a premise, and therefore it is assumed that the amount that defines the geometric shape of these minute regions, that is, Vertex and Connectivity are used.
  • the discretized governing equation is derived, the discretized governing equation used in the present invention is derived based on a completely new idea different from the conventional one.
  • the present invention is characterized by using a discretized governing equation derived based on such a new idea. Unlike the conventional numerical analysis method, the present invention does not depend on the geometric shape, The above problem is solved and various remarkable effects are exhibited.
  • the volume of the divided area and the boundary surface characteristic amount are quantities that do not require Vertex and Connectivity that define a specific geometric shape of the divided area.
  • the amount that does not require Vertex and Connectivity is an amount that can be defined without using Vertex and Connectivity.
  • the volume of the divided area there are a plurality of geometric shapes of the divided area for the volume of the divided area to be a predetermined value.
  • the geometric shape of the divided region having a predetermined volume may be a cube or a sphere.
  • the volume of the divided area is proportional to the cube of the average distance to the adjacent divided area as much as possible, for example, under the constraint that the sum of all divided areas matches the volume of the entire analyzed area. It can be defined by such optimization calculation. Therefore, the volume of the divided region can be regarded as an amount that does not require a specific geometric shape of the divided region (an amount that does not require Vertex and Connectivity).
  • the boundary surface characteristic amount for example, the boundary surface area, the normal vector of the boundary surface, the perimeter of the boundary surface, and the like can be considered, but the division for the boundary surface characteristic amount to have a predetermined value is possible.
  • region geometric shapes that is, boundary surface geometric shapes.
  • the boundary surface characteristic amount is the normal vector of the boundary surface under the constraint that the length of the area weighted average vector of the normal vector is zero for all boundary surfaces surrounding each divided region. The direction is close to the line connecting the control points of two adjacent divided areas (see Fig. 5), and the total area of all boundary surfaces surrounding the divided area is proportional to the third power of the volume of the divided area as much as possible. It can be defined by such optimization calculation. Therefore, the boundary surface characteristic amount can be regarded as an amount that does not require a specific geometric shape of the divided region (an amount that does not require Vertex and Connectivity).
  • analysis region divided into a plurality of divided regions not depending only on the orthogonal lattice shape means that at least one of the divided regions constituting the analysis region does not take the orthogonal lattice shape. To do. That is, it means that the analysis region includes a divided region having a shape other than the orthogonal lattice shape.
  • use only the amount that does not require Vertex and Connectivity means that the value substituted for the discretized governing equation is only the amount that does not require Vertex and Connectivity.
  • the volume of a division area and a boundary surface characteristic amount are used as a quantity which does not require Vertex and Connectivity. For this reason, the calculation data model created by the pre-processing does not have Vertex and Connectivity, and the volume of the divided area, the boundary surface characteristic amount, and other auxiliary data (for example, engagement of the divided area described later) Information, control point coordinates, etc.).
  • the physical quantity in each divided region is based on the volume of the divided region and the boundary surface characteristic amount, that is, the amount that does not require the geometric shape of the divided region. It can be calculated. Therefore, it is possible to calculate the physical quantity without giving the calculation data model the geometric shape of the divided region, that is, Vertex and Connectivity. Therefore, by using the present invention, it is only necessary to create a calculation data model having at least the volume of the divided region and the boundary surface characteristic amount (the boundary surface area and the boundary surface normal vector) in the pre-processing. It is possible to calculate a physical quantity without creating a calculation data model having Vertex and Connectivity.
  • a computational data model that does not have Vertex and Connectivity does not require the geometric shape of the divided area, and can be created without being bound by the geometric shape of the divided area. For this reason, the restriction
  • Vertex and Connectivity may be used in the pre-processing. That is, in the pre-processing, the volume of the divided region, the boundary surface characteristic value, and the like may be calculated using Vertex and Connectivity. Even in this case, the solver process can calculate the physical quantity if there is a volume or boundary surface property value of the divided area, so even if you use Vertex and Connectivity in the pre-processing, the divided area There are no restrictions on the geometric shape of the image, for example, restrictions caused by distortion or twisting of the divided areas, and the work load in creating the calculation data model can be reduced.
  • the present invention in the pre-processing, there is no restriction on the geometric shape of the divided area, so that the divided area can be changed to an arbitrary shape. For this reason, it is possible to easily fit the analysis region to the region to be actually analyzed without increasing the number of divided regions, and it is possible to improve the analysis accuracy without increasing the calculation load. Furthermore, since the distribution density of the divided regions can be arbitrarily changed by using the present invention, it is possible to further improve the analysis accuracy while allowing an increase in calculation load within a necessary range.
  • the present invention unlike the conventional numerical analysis method, it is not necessary to calculate the volume and boundary surface characteristic amount of the divided region using Vertex and Connectivity in the solver processing. Accordingly, it is possible to reduce the calculation load in the solver process.
  • the physical quantity can be calculated while satisfying the physical quantity conservation law.
  • the finite volume method which is a conventional numerical analysis method, creates a calculation data model having Vertex and Connectivity indicating the geometric shape of the divided area by pre-processing, and converts it to a calculation data model by solver processing.
  • the physical quantity in each divided region is calculated after calculating the volume and boundary surface characteristic amount (boundary surface area and boundary surface normal vector) of the divided region using the Vertex and Connectivity included.
  • it is necessary to create a calculation data model that is, a mesh
  • a calculation data model that is, a mesh
  • the finite element method also uses Vertex and Connectivity included in the calculation data model in solver processing, so it has Vertex and Connectivity that indicate the geometric shape of the divided region in preprocessing. It is necessary to create a calculation data model, and a huge amount of manual work is required in creating the calculation data model.
  • the voxel method which is a conventional numerical analysis method, does not require Vertex and Connectivity to calculate physical quantities in solver processing, but the shape of the divided region is limited to voxels.
  • Vertex is used to calculate the volume of the divided area, and the geometric shape of the divided area is affected when the calculation data model is created. .
  • the particle method which is a conventional numerical analysis method, does not have the concept of a divided region, as shown in FIG. 3, Vertex and Connectivity are not necessary for calculating physical quantities in solver processing. Instead, due to the movement of the particles defining the computational data model, the computational load increases as described above. In the particle method, it is difficult to calculate a physical quantity while satisfying the conservation law.
  • the present invention and the conventional finite volume method will be compared in more detail.
  • a calculation data model having Vertex and Connectivity for defining the geometric shape of the divided region obtained by mesh division is created. Further, generally, engagement information (hereinafter referred to as a link) of divided areas is required in the solver process. For this reason, in the pre-processing, a calculation data model having Vertex, Connectivity, and link is created.
  • a calculation data model having Vertex, Connectivity, and link, and boundary conditions and initial conditions necessary for solver processing are solved.
  • the physical quantity is calculated by solving the discretized governing equation using Vertex, Connectivity, etc. included in the passed calculation data model.
  • a data model for calculation having the volume of the arbitrarily arranged divided regions, boundary surface characteristic amounts (boundary surface area, boundary surface normal vector), and link is created.
  • the calculation data model may have coordinates of control points arranged in the divided areas as necessary.
  • the calculation data model having the volume of the divided region, the boundary surface characteristic amount and the link (the coordinates of the control point as required), the boundary condition and the initial Pass conditions etc. to solver processing.
  • the solver process the physical quantity is calculated by solving the discretized governing equation using the volume of the divided area, the boundary surface characteristic amount, and the like included in the delivered calculation data model.
  • the present invention is greatly different from the conventional finite volume method in that the physical quantity is calculated without using Vertex and Connectivity in the solver processing, and this is a major feature of the present invention. It is. Such a feature is obtained by using a discretized governing equation that uses only quantities that do not require Vertex and Connectivity in the solver process.
  • the analysis region includes a moving boundary. In such a case, it is necessary to move and deform the divided area in accordance with the movement boundary.
  • the moving boundary when the moving boundary is included by the method of storing Vertex for each movement of the moving boundary in advance or the method of re-executing the region division when it becomes impossible to calculate due to the irregular deformation of the divided region
  • the physical quantity is calculated.
  • Vertex instead of Vertex, the volume of the divided area, the boundary surface characteristic value, etc. are obtained in advance and stored, or the physical quantity when the moving boundary is included by re-execution of the area division Calculations can be made.
  • the calculation data model does not need to have Vertex and Connectivity, and it is not necessary to consider the consistency of Vertex and Connectivity in the region division process, so the calculation data model can be created very quickly. It is possible to easily calculate a physical quantity when a moving boundary is included.
  • the link is information for associating divided areas that exchange physical quantities.
  • the divided areas associated by this link do not necessarily have to be spatially adjacent, and may be spatially separated.
  • Such a link is not related to Vertex or Connectivity, and can be created in a very short time compared to Vertex and Connectivity.
  • the present numerical analysis method that is, the discretized governing equation derived based on the weighted residual integration method, the volume of the divided region, and the boundary surface
  • the present numerical analysis method the discretized governing equation derived based on the weighted residual integration method, the volume of the divided region, and the boundary surface
  • FIG. 5 is a conceptual diagram showing an example of a calculation data model of the present numerical analysis method.
  • cells R1, R2, R3... are divided regions obtained by dividing the analysis region, and each has a volume Va, Vb, Vc.
  • the boundary surface E is a surface on which physical quantities are exchanged between the cell R1 and the cell R2, and corresponds to the boundary surface in the present invention.
  • the area Sab indicates the area of the boundary surface E and is one of the boundary surface characteristic quantities in the present invention.
  • [N] ab indicates a normal vector of the boundary surface E, and is one of the boundary surface characteristic quantities in the present invention.
  • control points a, b, c,... are arranged inside the cells R1, R2, R3, and are arranged at the center of gravity of the cells R1, R2, R3,. .
  • control points a, b, c... are not necessarily arranged at the center of gravity of each cell R1, R2, R3.
  • represents the distance from the control point a to the boundary surface E when the distance from the control point a to the control point b is 1, and the line segment connecting the control point a and the control point b with the boundary surface E It is the ratio which shows in which internal dividing point.
  • boundary surface is present not only between the cell R1 and the cell R2, but also between all adjacent cells.
  • the normal vector of the boundary surface and the area of the boundary surface are also given for each boundary surface.
  • the actual calculation data model includes the arrangement data of each control point a, b, c... And the cells R1, R2, R3. It is constructed as a data group having volume data indicating the volumes Va, Vb, Vc..., Area data indicating the area of each boundary surface, and normal vector data indicating a normal vector of each boundary surface. That is, the calculation data model of this numerical analysis method is such that the volumes Va, Vb, Vc... Of the cells R1, R2, R3... And the boundary surfaces between the adjacent cells R1, R2, R3. A boundary surface area that is a boundary surface characteristic amount indicating a characteristic, and a boundary normal vector that is a boundary surface characteristic amount indicating a boundary surface characteristic between adjacent cells R1, R2, R3. Defined.
  • each cell R1, R2, R3... Has control points a, b, c. Therefore, the volumes Va, Vb, Vc... Of the cells R1, R2, R3... Can be regarded as the volume of the space (control volume) that the control points a, b, c. it can. Further, the calculation data model of the present numerical analysis method has ratio data indicating the ratio ⁇ of which internal segment of the line segment connecting the control points sandwiched between the boundary surfaces as necessary.
  • the present numerical analysis method uses a Navier-Stokes equation represented by the following equation (1) and a continuous equation represented by the following equation (2) in the case of fluid analysis.
  • t time
  • fluid density
  • P indicates the pressure
  • indicates the viscosity coefficient of the fluid
  • Each direction component in the coordinate system is shown.
  • the subscript j shall comply with the sum rules.
  • Expression (1) is expressed as the following Expression (3).
  • Equation (2) is expressed as the following Equation (4).
  • V represents the volume of the control volume
  • ⁇ VdV represents the integral with respect to the volume V
  • S represents the area of the control volume
  • ⁇ SdS represents the integral with respect to the area S
  • [N] indicates a normal vector of S
  • ⁇ / ⁇ n indicates a normal direction differentiation.
  • the density ⁇ and the viscosity coefficient ⁇ of the fluid are constants.
  • the following constantization can be expanded for the case where the physical property value of the fluid changes depending on time, space, temperature, and the like.
  • [n] ab, [u] ab, uiab, niab, Pab, and ( ⁇ ui / ⁇ n) ab with the subscript ab are on the boundary surface E between the control point a and the control point b.
  • Niab is a component of [n] ab.
  • m is the number of all control points that are connected to the control point a (a relationship that sandwiches the boundary surface).
  • [u] ab, uiab, Pab, ( ⁇ ui / ⁇ n) ab is a weighted average of physical quantities on the control point a and the control point b (for the advection term, the windward (Weighted average in consideration of the characteristics), and the positional relationship between the distance and direction between the control points a and b and the boundary surface E existing between them (the above ratio ⁇ ), and the normal line of the boundary surface E It depends on the orientation of the vector.
  • [u] ab, uiab, Pab, ( ⁇ ui / ⁇ n) ab is an amount irrelevant to the geometric shape of the boundary surface E (that is, an amount that does not require Vertex and Connectivity that define the cell shape). ).
  • Equation (9) is also an amount (area / volume), which is an amount irrelevant to the geometric shape of the control volume (that is, an amount that does not require Vertex and Connectivity that define the cell shape). It is.
  • equations (10) and (11) are arithmetic expressions based on the weighted residual integration method that can calculate physical quantities using only quantities that do not require Vertex and Connectivity that define the cell shape. is there.
  • the physical quantity ⁇ ab can also be obtained by the following formula (13) by using the ratio ⁇ of which line segment exists between the control points sandwiching the boundary surface.
  • the calculation data model has ratio data indicating the ratio ⁇
  • the physical quantity on the boundary surface E is set to a distance away from the control point a and the control point b using the equation (13). It can be calculated using the corresponding weighted average.
  • the equation of the continuum model includes a first-order partial derivative (partial differential) as shown in equation (1).
  • the partial volume of the equation of the continuum model is converted into an area by using partial integration, Gaussian divergence theorem, or generalized Green's theorem, and the order of differentiation is lowered.
  • the first-order derivative can be a zero-order derivative (scalar amount or vector amount). For example, in the generalized Green's theorem, if the physical quantity is ⁇ , the following equation (14) holds.
  • the first derivative term of the equation of the continuum model is treated as a scalar quantity or a vector quantity on the boundary surface by converting the volume to the area.
  • a second-order partial derivative may be included depending on the equation of the continuum model.
  • the equation obtained by further differentiating the integrand of the equation (14) to the first order is the following equation (15), and the second-order differential term of the equation of the continuum model is expressed by the following equation ( 16).
  • Equation (15) ⁇ / ⁇ n represents normal direction differentiation
  • Equation (16) ⁇ / ⁇ nab represents [n] ab direction differentiation. That is, the second-order differential term of the equation of the continuum model is obtained by converting the volume to the normal differential of the physical quantity ⁇ (differentiation in the normal [n] ab direction of Sab) by the conversion of the area. It is a form that is multiplied by niab and njab.
  • the inter-control point vector [r] ab between the control point a and the control point b is obtained from the position vector [r] a of the control point a and the position vector [r] b of the control point b as shown in the following equation (18). Defined in
  • Equation (16) In derivation of equation (16), the following can be understood. All linear partial differential equations are expressed as a linear sum of a constant and a term obtained by multiplying a first-order, second-order, or other partial derivative by a coefficient.
  • Equations (15) to (18) when the physical quantity ⁇ is replaced with the first-order partial derivative of ⁇ , the volume of the higher-order partial derivative is reduced to the lower-order partial derivative as shown in Equation (14). It can be obtained from the area.
  • the partial derivatives of all terms constituting the linear partial differential equation are calculated by the physical quantity ⁇ of the control point and the formula (12) or the formula (13).
  • a term obtained by multiplying the first-order partial derivative of ⁇ and ⁇ which is a nonlinear term shown in Equation (20), and the square of the first-order partial derivative are numerically calculated by iterative calculation. be able to. That is, it is only necessary to approximate the ⁇ of each term and the first partial derivative as a calculation value before one iteration in the iterative calculation and perform the iterative calculation.
  • all nonlinear terms in the partial differential equation can be numerically calculated. From the above, the equation of the continuum model has been described above, but it has been found that discretization that does not require Vertex and Connectivity is possible for any other partial differential equation. However, different conditions are necessary for the conservation law. This will be described later.
  • this numerical analysis method does not require Vertex and Connectivity for physical quantity calculation. For this reason, when the calculation data model is created (pre-processed), the volume of the control volume, the area of the boundary surface, and the normal vector can be obtained without using Vertex and Connectivity. Equations (10) and (11) Using the discretized governing equation, the flow velocity can be calculated without using any control volume geometry (ie, cell geometry).
  • the normal vector [n] ab of the boundary surface E shown in FIG. 5 is oriented in the same direction as the distance vector [r] ab connecting the control point a and the control point b, the normal vector [n] is It can be shown as the following formula (21).
  • the equation (21) is substituted into the discretized governing equations represented by the equations (10) and (11).
  • the discretized governing equation is obtained when the normal vector [n] ab is directed in the direction between the control points a and b. That is, when the vector connecting the boundary surface and the control point sandwiching the boundary surface is orthogonal, the normal vector in the discretized governing equation can be replaced with the distance vector.
  • the normal vector [n] ab of the boundary surface E can be determined only from the position coordinates of the control point.
  • the accuracy in calculating the physical quantity is improved by bringing the boundary surface E and the distance vector as close to orthogonal as possible. Therefore, the calculation accuracy can be improved by replacing the normal vector with a distance vector. Furthermore, the arbitraryness of the normal vector can be fixed in the direction connecting the control points.
  • Va is the volume of the cell Ra (control volume of the control point a)
  • Vb is the volume of the cell Rb (control volume of the control point b)
  • Vc is the volume of the cell Rc (control point c).
  • Vd is the volume of the cell Rd (the volume of the control volume at the control point d)
  • ⁇ a is the density in the cell Ra
  • ⁇ b is the density in the cell Rb
  • ⁇ c is the density in the cell Rc
  • ⁇ d is in the cell Rd.
  • Sa is the area of the boundary surface between the cell Ra and the external region
  • Sc is the area of the boundary surface between the cell Rc and the external region
  • Sd is the area of the boundary surface between the cell Rd and the external region
  • Sab is the cell Ra and the cell
  • Sac is the area of the boundary surface between cell Ra and cell Rc
  • Sbd is The area of the boundary surface between the cell Rc and the cell Rd
  • Scd is the area of the boundary surface between the cell Rc and the cell Rd
  • ua is the flow velocity at the boundary surface between the cell Ra and the external region
  • uc is the boundary between the cell Rc and the external region
  • Ud is the flow velocity at the boundary surface between the cell Rd and the external region
  • uab is the flow velocity at the boundary surface between the cell Ra and the cell Rb
  • uac is the flow velocity at the boundary surface between the cell Ra and the cell Rc
  • ubd is the cell Rb.
  • the flow velocity at the boundary surface between the cell Rd and the cell Rd is the flow velocity at the boundary surface between the cell Rc and the cell Rd
  • ⁇ a is the density at the cell Ra
  • ⁇ ab is the density at the boundary surface between the cell Ra and the cell Rb
  • ⁇ ac is the cell Ra
  • the density at the interface between the cell Rc and ⁇ bd indicates the density at the interface between the cell Rb and the cell Rd.
  • Equation (27) is obtained.
  • Equation (30) shows that the difference between the mass flux flowing into and out of the entire area occupied by the control volume of the control points a, b, c, d is the difference between the control points a, b, c, d per unit time. This means that the average density of the entire area occupied by the control volume is equal to the time change (mass time change).
  • the mass conservation formula discretized for each control point a, b, c, d holds even for the area occupied by the control volume of all control points.
  • the discretized governing equation for the control volume area indicated by the control point must be an equation that satisfies the conservation law for the entire analysis area to be calculated when all the control points are added.
  • Equation (31) indicates that the difference between the inflowing mass and the outflowing mass is equal to the unit time change of the mass in the entire region for the entire region to be calculated. Therefore, Equation (31) is an equation for mass conservation in the entire analysis region.
  • Equation (31) in order for Equation (31) to satisfy the law of conservation of mass for the entire region to be calculated, the condition that the area of the boundary surface between the two control points coincides with the normal vector from the one control point side.
  • the condition that the absolute values match when viewed from the other control point side is necessary.
  • Si represents the area of the boundary surface Ei
  • [n] i represents the unit normal vector of the boundary surface Ei
  • m represents the total number of surfaces of the control volume.
  • Expression (33) indicates that the polyhedron that forms the control volume forms a closed space. This equation (33) holds even when a part of the polyhedron constituting the control volume is recessed.
  • Formula (33) is formed also about the two-dimensional triangle.
  • the limit of setting one surface of the polyhedron as the minute surface dS and m as ⁇ is obtained, the following equation (34) is obtained, and it can be seen that the closed curved surface as shown in FIG.
  • the condition that Expression (33) holds is a condition necessary for the Gaussian divergence theorem and the generalized Green's theorem shown in Expression (14) to hold.
  • the generalized Green's theorem is a basic theorem for discretization of a continuum. Therefore, in the case where the volume integral is changed to an area according to Green's theorem and discretized, the condition that Expression (33) is satisfied is essential in order to satisfy the conservation law.
  • the MPS method is a method of detecting particles existing in a sphere having an appropriately set radius re and calculating a connection relationship with them. For example, as shown in FIG. When j exists, the Laplacian ( ⁇ 2 ⁇ ) i in the particle i is approximated by the following equation (35).
  • ⁇ i represents a physical quantity in the particle i
  • ⁇ j represents a physical quantity in the particle j
  • [r] ij represents a distance vector from the particle i to the particle j.
  • d in the equation (35) is a constant indicating the number of dimensions, and is 3 in the case of 3 dimensions.
  • ⁇ (r) in the equation (35) is a weight function, and is expressed as the following equation (36).
  • m in the formula (35) indicates the number of particles having a bonding relationship.
  • the particles i and j are regarded as control points, the control volume of the particle i is Vi, the area of the boundary surface between the particle i and the particle j is Sij, and the particle i and the particle j are When the normal vector of the boundary surface between them is [n] ij and the distance vector from the particle i to the particle j is [r] ij, the Laplacian ( ⁇ 2 ⁇ ) i in the particle i is expressed by the following equation (37) It is approximated as follows.
  • the control volume and the control point do not move even when the time changes. For this reason, when the arrangement relationship between the control volume and the control point is known in advance, the physical quantity can be calculated without performing the neighborhood search process. For this reason, the calculation load in the physical quantity calculation can be reduced as compared with the MPS method. Even if the arrangement relationship between the control volume and the control point is not known in advance, the process for determining the arrangement relationship between the control volume and the control point may be performed only once at the beginning.
  • the discretized governing equation to be obtained is not limited to this. In other words, it is derived from various equations (mass conservation equation, momentum conservation equation, energy conservation equation, advection diffusion equation, wave equation, etc.) based on the weighted residual integration method, and Vertex and Connectivity Any discretized governing equation that can calculate a physical quantity using only unnecessary quantities can be used in this numerical analysis method.
  • the characteristics of the discretized governing equation enable meshless calculation that does not require a so-called mesh unlike the conventional finite element method or finite volume method.
  • Vertex and Connectivity which define the cell geometry, are used in the pre-processing, there is no constraint on the mesh like the conventional finite element method, finite volume method, and voxel method, so calculation Can reduce the workload associated with the creation of a data model.
  • Equation of mass conservation The equation of mass conservation in the Euler coordinate system is expressed in a differential form as shown in the following equation (41).
  • the subscript i shall comply with the sum rules.
  • ⁇ ab, [n] ab with the subscript ab indicates a physical quantity on the boundary surface E between the control point a and the control point b.
  • m is the number of all control points that are connected to the control point a (a relationship that sandwiches the boundary surface).
  • Equation (46) Equation (46) is obtained.
  • Equation (46) is derived based on the weighted residual integration method and uses only quantities that do not require Vertex and Connectivity, the discretized governing equation of this numerical analysis method is used. Can be used as
  • FIG. 12 is a schematic diagram showing a two-dimensional triangular cell. The area, the side length, and the normal vector of the triangle a in FIG. 12 are shown in the following table. In the table below, the symbol x indicates an outer product.
  • the mass conservation equation is a discretized governing equation using Vertex or the like based on the weighted residual integration method.
  • [r] i is the position vector (coordinate) of the vertex (Vertex) i, and the symbol x indicates the outer product of the vectors. Also, ⁇ ab and ⁇ are constant, [r] ij is [r] j- [r] i, and [r] 4 is [r] 1.
  • Equation of conservation of momentum The equation of conservation of momentum in the Euler coordinate system is expressed in a differential form as shown in the following equation (48).
  • the subscript j shall comply with the sum rules.
  • This equation (47) is a basic equation of a stress field of a structure, material, fluid, or the like.
  • equation (47) is integrated with respect to the volume V of the control volume of the control point based on the weighted residual integration method, the following equation (49) is obtained.
  • the angular momentum conservation equation can be discretized in the same manner as the momentum conservation equation.
  • Equation (52) C is the concentration of the substance C, ⁇ C is the diffusion coefficient of the substance C, qC is the source (sink) term of the substance C, ⁇ is the density of the continuum, and ui is the deformation rate of the continuum. .
  • Equation (52) is integrated based on the weighted residual integration method, and further discretized and converted into a discretized governing equation, the following equation (53) is obtained.
  • the amount to which the subscript a such as Ca is attached is the physical amount of the control point a
  • the amount to which the subscript ab such as Cab is attached is the physical amount at the boundary surface between the control point a and the control point b.
  • Equation (54) U is the internal energy of the continuum, qi is the heat flux vector, r is the heat source, the source (sink) term of the heat energy, ⁇ ij is the stress tensor, and Dij is the deformation rate tensor. Note that the term of the tensor double product of ⁇ ij ⁇ Dij is called stress power. For the subscripts i and j, the sum rules are applied. Then, when the equation (54) is integrated based on the weighted residual integration method and further discretized and converted into a discretized governing equation, the following equation (55) is obtained.
  • Wave equation The equation of the physical law expressed in the conservative forms such as the equation of conservation of mass, the equation of conservation of momentum, the equation of conservation of energy, the equation of advection diffusion, etc. It is an equation that combines the properties of the partial differential equation called.
  • wave equation representing the transmission of waves and the transmission of vibrations is called “hyperbolic type” and is represented by the following formula (56) as a general form.
  • equation (56) u represents the amplitude and displacement, and ⁇ represents the wave propagation velocity. Then, when the equation (56) is integrated based on the weighted residual integration method, and further discretized and converted into a discretized governing equation, the following equation (57) is obtained.
  • Equations (46), (51), (53), (55), and (57) as described above are derived based on the weighted residual integration method, and are only quantities that do not require Vertex and Connectivity. Since it is an equation that can calculate a physical quantity using, it can be used as a discretized governing equation of this numerical analysis method.
  • This numerical analysis method uses the above discretized governing equations to calculate numerical values for steady and unsteady fluid dynamics, heat conduction, advection diffusion, structural mechanics, waves, and phenomena in which these physical phenomena are coupled. It can be applied to analysis.
  • a general numerical analysis method called a finite element method is a method that does not allow the intersection of elements as shown in FIGS. For this reason, when an intersection of elements is detected by application software used in the finite element method, an error is output. As described above, as described above, a very large work load is required to create a calculation data model in a finite element.
  • the present invention provides patch data storage means storing patch data representing a target object to be numerically analyzed with a plurality of polygons, parameter storage means for storing parameters necessary for performing the numerical analysis, and the target Voxel data storage means for storing voxel data obtained by dividing the analysis region including the object into a plurality of rectangular parallelepipeds, and defining the voxel data based on the parameters stored in the parameter storage means, and for each voxel Voxel data generation means for storing voxel attributes and storing the voxel data in the voxel data storage means; initial point data storage means for storing initial point data for performing region division in the analysis area; and the center of the voxel Generating initial point data less than the number of voxels using points, and the initial point data storage means
  • Initial point data generation means for storing; divided area data storage means for storing divided area data obtained by dividing the target object into a plurality of divided areas; attributes of each vo
  • the calculation data storage means for storing calculation data for performing the numerical analysis, and the divided area data stored in the divided area data storage means
  • a calculation data generation unit that generates boundary surface data of a region and stores the boundary surface data in the calculation data storage unit as the calculation data. Characterized in that it comprises a means.
  • the divided region data generation means selects an initial point closest to the center point of each voxel from the initial point data stored in the initial point data storage means, The divided region is generated by specifying the divided region to which the voxel belongs.
  • the divided region data generating means defines a cross section of a sphere centered on each of a slice plane formed by a boundary surface of the voxel perpendicular to a predetermined axis and the initial point, A potential solid having different heights is defined in accordance with the distance from the initial point from the cross section, and the divided region on the slice plane is determined based on image data drawn by performing the three-dimensional hidden surface processing on the potential solid.
  • the division area is generated by performing the defining process on all the slice planes in the analysis area.
  • the initial point data generation means is located within the target object from the patch data stored in the patch data storage means and the voxel data stored in the voxel data storage means. Selecting an inner voxel of the voxel to be defined, defining a sphere inscribed in the inner voxel without an adjacent voxel among the inner voxels, defining an on-sphere point on the sphere, and on the wall of the target object A point on the wall is defined, a division point is defined between the pair of points on the sphere and the point on the wall, and the division point and the center point of the voxel are used as the initial point. To do.
  • the present invention provides patch data storage means storing patch data representing a target object to be numerically analyzed with a plurality of polygons, parameter storage means for storing parameters necessary for performing the numerical analysis, and the target Voxel data storage means for storing voxel data obtained by dividing an analysis region including an object into a plurality of rectangular parallelepipeds, initial point data storage means for storing initial point data for performing region division in the analysis region, and the target Calculation in a calculation data generating apparatus comprising: divided area data storage means for storing divided area data obtained by dividing an object into a plurality of divided areas; and calculation data storage means for storing calculation data for performing the numerical analysis
  • the voxel data is defined based on the parameter stored in the parameter storage means.
  • the divided region data generation step selects an initial point closest to the center point of each voxel from the initial point data stored in the initial point data storage means,
  • the divided region is generated by specifying the divided region to which the voxel belongs.
  • the divided region data generation step defines a slice plane formed by a boundary surface of the voxel perpendicular to a predetermined axis and a cross section of a sphere centering on each of the initial points, A potential solid having different heights is defined in accordance with the distance from the initial point from the cross section, and the divided region on the slice plane is determined based on image data drawn by performing the three-dimensional hidden surface processing on the potential solid.
  • the division area is generated by performing the defining process on all the slice planes in the analysis area.
  • the initial point data generating step includes the step of generating a position within the target object from the patch data stored in the patch data storage unit and the voxel data stored in the voxel data storage unit. Selecting an inner voxel of the voxel to be defined, defining a sphere inscribed in the inner voxel without an adjacent voxel among the inner voxels, defining an on-sphere point on the sphere, and on the wall of the target object A point on the wall is defined, a division point is defined between the pair of points on the sphere and the point on the wall, and the division point and the center point of the voxel are used as the initial point. To do.
  • the present invention provides patch data storage means storing patch data representing a target object to be numerically analyzed with a plurality of polygons, parameter storage means for storing parameters necessary for performing the numerical analysis, and the target Voxel data storage means for storing voxel data obtained by dividing an analysis region including an object into a plurality of rectangular parallelepipeds, initial point data storage means for storing initial point data for performing region division in the analysis region, and the target On a calculation data generating apparatus comprising: divided area data storage means for storing divided area data obtained by dividing an object into a plurality of divided areas; and calculation data storage means for storing calculation data for performing the numerical analysis
  • a calculation data generation program for causing a computer to generate calculation data, which is stored in the parameter storage means Based on the parameters, the voxel data is defined, a voxel attribute is assigned to each voxel, and stored in the voxel data storage means, and the voxel center point is used to generate the voxe
  • a division area is defined that includes a plurality of voxels in the target object, and the defined division area data is stored in the division area data storage means.
  • Generates boundary data of the split area characterized in that to perform the calculation data generation step of storing the calculation data storage means boundary surface data as said calculation data to the computer.
  • the divided region data generation step selects an initial point closest to the center point of each voxel from the initial point data stored in the initial point data storage means,
  • the divided region is generated by specifying the divided region to which the voxel belongs.
  • the divided region data generation step defines a slice plane formed by a boundary surface of the voxel perpendicular to a predetermined axis and a cross section of a sphere centering on each of the initial points, A potential solid having different heights is defined in accordance with the distance from the initial point from the cross section, and the divided region on the slice plane is determined based on image data drawn by performing the three-dimensional hidden surface processing on the potential solid.
  • the division area is generated by performing the defining process on all the slice planes in the analysis area.
  • the initial point data generating step includes the step of generating a position within the target object from the patch data stored in the patch data storage unit and the voxel data stored in the voxel data storage unit. Selecting an inner voxel of the voxel to be defined, defining a sphere inscribed in the inner voxel without an adjacent voxel among the inner voxels, defining an on-sphere point on the sphere, and on the wall of the target object A point on the wall is defined, a division point is defined between the pair of points on the sphere and the point on the wall, and the division point and the center point of the voxel are used as the initial point. To do.
  • the present invention solves the problems of the conventional numerical analysis methods, the finite element method, the finite volume method, the voxel method, the improved method of the voxel method, and the particle method, and solves the problem without degrading the analysis accuracy. In this way, it is possible to reduce the work burden of creating calculation data to be input to a numerical analysis apparatus that can reduce the calculation load.
  • FIG. 1 It is a conceptual diagram which shows an example of the data model for calculation by the conventional finite element method. It is a conceptual diagram which shows an example of the data model for calculation by the conventional finite volume method. It is a table
  • FIG. 6 is a schematic diagram for explaining conditions under which a physical quantity conservation rule is satisfied when a two-dimensional triangular control volume is considered. It is a schematic diagram explaining the conditions where the conservation law of physical quantity is satisfied when the control volume of a sphere is considered. It is a schematic diagram shown about the vicinity search by a particle method. It is a schematic diagram which shows the control volume in this numerical analysis method. It is a schematic diagram which shows a two-dimensional triangular cell. It is a schematic diagram which shows the state which assembled the components designed by the different coordinate system. It is a schematic diagram which shows a mode that an element cross
  • FIG. 7 is a flowchart showing a processing operation in which a divided area data generation unit 23 generates divided area data and stores it in a divided area data storage unit 24.
  • 7 is a flowchart showing a processing operation in which a calculation data generation unit 25 generates calculation data from divided region data and stores the calculation data in a calculation data storage unit 27.
  • It is a block diagram which shows the structure of 2nd Embodiment.
  • FIG. 47 is a flowchart showing the operation of the inner voxel data generation unit 201 shown in FIG. 47 is a flowchart showing the operation of the on-wall point / on-sphere point data generation unit 203 shown in FIG. 47 is a flowchart showing an operation of a division point data generation unit 206 shown in FIG. 47 is a flowchart showing the operation of the initial point data output unit 208 shown in FIG.
  • FIG. 47 is a block diagram showing a modified example of the configuration shown in FIG. 46. 52 is a flowchart showing an operation of an inner voxel data correction unit 210 shown in FIG. 51. It is explanatory drawing which shows inner side voxel data.
  • FIG. 16 is a block diagram schematically showing the hardware configuration of the numerical analysis device A.
  • the numerical analysis device A is constituted by a computer such as a personal computer or a workstation, and includes a CPU 1, a storage device 2, a DVD (Digital Versatile Disc) drive 3, an input device 4, and an output device. 5 and a communication device 6.
  • a computer such as a personal computer or a workstation
  • the numerical analysis device A includes a CPU 1, a storage device 2, a DVD (Digital Versatile Disc) drive 3, an input device 4, and an output device. 5 and a communication device 6.
  • the CPU 1 is electrically connected to the storage device 2, the DVD drive 3, the input device 4, the output device 5, and the communication device 6.
  • the CPU 1 processes signals input from these various devices and outputs processing results. To do.
  • the storage device 2 is configured by an internal storage device such as a memory and an external storage device such as a hard disk drive, and stores information input from the CPU 1 and outputs information stored based on a command input from the CPU 1. Is.
  • the storage device 2 includes a program storage unit 2a and a data storage unit 2b.
  • the program storage unit 2a stores a numerical analysis program P.
  • the numerical analysis program P is an application program that is executed in a predetermined OS, and causes the numerical analysis apparatus A constituted by a computer to function so as to perform numerical analysis.
  • the numerical analysis program P causes the numerical analysis apparatus A to function as, for example, a calculation data model creation unit and a physical quantity calculation unit.
  • the numerical analysis program P has a pre-processing program P1, a solver processing program P2, and a post-processing program P3.
  • the preprocessing program P1 causes the numerical analysis device A to execute preprocessing (preprocessing) for executing solver processing, and causes the numerical analysis device A to function as calculation data model creation means, thereby calculating data for calculation. Create a model. Further, the pre-processing program P1 causes the numerical analysis apparatus A to execute setting of conditions necessary for executing solver processing, and further, a solver input data file F that summarizes the calculation data model and the set conditions. Execute creation of.
  • the preprocessing program P1 first causes the numerical analysis device A to acquire three-dimensional shape data including the analysis space, and this is acquired. Creation of an analysis region indicating an analysis space included in the three-dimensional shape data is executed.
  • the pre-processing program P1 forms a divided area for the numerical analysis apparatus A by dividing the entire analysis area into a finite number of areas.
  • the solver process only the discretized governing equations described in the numerical analysis method (discrete data derived based on the weighted residual integration method and using only the quantities that do not require Vertex and Connectivity are used.
  • the chemical governing equation is used. Therefore, when creating the calculation data model, the shape of the divided region can be arbitrarily selected under conditions that satisfy the conservation law.
  • the pre-processing program P1 causes the numerical analysis device A to each of the divided areas included in the analysis region indicating the created indoor space. A process of virtually arranging one control point with respect to the inside is executed, and control point arrangement information and volume data of a control volume occupied by each control point are stored.
  • the pre-processing program P1 instructs the numerical analysis device A to have a boundary area and a normal vector that are boundary surfaces between the divided regions. And the area and normal vector of these boundary surfaces are stored. Further, when the numerical analysis device A functions as a calculation data model creation means, the pre-processing program P1 creates connection information (Link) of the control volume (control point) and stores this Link.
  • Link connection information
  • the pre-processing program P1 instructs the numerical analysis apparatus A to control the volume of the control volume occupied by each control point, the area and normal vector of the boundary surface, and the arrangement information (coordinates) of the control points (ie, divided areas). ) And Link to create a data model for calculation.
  • the pre-processing program P1 allows the numerical analysis device A to set conditions necessary for executing the solver processing described above, setting of physical property values, setting of boundary conditions, setting of initial conditions, Set the calculation conditions.
  • the physical property values are air density, viscosity coefficient, and the like in the indoor space.
  • the boundary condition defines the law of exchange of physical quantities between control points, and is represented by the discretized governing equation based on the Navier-Stokes equation expressed by the above-described equation (10) and the equation (11). It is a discretized governing equation based on the continuity formula.
  • the boundary condition includes information indicating a divided region facing the boundary surface between the indoor space and the external space.
  • the initial condition indicates an initial physical quantity when executing the solver process, and is an initial value of the flow velocity of each divided region.
  • the calculation condition is a calculation condition in the solver process, for example, the number of iterations or a convergence criterion.
  • the pre-processing program P1 causes the numerical analysis device A to form a GUI (Graphical User Interface). More specifically, the pre-processing program P1 displays a graphic on the display 5a provided in the output device 5 and allows the keyboard 4a and the mouse 4b provided in the input device 4 to be operated.
  • GUI Graphic User Interface
  • the solver processing program P2 causes the numerical analysis apparatus A to perform solver processing, and causes the numerical analysis apparatus A to function as a physical quantity calculation apparatus. Then, the solver processing program P2 creates a solver input data file F including the volume of the control volume, the area of the boundary surface, and the normal vector that the calculation data model has when the numerical analysis device A functions as a physical quantity calculation means. Using this, the physical quantity in the analysis region is calculated.
  • the solver processing program P2 discretizes the Navier-Stokes formula and the continuous formula included in the solver input data file F with respect to the numerical analysis device A when the numerical analysis device A functions as a physical quantity calculation means.
  • the creation of the coefficient matrix and the creation of the data table for matrix formation are executed.
  • the solver processing program P2 allows the numerical analysis device A to function as a physical quantity calculation unit, with respect to the numerical analysis device A, a discretized governing equation based on the Navier-Stokes equation represented by the above-described equation (10)
  • the large-scale coarse matrix equation for matrix calculation shown in the following equation (58) is assembled from the discretized governing equation based on the continuous equation shown in the above equation (11).
  • Equation (58) [A] indicates a large-scale coarse matrix, [B] indicates a boundary condition vector, and [X] indicates a solution of the flow velocity.
  • the solver processing program P2 causes the numerical analysis apparatus A to assemble the incidental condition into a matrix equation. Then, the solver processing program P2 calculates the solution of the matrix equation by the CG method (conjugate gradient method), the update of the solution using the lower equation (59) of the solution, and the convergence condition of the numerical analysis device A. Make a decision and get the final calculation result.
  • CG method conjuggate gradient method
  • the post processing program P3 causes the numerical analysis device A to perform post processing, and causes the numerical analysis device A to execute processing based on the calculation result acquired in the solver processing. More specifically, the post processing program P3 causes the numerical analysis device A to execute calculation result visualization processing and extraction processing.
  • the visualization process is a process for causing the output device 5 to output, for example, cross-section contour display, vector display, isosurface display, and animation display.
  • the extraction process is to extract a quantitative value of an area designated by the worker and output it to the output device 5 as a numerical value or a graph, or to output a quantitative value of the area designated by the worker and file it. It is a process to execute. Further, the post processing program P3 causes the numerical analysis device A to execute automatic report generation, display and analysis of calculation residuals.
  • the data storage unit 2b includes a calculation data model M, boundary condition data D1 indicating boundary conditions, calculation condition data D2 indicating calculation conditions, physical property value data D3 indicating physical property values, and initial conditions.
  • a solver input data file F having initial condition data D4 to be shown, three-dimensional shape data D5, calculation result data D6, and the like are stored. Further, the data storage unit 2b temporarily stores intermediate data generated in the process of the CPU1.
  • the DVD drive 3 is configured to be able to take in the DVD medium X, and outputs data stored in the DVD medium X based on a command input from the CPU 1.
  • a numerical analysis program P is stored in the DVD medium X, and the DVD drive 3 outputs the numerical analysis program P stored in the DVD medium X based on a command input from the CPU 1.
  • the input device 4 is a man-machine interface between the numerical analysis device A and an operator, and includes a keyboard 4a and a mouse 4b which are pointing devices.
  • the output device 5 visualizes and outputs a signal input from the CPU 1, and includes a display 5a and a printer 5b.
  • the communication device 6 exchanges data between the numerical analysis device A and an external device such as the CAD device C, and is electrically connected to a network B such as an in-house LAN (Local Area Network). Yes.
  • the numerical analysis method includes pre-processing (step S1), solver processing (step S2), and post-processing (step S3).
  • the CPU 1 Prior to performing the numerical analysis method, the CPU 1 takes out the numerical analysis program P stored in the DVD medium X taken in the DVD drive 3 from the DVD medium X and stores it in the program storage unit 2a of the storage device 2. .
  • the CPU 1 executes numerical analysis based on the numerical analysis program P stored in the storage device 2. More specifically, the CPU 1 executes preprocessing (step S1) based on the preprocessing program P1 stored in the program storage unit 2a, and performs solver processing based on the solver processing program P2 stored in the program storage unit 2a. (Step S2) is executed, and post processing (Step S3) is executed based on the post processing program P3 stored in the program storage unit 2a.
  • the CPU 1 executes the pre-processing (step S1) based on the pre-processing program P1
  • the numerical analysis device A functions as a calculation data model creation unit.
  • the CPU 1 executes solver processing (step S2) based on the solver processing program P2, so that the numerical analysis device A functions as physical quantity calculation means.
  • FIG. 18 is a flowchart showing the pre-processing (step S1).
  • the CPU 1 when the pre-processing (step S1) is started, the CPU 1 causes the communication device 6 to acquire the three-dimensional shape data D5 including the vehicle interior space from the CAD device C via the network B. (Step S1a).
  • the CPU 1 stores the acquired three-dimensional shape data D5 in the data storage unit 2b of the storage device 2.
  • the CPU 1 executes creation of a calculation data model (step S1d). More specifically, the CPU 1 first creates an analysis region divided by the divided region including the entire region of the analysis space from the three-dimensional shape data D5.
  • the divided areas that make up the analysis area are created without a restriction on the geometric shape of the divided areas in order to create a calculation data model without Vertex and Connectivity.
  • a data model for calculation can be created. That is, in creating the calculation data model, the divided areas constituting the analysis area can take an arbitrary shape.
  • the CPU 1 virtually arranges one control point in each divided area included in the analysis area indicating the indoor space.
  • the CPU 1 calculates the center of gravity of the divided regions and virtually arranges one control point for each center of gravity.
  • the CPU 1 calculates the control point arrangement information and the volume of the control volume occupied by each control point (volume of the divided area where the control point is arranged), and temporarily stores it in the data storage unit 2b of the storage device 2.
  • the CPU 1 calculates the area and normal vector of the boundary surface, which is the boundary surface between the divided regions, and temporarily stores the area and normal vector of these boundary surfaces in the data storage unit 2 b of the storage device 2.
  • the CPU 1 creates a link and temporarily stores this link in the data storage unit 2 b of the storage device 2.
  • the CPU 1 creates a database by storing the control point arrangement information, the volume of the control volume occupied by each control point, the boundary area and normal vector, and the link stored in the data storage unit 2b.
  • a calculation data model M is created, and the created calculation data model is stored in the data storage unit 2 b of the storage device 2.
  • step S1d the analysis area including the indoor space is equally divided into the divided areas having the same shape, the divided areas protruding from the indoor space are further deleted, and the analysis area generated as a result
  • the final analysis region K2 is created by filling a new divided region in the gap between the space and the indoor space. For this reason, it is set as the state filled with the division area
  • Step S1d a configuration is adopted in which divided areas are formed first, then control points are arranged, and the volume of the divided area in which the elements are arranged is assigned to each control point.
  • each control point is weighted based on a radius until it hits a different control point or a distance to a control point (associated with Link) that is connected.
  • the weight of the control point i is wi
  • the reference volume is V +
  • the volume Vi assigned to the control point i is represented by the following equation (60).
  • the volume assigned to each control point can be obtained from equations (61) and (62).
  • the CPU 1 forms a GUI, and when a command (for example, a command indicating the density of the divided region or a command indicating the shape of the divided region) is input from the GUI. Executes the process reflecting the command. Therefore, the operator can arbitrarily adjust the arrangement of the control points and the shape of the divided areas by operating the GUI. However, the CPU 1 checks the three conditions for satisfying the conservation rule stored in the numerical analysis program, and if the command input from the GUI deviates from the condition, the CPU 5 displays that fact on the display 5a. .
  • a command for example, a command indicating the density of the divided region or a command indicating the shape of the divided region
  • the CPU 1 performs property value data setting (step S1e). Specifically, the CPU 1 displays a physical property value input screen on the display 5a using the GUI, and a signal indicating the physical property value input from the keyboard 4a or the mouse 4b is used as the physical property value data D3 in the data storage unit 2b.
  • the physical property values are set by temporarily storing them. Note that the physical property values referred to here are characteristic values of the fluid (that is, air) in the indoor space, such as air density and viscosity coefficient.
  • the CPU 1 sets boundary condition data (step S1f). Specifically, the CPU 1 displays a boundary condition input screen on the display 5a using the GUI, and a signal indicating the boundary condition input from the keyboard 4a or the mouse 4b is used as the boundary condition data D1 as the data storage unit 2b.
  • the boundary condition data is set by temporarily storing the data.
  • the boundary conditions referred to here are the discretized governing equations governing the physical phenomenon of the indoor space, the specific information of the control point facing the boundary surface between the indoor space and the external space, and the space between the indoor space and the external space Indicates heat transfer conditions.
  • the discretized governing equation (10) based on the above-mentioned Navier-Stokes formula is used as the discretized governing equation.
  • a discretized governing equation (11) based on the continuity equation is used.
  • the CPU 1 sets initial condition data (step S1g). Specifically, the CPU 1 uses the GUI to display an initial condition input screen on the display 5a, and a signal indicating the initial condition input from the keyboard 4a or the mouse 4b is used as the initial condition data D4 in the data storage unit 2b.
  • the initial condition data is set by temporarily storing the data.
  • the initial condition referred to here is an initial flow velocity at each control point (each divided region).
  • the CPU 1 sets calculation condition data (step S1h). Specifically, the CPU 1 displays a calculation condition input screen on the display 5a using the GUI, and a signal indicating the calculation condition input from the keyboard 4a or the mouse 4b is used as the calculation condition data D2 in the data storage unit 2b.
  • the calculation condition data is set by temporarily storing the data.
  • the calculation condition referred to here is a calculation condition in the solver process (step S2), and indicates, for example, the number of iterations and a convergence criterion.
  • the CPU 1 creates a solver input data file F (step S1i). Specifically, the CPU 1 sets the calculation data model M created in step S1d, the property value data D3 set in step S1e, the boundary condition data D1 set in step S1f, and set in step S1g.
  • the solver input data file F is created by storing the initial condition data D4 thus set and the calculation condition data D2 set in step S1h in the solver input data file F.
  • the solver input data file F is stored in the data storage unit 2b.
  • step S2a When the pre-processing (step S1) as described above is completed, the CPU 1 executes the solver processing (step S2) shown in the flowchart of FIG. 19 based on the solver processing program P2. As shown in FIG. 19, when the solver process (step S2) is started, the CPU 1 acquires the solver input data file F created in the preprocess (step S1) (step S2a).
  • the solver input data file F is already stored in the data storage unit 2b. Therefore, step S2a can be omitted.
  • the pre-processing (step S1) and the solver processing (step S2) are executed in different apparatuses, it is necessary to acquire the solver input data file F conveyed by the network or the removable disk. It is necessary to perform S2a.
  • the CPU 1 determines the consistency of solver input data (step S2b).
  • the solver input data refers to data stored in the solver input data file F, and includes a calculation data model M, boundary condition data D1, calculation condition data D2, physical property value data D3, and initial condition data D4.
  • the CPU 1 determines the consistency of the solver input data by analyzing whether all the solver input data that can execute the physical quantity calculation in the solver process is stored in the solver input data file F. If the CPU 1 determines that the solver input data is inconsistent, the CPU 1 displays an error on the display 5a (step S2b), and further displays a screen for inputting data of the inconsistent portion. . Thereafter, the CPU 1 adjusts solver input data based on a signal input from the GUI (step S2c), and executes step S2a again.
  • step S2e the CPU 1 determines that the solver input data is consistent in step S2b, it executes an initial calculation process (step S2e). Specifically, the CPU 1 stores the discretized governing equation stored in the boundary condition data D1 (ie, the discretized governing equation (10) based on the Navier-Stokes formula and the discretized governing equation (11) based on the continuous formula)). An initial calculation process is performed by creating a discretized coefficient matrix from the above and further creating a data table for matrix calculation.
  • the CPU 1 assembles a large-scale coarse matrix equation (step S2f). Specifically, the CPU 1 uses the discretized governing equation (10) based on the Navier-Stokes formula and the discretized governing equation (11) based on the continuous formula to obtain a large matrix calculation formula shown in the above formula (58). Assemble large scale matrix equation.
  • the CPU 1 determines whether or not an incidental condition such as incompressibility or contact exists in the discretized governing equation.
  • This incidental condition is stored in the solver input data file F as boundary condition data, for example. If the CPU 1 determines that the incidental condition exists in the discretized governing equation, the CPU 1 executes the large-scale matrix equation calculation (step S2i) after incorporating the large-scale matrix equation of the incidental condition (step S2h). To do.
  • the CPU 1 determines that the incidental condition does not exist in the discretized governing equation, the CPU 1 calculates the large-scale matrix equation (step S2i) without executing the incorporation of the large-scale matrix equation under the incidental condition (step S2h). Execute. Then, the CPU 1 solves the large-scale matrix equation by, for example, the CG method (conjugate gradient method), and updates the solution (step S2j) using the above-described equation (59).
  • the CPU 1 determines whether or not the residual of Expression (59) has reached the convergence condition (step S2g). Specifically, the CPU 1 calculates the residual of Expression (59) and compares it with the convergence condition included in the calculation condition data D2, thereby determining whether or not the residual of Expression (59) has reached the convergence condition. Judgment is made. If it is determined that the residual has not reached the convergence condition, the CPU 1 updates the physical property value and then executes step S2g again. That is, the CPU 1 repeatedly performs steps S2f to S2g while updating the physical property values until the residual of the equation (59) reaches the convergence condition.
  • step S2l the CPU 1 acquires the calculation result by storing the solution of the physical quantity calculated in the immediately preceding step S2i as calculation result data in the data storage unit 2b.
  • solver processing step S2
  • the CPU 1 executes the post processing (step S3) based on the post processing program P3. Specifically, for example, the CPU 1 generates, for example, sectional contour data, vector data, isosurface data, and animation data from the calculation result data based on a command input from the GUI, and the data is output to the output device 5. Make it visible.
  • the CPU 1 extracts a quantitative value (calculation result) in a part of the indoor space based on a command input from the GUI to obtain a numerical value or a graph, and causes the output device 5 to visualize the numerical value or the graph. Output numerical values and graphs as a file. Further, based on a command input from the GUI, for example, the CPU 1 generates an automatic report from the calculation result data, displays and analyzes the calculation residual, and outputs the result.
  • the calculation data model M having the volume of the control volume, the area of the boundary surface, and the normal vector is created by preprocessing, and the solver The physical quantity in each control volume is calculated by using the volume of the control volume, the area of the boundary surface, and the normal vector included in the calculation data model M in the processing.
  • the volume of the control volume, the area of the boundary surface, and the normal vector are calculated by using Vertex and Connectivity in the solver processing. There is no need. Therefore, it is possible to reduce the calculation load in the solver process. Therefore, according to the numerical analysis device A, the numerical analysis method, and the numerical analysis program, it is possible to reduce the work load in creating the calculation data model and reduce the calculation load in the solver process.
  • the analysis area is filled with the divided areas without overlapping. Therefore, the above three conditions (a) to (c) for satisfying the storage side are satisfied, and the flow rate can be calculated while satisfying the conservation law.
  • the calculation data model M easily creates a calculation data model from mesh data used in the conventional finite volume method or finite element method, particle data used in the conventional particle method, or simple point cloud data. be able to. Even in this case, it is not necessary to correct the divided area in the boundary area with the external space like the voxel method.
  • a calculation data model is created from mesh data, it can be easily performed by grasping each element as a divided area (control volume occupied by a control point).
  • the closed space obtained by filling the analysis space with the closed space surrounding the control points arranged in the analysis region is divided into regions (control volume occupied by control points). This can be easily done.
  • the work load of the calculation data model in the pre-processing can be greatly reduced, and the calculation load in the solver processing can be reduced. It becomes possible. Therefore, even when the shape of the analysis region changes in time series, that is, when the analysis region includes a moving boundary, as shown in the flowchart of FIG. By repeatedly performing the process, the physical quantity can be calculated within a realistic time.
  • a value obtained by weighting and averaging the flow velocity at the control point across the boundary surface according to the ratio of the distance from the control point to the boundary surface is calculated on the boundary surface. It is good also as a flow rate.
  • the flow velocity in the indoor space can be obtained more accurately as compared with the case where the flow velocity at the boundary surface is simply the average of the flow velocity at the control point sandwiching the boundary surface.
  • the data model for calculation needs to have, as data, the ratio ⁇ indicating which internal dividing point of the line segment connecting the control point and the control point. is there. Therefore, a calculation data model M further including a ratio of the distance from each control point arranged inside the adjacent control volume to the boundary surface sandwiched between the control volumes is created by pre-processing, and based on this ratio Calculate the flow velocity at the boundary surface by solver processing.
  • the normal vector should be replaced with the unit vector of the distance vector connecting the control points. Can do. However, in such a case, it is necessary to provide the calculation data model with the distance vector or data indicating the position coordinates of the control point for calculating the distance vector. For this reason, a calculation data model M further including a distance vector connecting control points arranged in adjacent control volumes or the coordinates of the control point for calculating the distance vector is created by pre-processing, and the distance is calculated.
  • the flow velocity is calculated by replacing the distance vector with the normal vector of the boundary surface.
  • the configuration for obtaining the air flow velocity by numerical analysis using the Navier-Stokes equation which is a modified example of the momentum conservation equation, and the discretized governing equation derived from the continuity equation has been described.
  • the present invention is not limited to this.
  • a discretized governing equation derived from at least one of a mass conservation equation, a momentum conservation equation, an angular momentum conservation equation, an energy conservation equation, an advection-diffusion equation, and a wave equation is used.
  • the physical quantity can be obtained by numerical analysis.
  • the present invention is not limited to this, and other amounts (for example, the perimeter of the boundary surface) can be used as the boundary surface characteristic amount.
  • the volume of the divided area is regarded as the volume of the control volume occupied by the control points arranged inside the divided area.
  • the present invention is not limited to this, and it is not always necessary to arrange control points inside the divided areas.
  • the numerical analysis can be performed by replacing the volume of the control volume occupied by the control point with the volume of the divided area.
  • the configuration in which the numerical analysis program P is stored in the DVD medium X and can be transported has been described.
  • the present invention is not limited to this, and a configuration in which the numerical analysis program P is stored in another removable medium and can be transported can also be adopted.
  • the pre-processing program P1 and the solver processing program P2 can be stored in separate removable media so that they can be transported.
  • the numerical analysis program P can also be transmitted via a network.
  • FIG. 21 is a block diagram showing the configuration of the embodiment.
  • symbol D is a calculation data generation device for generating calculation data, and is constituted by a computer device.
  • the calculation data generation device D is connected to the computer network B, and information communication is possible with the CAD device C connected to the computer network.
  • Reference numeral 4 denotes an input unit composed of a keyboard and a mouse.
  • Reference numeral 5 denotes an output device composed of a liquid crystal display device or the like.
  • Reference numeral 11 denotes a parameter input unit that reads parameters input from the input device 4.
  • Reference numeral 12 denotes a parameter storage unit that stores parameters necessary for numerical calculation input by the parameter input unit 11.
  • Reference numeral 13 denotes a communication unit that performs information communication with the CAD apparatus C via the computer network B.
  • Reference numeral 14 denotes a shape data input unit that inputs shape data of an object to be analyzed from the CAD apparatus C via the communication unit 13.
  • Reference numeral 15 denotes a shape data storage unit that stores the shape data input by the shape data input unit 14.
  • Reference numeral 16 denotes a patch data generation unit that inputs the shape data stored in the shape data storage unit 15 and generates patch data of the object to be analyzed (data representing the object in a polygon).
  • Reference numeral 17 denotes a patch data storage unit that stores the patch data generated by the patch data generation unit 16.
  • Reference numeral 18 denotes a voxel data generation unit that inputs parameters stored in the parameter storage unit 12 and patch data stored in the patch data storage unit 17 and generates voxel data that defines an analysis region. .
  • Reference numeral 19 denotes a voxel data storage unit that stores the voxel data generated by the voxel data generation unit 18.
  • Reference numeral 20 denotes an initial point data generation unit that generates initial point data based on the voxel data stored in the voxel data storage unit 19.
  • Reference numeral 21 denotes an initial point data storage unit that stores the initial point data generated by the initial point data generation unit 20.
  • Reference numeral 22 denotes a data thinning unit that performs a process of thinning out the initial points stored in the initial point data storage unit 21 and updating the initial point data stored in the initial point data storage unit 21.
  • Reference numeral 23 denotes a divided region that receives the initial point data stored in the initial point data storage unit 21 and the voxel data stored in the voxel data storage unit 19 and generates divided region data of the analysis target object. It is a data generation unit.
  • Reference numeral 24 denotes a divided region data storage unit that stores the divided region data generated by the divided region data generation unit 23.
  • Reference numeral 25 denotes a calculation data generation unit that receives the divided region data stored in the divided region data storage unit 24 and generates calculation data.
  • Reference numeral 26 denotes an intermediate data storage unit that stores intermediate data when the calculation data generation unit 25 generates calculation data.
  • Reference numeral 27 denotes a calculation data storage unit that stores the calculation data generated by the calculation data generation unit 25. The data stored in the calculation data storage unit 27 is input data for numerical analysis.
  • FIG. 22 is a diagram showing a table structure of the parameter storage unit 12 shown in FIG.
  • the parameter storage unit 12 stores parameters input from the input device 4 by the parameter input unit 11, and includes analysis region data, analysis region reference point data, and voxel division number data.
  • the analysis area data is data for defining an analysis area composed of a rectangular parallelepiped, and is composed of coordinate values of two points of the rectangular parallelepiped.
  • the analysis area reference point data is a coordinate value of a point existing in the object to be analyzed, and is used to determine the inside and outside of the object.
  • Voxel division number data is a rectangular parallelepiped of the analysis region that includes the object to be analyzed completely (a rectangular solid defined by two analysis region data of points (Xmin, Ymin, Zmin) and points (Xmax, Ymax, Zmax)). This is the number of divisions in the direction of each axis of the Cartesian coordinate system. These data are input from the input device 4 by the analysis operator.
  • FIG. 23 is a diagram showing an example of shape data stored in the shape data storage unit 15 shown in FIG.
  • the shape data storage unit 15 stores data defining the shape of the analysis target object designed by the CAD device C.
  • the analysis target object will be described as having a cylindrical shape.
  • the shape data is composed of, for example, coordinate values for defining a ridge line of the shape.
  • the analysis region reference point (Bx, By, Bz) is defined inside the cylinder, so that the side where the analysis region reference point exists is defined on the object.
  • Bx, By, Bz the analysis region reference point
  • FIG. 24 is a diagram illustrating the positional relationship between the analysis region and the analysis target object.
  • the analysis target object has a positional relationship that is completely included in the rectangular parallelepiped defined by the analysis region data.
  • FIG. 25 is a diagram showing an example of patch data stored in the patch data storage unit 17 shown in FIG.
  • the patch data is data representing the outer shape of the object to be analyzed by a polygon (polygon).
  • this polygon is called a patch.
  • the patch data generation unit 16 reads the shape data, generates patch data using a known method, and stores the patch data in the patch data storage unit 17. Since any known generation method can be used as the patch data generation method, detailed description of the patch data generation processing is omitted here.
  • the example shown in FIG. 25 shows an example in which triangular patch data is generated.
  • Each polygon (here, a triangle) is defined by the coordinate value of each vertex (P1, P2, P3).
  • the cylinder is expressed as a hexagonal column, but actually, it is expressed as a polygonal column that can obtain a desired calculation accuracy.
  • FIG. 26 is a diagram showing a table structure of the patch data storage unit 17 shown in FIG.
  • the patch data storage unit 17 includes the number of patches generated on the object to be analyzed, and for each patch (here, a triangle), the three-dimensional coordinate values of the vertices and the patch ID that can uniquely identify the patch. Associated and stored.
  • FIG. 27 is a diagram illustrating a configuration of a voxel.
  • a voxel is a small rectangular parallelepiped obtained by dividing an analysis region (a rectangular parallelepiped region) defined by analysis region data based on voxel division number data (Nx, Ny, Nz).
  • Nx, Ny, Nz voxel division number data
  • FIG. 28 is a diagram showing a table structure of the voxel data storage unit 19 shown in FIG.
  • the voxel data storage unit 19 includes a three-dimensional table that can store Nx ⁇ Ny ⁇ Nz voxel attribute data, and has a table structure that matches the division of voxels.
  • the voxel attribute data stores a value indicating one of the three attributes.
  • the first attribute is an attribute indicating that the voxel intersects with the patch, and stores the patch ID of the intersecting patch.
  • the second attribute is an attribute indicating voxel existing inside the analysis target object, and -2 is stored.
  • the third attribute is an attribute indicating that the voxel exists outside the object to be analyzed, and ⁇ 1 is stored.
  • FIG. 29 is a diagram illustrating a method for obtaining data defining each voxel.
  • Each voxel is defined by a center point coordinate value of the voxel and a dimension in each axial direction.
  • the dimensions of each voxel (Sx, Sy, Sz: the length of the side in the X direction, the length of the side in the Y direction, the length of the side in the Z direction) are all the same, and the length of each divided region in the axial direction Can be obtained by dividing by the number of voxel divisions.
  • the center coordinate values (Xc, Yc, Zc) are the voxel position (i, j, k: position in X direction (number), position in Y direction, position in Z direction), the size of the divided area, From the voxel division number, it can be obtained by a simple calculation formula. Since data (center coordinate value and dimension) for specifying one voxel can be obtained by a simple calculation formula, only the attribute data is stored in the voxel data storage unit 19 so as to be obtained by calculation when necessary. Is stored, and the central coordinate values and dimensions are not stored.
  • FIG. 30 is a diagram showing a table structure of the initial point data storage unit 21 shown in FIG.
  • the initial point data storage unit 21 stores, for each of the initial points, an initial point ID that can uniquely identify each initial point and a three-dimensional coordinate value of the initial point in association with each other.
  • the This initial point is generated from the center point of each voxel, and the initial point data after the data thinning unit 22 thins the initial point and deletes unnecessary initial points is stored.
  • FIG. 31 is a diagram showing a table structure of the divided area data storage unit 24 shown in FIG.
  • the divided area data storage unit 24 includes a three-dimensional table capable of storing Nx ⁇ Ny ⁇ Nz (the same number as voxels) divided area data, and has a table structure that matches the division of voxels.
  • the segment area data stores a value indicating one of two states. One state indicates a state included in the divided region, and the initial point ID of the initial point closest to the center coordinate of the voxel is stored. The initial point ID stored here corresponds to the divided region ID.
  • the other state indicates a state of being a voxel existing outside the object to be analyzed, and ⁇ 1 is stored.
  • the divided area is obtained by dividing the analysis target object into a plurality of three-dimensional areas, and the voxel attributes stored in the voxel data storage 19 are stored as they are for voxels existing outside the analysis target object. .
  • FIG. 32 is a diagram showing a table structure of the intermediate data storage unit 26 shown in FIG.
  • the intermediate data storage unit 26 includes a region for storing a combination of divided region IDs to which adjacent voxels having different divided region IDs belong, a normal vector, and an area of the boundary surface obtained from the length of the normal vector. ing.
  • This storage area stores intermediate data obtained when the divided area data stored in the divided area data storage unit 24 is aggregated in order to generate calculation data.
  • FIG. 33 is a diagram showing a table structure of the calculation data storage unit 27 shown in FIG.
  • the calculation data storage unit 27 stores the number of divided areas (the same number as the number of initial points), and the centroid coordinates of the divided areas and the volume of the divided areas for each divided area ID that can uniquely identify the divided areas.
  • the number of boundary surfaces of the divided regions, a combination of divided region IDs, a normal vector, and an area of the boundary surface are stored for each boundary surface ID that can uniquely identify the boundary surface.
  • an operator who intends to create calculation data performs an instruction operation to input shape data to the shape data input unit 14 from the input device 4.
  • the shape data input unit 14 inputs shape data of the object to be analyzed from the CAD device C via the communication unit 13 and stores the input shape data in the shape data storage unit 15.
  • the patch data generation unit 16 reads the shape data from the shape data storage unit 15, generates patch data, and stores the patch data in the patch data storage unit 17.
  • the patch data shown in FIG. 26 is stored in the patch data storage unit 17.
  • the operator inputs parameters from the input device 4.
  • the parameter input unit 11 reads the parameters input from the input device and stores them in the parameter storage unit 12. As a result, the parameters shown in FIG. 22 are stored in the parameter storage unit 12.
  • the operator performs an operation to instruct generation of calculation data from the input device 4.
  • the voxel data generation unit 18 inputs the parameters stored in the parameter storage unit 12 and the patch data stored in the patch data storage unit 17 to generate voxel data.
  • FIG. 34 is a flowchart showing a processing operation in which the voxel data generation unit 18 shown in FIG. 21 generates voxel data.
  • the voxel data generation unit 18 reads the analysis area data and the voxel division number data stored in the parameter storage unit 12, defines voxels from these data, and obtains the center coordinates and dimensions of each voxel (step) S11). Then, the voxel data generation unit 18 selects one defined voxel (step S12).
  • the voxel data generation unit 18 refers to the patch data stored in the patch data storage unit 17 and geometrically calculates whether the selected voxel and the patch intersect (step S13). Then, the voxel data generation unit 18 determines whether or not the selected voxel and the patch intersect (step S14). As a result of this determination, if they do not intersect, the voxel data generation unit 18 obtains the positional relationship between the selected voxel and the analysis target object (step S15), and determines whether or not the selected voxel is an external region of the analysis target object. Determination is made (step S16).
  • ⁇ 1 (a value indicating the voxel outside the object to be analyzed) is stored in the storage area of the selected voxel in the voxel data storage unit 19. If it is a voxel located in the interior (step S17), -2 (a value indicating the voxel inside the object to be analyzed) is stored (step S18).
  • the voxel data generation unit 18 stores the patch ID of the intersecting patch in the storage area of the selected voxel in the voxel data storage unit 19 (step S19). Then, the voxel data generation unit 18 determines whether or not processing has been performed for all of the defined voxels (step S20), and the processing operations of steps S12 to S19 are repeated until attribute data is stored for all the voxels. By this processing operation, the voxel data storage unit 19 stores the attribute data related to all the voxels.
  • the initial point data generation unit 20 obtains center coordinates for each voxel stored in the voxel data storage unit 19, and sets the center coordinate values as initial values.
  • the initial point ID is assigned to each initial point and stored in the initial point data storage unit 21.
  • the initial point data storage unit 21 (FIG. 30) stores the same number of initial points as the voxels.
  • the data thinning unit 22 thins out the initial point data in order to reduce the number of initial points stored in the initial point data storage unit 21.
  • the thinning process performed here is performed using a known method. For example, a predetermined number of initial point data may be deleted at a predetermined space interval. Then, the data thinning unit 22 deletes the initial point data to be deleted from the initial point data storage unit 21, counts the number of remaining initial point data, and stores the initial point number in the initial point data storage unit 21. To do.
  • the divided region data generation unit 23 generates divided region data by referring to the initial point data stored in the initial point data storage unit 21 and the voxel data stored in the voxel data storage unit 19. Then, the data is stored in the divided area data storage unit 24.
  • FIG. 35 is a flowchart showing a processing operation in which the divided region data generation unit 23 generates divided region data and stores it in the divided region data storage unit 24.
  • the divided region data generation unit 23 stores all ⁇ 1 in the table of the divided region data storage unit 24 (step S21).
  • the divided region data generation unit 23 selects one voxel from voxels whose voxel attribute data stored in the voxel data storage unit 19 is -2 or patch ID (step S22). Find the center coordinates of the selected voxels.
  • the divided region data generation unit 23 refers to the initial point data storage unit 21 and selects the initial point closest to the obtained voxel center coordinates (the shortest straight line distance) (step S23), and selects the selected initial point.
  • the initial point ID of the point is stored in the storage area of the selected voxel in the divided area data storage unit 24 (step S24).
  • the divided region data generation unit 23 determines whether or not processing has been performed for all of the voxels (step S25), and the divided region data (initial point ID) is stored for all the voxels in steps S22 to S24. Repeat the processing operation. With this processing operation, the divided region data storage unit 24 stores, for all voxels, either the divided region ID (initial point ID) to which the voxel belongs or ⁇ 1.
  • the calculation data generation unit 25 reads the divided area data stored in the division area data storage unit 24, generates calculation data, and stores it in the calculation data storage unit 27.
  • FIG. 36 is a flowchart illustrating a processing operation in which the calculation data generation unit 25 generates calculation data from the divided region data and stores the calculation data in the calculation data storage unit 27.
  • the calculation data generating unit 25 refers to the divided region data storage unit 24, and the reference voxel is selected from the voxels in which the divided region ID is stored as divided region data (-1 is not stored). Is selected (step S31).
  • the calculation data generation unit 25 refers to the divided region data storage unit 24 and identifies six adjacent voxels (up / down / left / right and front / back voxels) in contact with the selected reference voxel (step S32).
  • the calculation data generation unit 25 selects one adjacent voxel from the specified six adjacent voxels (step S33), and specifies a divided region to which each of the reference voxel and the selected adjacent voxel belongs. This division area is specified by a division area ID stored as division area data. Then, the calculation data generation unit 25 determines whether or not the two divided region IDs are the same (step S35). As a result of this determination, if the divided region IDs are the same, the process returns to step S33 to select the next adjacent voxel.
  • the calculation data generating unit 25 refers to the intermediate data storage unit 26 to search whether a combination of the two divided region IDs has already been registered (step S36). ). Then, the calculation data generation unit 25 determines whether or not a combination of two divided region IDs has already been registered (step S37). If not, the two divided region IDs are stored in the intermediate data storage unit. 26 (step S38). If the result of determination is that a combination of two divided area IDs has already been registered, the divided area ID is not registered.
  • the calculation data generation unit 25 writes the normal vector of the surface where the reference voxel is in contact with the selected adjacent voxel into the intermediate data storage unit 26. At this time, if the normal vector has already been written, the calculation data generation unit 25 adds the newly obtained normal vector to the written normal vector and newly stores the intermediate data. The data is written in the unit 26 (step S39).
  • the calculation data generation unit 25 determines whether or not all six adjacent voxels have been processed (step S40), and repeats the processes of steps S33 to S39 until the processing for the six adjacent voxels is completed. Then, when the processing for the six adjacent voxels is completed, it is determined whether all voxels have been processed (all voxels have been selected as reference voxels) (step S41), and all voxels (non--1 voxels) are determined. Steps S31 to S40 are repeated until the processing for is completed. As a result of this processing operation, the intermediate vector storage unit 26 has obtained an addition value of normal vectors for the combination of adjacent divided region IDs.
  • the calculation data generation unit 25 obtains the length of the normal vector from the addition value of the normal vectors for each combination of the two divided region IDs, and uses the length of the normal vector as the area of the boundary surface.
  • the data is stored in the intermediate data storage unit 26 (step S42).
  • the calculation data generation unit 25 obtains the number of divided regions and the number of boundary surfaces from the combination of the two divided region IDs stored in the intermediate data storage unit 26 (step S43).
  • the calculation data generation unit 25 generates calculation data based on the divided region data stored in the divided region data storage unit 24 and the intermediate data stored in the intermediate data storage unit 26. And stored in the calculation data storage unit 27. At this time, the calculation data generation unit 25 multiplies the centroid position coordinates of each divided region and the volume of the divided region (the number of voxels by the volume of the voxel from the divided region data stored in the divided region data storage unit 24. ) And stored in the calculation data storage unit 27. In addition, the calculation data generation unit 25 stores the intermediate data stored in the intermediate data storage unit 26 in the calculation data storage unit 27, and calculates the number of divided areas and the number of boundary surfaces obtained previously. The data is stored in the calculation data storage unit 27. With this processing operation, the calculation data shown in FIG. 33 is generated.
  • calculation data can be generated by simple arithmetic processing, and therefore, the workload of the analysis worker can be reduced.
  • FIG. 37 is a block diagram showing the configuration of the embodiment.
  • the same parts as those in the apparatus according to the first embodiment shown in FIG. 21 are denoted by the same reference numerals, and the description thereof is omitted.
  • the apparatus shown in this figure is different from the apparatus shown in FIG. 21 in that a graphic board 28 that can perform color three-dimensional drawing is newly provided, and accordingly, the processing operation of the divided region generation unit 231 is different.
  • FIG. 38 is a diagram showing a functional configuration of the graphic board 28 shown in FIG.
  • the graphic board 28 has a function of inputting scale adjustment data and triangle data and outputting pixel data as output data.
  • the triangle drawing unit in the graphic board 28 inputs the scale adjustment data and the triangle data, and draws the triangle in the image buffer. Further, in order to store information on the depth direction of the triangle that is a three-dimensional shape, a Z buffer that stores the Z coordinate (the coordinate in the depth direction) of the pixel is provided. Then, the pixel division information of the image buffer obtained by drawing a plurality of triangles is used as the division region ID as it is to execute the region division processing.
  • the scale adjustment data includes drawing area data (excluding the z coordinate of the analysis area data), pixel division number data (excluding Nz of the voxel division number data), and depth adjustment data (z coordinate of the analysis area data). Value).
  • the triangle data is composed of coordinate values of three vertices of the triangles corresponding to the number of triangles to be drawn.
  • FIG. 39 is a diagram showing a coordinate system of the graphic board 28 shown in FIG.
  • the image buffer and the Z buffer in the graphic board 28 have the same coordinate system, and the coordinate system is determined by the drawing area data (Xmax, Xmin, Ymax, Ymin) output from the divided area data generation unit 231.
  • Each pixel data is determined from the drawing area data and the pixel division number data, and has the same dimensions as the voxel.
  • the allowable maximum value and the allowable minimum value of the Z coordinate are determined by the depth adjustment data.
  • the figure to be drawn on the graphic board 28 is a three-dimensional object indicated by the symbol P in FIG. 39, and this three-dimensional object is referred to as a potential solid here.
  • FIG. 40 is a diagram illustrating a configuration of a potential solid.
  • the potential solid is a shape obtained by rotating the graph shape of the function f (d) about the axis.
  • ⁇ h is the distance between the initial point and the Z slice plane
  • R0 is the radius of the sphere.
  • the center coordinates of the sphere are the coordinates of the initial point stored in the initial point data storage unit 21. That is, the sphere is a sphere having a predetermined radius around the initial point.
  • the radius is obtained as follows. First, if the volume inside the analysis object (the number of voxels whose voxel attribute is ⁇ 2 is multiplied by the voxel volume) is V0 and the number of initial points is Npart, it is assigned to one initial point.
  • the average volume ⁇ V can be obtained by dividing V0 by the number of initial points.
  • this average volume ⁇ V is a rectangular parallelepiped
  • the length of one side of the rectangular parallelepiped is obtained by the cube root of the average volume ⁇ V.
  • the sphere with which the vertex of the rectangular parallelepiped having the length of one side is inscribed is a sphere to be obtained. That is, the distance from the center of the rectangular parallelepiped to the vertex is the radius of the sphere.
  • the cross section of this sphere and the sphere in the Z slice plane is the bottom surface of the potential solid.
  • the potential solid has a mountain shape, and the height of the mountain increases as the distance between the initial point and the Z slice plane becomes shorter.
  • the Z slice plane is a plane obtained by slicing at the boundary of voxels in the Z direction of the voxels shown in FIG. That is, there are as many Z slice planes as the voxel division number Nz.
  • FIG. 41 is a diagram showing a configuration of triangle data input to the graphic board 28.
  • the triangle data is data representing the surface of the potential solid with patch data of a plurality of triangles.
  • Each triangle is represented by the three-dimensional coordinate values of the three vertices of vertices 1, 2, and 3.
  • the initial point located at the center of the sphere used to define this triangle is used.
  • An initial point ID is assigned as a triangular ID. That is, the same triangle ID (initial point ID) is assigned to all triangles representing one potential solid.
  • FIG. 42 is a diagram showing a triangle drawing process in the graphic board 28.
  • the triangle drawing unit draws the first triangle in the image buffer.
  • the image buffer is drawn using the triangle ID value as the display color.
  • the triangle drawing unit writes the Z coordinate value of the triangle in the Z buffer.
  • the value written in the Z buffer is compared with the value of the newly written triangle, and the value in the Z buffer is updated only when the Z coordinate value is large.
  • only the pixels for which the Z buffer has been updated are written into the image buffer using the new triangle ID value as the display color.
  • a result equivalent to the hidden surface process is obtained.
  • the contents of the image buffer are output as output data. With this data, the same result as that obtained by dividing the area for each initial point on the Z slice plane can be obtained.
  • the processing operation for storing the voxel data in the voxel data storage unit 19 and the processing operation for storing the initial point data in the initial point data storage unit 21 in the second embodiment are the same as the processing operations in the first embodiment. Therefore, detailed description of the processing operation is omitted. In the following description, only processing operations different from those of the first embodiment will be described.
  • FIG. 43 is a flowchart showing the processing operation of the divided region data generation unit 231 shown in FIG. 37.
  • the divided region data generation unit 231 selects one Z slice plane (step S51).
  • the divided region data generation unit 231 selects one initial point, and defines a sphere centered on the selected initial point (step S53).
  • the divided region data generation unit 231 determines whether or not the defined sphere intersects the selected Z slice plane (step S54). As a result of this determination, when the sphere and the Z slice plane intersect, the divided region data generation unit 231 obtains the shape of the cross-sectional circle (step S55), and defines the above-described potential solid from the cross-sectional circle (step S56). On the other hand, when the sphere and the Z slice plane do not intersect, the divided region data generation unit 231 does not define the potential solid (steps S55 and S56).
  • the divided region data generation unit 231 determines whether or not all the initial points have been processed (step S57), and repeats the processing of steps S52 to S56 until the definition of the potential solid for all the initial points is completed.
  • the divided area data generation unit 231 outputs triangle data defined from all the defined potential solids to the graphic board 28.
  • the graphic board 28 projects the potential solid on the Z slice plane and stores each initial point ID in the pixel. At this time, by performing hidden surface processing, when potential solids overlap each other, the higher initial point ID is stored in the pixel. Then, the graphic board 28 outputs the contents of the image buffer as a result of drawing all the triangle data to the divided area data generation unit 231.
  • FIG. 44 is a flowchart showing the processing operation of the triangle drawing section in the graphic board 28 shown in FIG.
  • the triangle drawing unit repeats the process for all triangles (step S61).
  • the triangle drawing unit extracts three vertices of the current triangle (step S62), and repeats the process for all pixels (step S63).
  • the triangle drawing unit sets (Px, Py, Pz) as the intersection coordinates of the straight line passing through the center point of the current pixel and having the direction (0, 0, +1) and the plane of the triangle ( Step S64).
  • the triangle drawing unit determines whether or not the pixel is located inside the triangle or on the boundary line (step S65). As a result of the determination, if it is located inside the triangle or on the boundary line, it is determined whether Pz is larger than the value of the Z buffer of the pixel (step S66). If Pz is larger than the Z buffer value of the pixel as a result of this determination, Pz is substituted into the Z buffer value of the pixel, and a color having an ID number of 24 bits is substituted into the image buffer (step S67). ). The process is repeated until all the pixels are processed (step S68), and further, it is repeated until all the triangles are processed (step S69). As a result, all triangles can be drawn. Since the content of this image buffer is equivalent to the result obtained by dividing the Z slice plane for each initial point, the divided region data generation unit 231 uses the resultant data (initial point ID) as divided region data. Store in the storage unit 24.
  • the divided region data generation unit 231 determines whether or not all slice planes have been processed (step S59), and repeats the processing of steps S51 to S58 until the processing is completed for all Z slice planes.
  • the same data as the divided area data obtained in the first embodiment described above can be obtained in the divided area data storage unit 24. Since the processing operation in the calculation data generation unit 25 is the same as the processing operation in the first embodiment, detailed description thereof is omitted.
  • the processing operation of generating all the divided region data by the divided region data generation unit 231 and then generating the calculation data by the calculation data generation unit 25 has been described.
  • the divided area data of the plane is created, the calculation data is generated from the divided area data, the divided area data is generated for the next Z slice plane, and the calculation data is generated from the divided area data.
  • the area division and calculation data generation may be performed for each Z slice plane.
  • FIG. 45 is a block diagram showing the configuration of the embodiment.
  • the same parts as those in the apparatus according to the first embodiment shown in FIG. 21 are denoted by the same reference numerals, and the description thereof is omitted.
  • the apparatus shown in this figure is different from the apparatus shown in FIG. 21 in that the initial point data generation unit 20 reads data in the patch data storage unit 17 and generates an initial point.
  • the initial point data generation unit 20 in the third embodiment is characterized in that a dense initial point is generated near the wall (boundary layer) of the analysis target object.
  • reference numeral 201 denotes an inner voxel data generation unit that generates inner voxel data of voxels existing inside the analysis target object.
  • Reference numeral 202 denotes an inner voxel data storage unit that stores the inner voxel data generated by the inner voxel data generation unit 201.
  • Reference numeral 203 denotes an on-wall point / on-sphere point data generation unit that generates point data on the wall and on the sphere.
  • Reference numeral 204 denotes an on-wall point data storage unit that stores on-wall point data generated by the on-wall / spherical point data generation unit 203.
  • Reference numeral 205 denotes an on-sphere point data storage unit that stores on-sphere point data generated by the on-wall point / on-sphere point data generation unit 203.
  • Reference numeral 206 denotes a division point data generation unit that generates division point data with reference to the on-wall point data and the on-sphere point data.
  • Reference numeral 207 denotes a division point data storage unit that stores the division point data generated by the division point data generation unit 206.
  • Reference numeral 208 denotes an initial point data output unit that generates and outputs an initial point from the division point data and the inner voxel data and stores the initial point in the initial point data storage unit 21.
  • the inner voxel data generation unit 201 refers to the voxel data stored in the voxel data storage unit 19 and selects one voxel (step S71). Then, the inner voxel data generation unit 201 refers to the patch data storage unit 17 to determine whether the selected voxel and the patch intersect (step S72), and determines whether the selected voxel and the patch intersect. (Step S73).
  • the inner voxel data generation unit 201 stores ⁇ 1 (a value indicating the inner voxel of the analysis target object) in the storage area of the selected voxel in the inner voxel data storage unit 202. (Step S76).
  • the inner voxel data generation unit 201 obtains the positional relationship between the voxel and the analysis target object (step S74), and determines whether or not the selected voxel is an external region of the analysis target object (Ste S75). If the result of this determination is that the voxel is located outside the object to be analyzed, ⁇ 1 (value indicating the voxel outside the object to be analyzed) is stored in the storage area of the selected voxel in the inner voxel data storage unit 202. If it is a voxel located inside (step S76), 0 (value indicating the voxel inside the object to be analyzed) is stored (step S77).
  • the inner voxel data generation unit 201 determines whether or not processing has been performed for all of the voxels (step S78), and the processing operations of steps S71 to S76 are repeated for all of the voxels. As a result of this processing, as shown in FIG. 53, the data of the voxels located inside the object to be analyzed are stored in the inner voxel data storage unit 202.
  • the wall top point / sphere top point data generation unit 203 refers to the inner voxel data storage unit 202, selects one inner voxel (step S81), and in six adjacent xyz directions (distinguish between positive and negative). It is checked whether the inner voxel exists (step S82), and it is determined whether it exists in all (step S83). If the result of this determination is that they do not exist in all, the on-wall point / on-sphere point data generation unit 203 defines a sphere inscribed in the selected voxel (step S84).
  • the wall top point / spherical point data generation unit 203 defines 26 spherical points on the spherical surface as shown in FIG. 54 (step S85), and a vector directed from the center of the voxel to the spherical point. Is checked (step S86) to determine whether an inner voxel exists (step S87).
  • the point on the sphere data generator 203 searches the shape data for a point closest to each point, and defines the point on the wall there (step S88).
  • the point on the wall and the point on the sphere are stored in the point data storage unit 204 on the wall and the point data storage unit 205 on the sphere, respectively (step S89).
  • the on-wall / spherical point data generation unit 203 determines whether or not processing has been performed for all of the voxels (step S90), and the processing operations of steps S81 to S89 are repeated for all of the voxels.
  • the defined on-wall point and on-sphere point are stored in the on-wall point data storage unit 204 and the on-sphere point data storage unit 205, respectively.
  • the division point data generation unit 206 refers to the on-wall point data storage unit 204 and the on-sphere point data storage unit 205 to define a straight line that passes through the on-wall point and the on-sphere point (step S91).
  • the initial point 1 is generated at a position away from the point on the wall by the distance d1 (step S92).
  • the division point data generation unit 206 generates the initial point 2 at a position away from the initial point 1 by the distance d2 on the defined straight line (step S93). Then, the division point data generation unit 206 determines whether the line segment connecting the on-wall point and the generated initial point intersects the spherical surface, or whether the initial point is generated on the straight line by the number specified by the user. 56 (step S94), as shown in FIG. 56, the process of step S93 is repeated until any one of these conditions is satisfied to generate initial points 3, initial points 4,.
  • the data is stored in the division point data storage unit 207. In addition, it is determined in advance which condition to repeat. By this processing, as shown in FIG. 57, an initial point group for forming a boundary layer on a straight line connecting the point on the sphere and the point on the wall is generated.
  • the initial point data output unit 208 reads the voxel data stored in the inner voxel data storage unit 202, and stores the voxel center point in the initial point data storage unit 21 as an initial point (step S101). Subsequently, the initial point data output unit 208 reads the division point data stored in the division point data storage unit 207, and stores the division point data in the initial point data storage unit 21 as an initial point (step S102). By this processing, the initial point data storage unit 21 stores the center point of the voxel located inside the object to be analyzed as initial point data, and the division points as initial point data for forming the boundary layer. Will be.
  • the configuration shown in FIG. 51 is different from the configuration shown in FIG. 46 in that an inner voxel source data storage unit 209 and an inner voxel data correction unit 210 are newly provided. This is for generating an initial point for increasing the thickness of the boundary layer.
  • the inner voxel source data storage unit 209 corresponds to the inner voxel data storage unit 202 shown in FIG. 46, and stores voxel data of voxels located inside the analysis target object.
  • the inner voxel data correction unit 210 performs processing to remove voxels close to the boundary layer from the voxel data stored in the inner voxel original data storage unit 209 in order to thicken the boundary layer.
  • the inner voxel data correction unit 210 selects one inner voxel with reference to the voxel data stored in the inner voxel original data storage unit 209 (step S111), and determines six directions (positive / negative) of adjacent xyzs. It is checked whether or not the inner voxel exists in (Distinction) (Step S112), and it is determined whether or not it exists in all (Step S113).
  • ⁇ 1 is stored in the storage area of the selected voxel in the inner voxel data storage unit 202 (step S114). Then, the inner voxel data correction unit 210 determines whether or not processing has been performed for all of the voxels (step S115), and the processing operations of steps S111 to S114 are repeated for all of the voxels.
  • the data of the voxel located inside the analysis target object is stored in the inner voxel data storage unit 202. However, the voxel near the boundary layer is removed. Thereby, as shown in FIG.
  • the data of the voxel located inside the analysis target object is stored in the inner voxel data storage unit 202. However, it becomes a set of voxel data having a smaller volume (area in the drawing) than the voxel data shown in FIG. 53, the volume of the set of inner voxels is reduced, and the space defining the boundary layer is increased accordingly. Subsequent processing operations are the same as those described above.
  • the initial point data generated by the third embodiment is stored in the initial point data storage unit 21, and the divided area data generation unit 23 performs the above-described processing based on the initial point data stored in the initial point data storage unit 21.
  • the divided area data is generated by the operation. Thereby, the divided area data as shown in FIG. 59 can be defined. As described above, by dividing the boundary layer densely, it is possible to improve the analysis accuracy in the boundary layer.
  • a program for realizing the functions of the processing units in FIGS. 21, 37, and 45 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is read into a computer system and executed.
  • the calculation data generation process may be performed.
  • the “computer system” includes an OS and hardware such as peripheral devices.
  • the “computer system” includes a WWW system having a homepage providing environment (or display environment).
  • the “computer-readable recording medium” refers to a storage device such as a flexible medium, a magneto-optical disk, a portable medium such as a ROM or a CD-ROM, and a hard disk incorporated in a computer system.
  • the “computer-readable recording medium” refers to a volatile memory (RAM) in a computer system that becomes a server or a client when a program is transmitted via a network such as the Internet or a communication line such as a telephone line. In addition, those holding programs for a certain period of time are also included.
  • RAM volatile memory
  • the program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium.
  • the “transmission medium” for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
  • the program may be for realizing a part of the functions described above. Furthermore, what can implement
  • the present invention can also be applied to applications in which it is essential to generate calculation data to be input to a numerical analysis device that can be used.
  • a ... Numerical analysis device (physical quantity calculation device) P: Numerical analysis program P1: Pre-processing program P2: Solver processing program (physical quantity calculation program) P3... Post-processing program M... Computation data model V i ... Virtually occupied volume S ij ... Boundary area r ij between particles i and j j Distance vector n from i to j ij > S ij of the normal vector 1 ⁇ CPU 2 ... Storage device 2a ... Program storage unit 2b ... Data storage unit 3 ... DVD drive 4 ... Input device 4a ... Keyboard 4b ... Mouse 5 ... Output device 5a ..Display 5b ... Printer D ... Calculation data generator 11 ...
  • Parameter input unit 12 ... Parameter storage unit 13 ... Communication unit 14 ... Shape data input unit 15 ... Shape Data storage unit 16 ... patch data generation unit 17 ... patch data storage unit 18 ... voxel data generation unit 19 ... voxel data storage unit 20 ... initial point data generation unit 21 ... initial point Data storage unit 22 ... Data thinning unit 23, 231 ... Divided region data generation unit 24 ... Divided region data storage unit 25 ... Calculation data generation unit 26 ... Intermediate data storage unit 27 And calculation for the data storage unit 28 ... graphics board

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Computing Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Abstract

 数値解析を行う際の計算用データを生成する。 パラメータ記憶手段に記憶されているパラメータに基づき、対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、ボクセルデータ記憶手段に記憶する手段と、ボクセルの中心点を使用して、ボクセルの数より少ない初期点データを生成して、初期点データ記憶手段に記憶する手段と、ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、初期点データ記憶手段に記憶されている初期点データとに基づき、対象物体内を、複数のボクセルで構成する分割領域を定義し、定義した分割領域データを分割領域データ記憶手段に記憶する手段と、分割領域データ記憶手段に記憶されている分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを計算用データとして計算用データ記憶手段に記憶する手段とを備える。

Description

計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム
 本発明は、数値解析を行うための計算用データを生成する計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラムに関する。
 従来から、流速分布、応力分布及び熱分布等を数値解析によって求めるための数値解析手法として、例えば、有限要素法、有限体積法、ボクセル法及び粒子法が知られている。このような数値解析手法は、一般的にプリ処理とソルバ処理とポスト処理とから構成されている。そして、プリ処理の中で計算用データモデルを作成し、ソルバ処理にて当該計算用データモデル及び離散化された支配方程式(以下、離散化支配方程式と呼ぶ)を用いて上記物理量の計算を行っている。
 従来の有限体積法は、例えば、解析領域を複数の領域に分割し、各分割領域の体積、隣り合う分割領域の境界面の面積及び当該境界面の法線ベクトルを用いて各分割領域における物理量を計算する。有限体積法では、プリ処理にて各分割領域の頂点の座標(Vertex)を含む計算用データモデル(通常、メッシュと呼ばれる)を作成し、ソルバ処理にて当該計算用データモデルに含まれるVertex等を用いて前述の分割領域の体積、境界面の面積及び境界面の法線ベクトルを算出し、これらの値を用いて物理量の計算を行う。Vertexは分割領域の幾何学的形状を規定するための量である。よって、有限体積法においては、ソルバ処理にて分割領域の幾何学的形状を用いて、分割領域の体積、境界面の面積及び境界面の法線ベクトルの算出を行っていると言える。
 さらに、有限体積法では、隣り合う分割領域での頂点共有の条件が部分的に満足されていない部分を有してもよい。このため、有限体積法では、分割領域に対する制約が若干緩和される場合があるが、利用する解析要素タイプは例えばテトラ要素、ヘキサ要素、プリズム要素、ピラミッド要素などに限定される。
 なお、特許文献1に示すように、解析要素タイプを限定しない有限体積法も提案されている。ただし、このような解析要素タイプを限定しない有限体積法であっても、前述した従来の有限体積法と同様に、プリ処理にて各分割領域の頂点の座標(Vertex)を含む計算用データモデルを作成し、ソルバ処理にて当該計算用データモデルに含まれるVertex等を用いて物理量の計算を行っている。
 また、有限要素法は、周知のように補間関数を用いて各分割領域における物理量を算出する方法であるが、有限体積法と同様に、ソルバ処理にてVertex等によって規定される分割領域の幾何学的形状を用いている。
 ボクセル法及び粒子法は、有限要素法や有限体積法と比較して、容易に計算用データモデルが作成可能な数値解析手法である。ボクセル法は、基本的に同一サイズの直方体形状の複数のボクセル(直交格子)によって解析領域を定義するボクセルデータを計算用データモデルとして作成し、このボクセルデータを用いた物理量計算を行うことによって数値解析を行う方法である。ボクセル法としては、重み付き残差積分法による支配方程式を用いる重み付き残差積分法型と、例えばセル-オートマトンモデルや格子-ボルツマンモデル等を用いる非積分法型に大別される。そして、このボクセル法によれば、ボクセルデータとして、Vertex等は必要ない。このようなボクセル法によれば、解析領域をボクセルによって分割することによって解析領域を容易に定義することができ、短時間で計算用データモデルを作成することができる。
 一方、粒子法は、解析領域を複数の粒子によって定義する粒子データを計算用データモデルとして作成し、この粒子データを用いた物理量計算を行うことによって数値解析を行う方法である。粒子法は、支配方程式として、非積分法型で粒子間相互作用モデルを利用している。粒子法では、分割領域がないため、Vertex等を必要としない。このような粒子法によれば、解析領域に例えば粒子を均一に配置することによって解析領域を容易に定義することができ、計算用データモデルを短時間で作成することができる。
米国特許出願公開第2008/0021684号明細書
 従来の有限要素法や有限体積法等の数値解析手法のように、ソルバ処理において分割領域の幾何学的形状を用いる場合には、当然ながら計算用データモデルに対して、分割領域の幾何学的形状を示すデータを持たせることが必須となる。
 分割領域の幾何学的形状を定義するためには、Vertexに加えて、頂点の連結情報(Connectivity of Vertex、以下ではConnectivityと略記する)が必要となる。したがって、有限要素法や有限体積法では、計算用データモデルにVertexとConnectivityと持たせる必要がある。
 なお、具体的には、Connectivityは、全分割領域の頂点に対して順番に付された全体ノード番号と、1つの分割領域内において頂点に対して順番に付された局所ノード番号との対応情報によって定義される。
 このようなVertexとConnectivityとを有する計算用データモデルは、周知のように作成に非常に膨大な作業が必要となる。例えば、有限要素法で用いられる計算用データモデルでは、図1に示すように、隣接する分割領域が必ずVertexを共有するという条件を満足するように計算用データモデルを作成する必要があり、全ての分割領域がこの条件を満足させるためには、非常に膨大な時間を必要とする。
 一方、有限体積法で用いられる計算用データモデルは、図2に示すように、隣接する分割領域に共有されないVertexの存在を許容できる分、有限要素法と比較すればメッシュ生成の自由度が増す。しかしながら、有限体積法においても、共有されないVertexが少なくとも隣接する分割領域の辺上に存在すること、また一般的に分割領域の形状を予め設定された解析要素タイプに合わせることといった条件の中で計算用データモデルを作成する必要があり、メッシュ生成の自由度が高いとは言い難い。
 また、近年においては、3次元CAD(Computer Aided Design)データ等の3次元形状データから抽出される解析領域に対する数値解析が行われている。しかしながら、3次元形状データは、数値解析用に形成されたデータではなく、面の重なり、面の交差、面間の隙間、微***等を示すデータが含まれており、VertexとConnectivityとを有する計算用データモデルの作成に適さない条件を多く含んでいる。このため、これらのVertexとConnectivityとを有する計算用データモデルの作成が出来るように、3次元形状データを修正あるいは変更する必要がある。そして、VertexとConnectivityとを有する計算用データモデルが作成可能なように、3次元形状データを修正あるいは変更するためには、経験や試行錯誤を要する非常に膨大な手作業を行う必要がある。これが、有限要素法や有限体積法を実用で利用する際の大きな問題である。
 また、有限体積法のようにソルバ処理において分割領域の体積、境界面の面積及び境界面の法線ベクトルの算出を行う場合には、ソルバ処理における計算量がさらに増えることとなり、ソルバ処理における計算負荷がさらに増大する。
 ボクセル法では、短時間で計算用データモデルを作成することができるものの、以下の点で問題がある。ボクセル法は、基本的に解析領域が全て同一サイズのボクセル(直交格子)によって定義される。通常、有限要素法や有限体積法では、より高い解析精度を得たい領域の要素サイズ(分割領域のサイズ)を小さく設定することによって当該領域について正確な物理量計算を行い、また他の領域の要素サイズを大きく設定することによって当該領域についての計算負荷を低減させている。ところが、ボクセル法においては、全てのボクセルが基本的に同一サイズであるため、ボクセルを小さく設定した場合には計算負荷が非常に大きくなり、ボクセルを大きく設定した場合には解析精度が悪化することとなる。
 また、ボクセル法では、同一サイズのボクセル(直交格子)を配列することによって解析領域を定義する必要があることから、外部領域との境界付近において解析領域を滑らかにすることができずに階段状となる場合がある。つまり、実際に解析したい領域が斜面や曲面等を有している場合であっても、ボクセルデータにおいてその領域は階段状に表されることとなる。このため、ボクセル法における解析領域形状が実際に解析したい領域形状と異なることとなり、解析精度は悪化する。
 これに対して、ボクセルデータの階段状の領域を、実際に解析したい領域が有する斜面や曲面に沿って切断(境界補正)するカットセル法と呼ばれる改良方法が提案されている。しかしながら、この改良方法によると、この境界補正によって非常に小さな分割領域が生成されやすく、このような小さな分割領域が生成された場合には、解析精度の悪化を招く。また、この改良方法では、カットセルの形成のため及びソルバ処理において、Vertexを利用することとなる。
 以上のように、境界補正を行わないボクセル法においては、Vertex等が必要ないものの、ボクセルの生成、いわゆるメッシュ生成には限界がある。すなわち、十分な解析精度を得ようとすると、ボクセルの数が増え、ソルバ処理における計算負荷も増え、問題となる。さらに、境界補正を行うボクセル法の改良方法では、結果としてVertexが必要となるため、結局、分割領域の幾何学的形状の影響を受けることなり、外部領域との境界周辺での分割領域形成のための処理に、経験や試行錯誤を要する非常に膨大な手作業を伴い、形状データモデルを短時間に作成することができないことになる。
 一方、粒子法では、ある特定の粒子と他の粒子との結合関係を算出する必要がある。このため、当該特定粒子の近傍に存在する粒子を探索する必要がある。そして、この粒子の近傍探索処理は、原則として全ての粒子に対して行われる。しかしながら、粒子法においては、時刻の変化と共に各粒子が移動し、これによって常に粒子同士の結合関係が変化する。このため、解析における時刻が変化するたびに近傍探索処理を行う必要があり、計算負荷の増大を招く。近傍探索の対象となる粒子を厳選する等して近傍探索処理の計算負荷を低減させる試みがなされているものの、例えば、解析精度を向上させるために粒子数を増大させた場合には、粒子数の2乗に比例して計算負荷が増大する。
 このような粒子法において実用時間内における数値解析を実現するためには、大型の並列計算機で多くのCPU(Central Processing Unit)を使用する必要がある。例えば、百万個程度の粒子を用いた粒子法による数値解析が、VertexとConnectivityを使用した一般的な有限体積法ソルバで、1CPUで半日の計算が、粒子法では32CPUを使用した並列計算で1週間以上かかった実例がある。また、粒子法においても、粒子を密に配置された場合には計算負荷が非常に大きくなり、粒子を粗く配置した場合には解析精度が悪化することとなる。
 さらに、粒子法では、後に詳説するが、流体、構造、熱、拡散等の物理量の保存則に基づく物理現象を解析する場合には、その保存性が十分に満足されていない。例えば、解析領域と外部領域との境界面に臨んで配置される粒子が、境界面においてどれだけの面積を有しているかの情報がない。このため、境界面から熱を入熱させる条件を与えようとした場合であっても、各粒子にどれだけの熱が入熱されるかを正確に把握することができず、精度の良い定量値が得られない。
 本発明は、前述する従来の数値解析手法である有限要素法、有限体積法、ボクセル法、ボクセル法の改良手法、及び粒子法の問題点に鑑みてなされたもので、解析精度の悪化を伴わずにソルバ処理における計算負荷の低減を図ることができる数値解析装置に入力する計算用データの作成における作業負担を軽減することができる計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラムを提供することを目的とする。
 上記課題を解決するために、本発明は、物理現象を数値的に解析する数値解析方法において物理量を計算する物理量計算方法であって、直交格子形状のみによらない複数の分割領域に分割された解析領域における物理量を計算する物理量計算工程を含み、該物理量計算工程にて、前記分割領域の頂点の座標(Vertex)及び該頂点の連結情報(Connectivity)を必要としない量のみを使用すると共に重み付き残差積分法に基づいて導出された離散化された支配方程式と、各前記分割領域の体積及び隣り合う前記分割領域同士の境界面の特性を示す境界面特性量を、前記分割領域の頂点の座標(Vertex)及び該頂点の連結情報(Connectivity)を必要としない量として有する計算用データモデルと、を用いて前記物理量を計算するという構成を採用する。
 本発明で用いられる離散化支配方程式は、従来のように分割領域の幾何学的形状を規定する量(VertexとConnectivity)を含んだ形式で表現されるものではなく、分割領域の幾何学的形状を規定する量を必要としないものである。本発明で用いられる離散化支配方程式は、従来の幾何学的形状を規定する量を使用する方程式を重み付き残差積分法に基づいて導出する過程で敢えて途中にて留めることによって得ることができる。このような本発明で用いられる離散化支配方程式は、分割領域の幾何学的形状を必要としない量(すなわちVertexとConnectivityとを必要としない量)で表現され、例えば分割領域の体積と境界面特性量の2つのみに依存する形式とすることができる。
 つまり、従来の有限要素法や有限体積法では、前提として解析対象物を微小領域に分割するため、この微小領域の幾何学的形状を規定する量、すなわちVertexとConnectivityを用いることを前提にして離散化支配方程式の導出をしているが、本発明で用いられる離散化支配方程式は、従来と異なるまったく新しい発想に基づいて導出されるものである。そして、本発明は、このような新しい発想に基づいて導出された離散化支配方程式を用いることを特徴とするものであり、従来の数値解析方法と異なり、幾何学的形状に依存せず、従来の問題を解決し、種々の顕著な効果を奏する。
 ここで、分割領域の体積と境界面特性量とが、分割領域の特定の幾何学的形状を規定するVertexとConnectivityとを必要としない量であることについて説明する。なお、VertexとConnectivityとを必要としない量とは、VertexとConnectivityとを用いなくとも定義が可能な量である。例えば、分割領域の体積について考えると、分割領域の体積がある所定の値となるための分割領域の幾何学的形状は複数存在する。つまり、体積がある所定の値をとる分割領域の幾何学的形状は、立方体である場合や球である場合も考えられる。そして、例えば、分割領域の体積は、全分割領域の総和が解析領域全体の体積と一致するという制約条件の下で、例えば分割領域の体積が隣接分割領域との平均距離の3乗にできるだけ比例するような最適化計算により定義することができる。したがって、分割領域の体積は、分割領域の特定の幾何学的形状を必要としない量(VertexとConnectivityとを必要としない量)と捉えることができる。
 また、境界面特性量としては、例えば境界面の面積や、境界面の法線ベクトル、境界面の周長等が考えられるが、これらの境界面特性量がある所定の値となるための分割領域の幾何学的形状(すなわち境界面の幾何学的形状)は複数存在する。そして、例えば、境界面特性量は、各分割領域を取り囲む全境界面に対して、法線ベクトルの面積加重平均ベクトルの長さがゼロとなる制約条件の下で、境界面の法線ベクトルの方向を隣接する2つの分割領域のコントロールポイント(図5参照)を結ぶ線分に近づけ、かつ、分割領域を取り囲む全境界面面積の総和が当該分割領域の体積の2分の3乗にできるだけ比例するような最適化計算により定義することができる。したがって、境界面特性量は、分割領域の特定の幾何学的形状を必要としない量(VertexとConnectivityとを必要としない量)と捉えることができる。
 また、本発明において「直交格子形状のみによらない複数の分割領域に分割された解析領域」とは、解析領域を構成する複数の分割領域の少なくともいずれかが直交格子形状を取らないことを意味する。つまり、解析領域が直交格子形状以外の形状の分割領域を含むことを意味する。また、本発明において「VertexとConnectivityとを必要としない量のみを使用する」とは、離散化支配方程式に代入される値がVertexとConnectivityとを必要としない量のみであることを意味する。
 次に、図3の概念図を参照して、本発明を用いた数値解析手法と従来の数値解析手法とにおけるプリ処理及びソルバ処理を対比しながら、本発明の顕著な効果についてより詳細な説明を行う。
 本発明を用いる数値解析手法の場合には、図3に示すように、ソルバ処理(本発明の物理量計算工程)にて、VertexとConnectivityとを必要としない量のみを使用する離散化支配方程式を用いて分割領域における物理量の算出が行われる。このため、離散化支配方程式を解くにあたり、プリ処理にて作成される計算用データモデルにVertexとConnectivityとを含める必要がない。
 そして、本発明を用いる場合には、VertexとConnectivityとを必要としない量として、分割領域の体積と境界面特性量とが使用される。このため、プリ処理にて作成される計算用データモデルは、VertexとConnectivityとを持たず、分割領域の体積と、境界面特性量と、その他補助データ(例えば、後述する、分割領域の係合情報やコントロールポイント座標等)とを有するものとなる。
 このように本発明を用いた場合には、前述のように、分割領域の体積と上記境界面特性量、すなわち分割領域の幾何学的形状を必要としない量に基づいて各分割領域における物理量が計算可能とされる。このため、計算用データモデルに、分割領域の幾何学的形状、すなわちVertexとConnectivityとを持たせることなく物理量を算出することが可能となる。したがって、本発明を用いることにより、プリ処理において、少なくとも分割領域の体積と境界面特性量(境界面の面積及び境界面の法線ベクトル)とを有する計算用データモデルを作成すれば良くなり、VertexとConnectivityとを有する計算用データモデルを作成することなく物理量の計算を行うことが可能となる。
 VertexとConnectivityとを持たない計算用データモデルは、分割領域の幾何学的形状を必要としないため、分割領域の幾何学的形状に縛られることなく作成することができる。このため、3次元形状データの修正作業に対する規制も大幅に緩和される。よって、VertexとConnectivityとを持たない計算用データモデルは、VertexとConnectivityとを有する計算用データモデルと比較して遥かに容易に作成することが可能となる。したがって、本発明によれば、計算用データモデルの作成における作業負担を軽減することが可能となる。
 また、本発明を用いる場合であっても、プリ処理においては、VertexとConnectivityとを使用しても構わない。つまり、プリ処理においてVertexとConnectivityを用いて分割領域の体積や境界面特性値等を算出しても良い。このような場合であっても、ソルバ処理においては分割領域の体積や境界面特性値があれば物理量の計算が可能であるため、プリ処理においてVertexとConnectivityとを利用するにしても、分割領域の幾何学的形状に対する制約、例えば分割領域の歪みや捩じれ等に起因する制約がなく、計算用データモデルの作成における作業負担の軽減が可能である。
 また、本発明を用いることによって、プリ処理において、分割領域の幾何学的形状に対する制約がなくなるため、分割領域を任意の形状に変更させることができる。このため、分割領域の数を増やすことなく、解析領域を実際に解析したい領域に容易にフィッティングさせることが可能となり、計算負荷を増大させることなく解析精度を向上させることが可能となる。さらに、本発明を用いることによって分割領域の分布密度も任意に変更することができるため、必要な範囲で計算負荷の増大を許容しながらさらに解析精度を向上させることも可能である。
 また、本発明を用いることによって、従来の数値解析手法と異なり、ソルバ処理においてVertexとConnectivityとを用いて分割領域の体積及び境界面特性量を算出する必要がない。したがって、ソルバ処理における計算負荷を低減させることも可能となる。
 また、本発明では、解析領域の形状が変化しない場合には分割領域の移動を必要としないため、粒子法のように時刻が変化するごとに近傍探索処理を行う必要がなく、計算負荷が小さい。また、後に詳説するが、本発明を用いることによって、粒子法と異なり、物理量の保存則を満たしながら物理量の計算を行うことができる。
 一方、従来の数値解析手法である有限体積法は、プリ処理にて分割領域の幾何学的形状を示すVertexとConnectivityとを有する計算用データモデルを作成し、ソルバ処理にて計算用データモデルに含まれるVertexとConnectivityとを用いて分割領域の体積と境界面特性量(境界面の面積及び境界面の法線ベクトル)とを算出してから各分割領域における物理量を計算する。この場合には、幾何学的形状に対する制約、すなわちVertexとConnectivityとの関係に問題ないことが要求される。このため、分割領域の歪み、捩じれ等の制約の中で計算用データモデル(すなわちメッシュ)を作成する必要があり、前述のように計算用データモデル作成上における膨大な手作業が発生するという問題がある。
 また、有限要素法も、ソルバ処理にて計算用データモデルに含まれるVertexとConnectivityとを用いて物理量を計算するため、プリ処理にて分割領域の幾何学的形状を示すVertexとConnectivityとを有する計算用データモデルを作成する必要があり、計算用データモデル作成上における膨大な手作業が発生する。
 また、従来の数値解析手法であるボクセル法は、図3に示すように、ソルバ処理において物理量を算出するにあたり、VertexとConnectivityとが必要ないものの、分割領域の形状がボクセルに限定されることから、前述したように外部領域との境界が階段状になるという問題がある。このため、前述のように十分な解析精度を得ようとすると、ボクセルの数も増え、ソルバ処理における計算負荷が増え問題となる。また、境界補正を行うボクセル法では、結局、分割領域の体積等を算出するにあたりVertexを利用することとなり、計算用データモデルを作成するにあたり分割領域の幾何学的形状の影響を受けることになる。
 また、従来の数値解析手法である粒子法は、分割領域という概念が存在しないため、図3に示すように、ソルバ処理において物理量を算出するにあたり、VertexとConnectivityとが必要ないものの、分割領域の代わりに計算用データモデルを定義する粒子の移動に起因し、前述のように計算負荷が増大する。また、粒子法では、保存則を満たしながら物理量の計算を行うことは難しい。
 続いて、図4を参照して、本発明と従来の有限体積法とについてさらに詳しく比較を行う。従来の有限体積法では、前述のように、プリ処理において、メッシュ分割で得られる分割領域の幾何学的な形状を定義するためのVertexとConnectivityとを有する計算用データモデルを作成する。また、一般的には、ソルバ処理において分割領域の係合情報(以下linkと呼ぶ)が必要となる。このため、プリ処理においては、VertexとConnectivityとlinkとを有する計算用データモデルが作成される。
 そして、従来の有限体積法では、図4に示すように、プリ処理から、VertexとConnectivityとlinkとを有する計算用データモデルと、ソルバ処理において必要となる境界条件や初期条件等とをソルバ処理に受け渡す。ソルバ処理では、受け渡された計算用データモデルに含まれるVertexやConnectivity等を使用して離散化支配方程式を解くことによって物理量の算出を行う。
 一方、本発明では、プリ処理において、任意に配置された分割領域の体積、境界面特性量(境界面の面積、境界面の法線ベクトル)及びlinkを有する計算用データモデルを作成する。また、後に詳説するが、本発明では、必要に応じて、分割領域の内部に配置されるコントロールポイントの座標を計算用データモデルに持たせる場合もある。
 そして、本発明では、図4に示すように、プリ処理から、分割領域の体積、境界面特性量及びlink(必要に応じてコントロールポイントの座標)を有する計算用データモデルと、境界条件や初期条件等とをソルバ処理に受け渡す。ソルバ処理では、受け渡された計算用データモデルに含まれる分割領域の体積、境界面特性量等を使用して離散化支配方程式を解くことによって物理量の算出を行う。
 そして、図4から分かるように、本発明では、ソルバ処理において、VertexとConnectivityとを使用しないで物理量を計算している点が従来の有限体積法と大きく異なり、この点が本発明の大きな特徴である。このような特徴は、ソルバ処理にて、VertexとConnectivityとを必要としない量のみを使用する離散化支配方程式を用いることによって得られるものである。
 この結果、図4に示すように、本発明では、ソルバ処理にVertexとConnectivityとを受け渡す必要がなくなり、プリ処理において、VertexとConnectivityとを持たない計算用データモデルを作成すれば良いこととなる。したがって、従来の有限体積法と比較して本発明では、遥かに容易に計算用データモデルを作成することが可能となり、計算用データモデルの作成における作業負担を軽減することが可能となる。
 また、数値解析を行う解析領域の形状が時系列的に変化する場合、すなわち解析領域が移動境界を含む場合がある。このような場合、移動境界に合わせて分割領域を移動及び変形させる必要がある。
 従来の有限体積法では、移動境界の移動ごとにおけるVertexを予めストアする方法か、分割領域のいびつな変形により計算不可となった場合に領域分割を再実行する方法によって、移動境界を含む場合の物理量の計算を行っている。これに対して、本発明では、Vertexに替えて分割領域の体積や境界面特性値等を予め求めておいてストアしておく方法か、領域分割の再実行によって移動境界を含む場合の物理量の計算を行うことができる。
 従来の有限体積法または本発明において、前述のいずれの方法を採用する場合であっても、複数の計算用データモデルを作成する必要がある。しかしながら、従来の有限体積法では、1つでも膨大な作業量が必要となる計算用データモデルを複数作成するとなると、その作業量は、多くの場合において現実的に負担可能な範囲で行えるものではなくなる。
 一方、本発明では、計算用データモデルがVertexとConnectivityとを持つ必要がなく、領域分割過程でVertexやConnectivityの整合性を考慮する必要がないため、とても高速に計算用データモデルを作成することができ、移動境界を含む場合の物理量の計算を容易に行うことができる。
 ここで、前述のlinkについて補足をする。linkは、物理量のやり取りを行う分割領域同士を関連付ける情報である。そして、このlinkによって関連付けられる分割領域は、必ずしも空間的に隣接されている必要はなく、空間的に離間していても構わない。このようなlinkは、VertexやConnectivityと関連するものではなく、Vertex及びConnectivityと比較すると、極めて短時間で作成することができるものである。
 次に、本発明を用いた数値解析手法(以下、本数値解析手法と称する)の原理、すなわち重み付き残差積分法に基づいて導出された離散化支配方程式と、分割領域の体積と境界面特性量とによって物理量を算出可能となる原理について詳細に説明する。なお、以下の説明において、[]にて挟まれた文字は、図面において太字で記されたベクトルを示す。
 まず、本数値解析手法における計算用データモデルは、解析領域を分割して得られる各分割領域の体積と、隣り合う分割領域同士の境界面の特性を示す境界面特性量とを用いて定義されている。図5は、このような本数値解析手法の計算用データモデルの一例を示す概念図である。この図において、セルR1,R2,R3・・・は、解析領域を分割して得られる分割領域であり、各々が体積Va,Vb,Vc・・・を有している。また、境界面Eは、セルR1とセルR2との間において物理量の交換が行われる面であり、本発明における境界面に相当するものである。また、面積Sabは、境界面Eの面積を示し、本発明における境界面特性量の1つである。また、[n]abは、境界面Eの法線ベクトルを示し、本発明における境界面特性量の1つである。
 また、コントロールポイントa,b,c・・・は、各セルR1,R2,R3の内部に配置されおり、図5においては各セルR1,R2,R3・・・の重心位置に配置されている。ただし、コントロールポイントa,b,c・・・は、必ずしも各セルR1,R2,R3・・・の重心位置に配置される必要はない。また、αは、コントロールポイントaからコントロールポイントbまでの距離を1とした場合におけるコントロールポイントaから境界面Eまでの距離を示し、境界面Eがコントロールポイントaとコントロールポイントbとを結ぶ線分のどの内分点に存在するかを示す比率である。
 なお、境界面は、セルR1とセルR2との間のみに限らず、隣り合う全てのセル間に存在する。そして、境界面の法線ベクトル及び境界面の面積も、境界面ごとに与えられるものである。
 そして、実際の計算用データモデルは、各コントロールポイントa,b,c・・・の配置データと、各コントロールポイントa,b,c・・・が存在するセルR1,R2,R3・・・の体積Va,Vb,Vc・・・を示す体積データと、各境界面の面積を示す面積データと、各境界面の法線ベクトルを示す法線ベクトルデータとを有するデータ群として構築されている。すなわち、本数値解析手法の計算用データモデルは、セルR1,R2,R3・・・の体積Va,Vb,Vc・・・と、隣り合うセルR1,R2,R3・・・同士の境界面の特性を示す境界面特性量である境界面の面積と、隣り合うセルR1,R2,R3・・・同士の境界面の特性を示す境界面特性量である境界面の法線ベクトルとを有して定義されている。
 なお、各セルR1,R2,R3・・・は、コントロールポイントa,b,c・・・を有している。このため、セルR1,R2,R3・・・の体積Va,Vb,Vc・・・は、コントロールポイントa,b,c・・・が仮想的に占める空間(コントロールボリューム)の体積として捉えることができる。また、本数値解析手法の計算用データモデルは、必要に応じて、境界面が挟まれたコントロールポイント同士を結ぶ線分のどの内分点に存在するかの比率αを示す比率データを有する。
 以下では、前述の計算用データモデルを用いて解析領域の各セル(分割領域)における流速を求める物理量計算例について説明する。なお、ここでは、各コントロールポイントにおける流速を各セルにおける流速として求める。
 まず、本物理量計算において本数値解析手法は、流体解析の場合、下式(1)で示すナビエ・ストークスの式と、下式(2)で示す連続の式とを用いる。
Figure JPOXMLDOC01-appb-M000001
Figure JPOXMLDOC01-appb-M000002
 なお、式(1),(2)において、tが時間を示し、xi(i=1,2,3)がカーテシアン系における座標を示し、ρが流体密度を示し、ui(i=1,2,3)が流体の流速成分を示し、Pが圧力を示し、μが流体の粘性係数を示し、添字i(i=1,2,3),j(j=1,2,3)がカーテシアン座標系における各方向成分を示している。また、添字jに関しては総和規約に従うものとする。
 そして、式(1),(2)を、重み付き残差積分法に基づいて、コントロールボリュームの体積に対して積分して示すと、式(1)が下式(3)のように示され、式(2)が下式(4)のように示される。
Figure JPOXMLDOC01-appb-M000003
Figure JPOXMLDOC01-appb-M000004
 なお、式(3),(4)において、Vがコントロールボリュームの体積を示し、∫VdVが体積Vに関する積分を示し、Sがコントロールボリュームの面積を示し、∫SdSが面積Sに関する積分を示し、[n]がSの法線ベクトルを示し、ni(i=1,2,3)が法線ベクトル[n]の成分を示し、∂/∂nが法線方向微分を示している。
 ここで、説明を簡単化するために、流体の密度ρと粘性係数μを定数とする。ただし、以下の定数化は、流体の物性値が、時間、空間、温度等によって変化する場合に対して拡張可能である。そして、図5のコントロールポイントaについて、境界面Eの面積Sabについて離散化し、代数方程式による近似式に変換すると、式(3)が下式(5)、式(4)が下式(6)のように示される。
Figure JPOXMLDOC01-appb-M000005
Figure JPOXMLDOC01-appb-M000006
 ここで、添字abが付く、[n]ab,[u]ab,uiab,niab,Pab,(∂ui/∂n)abは、コントロールポイントaとコントロールポイントbとの間の境界面E上における物理量であることを示す。また、niabは[n]abの成分である。また、mは、コントロールポイントaと結合関係(境界面を挟む関係)にある全てのコントロールポイントの数である。
 そして、式(5),(6)をVa(コントロールポイントaのコントロールボリュームの体積)で割ると、式(5)が下式(7)のように示され、式(6)が下式(8)のように示される。
Figure JPOXMLDOC01-appb-M000007
Figure JPOXMLDOC01-appb-M000008
ここで、下式(9)とする。
Figure JPOXMLDOC01-appb-M000009
 すると、式(7)が下式(10)のように示され、式(8)が下式(11)のように示される。
Figure JPOXMLDOC01-appb-M000010
Figure JPOXMLDOC01-appb-M000011
 式(10),(11)において、[u]ab、uiab、Pab、(∂ui/∂n)abは、コントロールポイントaとコントロールポイントb上の物理量の重み付け平均(移流項については、風上性を考慮した重み付け平均)により近似的に求められ、コントロールポイントa,b間の距離及び向きと、その間に存在する境界面Eとの位置関係(上記比率α)と、境界面Eの法線ベクトルの向きに依存して決定される。ただし、[u]ab、uiab、Pab、(∂ui/∂n)abは、境界面Eの幾何学的な形状には無関係な量(すなわちセル形状を規定するVertexとConnectivityを必要としない量)である。
 また、式(9)で定義されるφabも(面積/体積)という量であり、コントロールボリュームの幾何学的形状には無関係な量(すなわちセル形状を規定するVertexとConnectivityを必要としない量)である。つまり、このような式(10),(11)は、セル形状を規定するVertexとConnectivityを必要としない量のみを使用して物理量が算出可能な、重み付き残差積分法に基づく演算式である。
 このため、物理量計算(ソルバ処理)に先立って前述の計算用データモデルを作成し、物理量計算において当該計算用データモデルと、式(10),(11)の離散化支配方程式とを用いることによって、物理量計算においてコントロールボリュームの幾何学的形状(すなわちセルの形状を規定するVertexとConnectivity)を全く使用せずに、流速の計算を行うことが可能である。
 このように、物理量計算においてVertexとConnectivityとを全く使用せずに流速の計算が行えることから、計算用データモデルにVertexとConnectivityとを持たせる必要がなくなる。よって、計算用データモデルの作成にあたり、セルの幾何学的形状に縛られる必要がなくなるため、セルの形状を任意に設定することができる。このため、本数値解析手法によれば、前述のように3次元形状データの修正作業に対する規制を大幅に緩和することができる。
 なお、実際に式(10),(11)を解くにあたり、[u]abやPab等の境界面E上の物理量は、通常、線形補間によって補間される。例えば、コントロールポイントaの物理量をψa、コントロールポイントbの物理用をψbとすると、境界面E上の物理量ψabは、下式(12)によって求めることができる。
Figure JPOXMLDOC01-appb-M000012
 また、物理量ψabは、境界面が挟まれたコントロールポイント同士を結ぶ線分のどの内分点に存在するかの比率αを用いることによって、下式(13)によって求めることもできる。
Figure JPOXMLDOC01-appb-M000013
 したがって、計算用データモデルが比率αを示す比率データを有している場合には、式(13)を用いて境界面E上の物理量をコントロールポイントaとコントロールポイントbとからの離間する距離に応じた重み付け平均を用いて算出することができる。
 また、連続体モデルの方程式(ナビエ・ストークスの式等)には、式(1)に示すように、1階の偏導関数(偏微分)が含まれる。
 ここで、連続体モデルの方程式の微係数を部分積分、ガウスの発散定理、あるいは一般化されたグリーンの定理を利用して、体積分を面積分に変換し、微分の次数を下げる。これによって1次微分は0次微分(スカラー量またはベクトル量)とすることができる。例えば一般化されたグリーンの定理では、物理量をψとすると、下式(14)という関係が成り立つ。
Figure JPOXMLDOC01-appb-M000014
 なお、式(14)において、ni(i=1,2,3)は、表面S上の単位法線ベクトル[n]のi方向の成分である。連続体モデルの方程式の1次微分項は、体積分から面積分の変換により、境界面上ではスカラー量またはベクトル量として取り扱われる。そして、これらの値は、前述の線形補間等によって、各コントロールポイント上の物理量から補間することができる。
 また、後述するが、連続体モデルの方程式によっては、2階の偏導関数が含まれる場合もある。
 式(14)の被積分関数をさらに1階微分した式は下式(15)となり、連続体モデルの方程式の2次微分項は、体積分から面積分の変換により境界面E上では下式(16)となる。
Figure JPOXMLDOC01-appb-M000015
Figure JPOXMLDOC01-appb-M000016
 なお、式(15)において∂/∂nは法線方向微分を示し、式(16)において∂/∂nabは、[n]ab方向微分を示す。つまり、連続体モデルの方程式の2次微分項は、体積分から面積分の変換により、物理量ψの法線方向微分(Sabの法線[n]ab方向への微分)に、[n]の成分niab、njabを乗じた形となる。
 ここで式(16)中の∂ψ/∂nabは、下式(17)と近似される。
Figure JPOXMLDOC01-appb-M000017
 なお、コントロールポイントaとコントロールポイントbとのコントロールポイント間ベクトル[r]abは、コントロールポイントaの位置ベクトル[r]aとコントロールポイントbの位置ベクトル[r]bから下式(18)のように定義される。
Figure JPOXMLDOC01-appb-M000018
 したがって、境界面Eの面積がSabであるため、式(16)は下式(19)となり、これを利用して式(16)を計算することができる。
Figure JPOXMLDOC01-appb-M000019
 なお、式(16)の導出にあたり、次のことがわかる。すべての線形偏微分方程式は、定数と、1次、2次、その他の偏導関数に係数を乗じた項の線形和で表わされる。式(15)から式(18)において、物理量ψをψの1次偏導関数に置き換えると、より高次の偏導関数の体積分を、式(14)のように低次の偏導関数の面積分により求めることができる。この手順を、低次の偏微分から順次繰り返すと、線形偏微分方程式を構成するすべての項の偏導関数は、コントロールポイントの物理量ψと、式(12)又は式(13)で計算される境界面上のψであるψabと、式(18)で定義されるコントロールポイント間ベクトルから求められるコントロールポイント間距離と、式(5)に示される境界面Eの面積Sab、式(16)に示される法線ベクトルの成分niabとnjabから、すべて求めることができる。
 次に非線形の偏微分方程式では、例えば、式(20)に示す非線形項であるψとψの一次偏導関数とを乗算した項や、一次偏導関数の二乗は、反復計算により数値計算することができる。すなわち、それぞれの項のψ、一次偏導関数の方を反復計算における一反復前の計算値として、近似して、反復計算をすればよい。このような方法により、偏微分方程式における非線形項はすべて数値計算が可能になる。以上から、前述では特に連続体モデルの方程式について説明したが、それ以外のいかなる偏微分方程式に対しても、VertexとConnectivityとを必要としない離散化が可能であることがわかった。ただし、保存則については別の成立条件が必要である。これについては後述する。
Figure JPOXMLDOC01-appb-M000020
 さて、本数値解析手法において物理量計算にあたりVertexとConnectivityとを必要としないことは前述した。このため、計算用データモデルの作成(プリ処理)にあたり、コントロールボリュームの体積と、境界面の面積及び法線ベクトルとを、VertexとConnectivityと使用しないで求めれば、式(10),(11)の離散化支配方程式を用いて、コントロールボリュームの幾何学的形状(すなわちセルの幾何学的形状)を全く使用せずに、流速の計算を行うことが可能である。
 ただし、本数値解析手法においては、必ずしも、コントロールボリュームの体積と、境界面の面積及び法線ベクトルとを、コントロールボリュームの具体的な幾何学的形状を使用しないで求める必要はない。すなわち、ソルバ処理においてVertexとConnectivityを利用しないので、コントロールボリュームの具体的な幾何学的形状、具体的にはVertexとConnectivityを利用するとしても、従来の有限要素法、有限体積法のような分割領域に関わる制約、すなわち分割領域の歪みや捩じれに対する制約がないため、前述のように容易に計算用データモデルの作成が可能となる。
 さて、本数値解析手法においては、条件によっては、前述の法線ベクトルを、コントロールボリューム同士を結ぶ距離ベクトルに置き換えることも可能である。以下にその理由について説明する。図5において示す境界面Eの法線ベクトル[n]abが、コントロールポイントaとコントロールポイントbとを結ぶ距離ベクトル[r]abと同じ方向を向く場合には、法線ベクトル[n]は、下式(21)のように示すことができる。
Figure JPOXMLDOC01-appb-M000021
 したがって、境界面Eの法線ベクトル[n]abが距離ベクトル[r]abと同じ方向を向く場合には、式(10),(11)で示す離散化支配方程式に式(21)を代入することによって、法線ベクトル[n]abがコントロールポイントa,b間方向を向いている場合の離散化支配方程式が得られる。すなわち、境界面と該境界面を挟むコントロールポイントを結ぶベクトルが直交する場合には、離散化支配方程式における法線ベクトルを距離ベクトルに置き換えることができる。このような離散化支配方程式によれば、コントロールポイントの位置座標だけから、境界面Eの法線ベクトル[n]abを決定することができる。また、境界面Eと距離ベクトルとを出来るだけ直交に近づけることによって物理量を計算する際の精度が向上する。したがって、法線ベクトルを、距離ベクトルに置き換えることによって、計算精度の向上を図ることができる。さらに、法線ベクトルの任意性を、コントロールポイントを結ぶ方向に固定化することができる。
 ただ、法線ベクトルの任意性がなくなることで境界面の姿勢に自由度を持たせることができなくなる場合がある。このような場合には、法線ベクトルの任意性が存在する場合と比較して、計算用データモデルを作成する際にコントロールボリュームの体積と境界面の設定に制約が生じることとなる。また、法線ベクトルを、コントロールポイントを結ぶベクトルに置き換える場合には、距離ベクトルが必要となり、該距離ベクトルを算出するためにコントロールポイントの座標が必要となるため、計算用データモデルにコントロールポイントの座標データあるいは距離ベクトルデータを持たせる必要がある。ただし、この場合でも、本数値解析手法においては、物理量計算にてVertexとConnectivityとは必要ない。
 次に、本発明と粒子法との違いを明確にするために、物理量計算にあたり、物理量の保存則が満足される条件について説明する。
 例えば、図6に示すように、L字形の流路を4つに分割するセルRa,Rb,Rc,Rdについて考える。なお、各セルRa,Rb,Rc,Rdの内部に配置されるコントロールポイントa,b,c,dは、セルRa,Rb,Rc,Rdの中心に設置されている。また、各境界面における流速ベクトルは、境界面に対して垂直であるものとする。
 なお、図6において、VaがセルRaの体積(コントロールポイントaのコントロールボリュームの体積)、VbがセルRbの体積(コントロールポイントbのコントロールボリュームの体積)、VcがセルRcの体積(コントロールポイントcのコントロールボリュームの体積)、VdがセルRdの体積(コントロールポイントdのコントロールボリュームの体積)、ρaがセルRaにおける密度、ρbがセルRbにおける密度、ρcがセルRcにおける密度、ρdがセルRdにおける密度、SaがセルRaと外部領域との境界面の面積、ScがセルRcと外部領域との境界面の面積、SdがセルRdと外部領域との境界面の面積、SabがセルRaとセルRbとの境界面の面積、SacがセルRaとセルRcとの境界面の面積、SbdがセルRbとセルRdとの境界面の面積、ScdがセルRcとセルRdとの境界面の面積、uaがセルRaと外部領域との境界面における流速、ucがセルRcと外部領域との境界面における流速、udがセルRdと外部領域との境界面における流速、uabがセルRaとセルRbとの境界面における流速、uacがセルRaとセルRcとの境界面における流速、ubdがセルRbとセルRdとの境界面における流速、ucdがセルRcとセルRdとの境界面における流速、ρaがセルRaにおける密度、ρabがセルRaとセルRbとの境界面における密度、ρacがセルRaとセルRcとの境界面における密度、ρbdがセルRbとセルRdとの境界面における密度、を示している。
 図6に示すような4つのコントロールポイントa,b,c,d(4つのセルRa,Rb,Rc,Rd)上で質量保存の式を離散化することを考える。なお、質量保存の式を離散化した離散化支配方程式は、後述の式(43)に示す。
 コントロールポイントaにおける離散化支配方程式は、下式(22)に示される。
Figure JPOXMLDOC01-appb-M000022
 コントロールポイントbにおける離散化支配方程式は、下式(23)に示される。
Figure JPOXMLDOC01-appb-M000023
 コントロールポイントcにおける離散化支配方程式は、下式(24)に示される。
Figure JPOXMLDOC01-appb-M000024
 コントロールポイントdにおける離散化支配方程式は、下式(25)に示される。
Figure JPOXMLDOC01-appb-M000025
 そして、式(22)~(25)を全て足し加えると、下式(26)を得る。
Figure JPOXMLDOC01-appb-M000026
 各コントロールポイントa,b,c,dのコントロールボリュームの体積Va,Vb,Vc,Vdが時間について一定であることを利用して時間微分項の中にくり入れると、式(26)は、下式(27)となる。
Figure JPOXMLDOC01-appb-M000027
 今、各コントロールポイントa,b,c,dのコントロールボリュームが占める全体積をVabcd、平均密度ρ(オーバーライン)abcdとすると、全体積をVabcdが下式(28)で示され、平均密度ρ(オーバーライン)abcdが下式(29)で示される。
Figure JPOXMLDOC01-appb-M000028
Figure JPOXMLDOC01-appb-M000029
 したがって式(27)は、下式(30)のように示される。
 式(30)は、コントロールポイントa,b,c,dのコントロールボリュームが占める全領域に流入する質量流束と流出する質量流束の差が単位時間にコントロールポイントa,b,c,dのコントロールボリュームが占める全領域の平均密度の時間変化(質量の時間変化)に等しいことを意味する。つまり、各コントロールポイントa,b,c,dごとに離散化した質量保存の式は、全コントロールポイントのコントロールボリュームが占める領域に対しても成立する。すなわち、コントロールポイントが示すコントロールボリューム領域についての離散化支配方程式は、全てのコントロールポイントについて足し加えると、計算対象である解析領域の全領域に関する保存則を満足する方程式にならなくてはならない。
 続いて、コントロールポイントの全数をNとし、式(43)に示される質量保存の式を足し加えると、下式(31)が得られる。
Figure JPOXMLDOC01-appb-M000031
 式(31)において、各コントロールポイント間の境界面の面積は、コントロールポイントa側から見てもコントロールポイントb側から見ても等しいとすると、各コントロールポイント間の質量流束(ρ[n]・[u])・Sは、コントロールポイントa側とコントロールポイントb側で正負が逆で絶対値が等しくなるので差し引きゼロとなりキャンセルされる。つまり、式(31)は、計算する全領域に対して、流入する質量と流出する質量との差が全領域での質量の単位時間変化に等しいことを示す。したがって、式(31)は、解析領域全体における質量保存の式となる。よって、式(31)が、計算する全領域についての質量保存則を満足するためには、2つのコントロールポイント間の境界面の面積と一致するという条件及び法線ベクトルが一方のコントロールポイント側から見た場合と他方のコントロールポイント側から見た場合とで絶対値が一致するという条件が必要である。
 また、質量保存則を満足するためには、下式(32)に示される全コントロールポイントのコントロールボリュームの占める体積が解析領域の全体積と一致するという条件が必要である。
Figure JPOXMLDOC01-appb-M000032
 これは、連続体の密度ρが、ρ1=ρ2=・・・=ρと1つの変数で表されることを考えれば容易に理解される。
 このように質量保存則を満足するためには、全コントロールポイントのコントロールボリュームの体積の総和が解析領域の体積と一致するという条件が必要である。
 なお、ここでは、質量保存の式に対して説明を行ったが、保存則は、連続体の運動量やエネルギに対しても成立しなければならない。これらの物理量に対しても、後述の式(50)、(55)において全コントロールポイントに対して足し加えることによって、保存側が満足されるためには、全コントロールポイントのコントロールボリュームの占める体積が解析領域の全体積と一致するという条件と、2つのコントロールポイント間の境界面の面積が一致する条件及び法線ベクトルが一方のコントロールポイント側から見た場合と他方のコントロールポイント側から見た場合とで絶対値が一致する(正負逆符号)という条件とが必要であることが分かる。
 また、保存則を満たすためには、図7に示すように、コントロールポイントaの占めるコントロールボリュームを考えた場合に、コントロールポイントaを通り、任意の向きの単位法線ベクトル[n]pを持つ無限に広い投影面Pを考えたときに下式(33)が成り立つという条件が必要である。
Figure JPOXMLDOC01-appb-M000033
 なお、図7及び式(33)において、Siが境界面Eiの面積、[n]iが境界面Eiの単位法線ベクトル、mがコントロールボリュームの面の総数を示す。
 式(33)は、コントロールボリュームを構成する多面体が、閉包空間を構成することを示す。この式(33)は、コントロールボリュームを構成する多面体の一部が凹んでいる場合であっても成立する。
 なお、図8に示すように、2次元における三角形についても式(33)が成り立つ。また、多面体の1つの面を微小面dSとし、mを∞とする極限を取ると、下式(34)となり、図9に示すような閉包曲面体についても成り立つことが分かる。
Figure JPOXMLDOC01-appb-M000034
 式(33)が成り立つという条件は、ガウスの発散定理や、式(14)に示す一般化されたグリーンの定理が成り立つために必要な条件である。
 そして、一般化されたグリーンの定理は、連続体の離散化のための基本となる定理である。したがって、グリーンの定理にしたがって体積分を面積分に変化し離散化させる場合において、保存則を満足させるためには式(33)が成り立つという条件は必須となる。
 このように、前述の計算用データモデル及び物理量計算を用いて数値解析を行う際に、物理量の保存則が満足されるためには、以下の3つの条件が必要となる。
 (a)全コントロールポイントのコントロールボリュームの体積(全分割領域の体積)の総和が解析領域の体積と一致する。
 (b)2つのコントロールポイント間の境界面の面積が一致する及び法線ベクトルが一方のコントロールポイント側(境界面を挟む一方の分割領域)から見た場合と他方のコントロールポイント側(境界面を挟む他方の分割領域)から見た場合とで絶対値が一致する。
 (c)コントロールポイントを通り(分割領域を通り)、任意の向きの単位法線ベクトル[n]pを持つ無限に広い投影面Pを考えたときに式(33)が成り立つ。
 つまり、保存則を満足させる場合には、これらの条件を満足するように計算用データモデルを作成する必要がある。ただし、前述のように本数値解析手法においては、計算用データモデルの作成にあたり、セル形状を任意に変形することができることから、容易に上記3つの条件を満足するように計算用データモデルを作成することができる。
 次に、従来の粒子法であるMPS(Moving Particle Semi-Implicit)法が保存則を満足できない理由、計算負荷が増大する理由、及び本数値解析手法の粒子法に対する優位性について詳説する。
 MPS法は、適切に設定された半径reの球内に存在する粒子を検出し、それらと結合関係を結んで計算する手法であり、例えば図10に示すように、粒子i周りに複数の粒子jが存在する場合に、粒子iにおけるラプラシアン(∇2ψ)iは、下式(35)のように近似される。
Figure JPOXMLDOC01-appb-M000035
 なお、図10において、ψiが粒子iにおける物理量を示し、ψjが粒子jにおける物理量を示し、[r]ijが粒子iから粒子jへの距離ベクトルを示している。
 また、式(35)におけるdは次元数を示す定数であり、3次元である場合には3となる。また式(35)におけるω(r)は重み関数であり、下式(36)のように示される。また、式(35)におけるmは、結合関係にある粒子の数を示す。
Figure JPOXMLDOC01-appb-M000036
 一方、図11に示すように、粒子i,jをコントロールポイントとして捉え、粒子iのコントロールボリュームがVi、粒子iと粒子jとの間の境界面の面積がSij、粒子iと粒子jとの間の境界面の法線ベクトルが[n]ij、粒子iから粒子jへの距離ベクトルが[r]ijである場合には、粒子iにおけるラプラシアン(∇2ψ)iは、下式(37)のように近似される。
Figure JPOXMLDOC01-appb-M000037
 そして、式(36)と式(37)とを比較すると、仮に[r]ijと[n]ijが同じ向きであるとした場合には、下式(38),(39)が得られる。
Figure JPOXMLDOC01-appb-M000038
Figure JPOXMLDOC01-appb-M000039
 式(39)は、左辺と右辺の次元が(1/距離)で一致している。したがって、右辺のMPS法定式化は、2つの粒子i,j間の距離のみから、下式(40)に示す(面積/体積)という量(すなわち式(9)で定義された比率)を算出する手法と解釈出来る。
Figure JPOXMLDOC01-appb-M000040
 しかし、m個の粒子の結合関係のみから、境界面の面積Sijと体積Viを求めるには、関係式が不足しており、具体的な数値は決定できず、あくまでも、式(40)の比率のみが決定される。このため、仮に、MPS法の離散化支配方程式から、境界面の面積Sijと体積Viを求めたとしても、前述した保存則が満足される条件(a)~(c)を満足する保証は全くない。このことは、MPS法が、保存則の満足性という点で大きな問題を有していることを示している。
 数値解析を工学上の問題、特に機械設計問題やプラント設計問題に適用した場合において、定量値(圧力、温度、熱量等)の評価は極めて重要であるが、数値解析が保存則を満足しない場合には、定量性が保証されなくなる。つまり、MPS法では、質量保存、運動量保存、エネルギ保存という保存則が満足される保証がなく、定量性が保証されない。これに対して、本数値解析手法によれば、保存則を満足させることができ、定量性を保証することができる。
 なお、MPS法は、前述のように、時刻の変化に伴って粒子が移動するため、例えば、その都度、前述の半径reの球内に存在する粒子を検出する近傍探索処理を行う必要があり、物理量計算における計算負荷が大きくなる。これに対して、本数値解析手法においてコントロールボリューム及びコントロールポイントは、時刻が変化した場合であっても移動しない。このため、予めコントロールボリュームやコントロールポイントの配置関係が分かっている場合は近傍探索処理を行うことなく物理量計算を行うことができる。このため、物理量計算における計算負荷をMPS法と比較して小さくすることができる。なお、コントロールボリューム及びコントロールポイントの配置関係が予め分かっていない場合であっても、最初に一度のみ、コントロールボリュームやコントロールポイントの配置関係を定める処理を行えば良い。
 なお、前述の説明においては、ナビエ・ストークスの式及び連続の式から重み付き残差積分法に基づいて導出した離散化支配方程式を用いる物理量の計算例について説明したが、本数値解析手法において用いられる離散化支配方程式はこれに限られるものではない。つまり、種々の方程式(質量保存の方程式、運動量保存の方程式、エネルギ保存の方程式、移流拡散方程式、及び波動方程式等)から重み付き残差積分法に基づいて導出されると共に、VertexとConnectivityとを必要としない量のみを使用して物理量を算出可能な離散化支配方程式であれば本数値解析手法に用いることができる。
 そして、このような離散化支配方程式の特性によって、従来の有限要素法や有限体積法のようにいわゆるメッシュを必要としない、メッシュレスでの計算が可能となる。また、たとえ、プリ処理において、セルの幾何学的形状を規定するVertexとConnectivityとを利用するとしても、従来の有限要素法、有限体積法、ボクセル法のようなメッシュに対する制約がないため、計算用データモデルの作成に伴う作業負荷を低減できる。
 以下に、質量保存の方程式、運動量保存の方程式、エネルギ保存の方程式、移流拡散方程式、及び波動方程式から、重み付き残差積分法に基づいて、VertexとConnectivityとを必要としない量のみを使用する離散化支配方程式が導出可能であること、すなわち本数値解析手法において他の支配方程式を用いることができることについて説明する。
(1)質量保存の方程式
 オイラー座標系における質量保存の方程式は、下式(41)のように微分形式で示される。
Figure JPOXMLDOC01-appb-M000041
 なお、式(41)においてtが時間、xi(i=1,2,3)がカーテシアン系における座標、ρが密度、ui(i=1,2,3)が変形速度の成分、添字i(i=1,2,3)がカーテシアン座標系における各方向成分を示している。また、添字iに関しては総和規約に従うものとする。
 そして、式(41)を、重み付き残差積分法に基づいて、コントロールポイントのコントロールボリュームの体積Vに対して積分すると下式(42)と示される。
Figure JPOXMLDOC01-appb-M000042
 さらに、図5に示すコントロールポイントaについて離散化し、代数方程式に変換すると、下式(43)のように示される。
Figure JPOXMLDOC01-appb-M000043
 ここで、添字abが付く、ρab、[n]abは、コントロールポイントaとコントロールポイントbとの間の境界面E上における物理量であることを示す。また、mは、コントロールポイントaと結合関係(境界面を挟む関係)にある全てのコントロールポイントの数である。
 そして、式(43)をコントロールポイントaのコントロールボリュームの体積であるVaで割ると、下式(44)が得られ、さらに下式(45)とすると、質量保存の方程式が離散化された下式(46)を得る。
Figure JPOXMLDOC01-appb-M000044
Figure JPOXMLDOC01-appb-M000045
Figure JPOXMLDOC01-appb-M000046
 このような式(46)は、重み付き残差積分法に基づいて導出されると共に、VertexとConnectivityとを必要としない量のみを使用する方程式であるため、本数値解析手法の離散化支配方程式として用いることができる。
 なお、本数値解析手法で用いられる離散化支配方程式は、従来の幾何学的形状を示す量を使用する方程式を重み付き残差積分法に基づいて導出する過程で敢えて途中にて留めることによって得られることは前述した。つまり式(46)は、質量保存の方程式を、重み付き残差積分法に基づいて、Vertex等を使用する方程式を導出する過程で得られるものである。ここで、図12は、2次元三角形状のセルを示す模式図である。図12における三角形aの面積、辺の長さ、法線ベクトルを下表に示す。なお、下表において記号×は、外積を示している。
Figure JPOXMLDOC01-appb-T000047
 図12に示すように、セルが2次元三角形状である場合において、質量保存の方程式を、重み付き残差積分法に基づいて、Vertex等を使用する離散化支配方程式とすると、下式(47)となる。
Figure JPOXMLDOC01-appb-M000048
 ただし、式(47)において、[r]iが頂点(Vertex)iの位置ベクトル(座標)であり、記号×がベクトルの外積を示している。また、ρab及びρを一定とし、[r]ijを[r]j-[r]iとし、[r]4を[r]1とする。
(2)運動量保存の方程式
 オイラー座標系における運動量保存の方程式は、下式(48)のように微分形式で示される。
Figure JPOXMLDOC01-appb-M000049
 なお、式(48)においてσij(i,j=1,2,3)が連続体内部応力、fi(i=1,2,3)が連続体に作用する外力(例えば重力)を示し、他の量は式(41)と同様である。また、添字jに関しては総和規約に従うものとする。
 この式(47)は、構造体や材料、流体等の応力場の基礎方程式である。
 そして、式(47)を、重み付き残差積分法に基づいて、コントロールポイントのコントロールボリュームの体積Vに対して積分すると下式(49)と示される。
Figure JPOXMLDOC01-appb-M000050
 さらに、図5に示すコントロールポイントaについて離散化し、代数方程式に変換すると、下式(50)のように示される。
Figure JPOXMLDOC01-appb-M000051
 式(50)をコントロールポイントaのコントロールボリュームの体積であるVaで割り、さらに式(45)を導入すると、運動量保存の方程式が離散化された下式(51)が得られる。
Figure JPOXMLDOC01-appb-M000052
 なお、運動量保存の方程式において応力テンソルの対称性を考慮すると、角運動量保存の方程式も、運動量保存の方程式と同様に離散化できる。
(3)移流拡散方程式
 ある物質Cの連続体内への移流拡散現象は、下式(52)の移流拡散方程式で示される。
Figure JPOXMLDOC01-appb-M000053
 なお、式(52)において、Cが物質Cの濃度、μCが物質Cの拡散係数、qCが物質Cのソース(シンク)項、ρが連続体の密度、uiが連続体の変形速度を示す。
 そして、式(52)を、重み付き残差積分法に基づいて積分し、さらに離散化して離散化支配方程式に変換すると、下式(53)を得る。
Figure JPOXMLDOC01-appb-M000054
 なお、Ca等の添字aが付く量がコントロールポイントaの物理量であり、Cab等の添字abが付く量がコントロールポイントaとコントロールポイントbとの間の境界面における物理量である。
(4)エネルギ保存の方程式
 エネルギ保存則は、熱エネルギ保存と運動エネルギ保存に分けられるが、運動エネルギの保存は前述の運度量保存に含まれるため、ここでは熱エネルギ保存の方程式の一般形を下式(54)に示す。
Figure JPOXMLDOC01-appb-M000055
 なお、式(54)において、Uが連続体の内部エネルギ、qiが熱流束ベクトル、rが熱源,熱エネルギのソース(シンク)項、σijが応力テンソル、Dijが変形速度テンソルを示す。なお、σij・Dijのテンソル2重積の項は、応力仕事率と呼ばれる。また、添字i,jについては、総和規約を適用する。
 そして、式(54)を、重み付き残差積分法に基づいて積分し、さらに離散化して離散化支配方程式に変換すると、下式(55)を得る。
Figure JPOXMLDOC01-appb-M000056
 そして、熱流束ベクトル[q]に、熱流束に加えて電気的または化学的エネルギ等の全ての非力学的エネルギの流束を加えると、エネルギ保存の方程式は、非常に広い範囲のエネルギの保存を示す方程式となる。
(5)波動方程式
 前述の質量保存の方程式、運動量保存の方程式、エネルギ保存の方程式、移流拡散方程式等の保存形で表される物理法則の方程式は、「放物型」と「楕円型」と呼ばれる偏微分方程式の性質を合わせ持った方程式である。これに対して、波の伝わりや振動の伝わりを表す波動方程式は「双曲型」と呼ばれ、一般形として下式(56)と示される。
Figure JPOXMLDOC01-appb-M000057
 なお、式(56)において、uが振幅,変位、αが波の伝播速度を示している。
 そいして、式(56)を、重み付き残差積分法に基づいて積分し、さらに離散化して離散化支配方程式に変換すると、下式(57)が得られる。
Figure JPOXMLDOC01-appb-M000058
 式(56)から、空間方向にはコントロールボリュームの幾何学的形状を必要としない離散化手法がそのまま適用できることが分かる。ただし、時間方向には2階の導関数であるので、高精度な時間積分法が用いられる。
 以上のような式(46),(51),(53),(55),(57)は、重み付き残差積分法に基づいて導出されると共に、VertexとConnectivityとを必要としない量のみを使用して物理量を算出可能な方程式であるため、本数値解析手法の離散化支配方程式として用いることができる。そして、本数値解析手法は、上記離散化支配方程式を用いることによって、定常及び非定常の、流体力学、熱伝導、移流拡散、構造力学、波動、及びこれらの物理現象が連成した現象における数値解析に適用することができる。
 次に、本数値解析手法を用いる場合には、異なる座標系で設計された部品を容易に組み上げた状態で数値解析を行うことができる。これは、本数値解析手法においては、有限要素法で用いられる要素と異なり、コントロールボリュームの具体的な幾何学的形状を必要とせず、また2つの隣接するコントロールポイント間の「距離」は、絶対座標系における距離である必要はなく、「計算上の距離」であれば良いためである。
 したがって、本数値解析手法によれば、図13に示すように、異なる座標系で設計された部品A,B,Cを組み上げた状態で数値解析したい場合において、各部品の座標系を一致させることなく数値解析を行うことができる。
 なお、一般的な有限要素法と呼ばれる数値解析手法は、図14や図15に示すような要素の交差を全く許さない手法である。このため、有限要素法において用いられるアプリケーションソフトにて要素の交差が検出されるとエラー出力がなされる。そして、このようなことから、有限要素において計算用データモデルの作成に非常に大きな作業負担がかかることは前述の通りである。
 一方、本数値解析手法によれば、図14や図15に示すように、コントロールポイント間の結合に交差を許すことが可能である。これは、各コントロールポイントが占めるコントロールボリュームの体積(分割領域の体積)、境界面の面積、及び境界面の法線ベクトルという情報量は、具体的な幾何学的形状を有している必要がない。したがって、コントロールポイント間の結合が交差する場合であっても物理量計算を実行することが可能である。
 したがって、計算用データモデルを作成する際の制約が減り、計算用データモデルの作成の自由度が大幅に拡大する。ただし、流体などにおける物理現象を考えた場合には、1つのコントロールポイントに近接するコントロールポイントからの情報によって、そのコントロールポイントの物理用がアップデートされるという性質を有しているため、遠方のコントロールポイントと結合させると計算精度が悪化する虞がある。このため、本数値解析手法においても適切な範囲においてコントロールポイント間結合を形成することが好ましい。
 本発明は、数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成手段と、前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成手段と、前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成手段と、前記数値解析を行うための計算用データを記憶する計算用データ記憶手段と、前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成手段とを備えることを特徴とする。
 本発明においては、前記分割領域データ生成手段は、前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする。
 本発明においては、前記分割領域データ生成手段は、所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする。
 本発明においては、前記初期点データ生成手段は、前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする。
 本発明は、数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、前記数値解析を行うための計算用データを記憶する計算用データ記憶手段とを備える計算用データ生成装置における計算用データ生成方法であって、前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成ステップと、前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成ステップと、前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成ステップと、前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成ステップとを有することを特徴とする。
 本発明においては、前記分割領域データ生成ステップは、前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする。
 本発明においては、前記分割領域データ生成ステップは、所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする。
 本発明においては、前記初期点データ生成ステップは、前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする。
 本発明は、数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、前記数値解析を行うための計算用データを記憶する計算用データ記憶手段とを備える計算用データ生成装置上のコンピュータに計算用データ生成を行わせる計算用データ生成プログラムであって、前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成ステップと、前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成ステップと、前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成ステップと、前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成ステップとを前記コンピュータに行わせることを特徴とする。
 本発明においては、前記分割領域データ生成ステップは、前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする。
 本発明においては、前記分割領域データ生成ステップは、所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする。
 本発明においては、前記初期点データ生成ステップは、前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする。
 本発明によれば、従来の数値解析手法である有限要素法、有限体積法、ボクセル法、ボクセル法の改良手法、及び粒子法の問題点を解決し、解析精度の悪化を伴わずにソルバ処理における計算負荷の低減を図ることができる数値解析装置に入力する計算用データ作成の作業負担を軽減することができるという効果が得られる。
従来の有限要素法による計算用データモデルの一例を示す概念図である。 従来の有限体積法による計算用データモデルの一例を示す概念図である。 本発明と従来の数値解析手法とを比較するための表である。 本発明と従来の有限体積法とを詳細に比較するための図である。 本数値解析手法の計算用データモデルの一例を示す概念図である。 本数値解析手法において物理量の保存則が満足される条件について説明するための複数の分割領域を示す模式図である。 コントロールポイントを通り、任意の向きの単位法線ベクトルを持つ無限に広い投影面を示す模式図である。 2次元における三角形のコントロールボリュームを考えた場合において物理量の保存則が満足される条件について説明する模式図である。 球のコントロールボリュームを考えた場合において物理量の保存則が満足される条件について説明する模式図である。 粒子法による近傍探索について示す模式図である。 本数値解析手法におけるコントロールボリュームを示す模式図である。 2次元三角形状のセルを示す模式図である。 異なる座標系で設計された部品を組み上げた状態を示す模式図である。 要素が交差する様子を示す模式図である。 コントロールポイント間の結合が交差する様子を示す模式図である。 数値解析装置のハードウェア構成を概略的に示すブロック図である。 数値解析方法を示すフローチャートである。 数値解析方法にて行うプリ処理を示すフローチャートである。 数値解析方法にて行うソルバ処理を示すフローチャートである。 解析領域が移動境界を含む場合における数値解析方法を示すフローチャートである。 第1の実施形態の構成を示すブロック図である。 図21に示すパラメータ記憶部12のテーブル構造を示す図である。 図21に示す形状データ記憶部15に記憶される形状データの一例を示す図である。 解析領域と解析対象物体の位置関係を示す図である。 図21に示すパッチデータ記憶部17に記憶されるパッチデータの一例を示す図である。 図21に示すパッチデータ記憶部17のテーブル構造を示す図である。 ボクセルの構成を示す図である。 図21に示すボクセルデータ記憶部19のテーブル構造を示す図である。 各ボクセルを定義するデータを求める方法を示す図である。 図21に示す初期点データ記憶部21のテーブル構造を示す図である。 図21に示す分割領域データ記憶部24のテーブル構造を示す図である。 図21に示す中間データ記憶部26のテーブル構造を示す図である。 図21に示す計算用データ記憶部27のテーブル構造を示す図である。 図21に示すボクセルデータ生成部18がボクセルデータを生成する処理動作を示すフローチャートである。 分割領域データ生成部23が分割領域データを生成して、分割領域データ記憶部24に記憶する処理動作を示すフローチャートである。 計算用データ生成部25が分割領域データから計算用データを生成して、計算用データ記憶部27に記憶する処理動作を示すフローチャートである。 第2の実施形態の構成を示すブロック図である。 図37に示すグラフィックボード28の機能構成を示す図である。 図37に示すグラフィックボード28の座標系を示す図である。 ポテンシャル立体の構成を示す図である。 グラフィックボード28に入力する三角形データの構成を示す図である。 グラフィックボード28における三角形の描画処理を示す図である。 図37に示す分割領域データ生成部231の処理動作を示すフローチャートである。 図37に示すグラフィックボード28内の三角形描画部の処理動作を示すフローチャートである。 第3の実施形態の構成を示すブロック図である。 図45に示す初期点データ生成部20の構成を示すブロック図である。 図46に示す内側ボクセルデータ生成部201の動作を示すフローチャートである。 図46に示す壁上点・球上点データ生成部203の動作を示すフローチャートである。 図46に示す分割点データ生成部206の動作を示すフローチャートである。 図46に示す初期点データ出力部208の動作を示すフローチャートである。 図46に示す構成の変形例を示すブロック図である。 図51に示す内側ボクセルデータ修正部210の動作を示すフローチャートである。 内側ボクセルデータを示す説明図である。 球上点の一例を示す説明図である。 壁上点、球上点、ボクセルの中心点を示す説明図である。 分割点を生成する動作を示す説明図である。 境界層を形成するための点群の一例を示す説明図である。 内側ボクセルデータを示す説明図である。 分割領域データの一例を示す説明図である。
 始めに、従来の数値解析手法である有限要素法、有限体積法、ボクセル法、ボクセル法の改良手法、及び粒子法の問題点を解決し、解析精度の悪化を伴わずにソルバ処理における計算負荷の低減を図ることができる数値解析装置について、図面を参照して説明する。ここでは、本発明による計算用データ生成装置が生成した計算用データを入力して数値解析装置について説明する。また、以下の説明においては、車両の室内空間における空気の流速を数値解析によって求める場合について説明する。
 図16は、数値解析装置Aのハードウェア構成を概略的に示すブロック図である。この図に示すように、数値解析装置Aは、パーソナルコンピュータやワークステーション等のコンピュータによって構成されるものであり、CPU1、記憶装置2、DVD(Digital Versatile Disc)ドライブ3、入力装置4、出力装置5、及び通信装置6を備えている。
 CPU1は、記憶装置2、DVDドライブ3、入力装置4、出力装置5、及び通信装置6と電気的に接続されており、これらの各種装置から入力される信号を処理すると共に、処理結果を出力するものである。
 記憶装置2は、メモリ等の内部記憶装置及びハードディスクドライブ等の外部記憶装置によって構成されており、CPU1から入力される情報を記憶すると共にCPU1から入力される指令に基づいて記憶した情報を出力するものである。
 そして、記憶装置2は、プログラム記憶部2aとデータ記憶部2bとを備えている。
 プログラム記憶部2aは、数値解析プログラムPを記憶している。この数値解析プログラムPは、所定のOSにおいて実行されるアプリケーションプログラムであり、コンピュータから構成される数値解析装置Aを、数値解析を行うように機能させるものである。そして、数値解析プログラムPは、数値解析装置Aを、例えば計算用データモデル作成手段と物理量計算手段として機能させるものである。そして、図16に示すように、数値解析プログラムPは、プリ処理プログラムP1と、ソルバ処理プログラムP2と、ポスト処理プログラムP3とを有している。
 プリ処理プログラムP1は、ソルバ処理を実行するための前処理(プリ処理)を数値解析装置Aに実行させるものであり、数値解析装置Aを計算用データモデル作成手段として機能させることによって計算用データモデルを作成させる。また、プリ処理プログラムP1は、数値解析装置Aに、ソルバ処理を実行するにあたり必要となる条件の設定を実行させ、さらには上記計算用データモデルや設定された条件を纏めたソルバ入力データファイルFの作成を実行させる。
 そして、プリ処理プログラムP1は、数値解析装置Aを計算用データモデル作成手段として機能させる場合に、まず数値解析装置Aに対して、解析空間を含む3次元形状データを取得させ、この取得させた3次元形状データに含まれる解析空間を示す解析領域の作成を実行させる。
 その後、プリ処理プログラムP1は、数値解析装置Aに対して、解析領域全体を有限個の領域に分割した分割領域を形成する。なお、後に詳説するが、ソルバ処理において、数値解析手法にて説明した離散化支配方程式(VertexとConnectivityとを必要としない量のみを使用すると共に重み付き残差積分法に基づいて導出された離散化支配方程式)を用いる。このため、計算用データモデルの作成にあたり、保存則を満たす条件の下、分割領域の形状を任意に選択することができる。
 また、プリ処理プログラムP1は、数値解析装置Aを計算用データモデル作成手段として機能させる場合に、数値解析装置Aに対して、作成させた室内空間を示す解析領域に含まれる分割領域の各々の内部に対して1つのコントロールポイントを仮想的に配置する処理を実行させ、コントロールポイントの配置情報、及び各コントロールポイントが占めるコントロールボリュームの体積データを記憶させる。
 また、プリ処理プログラムP1は、数値解析装置Aを計算用データモデル作成手段として機能させる場合に、数値解析装置Aに対して、上記分割領域同士の境界面である境界面の面積及び法線ベクトルの算出を実行させ、これらの境界面の面積及び法線ベクトルを記憶させる。
 また、プリ処理プログラムP1は、数値解析装置Aを計算用データモデル作成手段として機能させる場合に、コントロールボリューム(コントロールポイント)の結合情報(Link)を作成させ、このLinkを記憶させる。
 そして、プリ処理プログラムP1は、数値解析装置Aに対して、上記各コントロールポイントが占めるコントロールボリュームの体積と、境界面の面積及び法線ベクトルと、コントロールポイント(すなわち分割領域)の配置情報(座標)と、Linkとを纏めさせて計算用データモデルを作成させる。
 また、プリ処理プログラムP1は、数値解析装置Aに、前述のソルバ処理を実行するにあたり必要となる条件の設定を行わせる場合には、物性値の設定、境界条件の設定、初期条件の設定、計算条件の設定を行わせる。ここで、物性値とは、室内空間における空気の密度、粘性係数等である。境界条件とは、コントロールポイント間の物理量の交換の法則を規定するものであり、前述した式(10)で示されるナビエ・ストークスの式に基づく離散化支配方程式、及び式(11)で示される連続の式に基づく離散化支配方程式である。また、境界条件には、室内空間と外部空間との境界面に臨む分割領域を示す情報が含まれる。初期条件とは、ソルバ処理を実行する際の最初の物理量を示すものであり、各分割領域の流速の初期値である。計算条件とは、ソルバ処理における計算の条件であり、例えば反復回数や収束基準である。
 また、プリ処理プログラムP1は、数値解析装置Aに、GUI(Graphical User Interface)を形成させる。より詳細には、プリ処理プログラムP1は、出力装置5が備えるディスプレイ5aに対してグラフィックを表示させると共に、入力装置4が備えるキーボード4aやマウス4bによって操作が可能な状態とさせる。
 ソルバ処理プログラムP2(物理量計算プログラム)は、数値解析装置Aにソルバ処理を実行させるものであり、数値解析装置Aを物理量計算装置として機能させる。
 そして、ソルバ処理プログラムP2は、数値解析装置Aを物理量計算手段として機能させる場合に、計算用データモデルが有するコントロールボリュームの体積と境界面の面積及び法線ベクトルとを含むソルバ入力データファイルFを用いて、解析領域における物理量を物理量計算させる。
 そして、ソルバ処理プログラムP2は、数値解析装置Aを物理量計算手段として機能させる場合に、数値解析装置Aに対して、ソルバ入力データファイルFに含まれるナビエ・ストークスの式及び連続の式の離散化係数行列の作成を実行させると共に、マトリックス形成用のデータテーブルの作成を実行させる。
 また、ソルバ処理プログラムP2は、数値解析装置Aを物理量計算手段として機能させる場合に、数値解析装置Aに対して、前述した式(10)で示されるナビエ・ストークスの式に基づく離散化支配方程式、及び前述した式(11)で示される連続の式に基づく離散化支配方程式から、下式(58)で示すマトリックス計算用の大規模粗行列方程式の組み上げを実行させる。
Figure JPOXMLDOC01-appb-M000059
 なお、式(58)において[A]が大規模粗行列を示し、[B]が境界条件ベクトルを示し、[X]が流速の解を示す。
 また、ソルバ処理プログラムP2は、上記離散化支配方程式に非圧縮性等の付帯条件が存在する場合には、数値解析装置Aに対して、この付帯条件の行列方程式への組み上げを実行させる。そして、ソルバ処理プログラムP2は、数値解析装置Aに対して、CG法(共役勾配法)等による行列方程式の解の計算、当該解の下式(59)を用いた解のアップデート、収束条件の判定を実行させ、最終的な計算結果を取得させる。
Figure JPOXMLDOC01-appb-M000060
 ポスト処理プログラムP3は、数値解析装置Aにポスト処理を実行させるものであり、数値解析装置Aに対して、ソルバ処理において取得された計算結果に基づく処理を実行させる。より詳細には、ポスト処理プログラムP3は、数値解析装置Aに対して、計算結果の可視化処理、抽出処理を実行させる。ここで、可視化処理とは、例えば、断面コンタ表示、ベクトル表示、等値面表示、アニメーション表示を出力装置5に出力させる処理である。また、抽出処理とは、作業者が指定する領域の定量値を抽出して数値やグラフとして出力装置5に出力させる、あるいは作業者が指定する領域の定量値を抽出してファイル化したものの出力を実行させる処理である。また、ポスト処理プログラムP3は、数値解析装置Aに対して、自動レポート作成、計算残差の表示及び分析を実行させる。
 データ記憶部2bは、図16に示すように、計算用データモデルM、境界条件を示す境界条件データD1、計算条件を示す計算条件データD2、物性値を示す物性値データD3、及び初期条件を示す初期条件データD4を有するソルバ入力データファイルFと、3次元形状データD5と、計算結果データD6等を記憶するものである。また、データ記憶部2bは、CPU1の処理過程において生成される中間データを一時的に記憶する。
 DVDドライブ3は、DVDメディアXを取り込み可能に構成されており、CPU1から入力される指令に基づいて、DVDメディアXに記憶されるデータを出力するものである。そして、DVDメディアXに数値解析プログラムPが記憶されており、DVDドライブ3は、CPU1から入力される指令に基づいて、DVDメディアXに記憶される数値解析プログラムPを出力する。
 入力装置4は、数値解析装置Aと作業者とのマンマシンインターフェイスであり、ポインティングデバイスであるキーボード4aやマウス4bを備えている。出力装置5は、CPU1から入力される信号を可視化して出力するものであり、ディスプレイ5a及びプリンタ5bを備えている。通信装置6は、数値解析装置AとCAD装置C等の外部装置との間においてデータの受け渡しを行うものであり、社内LAN(Local Area Network)等のネットワークBに対して電気的に接続されている。
 次に、このように構成された数値解析装置Aを用いた数値解析方法(数値解析方法)について、図17~図19のフローチャートを参照して説明する。
 図17のフローチャートに示すように、数値解析方法は、プリ処理(ステップS1)と、ソルバ処理(ステップS2)と、ポスト処理(ステップS3)とから構成されている。
 なお、数値解析方法を行うより前に、CPU1は、DVDドライブ3に取り込まれたDVDメディアXに記憶された数値解析プログラムPをDVDメディアXから取り出し、記憶装置2のプログラム記憶部2aに記憶させる。そして、CPU1は、入力装置4から数値解析の開始を指示する信号が入力されると、記憶装置2に記憶された数値解析プログラムPに基づいて数値解析を実行する。より詳細には、CPU1は、プログラム記憶部2aに記憶されたプリ処理プログラムP1に基づいてプリ処理(ステップS1)を実行し、プログラム記憶部2aに記憶されたソルバ処理プログラムP2に基づいてソルバ処理(ステップS2)を実行し、プログラム記憶部2aに記憶されたポスト処理プログラムP3に基づいてポスト処理(ステップS3)を実行する。なお、このようにCPU1がプリ処理プログラムP1に基づくプリ処理(ステップS1)を実行することによって、数値解析装置Aが計算用データモデル作成手段として機能される。また、CPU1がソルバ処理プログラムP2に基づくソルバ処理(ステップS2)を実行することによって、数値解析装置Aが物理量計算手段として機能される。
 図18は、プリ処理(ステップS1)を示すフローチャートである。この図に示すように、プリ処理(ステップS1)が開始されると、CPU1は、通信装置6に、ネットワークBを介してCAD装置Cから車両の室内空間を含む3次元形状データD5を取得させる(ステップS1a)。CPU1は、取得した3次元形状データD5を記憶装置2のデータ記憶部2bに記憶させる。
 続いて、CPU1は、計算用データモデルの作成を実行する(ステップS1d)。より詳細には、まずCPU1は、3次元形状データD5から、解析空間の全領域を含む分割領域にて分割された解析領域の作成を実行する。なお、解析領域を構成する分割領域は、前述の原理説明で詳説したように、VertexとConnectivityとを持たない計算用データモデルを作成するため、分割領域の幾何学的形状に制約を課すことなく計算用データモデル作成することができる。つまり、計算用データモデルを作成するにあたり、解析領域を構成する分割領域は、任意の形状を取ることができる。
 次にCPU1は、室内空間を示す解析領域に含まれる各分割領域内に1つのコントロールポイントを仮想的に配置する。ここでは、CPU1は、分割領域の重心を算出し、各々の重心に対して1つのコントロールポイントを仮想的に配置する。そして、CPU1は、コントロールポイントの配置情報、各コントロールポイントが占めるコントロールボリュームの体積(コントロールポイントが配置される分割領域の体積)を算出し、記憶装置2のデータ記憶部2bに一時的に記憶させる。また、CPU1は、分割領域同士の境界面である境界面の面積及び法線ベクトルを算出し、これらの境界面の面積及び法線ベクトルを記憶装置2のデータ記憶部2bに一時的に記憶させる。また、CPU1は、Linkを作成し、このLinkを記憶装置2のデータ記憶部2bに一時的に記憶させる。
 そして、CPU1は、データ記憶部2bに記憶された、コントロールポイントの配置情報と、各コントロールポイントが占めるコントロールボリュームの体積と、境界面の面積及び法線ベクトルと、Linkとをデータベース化することによって計算用データモデルMを作成し、作成した計算用データモデルを記憶装置2のデータ記憶部2b内に記憶させる。
 なお、このようなステップS1dにおいては、室内空間を含む解析領域を同一形状の分割領域にて均等に分割し、さらに室内空間から食み出した分割領域を削除し、さらにその結果生じた解析領域と室内空間との隙間に新たな分割領域を充填することによって最終的な解析領域K2が作成される。このため、室内空間の全領域が重ならない分割領域によって充填された状態とされる。したがって、計算用データモデルは、前述した保存則を満足するための3つの条件(a)~(c)を満たすものとされている。
 また、ステップS1dにおいて、先に分割領域を形成し、その後コントロールポイントを配置し、各コントロールポイントに対して、自らが配置された分割領域の体積を割り当てる構成を採用している。
 しかしながら、先にコントロールポイントを解析領域に配置し、各コントロールポイントに対して後から体積を割り当てることも可能である。具体的には、例えば、異なるコントロールポイントにぶつかるまでの半径や、結合関係にある(Linkで関連付けられた)コントロールポイントまでの距離に基づいて、各コントロールポイントに対して重み付けを行う。ここでコントロールポイントiの重みをwi、基準体積をV+とし、コントロールポイントiに割り当てられる体積Viを下式(60)とする。
Figure JPOXMLDOC01-appb-M000061
 さらに、各コントロールポイントの体積Viの総和は、解析領域の体積Vtotalと等しいため、下式(61)が成り立つ。
Figure JPOXMLDOC01-appb-M000062
 この結果、基準体積V+は下式(62)で求めることができる。
Figure JPOXMLDOC01-appb-M000063
 したがって、各コントロールポイントに割り当てる体積は、式(61),(62)から求めることができる。このような方法を用いれば、プリ処理において、VertexとConnectivityとを用いることなく、計算用データモデルに持たせる分割領域の体積を求めることができる。
 また、当該計算用データモデルの作成(ステップS1d)において、CPU1は、GUIを形成し、GUIから指令(例えば分割領域の密度を示す指令や分割領域の形状を示す指令)が入力された場合には、当該指令を反映させた処理を実行する。したがって、作業者は、GUIを操作することによって、コントロールポイントの配置や分割領域の形状を任意に調節することが可能とされている。ただし、CPU1は、数値解析プログラムに記憶された保存則を満足するための3つの条件に照らし合わせ、GUIから入力される指令が、当該条件から外れる場合には、その旨をディスプレイ5aに表示させる。
 続いて、CPU1は、物性値データの設定(ステップS1e)を行う。具体的には、CPU1は、GUIを用いて、ディスプレイ5a上に物性値の入力画面を表示し、キーボード4aあるいはマウス4bから入力される物性値を示す信号を物性値データD3としてデータ記憶部2bに一時的に記憶させることで物性値の設定を行う。なお、ここで言う物性値とは、室内空間における流体(すなわち空気)の特性値であり、空気の密度、粘性係数等である。
 続いて、CPU1は、境界条件データの設定(ステップS1f)を行う。具体的には、CPU1は、GUIを用いて、ディスプレイ5a上に境界条件の入力画面を表示し、キーボード4aあるいはマウス4bから入力される境界条件を示す信号を境界条件データD1としてデータ記憶部2bに一時的に記憶させることで境界条件データの設定を行う。なお、ここで言う境界条件とは、室内空間の物理現象を支配する離散化支配方程式や、室内空間と外部空間との境界面に臨むコントロールポイントの特定情報、及び室内空間と外部空間と間における熱の伝熱条件等を示す。
 なお、数値解析方法においては、室内空間における流速を数値解析により求めることを目的とするものであるため、上記離散化支配方程式として、前述のナビエ・ストークスの式に基づく離散化支配方程式(10)及び連続の式に基づく離散化支配方程式(11)が用いられる。また、これらの離散化支配方程式は、例えば、数値解析プログラムPに予め記憶された複数の離散化支配方程式をディスプレイ5a上に表示された複数の離散化支配方程式から作業者がキーボード4aやマウス4bを用いることによって選択される。
 続いて、CPU1は、初期条件データの設定(ステップS1g)を行う。具体的には、CPU1は、GUIを用いて、ディスプレイ5a上に初期条件の入力画面を表示し、キーボード4aあるいはマウス4bから入力される初期条件を示す信号を初期条件データD4としてデータ記憶部2bに一時的に記憶させることで初期条件データの設定を行う。なお、ここ言う初期条件とは、各コントロールポイント(各分割領域)における初期流速である。
 続いて、CPU1は、計算条件データの設定(ステップS1h)を行う。具体的には、CPU1は、GUIを用いて、ディスプレイ5a上に計算条件の入力画面を表示し、キーボード4aあるいはマウス4bから入力される計算条件を示す信号を計算条件データD2としてデータ記憶部2bに一時的に記憶させることで計算条件データの設定を行う。なお、ここで言う計算条件とは、ソルバ処理(ステップS2)における計算の条件であり、例えば、反復回数や収束基準を示す。
 続いて、CPU1は、ソルバ入力データファイルFの作成(ステップS1i)を行う。具体的には、CPU1は、ステップS1dにて作成された計算用データモデルMと、ステップS1eで設定された物性値データD3と、ステップS1fで設定された境界条件データD1と、ステップS1gで設定された初期条件データD4と、ステップS1hで設定された計算条件データD2とをソルバ入力データファイルFに格納することによってソルバ入力データファイルFを作成する。なお、このソルバ入力データファイルFは、データ記憶部2bに記憶される。
 以上のようなプリ処理(ステップS1)が完了すると、CPU1は、ソルバ処理プログラムP2に基づいて、図19のフローチャートに示すソルバ処理(ステップS2)を実行する。図19に示すように、ソルバ処理(ステップS2)が開始されると、CPU1は、プリ処理(ステップS1)で作成されたソルバ入力データファイルFを取得する(ステップS2a)。なお、前述した数値解析方法のように、単一の装置(数値解析装置A)によってプリ処理及びソルバ処理を実行する場合には、既にデータ記憶部2bにソルバ入力データファイルFが記憶されているため、ステップS2aを省略することができる。ただし、プリ処理(ステップS1)とソルバ処理(ステップS2)とが異なる装置において実行される場合には、ネットワークやリムーバルディスクによって搬送されるソルバ入力データファイルFを取得する必要があるため、本ステップS2aを行う必要がある。
 続いて、CPU1は、ソルバ入力データの整合性を判定する(ステップS2b)。なお、ソルバ入力データとは、ソルバ入力データファイルFに格納されたデータを示し、計算用データモデルM、境界条件データD1、計算条件データD2、物性値データD3及び初期条件データD4である。具体的には、CPU1は、ソルバ処理において物理量計算を実行可能なソルバ入力データがソルバ入力データファイルFに全て格納されているかを分析することによってソルバ入力データの整合性の判定を行う。
 そして、CPU1は、ソルバ入力データが不整合であると判定した場合には、ディスプレイ5aにエラーを表示させ(ステップS2b)、さらには不整合である部分のデータを入力するための画面を表示させる。その後、CPU1は、GUIから入力される信号に基づいてソルバ入力データの調整を行い(ステップS2c)、再度ステップS2aを実行する。
 一方、CPU1は、ステップS2bにおいてソルバ入力データの整合性があると判定した場合には、初期計算処理(ステップS2e)を実行する。具体的には、CPU1は、境界条件データD1に記憶された離散化支配方程式(すなわちナビエ・ストークスの式に基づく離散化支配方程式(10)及び連続の式に基づく離散化支配方程式(11))から離散化係数行列を作成し、さらにマトリクス計算用のデータテーブルの作成を行うことによって初期計算処理を行う。
 続いて、CPU1は、大規模粗行列方程式の組み上げ(ステップS2f)を行う。具体的には、CPU1は、ナビエ・ストークスの式に基づく離散化支配方程式(10)及び連続の式に基づく離散化支配方程式(11)から、前述の式(58)で示すマトリックス計算用の大規模粗行列方程式の組み上げを行う。
 続いて、CPU1は、離散化支配方程式に、非圧縮性や接触等の付帯条件が存在するかの判定を行う。この付帯条件は、例えば、境界条件データとしてソルバ入力データファイルFに格納されている。そして、CPU1は、離散化支配方程式に付帯条件が存在すると判定した場合には当該付帯条件の大規模行列方程式の組み込み(ステップS2h)を実行した後に大規模行列方程式の計算(ステップS2i)を実行する。一方、CPU1は、離散化支配方程式に付帯条件が存在しないと判定した場合には付帯条件の大規模行列方程式の組み込み(ステップS2h)を実行することなく大規模行列方程式の計算(ステップS2i)を実行する。そしてCPU1は、大規模行列方程式を例えば、CG法(共役勾配法)によって解き、前述の式(59)を用いて解のアップデート(ステップS2j)を行う。
 続いて、CPU1は、式(59)の残差が収束条件に達したか否かの判定(ステップS2g)を行う。具体的には、CPU1は、式(59)の残差を計算し、計算条件データD2に含まれる収束条件と比較し、これによって式(59)の残差が収束条件に達したか否かの判定を行う。そして、残差が収束条件に達していないと判定した場合には、CPU1は、物性値のアップデートを行った後、再度ステップS2gを実行する。つまり、CPU1は、式(59)の残差が収束条件に達するまで、物性値のアップデートを行いながらステップS2f~S2gを繰り返し行う。
 一方、残差が収束条件に達したと判定した場合には、CPU1は、計算結果の取得を行う(ステップS2l)。具体的には、CPU1は、直前のステップS2iにおいて計算された物理量の解を計算結果データとしてデータ記憶部2bに記憶させることによって計算結果の取得を行う。このようなソルバ処理(ステップS2)によって、室内空間における空気の流速が求められる。
 以上のようなソルバ処理(ステップS2)が完了すると、CPU1は、ポスト処理プログラムP3に基づいてポスト処理(ステップS3)を実行する。具体的には、例えばCPU1は、GUIから入力される指令に基づいて、計算結果データから、例えば断面コンタデータ、ベクトルデータ、等値面データ、アニメーションデータを生成し、当該データを、出力装置5に可視化させる。
 また、CPU1は、GUIから入力される指令に基づいて、室内空間の一部における定量値(計算結果)を抽出して数値やグラフとし、この数値やグラフを出力装置5に可視化させ、さらには数値やグラフをファイルとして纏めて出力する。また、CPU1は、GUIから入力される指令に基づいて、例えば計算結果データから自動レポート作成、計算残差の表示及び分析を行ってその結果を出力する。
 以上のような数値解析装置A、数値解析方法及び数値解析プログラムによれば、プリ処理にてコントロールボリュームの体積と境界面の面積及び法線ベクトルとを有する計算用データモデルMが作成され、ソルバ処理にて計算用データモデルMに含まれるコントロールボリュームの体積と境界面の面積及び法線ベクトルとを用いて各コントロールボリュームにおける物理量が計算される。
 つまり、前述の数値解析手法にて説明したように、数値解析装置A、数値解析方法及び数値解析プログラムによれば、VertexとConnectivityを有する計算用データモデルを作成することなく数値解析を行うことが可能となる。このため、3次元形状データの修正あるいは変更作業に対する規制も大幅に緩和され、VertexとConnectivityを有する計算用データモデルと比較して計算用データモデルMを遥かに容易に作成することが可能となる。したがって、計算用データモデルMの作成における作業負担を軽減することが可能となる。
 また、数値解析装置A、数値解析方法及び数値解析プログラムにおいては、従来の数値解析手法と異なり、ソルバ処理においてVertexとConnectivityを用いてコントロールボリュームの体積及び境界面の面積及び法線ベクトルを算出する必要がない。したがって、ソルバ処理における計算負荷を低減させることが可能となる。したがって、数値解析装置A、数値解析方法及び数値解析プログラムによれば、計算用データモデルの作成における作業負担を軽減すると共に、ソルバ処理における計算負荷の低減を図ることが可能となる。
 また、数値解析装置A、数値解析方法及び数値解析プログラムにおいては、解析領域に分割領域を重なることなく充填させている。このため、前述した保存側を満足するための3つの条件(a)~(c)が満たされることとなり、保存則を満足して流速を計算することができる。
 なお、計算用データモデルMは、従来の有限体積法や有限要素法に用いられるメッシュデータや、従来の粒子法に用いられる粒子データ、または単なる点群データから容易に計算用データモデルを作成することができる。この場合でも、ボクセル法のような外部空間との境界領域における分割領域の修正は必要ない。例えば、メッシュデータから計算用データモデルを作成する場合には、各要素を分割領域(コントロールポイントが占めるコントロールボリューム)として捉えることによって容易に行うことができる。また、粒子データから計算用データモデルを作成する場合には、解析領域に配置されたコントロールポイントを囲う閉空間を解析領域に充填して得られる閉空間を分割領域(コントロールポイントが占めるコントロールボリューム)として捉えることによって容易に行うことができる。
 また、数値解析装置A、数値解析方法及び数値解析プログラムによれば、前述のように、プリ処理における計算用データモデルの作業負担が大幅に減少し、またソルバ処理における計算負荷を低減させることが可能となる。したがって、解析領域の形状が時系列的に変化する場合、すなわち解析領域が移動境界を含む場合であっても、図20のフローチャートに示すように、解析領域が形状変化するたびにプリ処理とソルバ処理とを繰り返し行うことによって、現実的な時間内で物理量の計算が可能となる。
 また、物理量計算において、境界面上における流速を算出する場合に、当該境界面を挟むコントロールポイントにおける流速を当該コントロールポイントから境界面までの距離の比率に応じて重み付け平均した値を境界面上における流速としても良い。
 このような場合には、境界面における流速を、単純に当該境界面を挟むコントロールポイントの流速の平均とする場合と比較して、より正確に室内空間の流速を求めることが可能となる。ただし、このような場合には、計算用データモデルが、境界面がコントロールポイントとコントロールポイントとを結ぶ線分のどの内分点に存在するかを示す比率αをデータとして有している必要がある。このため、隣り合うコントロールボリュームの内部に配置された各コントロールポイントから当該コントロールボリュームに挟まれる境界面までの距離の比率をさらに含む計算用データモデルMをプリ処理にて作成し、この比率に基づいて境界面における流速をソルバ処理にて計算する。
 なお、物理量計算において、コントロールポイント間を結ぶベクトルと当該コントロールポイントに挟まれた境界面が直交する場合には、法線ベクトルをコントロールポイント間を結ぶ距離ベクトルの単位ベクトルに置き換えて物理量計算することができる。ただし、このような場合には、計算用データモデルに上記距離ベクトルあるいは当該距離ベクトルを算出するためのコントロールポイントの位置座標を示すデータを備えさせる必要がある。このため、隣り合うコントロールボリュームの内部に配置された各コントロールポイントを結ぶ距離ベクトルあるいは該距離ベクトルを算出するためのコントロールポイントの座標をさらに含む計算用データモデルMをプリ処理にて作成し、距離ベクトルが当該コントロールポイントに挟まれた境界面と直交する場合に、距離ベクトルを境界面の法線ベクトルに置き換えて流速を計算する。
 前述した説明においては、運動量保存の方程式の変形例であるナビエ・ストークスの式及び連続の式から導出した離散化支配方程式を用いて空気の流速を数値解析によって求める構成について説明した。しかしながら、これに限定されるものではなく、質量保存の方程式、運動量保存の方程式、角運動量保存の方程式、エネルギ保存の方程式、移流拡散方程式及び波動方程式の少なくともいずれかから導出した離散化支配方程式を用いて物理量を数値解析によって求めることが可能である。
 また、前述した境界面特性量として、境界面の面積と境界面の法線ベクトルとを用いる構成について説明した。しかしながら、これに限定されるものではなく、境界面特性量として他の量(例えば境界面の周長)を用いることもできる。
 また、保存則を満足するために前述の3つの条件を満たすように計算用データモデルを作成する構成について説明した。しかしながら、これに限定されるものではなく、保存則を満足させる必要がない場合には、計算用データモデルを必ずしも前述の3つの条件を満たすように作成する必要はない。
 また、分割領域の体積を、当該分割領域の内部に配置されるコントロールポイントが占めるコントロールボリュームの体積として捉えた構成について説明した。しかしながら、これに限定されるものではなく、分割領域の内部に対してコントロールポイントを配置する必要は必ずしもない。このような場合には、コントロールポイントが占めるコントロールボリュームの体積を分割領域の体積に置き換えることによって数値解析を行うことができる。
 また、数値解析プログラムPがDVDメディアXに記憶されて搬送可能な構成について説明した。しかしながら、これに限定されるものではなく、数値解析プログラムPを他のリムーバブルメディアに記憶させて搬送可能とする構成を採用することもできる。また、プリ処理プログラムP1とソルバ処理プログラムP2とを別々のリムーバブルメディアに記憶させて搬送可能とすることもできる。また、数値解析プログラムPは、ネットワークを介して伝達することも可能である。
<第1の実施形態>
 次に、本発明の第1の実施形態による計算用データ生成装置を説明する。図21は同実施形態の構成を示すブロック図である。この図において、符号Dは、計算用データを生成する計算用データ生成装置であり、コンピュータ装置から構成する。計算用データ生成装置Dは、コンピュータネットワークBと接続されており、このコンピュータネットワークに接続されているCAD装置Cとの間で情報通信が可能である。符号4は、キーボードやマウスから構成する入力部である。符号5は、液晶ディスプレイ装置等から構成する出力装置である。
 符号11は、入力装置4から入力されるパラメータを読み込むパラメータ入力部である。符号12は、パラメータ入力部11が入力した数値計算に必要なパラメータを記憶するパラメータ記憶部である。符号13は、コンピュータネットワークBを介して、CAD装置Cとの間で情報通信を行う通信部である。符号14は、通信部13を介して、CAD装置Cから解析対象物体の形状データを入力する形状データ入力部である。符号15は、形状データ入力部14が入力した形状データを記憶する形状データ記憶部である。
 符号16は、形状データ記憶部15に記憶されている形状データを入力して、解析対象物体のパッチデータ(物体を多角形で表現したデータ)を生成するパッチデータ生成部である。符号17は、パッチデータ生成部16が生成したパッチデータを記憶するパッチデータ記憶部である。符号18は、パラメータ記憶部12に記憶されているパラメータと、パッチデータ記憶部17に記憶されているパッチデータとを入力して、解析領域を定義するボクセルデータを生成するボクセルデータ生成部である。
 符号19は、ボクセルデータ生成部18が生成したボクセルデータを記憶するボクセルデータ記憶部である。符号20は、ボクセルデータ記憶部19に記憶されているボクセルデータに基づいて、初期点データを生成する初期点データ生成部である。符号21は、初期点データ生成部20において生成された初期点データを記憶する初期点データ記憶部である。符号22は、初期点データ記憶部21に記憶されている初期点を間引いて、初期点データ記憶部21に記憶されている初期点データ更新する処理を行うデータ間引き部である。
 符号23は、初期点データ記憶部21に記憶されている初期点データと、ボクセルデータ記憶部19に記憶されているボクセルデータとを入力して、解析対象物体の分割領域データを生成する分割領域データ生成部である。符号24は、分割領域データ生成部23が生成した分割領域データを記憶する分割領域データ記憶部である。符号25は、分割領域データ記憶部24に記憶されている分割領域データを入力して、計算用データを生成する計算用データ生成部である。符号26は、計算用データ生成部25が計算用データを生成する際の中間データを記憶する中間データ記憶部である。符号27は、計算用データ生成部25が生成した計算用データを記憶する計算用データ記憶部である。この計算用データ記憶部27に記憶されたデータは、数値解析の入力データとなる。
 次に、図22を参照して、図21に示すパラメータ記憶部12のテーブル構造を説明する。図22は、図21に示すパラメータ記憶部12のテーブル構造を示す図である。パラメータ記憶部12は、パラメータ入力部11が入力装置4から入力されたパラメータを記憶するものであり、解析領域データ、解析領域基準点データ、ボクセル分割数データからなる。解析領域データとは、直方体からなる解析領域を定義するためのデータであり、直方体の2点の座標値から構成する。解析領域基準点データは、解析対象物体内に存在する点の座標値であり、物体の内側と外側を判定するためのものである。ボクセル分割数データとは、解析対象物体を完全に含む解析領域の直方体(点(Xmin,Ymin,Zmin)及び点(Xmax, Ymax,Zmax)の2点の解析領域データで定義される直方体)の直交座標系の各軸方向の分割数である。これらのデータは、解析作業者が、入力装置4から入力したものである。
 次に、図23を参照して、図21に示す形状データ記憶部15に記憶される形状データについて説明する。図23は、図21に示す形状データ記憶部15に記憶される形状データの一例を示す図である。形状データ記憶部15には、CAD装置Cによって設計された解析対象物体の形状を定義するデータが記憶される。図23に示す例では、説明を簡単にするために、解析対象物体が円柱状の形状であるものとして説明する。形状データは、例えば、形状の稜線を定義するための座標値等から構成する。ここでは、物体の内側か外側かのデータは含まれておらず、解析領域基準点(Bx,By,Bz)を円柱の内側に定義することにより、解析領域基準点が存在する側を物体の内側とする。
 次に、図24を参照して、解析領域と解析対象物体の位置関係について説明する。図24は、解析領域と解析対象物体の位置関係を示す図である。解析対象物体は、解析領域データで定義される直方体の中に完全に含まれる位置関係を有している。
 次に、図25を参照して、図21に示すパッチデータ記憶部17に記憶されるパッチデータについて説明する。図25は、図21に示すパッチデータ記憶部17に記憶されるパッチデータの一例を示す図である。パッチデータとは、解析対象物体の外形を多角形(ポリゴン)で表現したデータである。ここでは、この多角形をパッチと称する。パッチデータ生成部16は、形状データを読み込んで、公知の方法を用いて、パッチデータを生成して、パッチデータ記憶部17に記憶する。パッチデータの生成方法は、公知の生成方法のいずれでも使用可能であるため、ここでは、パッチデータ生成処理の詳細な説明を省略する。図25に示す例では、三角形のパッチデータを生成した例を示している。各多角形(ここでは三角形)は、各頂点(P1、P2、P3)の座標値によって定義されるものである。図25においては、説明を簡単にするために、円柱を六角柱で表現しているが、実際には、所望の計算精度が得られる多角柱で表現されるものである。
 次に、図26を参照して、図21に示すパッチデータ記憶部17のテーブル構造を説明する。図26は、図21に示すパッチデータ記憶部17のテーブル構造を示す図である。パッチデータ記憶部17には、解析対象物体上に生成されたパッチの数と、各パッチ(ここでは三角形)それぞれについて、頂点の3次元座標値が、パッチを一意に特定可能なパッチIDとが関係付けられて記憶される。
 次に、図27を参照して、ボクセルデータについて説明する。図27は、ボクセルの構成を示す図である。ボクセルは、解析領域データで定義される解析領域(直方体の領域)を、ボクセル分割数データ(Nx、Ny、Nz)に基づき分割して得られる小さな直方体である。図27に示す例では、Nx=6、Ny=9、Nz=6である場合の分割例を示している。
 次に、図28を参照して、図21に示すボクセルデータ記憶部19のテーブル構造を説明する。図28は、図21に示すボクセルデータ記憶部19のテーブル構造を示す図である。ボクセルデータ記憶部19は、Nx×Ny×Nz個のボクセル属性データを記憶することができる3次元テーブルを備えており、ボクセルの分割と一致したテーブル構造になっている。ボクセル属性データは、3つの属性のいずれかを示す値が記憶される。1つ目の属性は、パッチと交差しているボクセルであること示す属性であり、交差しているパッチのパッチIDが記憶される。2つ目の属性は、解析対象物体の内部に存在するボクセルであることを示す属性であり、-2が記憶される。3つ目の属性は、解析対象物体の外部に存在するボクセルであることを示す属性であり、-1が記憶される。
 次に、図29を参照して、各ボクセルを定義するデータについて説明する。図29は、各ボクセルを定義するデータを求める方法を示す図である。各ボクセルは、ボクセルの中心点座標値と各軸方向の寸法によって定義される。各ボクセルの寸法(Sx、Sy、Sz:X方向の辺の長さ、Y方向の辺の長さ、Z方向の辺の長さ)は全て同一であり、分割領域の各軸方向の長さをボクセル分割数で除算して求めることができる。また、中心座標値(Xc,Yc,Zc)は、ボクセルの位置(i,j,k:X方向の位置(何番目),Y方向の位置,Z方向の位置)と、分割領域のサイズと、ボクセル分割数とから簡単な計算式によって求めることができる。1つのボクセルを特定するためのデータ(中心座標値と寸法)は、簡単な計算式で求めることができため、必要な時に演算によって求めるようにして、ボクセルデータ記憶部19には、属性データのみが記憶され、中心座標値と寸法については記憶されていない。
 次に、図30を参照して、図21に示す初期点データ記憶部21のテーブル構造を説明する。図30は、図21に示す初期点データ記憶部21のテーブル構造を示す図である。初期点データ記憶部21には、初期点の個数と、初期点のそれぞれについて、各初期点を一意に識別可能な初期点IDと、初期点の3次元座標値とが関係付けられて記憶される。この初期点は、各ボクセルの中心点から生成し、データ間引き部22が初期点を間引き、不要な初期点を削除した後の初期点データが記憶されることになる。
 次に、図31を参照して、図21に示す分割領域データ記憶部24のテーブル構造を説明する。図31は、図21に示す分割領域データ記憶部24のテーブル構造を示す図である。分割領域データ記憶部24は、Nx×Ny×Nz個(ボクセルと同数)の分割領域データを記憶することができる3次元テーブルを備えており、ボクセルの分割と一致したテーブル構造になっている。分割領域データは、2つの状態のいずれかを示す値が記憶される。一方の状態は、分割領域に含まれる状態を示すものであり、そのボクセルの中心座標から最も近い初期点の初期点IDが記憶される。ここで記憶される初期点IDは、分割領域IDに相当する。他方の状態は、解析対象物体の外部に存在するボクセルである状態を示すものであり、-1が記憶される。分割領域は、解析対象物体内を複数の3次元領域に分割したものであり、解析対象物体の外部に存在するボクセルは、ボクセルデータ記憶19に記憶されるボクセル属性がそのまま記憶されることになる。
 次に、図32を参照して、図21に示す中間データ記憶部26のテーブル構造を説明する。図32は、図21に示す中間データ記憶部26のテーブル構造を示す図である。中間データ記憶部26には、分割領域IDが異なる隣り合うボクセルそれぞれが属する分割領域IDの組合せと、法線ベクトルと、法線ベクトルの長さからもとめた境界面の面積を記憶する領域を備えている。この記憶領域は、計算用データを生成するために、分割領域データ記憶部24に記憶されている分割領域データを集計する際に得られる中間データを記憶するものである。
 次に、図33を参照して、図21に示す計算用データ記憶部27のテーブル構造を説明する。図33は、図21に示す計算用データ記憶部27のテーブル構造を示す図である。計算用データ記憶部27には、分割領域の個数(初期点の個数と同数)と、分割領域を一意に識別可能な分割領域ID毎に、分割領域の重心座標と分割領域の体積が記憶される。また、分割領域の境界面の個数と、境界面を一意に識別することが可能な境界面ID毎に分割領域IDの組合せと、法線ベクトルと、境界面の面積とが記憶される。
 次に、図21に示す計算用データ生成装置Dの処理動作を説明する。まず、計算用データを作成しようとする作業者は、入力装置4から、形状データ入力部14に対して形状データを入力する指示の操作を行う。形状データ入力部14は、通信部13を介して、CAD装置Cから解析対象物体の形状データを入力して、入力した形状データを形状データ記憶部15に記憶する。形状データが形状データ記憶部15に記憶されると、パッチデータ生成部16は、形状データ記憶部15から形状データを読み込み、パッチデータを生成して、パッチデータ記憶部17に記憶する。これにより、パッチデータ記憶部17には、図26に示すパッチデータが記憶されることになる。
 また、作業者は、入力装置4からパラメータの入力を行う。これを受けて、パラメータ入力部11は、入力装置から入力されたパラメータを読み込み、パラメータ記憶部12に記憶する。これにより、パラメータ記憶部12には、図22に示すパラメータが記憶されることになる。
 次に、作業者は、入力装置4から計算用データの生成を指示する操作を行う。これを受けて、ボクセルデータ生成部18は、パラメータ記憶部12に記憶されているパラメータと、パッチデータ記憶部17に記憶されているパッチデータとを入力して、ボクセルデータの生成を行う。
 ここで、図34を参照して、図21に示すボクセルデータ生成部18がボクセルデータを生成する処理動作を説明する。図34は、図21に示すボクセルデータ生成部18がボクセルデータを生成する処理動作を示すフローチャートである。まず、ボクセルデータ生成部18は、パラメータ記憶部12に記憶されている解析領域データとボクセル分割数データを読み込み、これらのデータからボクセルを定義して、各ボクセルの中心座標と寸法を求める(ステップS11)。そして、ボクセルデータ生成部18は、定義したボクセルを1つ選択する(ステップS12)。
 次に、ボクセルデータ生成部18は、パッチデータ記憶部17に記憶されているパッチデータを参照して、選択したボクセルとパッチが交差するかを幾何学的に計算して求める(ステップS13)。そして、ボクセルデータ生成部18は、選択したボクセルとパッチが交差するか否かを判定する(ステップS14)。この判定の結果、交差しなければボクセルデータ生成部18は、選択したボクセルと解析対象物体との位置関係を求め(ステップS15)、選択したボクセルが解析対象物体の外部領域であるか否かを判定する(ステップS16)。この判定の結果、ボクセルが解析対象物体の外部に位置するボクセルであれば、ボクセルデータ記憶部19中の選択したボクセルの記憶領域に、-1(解析対象物体外部のボクセルを示す値)を記憶し(ステップS17)、内部に位置するボクセルであれば、-2(解析対象物体内部のボクセルを示す値)を記憶する(ステップS18)。
 一方、選択したボクセルとパッチが交差する場合、ボクセルデータ生成部18は、ボクセルデータ記憶部19中の選択したボクセルの記憶領域に、交差するパッチのパッチIDを記憶する(ステップS19)。そして、ボクセルデータ生成部18は、定義したボクセルの全てについて処理を行ったか否かを判定し(ステップS20)、全てのボクセルについて属性データを記憶するまでステップS12~S19の処理動作を繰り返す。この処理動作によって、ボクセルデータ記憶部19には、全てのボクセルについて属性データが関係付けられて記憶されたことになる。
 次に、ボクセルデータ記憶部19に属性データが記憶されると、初期点データ生成部20は、ボクセルデータ記憶部19に記憶されているボクセルそれぞれについて、中心座標を求め、この中心座標値を初期点とし、各初期点に初期点IDを付与して、初期点データ記憶部21に記憶する。これにより、初期点データ記憶部21(図30)には、ボクセルと同数の初期点が記憶されたことになる。
 次に、データ間引き部22は、初期点データ記憶部21に記憶されている初期点の数を減らすために、初期点データの間引きを行う。ここで行う間引き処理は、公知の方法を用いて行う。例えば、所定の空間間隔で所定の数の初期点データを削除するなどの処理によって行えばよい。そして、データ間引き部22は、削除するべき初期点データを初期点データ記憶部21上から削除し、残った初期点データの数をカウントして、初期点個数として初期点データ記憶部21に記憶する。
 次に、分割領域データ生成部23は、初期点データ記憶部21に記憶されている初期点データと、ボクセルデータ記憶部19に記憶されているボクセルデータとを参照して、分割領域データを生成して、分割領域データ記憶部24に記憶する。
 ここで、図35を参照して、分割領域データ生成部23が分割領域データを生成して、分割領域データ記憶部24に記憶する処理動作を説明する。図35は、分割領域データ生成部23が分割領域データを生成して、分割領域データ記憶部24に記憶する処理動作を示すフローチャートである。まず、分割領域データ生成部23は、分割領域データ記憶部24のテーブルに全て-1を記憶する(ステップS21)。続いて、分割領域データ生成部23は、ボクセルデータ記憶部19に記憶されているボクセルの属性データが-2またはパッチIDであるボクセルの中からボクセルを1つ選択し(ステップS22)、この選択したボクセルの中心座標を求める。そして、分割領域データ生成部23は、初期点データ記憶部21を参照して、求めたボクセルの中心座標に最も近い(直線距離が最も短い)初期点を選択し(ステップS23)、選択した初期点の初期点IDを分割領域データ記憶部24中の選択したボクセルの記憶領域に記憶する(ステップS24)。
 次に、分割領域データ生成部23は、ボクセルの全てについて処理を行ったか否かを判定し(ステップS25)、全てのボクセルについて分割領域データ(初期点ID)を記憶するまでステップS22~S24の処理動作を繰り返す。この処理動作によって、分割領域データ記憶部24には、全てのボクセルについて、そのボクセルが属する分割領域のID(初期点ID)か、または-1のいずれかが記憶されたことになる。
 次に、計算用データ生成部25は、分割領域データ記憶部24に記憶されている分割領域データを読み込み、計算用データを生成して計算用データ記憶部27に記憶する。
 ここで、図36を参照して、計算用データ生成部25が分割領域データから計算用データを生成して、計算用データ記憶部27に記憶する処理動作を説明する。図36は、計算用データ生成部25が分割領域データから計算用データを生成して、計算用データ記憶部27に記憶する処理動作を示すフローチャートである。まず、計算用データ生成部25は、分割領域データ記憶部24を参照して、分割領域データとして分割領域IDが記憶されている(-1が記憶されていない)ボクセルの中から基準となるボクセルを1つ選択する(ステップS31)。そして、計算用データ生成部25は、分割領域データ記憶部24を参照して、選択した基準ボクセルに接している6つの隣接ボクセル(上下左右前後のボクセル)を特定する(ステップS32)。
 次に、計算用データ生成部25は、特定した6つの隣接ボクセルから1つの隣接ボクセルを選択し(ステップS33)、基準ボクセルと選択した隣接ボクセルのそれぞれが属する分割領域を特定する。この分割領域の特定は、分割領域データとして記憶されている分割領域IDにより行う。そして、計算用データ生成部25は、2つの分割領域IDが同一か否かを判定する(ステップS35)。この判定の結果、同じ分割領域IDであれば、ステップS33に戻り、次の隣接ボクセルを選択する。
 一方、2つの分割領域IDが同じでなければ、計算用データ生成部25は、中間データ記憶部26を参照して、2つの分割領域IDの組合せが既に登録されているかを探索する(ステップS36)。そして、計算用データ生成部25は、2つの分割領域IDの組合せが既に登録されているか否かを判定し(ステップS37)、登録されていなければ、この2つの分割領域IDを中間データ記憶部26に記憶する(ステップS38)。判定の結果、2つの分割領域IDの組合せが既に登録されている場合は、分割領域IDの登録は行わない。
 次に、計算用データ生成部25は、基準ボクセルと選択した隣接ボクセルとが接している面の法線ベクトルを中間データ記憶部26に書き込む。このとき、既に法線ベクトルが書き込まれていた場合、計算用データ生成部25は、書き込まれていた法線ベクトルに対して、新たに求めた法線ベクトルを加算して、新たに中間データ記憶部26に書き込む(ステップS39)。
 次に、計算用データ生成部25は、6つの隣接ボクセル全ての処理を行ったか否かを判定し(ステップS40)、6つの隣接ボクセルに対する処理が終わるまで、ステップS33~S39の処理を繰り返す。そして、6つの隣接ボクセルに対する処理が終了した時点で、全てのボクセルについて処理したか(全てのボクセルを基準ボクセルとして選択したか)を判定し(ステップS41)、全てのボクセル(-1でないボクセル)に対する処理が終わるまで、ステップS31~S40の処理を繰り返す。この処理動作により、中間データ記憶部26には、隣接する分割領域IDの組合せについて法線ベクトルの加算値が得られたことになる。
 次に、計算用データ生成部25は、2つの分割領域IDの組合せそれぞれについて、法線ベクトルの加算値から法線ベクトルの長さを求め、この法線ベクトルの長さを境界面の面積として中間データ記憶部26に記憶する(ステップS42)。そして、計算用データ生成部25は、中間データ記憶部26に記憶されている2つの分割領域IDの組合せから分割領域の個数と、境界面の個数とを求める(ステップS43)。
 次に、計算用データ生成部25は、分割領域データ記憶部24に記憶されている分割領域データと、中間データ記憶部26に記憶されている中間データとに基づき、計算用データを生成して、計算用データ記憶部27に記憶する。このとき、計算用データ生成部25は、分割領域データ記憶部24に記憶されている分割領域データから分割領域それぞれの重心位置座標と分割領域の体積(ボクセルの個数にボクセルの体積を乗算したもの)を求めて計算用データ記憶部27に記憶する。また、計算用データ生成部25は、中間データ記憶部26に記憶されている中間データを計算用データ記憶部27に記憶するともに、先に求めた分割領域の個数と、境界面の個数とを計算用データ記憶部27に記憶する。この処理動作によって、図33に示す計算用データが生成されたことになる。
 このように、簡単な演算処理によって計算用データを生成することが可能になるため、解析作業者が行う作業負荷を軽減することができる。
<第2の実施形態>
 次に、本発明の第2の実施形態による計算用データ生成装置を説明する。図37は同実施形態の構成を示すブロック図である。この図において、図21に示す第1の実施形態による装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図21に示す装置と異なる点は、カラーの3次元描画が行えるグラフィックボード28が新たに設けられ、これに伴って分割領域生成部231の処理動作が異なる点である。
 次に、図38を参照して、図37に示すグラフィックボード28の機能構成を説明する。図38は、図37に示すグラフィックボード28の機能構成を示す図である。グラフィックボード28は、縮尺調整データと三角形データを入力し、ピクセルデータを出力データとして出力する機能を有している。グラフィックボード28内の三角形描画部は、縮尺調整データと三角形データを入力し、画像バッファに三角形を描画する。また、3次元形状である三角形の奥行き方向の情報を記憶するために、ピクセルのZ座標(奥行き方向の座標)を記憶するZバッファを備えている。そして、複数の三角形を描画することにより得られる画像バッファのピクセル色情報がそのまま分割領域のIDとして領域分割処理を実行するものである。
 縮尺調整データは、描画領域データ(解析領域データのz座標を除いたもの)と、ピクセル分割数データ(ボクセル分割数データのNzを除いたもの)と、奥行き調整データ(解析領域データのz座標値)とからなる。また、三角形データは、描画するべき三角形の個数分の三角形の3つの頂点の座標値からなる。
 次に、図39を参照して、図37に示すグラフィックボード28の座標系について説明する。図39は、図37に示すグラフィックボード28の座標系を示す図である。グラフィックボード28内の画像バッファとZバッファは、同じ座標系を有しており、分割領域データ生成部231から出力される描画領域データ(Xmax,Xmin,Ymax,Ymin)によって座標系が決定する。そして、各ピクセルデータは、描画領域データとピクセル分割数データとから決まり、ボクセルと同じ寸法となる。また、奥行き調整データによりZ座標の許容最大値と許容最小値とが決定する。グラフィックボード28において描画するべき図形は、図39の符号Pで示す立体物であり、この立体物をここではポテンシャル立体と称する。
 次に、図40を参照して、ポテンシャル立体について説明する。図40は、ポテンシャル立体の構成を示す図である。ポテンシャル立体は、関数f(d)のグラフ形状を軸対象に回転した形状である。関数f(d)は、f(d)=(R0-(Δh**2+d**2)**0.5)/R0で定義される。ここで、Δhは、初期点とZスライス面との距離、R0は、球体の半径である。ここで球体の求め方について説明する。球体の中心座標は、初期点データ記憶部21に記憶されている初期点の座標である。すなわち、球体は、初期点を中心として所定の半径を持つ球体である。
 半径は、次のように求める。まず、解析対象物体の内部の体積(ボクセル属性が-2であるボクセルの数にボクセルの体積を乗算した値)をV0とし、初期点の数をNpartとすると、初期点1つ分に割り当てられる平均体積ΔVは、V0を初期点の数で除算することで求めることができる。この平均体積ΔVが直方体とした場合、平均体積ΔVの3乗根により直方体の1辺の長さが求められる。この1辺の長さを持つ直方体の頂点が内接する球体が求めるべき球体である。すなわち、直方体の中心から頂点までの距離が球体の半径である。
 この球体とZスライス面における球体の断面がポテンシャル立体の底面となる。ポテンシャル立体は、山型をしており、初期点とZスライス面との距離が短いほど山の高さが高くなうような立体である。Zスライス面とは、図27に示すボクセルのZ方向のボクセルの境界でスライスすることにより得られる面のことである。すなわち、ボクセル分割数Nzと同数のZスライス面が存在することになる。
 次に、図41を参照して、グラフィックボード28に入力する三角形データについて説明する。図41は、グラフィックボード28に入力する三角形データの構成を示す図である。三角形データは、ポテンシャル立体の表面を複数の三角形のパッチデータで表現したデータである。各三角形は、頂点1、2、3の3つの頂点の3次元座標値で表現され、これらの頂点座標値に加えて、この三角形を定義する際に用いた球体の中心に位置する初期点の初期点IDが、三角形のIDとして付与される。すなわち、1つのポテンシャル立体を表現する三角形にはすべて同じ三角形ID(初期点ID)が付与される。
 グラフィックボード28は、この三角形データに基づいて、描画処理を行う。ここで、図42を参照して、グラフィックボード28における三角形の描画処理について説明する。図42は、グラフィックボード28における三角形の描画処理を示す図である。まず、三角形描画部は、1個目の三角形を画像バッファに描画する。このとき、画像バッファには、三角形IDの値を表示色として用いて描画する。また、三角形描画部は、三角形のZ座標値をZバッファに書き込む。そして、2個目の三角形を描画する場合、Zバッファに書き込まれている値と、新たに書き込む三角形の値と比較して、Z座標値が大きい場合のみ、Zバッファの値を更新する。そして、Zバッファの更新を行ったピクセルのみを新たな三角形IDの値を表示色として用いて画像バッファに書き込む。この処理を繰り返すと、隠面処理を行ったのと同等の結果が得られることになる。そして、画像バッファの内容を出力データとして出力する。このデータは、Zスライス面において、初期点毎の領域分割を行ったのと同等の結果を得ることができる。
 第2の実施形態におけるボクセルデータ記憶部19にボクセルデータを記憶する処理動作と、初期点データ記憶部21に初期点データを記憶する処理動作は、第1の実施形態における処理動作と同様であるので、詳細な処理動作の説明を省略する。以下の説明においては、第1の実施形態と異なる処理動作のみを説明する。
 次に、図43を参照して、図37に示す分割領域データ生成部231の処理動作を説明する。図43は、図37に示す分割領域データ生成部231の処理動作を示すフローチャートである。まず、分割領域データ生成部231は、Zスライス面を1つ選択する(ステップS51)。そして、分割領域データ生成部231は、初期点を1つ選択し、この選択した初期点を中心とした球体を定義する(ステップS53)。
 次に、分割領域データ生成部231は、この定義した球体が選択したZスライス面と交差するか否かを判定する(ステップS54)。この判定の結果、球体とZスライス面が交差する場合、分割領域データ生成部231は、断面円の形状を求め(ステップS55)、この断面円から前述したポテンシャル立体を定義する(ステップS56)。一方、球体とZスライス面が交差しない場合、分割領域データ生成部231は、ポテンシャル立体の定義(ステップS55、S56)を行わない。
 次に、分割領域データ生成部231は、全ての初期点について処理したかを判定し(ステップS57)、全ての初期点についてポテンシャル立体の定義処理が終わるまで、ステップS52~S56の処理を繰り返す。
 次に、分割領域データ生成部231は、定義した全てのポテンシャル立体から定義した三角形データをグラフィックボード28へ出力する。これを受けて、グラフィックボード28は、ポテンシャル立体をZスライス面に投影し、ピクセルにそれぞれの初期点IDを記憶する。このとき、隠面処理を施すことにより、ポテンシャル立体同士が重なり合うときに、高い方の初期点IDをピクセルに記憶する。そして、グラフィックボード28は、全ての三角形データを描画した結果の画像バッファの内容を分割領域データ生成部231へ出力する。
 ここで、図44を参照して、図37に示すグラフィックボード28内の三角形描画部の処理動作を説明する。図44は、図37に示すグラフィックボード28内の三角形描画部の処理動作を示すフローチャートである。まず、三角形描画部は、全3角形に対する処理を繰り返し行う(ステップS61)。そして、三角形描画部は、現在の3角形の3つの頂点を取り出し(ステップS62)、全てのピクセルに対する処理を繰り返す(ステップS63)。続いて、三角形描画部は、現在のピクセルの中心の点を通り、方向が(0,0,+1)である直線と、三角形の面との交点座標を(Px,Py,Pz)とする(ステップS64)。
 次に、三角形描画部は、そのピクセルは、3角形の内部または境界線上に位置しているか否かを判定する(ステップS65)。この判定の結果、3角形の内部または境界線上に位置していれば、PzはそのピクセルのZバッファの値よりも大きいか否かを判定する(ステップS66)。この判定の結果、PzはそのピクセルのZバッファの値よりも大きい場合、そのピクセルのZバッファの値にPzを代入し、画像バッファにID番号を24BITの整数とした色を代入する(ステップS67)。そして、全てのピクセルを処理するまで繰り返し(ステップS68)、さらに、全ての3角形を処理するまで繰り返す(ステップS69)。これにより、全ての三角形の描画を行うことが可能となる。この画像バッファの内容は、Zスライス面を初期点毎の分割を行ったのと同等の結果が得られるため、分割領域データ生成部231は、この結果のデータ(初期点ID)を分割領域データ記憶部24に記憶する。
 次に、分割領域データ生成部231は、全てのスライス面について処理したか否かを判定し(ステップS59)、全てのZスライス面について処理が終わるまで、ステップS51~S58の処理を繰り返す。この処理によって、分割領域データ記憶部24には、前述した第1の実施形態において得られた分割領域データと同じデータを得ることができる。計算用データ生成部25における処理動作は、第1の実施形態における処理動作と同様であるので、詳細な説明を省略する。
 なお、第2の実施形態において、球体の半径が小さい場合、分割領域に含まれないボクセルが発生する場合があるが、この場合は、球体の半径を大きくして再度前述した処理動作を繰り返し行えばよい。また、第2の実施形態では、分割領域データ生成部231によって全ての分割領域データを生成してから計算用データ生成部25によって計算用データを生成する処理動作を説明したが、1つのZスライス面の分割領域データができた時点で、その分割領域データから計算用データを生成し、次のZスライス面について分割領域データを生成し、この分割領域データから計算用データを生成するというように、Zスライス面ごとに領域分割と計算用データ生成を行うようにしてもよい。このようにすることにより、中間データ記憶部26に記憶されるデータ量を少なくすることができ、処理を簡単にすることが可能となる。
<第3の実施形態>
 次に、本発明の第2の実施形態による計算用データ生成装置を説明する。図45は同実施形態の構成を示すブロック図である。この図において、図21に示す第1の実施形態による装置と同一の部分には同一の符号を付し、その説明を省略する。この図に示す装置が図21に示す装置と異なる点は、初期点データ生成部20がパッチデータ記憶部17のデータを読み込んで初期点を生成する点である。特に、第3の実施形態における初期点データ生成部20は、解析対象物体の壁近傍(境界層)に密な初期点を生成するのが特徴である。
 次に、図46を参照して、図45に示す初期点データ生成部20の構成を説明する。図46は、図45に示す初期点データ生成部20の構成を示す図である。図46において、符号201は、解析対象物体の内側に存在するボクセルの内側ボクセルデータを生成する内側ボクセルデータ生成部である。符号202は、内側ボクセルデータ生成部201で生成された内側ボクセルデータを記憶する内側ボクセルデータ記憶部である。符号203は、壁上と球上の点データを生成する壁上点・球上点データ生成部である。符号204は、壁上点・球上点データ生成部203で生成された壁上点データを記憶する壁上点データ記憶部である。符号205は、壁上点・球上点データ生成部203で生成された球上点データを記憶する球上点データ記憶部である。符号206は、壁上点データと球上点データを参照して、分割点データを生成する分割点データ生成部である。符号207は、分割点データ生成部206が生成した分割点データを記憶する分割点データ記憶部である。符号208は、分割点データと内側ボクセルデータから初期点を生成して出力し、初期点データ記憶部21に記憶する初期点データ出力部である。
 次に、図47を参照して、図46に示す内側ボクセルデータ生成部201の動作を説明する。まず、内側ボクセルデータ生成部201は、ボクセルデータ記憶部19に記憶されているボクセルデータを参照して、ボクセルを1つ選択する(ステップS71)。そして、内側ボクセルデータ生成部201は、パッチデータ記憶部17を参照して、選択したボクセルとパッチが交差するかを求め(ステップS72)、選択したボクセルとパッチが交差するか否かを判定する(ステップS73)。この判定の結果、交差していれば内側ボクセルデータ生成部201は、内側ボクセルデータ記憶部202中の選択したボクセルの記憶領域に、-1(解析対象物体の内側のボクセルを示す値)を記憶する(ステップS76)。
 一方、交差していなければ、内側ボクセルデータ生成部201は、ボクセルと解析対象物体の位置関係を求め(ステップS74)、選択したボクセルが解析対象物体の外部領域であるか否かを判定する(ステップS75)。この判定の結果、ボクセルが解析対象物体の外部に位置するボクセルであれば、内側ボクセルデータ記憶部202中の選択したボクセルの記憶領域に、-1(解析対象物体外部のボクセルを示す値)を記憶し(ステップS76)、内部に位置するボクセルであれば、0(解析対象物体内部のボクセルを示す値)を記憶する(ステップS77)。そして、内側ボクセルデータ生成部201は、ボクセルの全てについて処理を行ったか否かを判定し(ステップS78)、全てのボクセルについてステップS71~S76の処理動作を繰り返す。この処理により、図53に示すように、解析対象物体の内側に位置するボクセルのデータが内側ボクセルデータ記憶部202に記憶されたことになる。
 次に、図48を参照して、図46に示す壁上点・球上点データ生成部203の動作を説明する。まず、壁上点・球上点データ生成部203は、内側ボクセルデータ記憶部202を参照して、内側ボクセルを1つ選択し(ステップS81)、隣り合うxyzの6方向(正負を区別)に内側ボクセルが存在するかを調べ(ステップS82)、全てに存在するかを判定する(ステップS83)。この判定の結果、全てに存在していなければ、壁上点・球上点データ生成部203は、選択したボクセルに内接する球を定義する(ステップS84)。そして、壁上点・球上点データ生成部203は、図54に示すように球面上に26点個の球上点を定義し(ステップS85)、ボクセルの中心から球上点へ向けたベクトルの先に内側ボクセルが存在するかを調べ(ステップS86)、存在するか否かを判定する(ステップS87)。
 この判定の結果、存在しなければ壁上点・球上点データ生成部203は、各点から最も近い点を形状データから探索し、そこに壁上点を定義し(ステップS88)、定義した壁上点、球上点をそれぞれ壁上点データ記憶部204、球上点データ記憶部205に記憶する(ステップS89)。そして、壁上点・球上点データ生成部203は、ボクセルの全てについて処理を行ったか否かを判定し(ステップS90)、全てのボクセルについてステップS81~S89の処理動作を繰り返す。この処理により、図55に示すように、定義した壁上点、球上点をそれぞれが壁上点データ記憶部204、球上点データ記憶部205に記憶されることになる。
 次に、図49を参照して、図46に示す分割点データ生成部206の動作を説明する。まず、分割点データ生成部206は、壁上点データ記憶部204、球上点データ記憶部205を参照して、壁上点と球上点を通る直線を定義し(ステップS91)、この直線上において、壁上点から距離d1離れた位置に初期点1を生成する(ステップS92)。
 次に、分割点データ生成部206は、定義した直線上において、初期点1から距離d2離れた位置に初期点2を生成する(ステップS93)。そして、分割点データ生成部206は、壁上点と生成された初期点とを結ぶ線分が球面と交差したか、または、ユーザが指定した数だけ直線上に初期点を生成したかを判定し(ステップS94)、図56に示すように、この条件のいずれかを満たすまで、ステップS93の処理を繰り返し、初期点3、初期点4、・・・を生成し、生成した初期点群を分割点データ記憶部207に記憶する。なお、繰り返す条件は、予めいずれを採用するかを決めておく。この処理により、図57に示すように、球上点と壁上点を結ぶ直線上に境界層を形成するための初期点群が生成されることになる。
 次に、図50を参照して、図46に示す初期点データ出力部208の動作を説明する。まず、初期点データ出力部208は、内側ボクセルデータ記憶部202に記憶されているボクセルデータを読み出し、このボクセルの中心点を初期点として、初期点データ記憶部21に記憶する(ステップS101)。続いて、初期点データ出力部208は、分割点データ記憶部207に記憶されている分割点データを読み出し、この分割点データを初期点として初期点データ記憶部21に記憶する(ステップS102)。この処理により、初期点データ記憶部21には、解析対象物体の内側に位置するボクセルの中心点が初期点データとして記憶されるとともに、分割点が境界層を形成するための初期点データとして記憶されることになる。
 次に、図51を参照して、図46に示す構成の変形例を説明する。図46に示す構成と同一の部分には同一の符号を付し、その説明を省略する。図51に示す構成が、図46に示す構成と異なる点は、内側ボクセル元データ記憶部209と内側ボクセルデータ修正部210が新たに設けられている点である。これは、境界層の厚さを厚くするための初期点を生成するためのものである。内側ボクセル元データ記憶部209は、図46に示す内側ボクセルデータ記憶部202に相当し、解析対象物体の内側に位置するボクセルのボクセルデータを記憶するものである。内側ボクセルデータ修正部210は、境界層を厚くするために、内側ボクセル元データ記憶部209に記憶されているボクセルデータを境界層に近いボクセルを取り除く処理を行う。
 次に、図52を参照して、図51に示す内側ボクセルデータ修正部210の動作を説明する。まず、内側ボクセルデータ修正部210は、内側ボクセル元データ記憶部209に記憶されているボクセルデータを参照して、内側ボクセルを1つ選択し(ステップS111)、隣り合うxyzの6方向(正負を区別)に内側ボクセルが存在するかを調べ(ステップS112)、全てに存在するかを判定する(ステップS113)。この判定の結果、全てに存在していなければ、内側ボクセルデータ記憶部202中の選択したボクセルの記憶領域に、-1を記憶する(ステップS114)。そして、内側ボクセルデータ修正部210は、ボクセルの全てについて処理を行ったか否かを判定し(ステップS115)、全てのボクセルについてステップS111~S114の処理動作を繰り返す。この処理により、解析対象物体の内側に位置するボクセルのデータが内側ボクセルデータ記憶部202に記憶されたことになる。ただし、境界層付近のボクセルが取り除かれている状態となる。これにより、図58に示すように、解析対象物体の内側に位置するボクセルのデータが内側ボクセルデータ記憶部202に記憶されたことになる。ただし、図53に示すボクセルデータに比べて体積(図面においては面積)の小さいボクセルデータの集合となり、内側ボクセルの集合の体積が小さくなり、その分境界層を定義する空間が大きくなる。これ以降の処理動作は、前述した動作と同様である。
 第3の実施形態により生成された初期点データを初期点データ記憶部21に記憶し、この初期点データ記憶部21に記憶された初期点データに基づき、分割領域データ生成部23が前述した処理動作によって分割領域データを生成することになる。これにより、図59に示すような分割領域データを定義することができる。このように、境界層の分割を密に行うことにより、境界層における解析精度の向上を図ることが可能となる。
 また、図21、図37、図45における処理部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより計算用データ生成処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
 また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
 本出願を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
 本出願は、2010年8月24日出願の日本特許出願(特願2010-187309)及び2010年12月21日出願の日本特許出願(特願2010-284878)に基づくものであり、その内容はここに参照として取り込まれる。
 従来の数値解析手法である有限要素法、有限体積法、ボクセル法、ボクセル法の改良手法、及び粒子法の問題点を解決し、解析精度の悪化を伴わずにソルバ処理における計算負荷の低減を図ることができる数値解析装置に入力する計算用データを生成することが不可欠な用途にも適用できる。
A・・・数値解析装置(物理量計算装置)
P・・・数値解析プログラム
P1・・・プリ処理プログラム
P2・・・ソルバ処理プログラム(物理量計算プログラム)
P3・・・ポスト処理プログラム
M・・・計算用データモデル
……粒子iが仮想的に占める体積
ij……粒子iと粒子jの境界面積
ij……iからjの距離ベクトル
ij……Sijの法線ベクトル
1・・・CPU
2・・・記憶装置
2a・・・プログラム記憶部
2b・・・データ記憶部
3・・・DVDドライブ
4・・・入力装置
4a・・・キーボード
4b・・・マウス
5・・・出力装置
5a・・・ディスプレイ
5b・・・プリンタ
D・・・計算用データ生成装置
11・・・パラメータ入力部
12・・・パラメータ記憶部
13・・・通信部
14・・・形状データ入力部
15・・・形状データ記憶部
16・・・パッチデータ生成部
17・・・パッチデータ記憶部
18・・・ボクセルデータ生成部
19・・・ボクセルデータ記憶部
20・・・初期点データ生成部
21・・・初期点データ記憶部
22・・・データ間引き部
23、231・・・分割領域データ生成部
24・・・分割領域データ記憶部
25・・・計算用データ生成部
26・・・中間データ記憶部
27・・・計算用データ記憶部
28・・・グラフィックボード

Claims (12)

  1.  数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、
     前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、
     前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、
     前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成手段と、
     前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、
     前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成手段と、
     前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、
     前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成手段と、
     前記数値解析を行うための計算用データを記憶する計算用データ記憶手段と、
     前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成手段と
     を備えることを特徴とする計算用データ生成装置。
  2.  前記分割領域データ生成手段は、
     前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする請求項1に記載の計算用データ生成装置。
  3.  前記分割領域データ生成手段は、
     所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする請求項1に記載の計算用データ生成装置。
  4.  前記初期点データ生成手段は、
     前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする請求項1から3のいずれかに記載の計算用データ生成装置。
  5.  数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、前記数値解析を行うための計算用データを記憶する計算用データ記憶手段とを備える計算用データ生成装置における計算用データ生成方法であって、
     前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成ステップと、
     前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成ステップと、
     前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成ステップと、
     前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成ステップと
     を有することを特徴とする計算用データ生成方法。
  6.  前記分割領域データ生成ステップは、
     前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする請求項5に記載の計算用データ生成方法。
  7.  前記分割領域データ生成ステップは、
     所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする請求項5に記載の計算用データ生成方法。
  8.  前記初期点データ生成ステップは、
     前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする請求項5から7のいずれかに記載の計算用データ生成方法。
  9.  数値解析を行う対象物体を複数の多角形で表現したパッチデータが記憶されたパッチデータ記憶手段と、前記数値解析を行うのに必要なパラメータを記憶するパラメータ記憶手段と、前記対象物体を含む解析領域内を複数の直方体に分割したボクセルデータを記憶するボクセルデータ記憶手段と、前記解析領域内の領域分割を行うための初期点データを記憶する初期点データ記憶手段と、前記対象物体を複数の分割領域に分割した分割領域データを記憶する分割領域データ記憶手段と、前記数値解析を行うための計算用データを記憶する計算用データ記憶手段とを備える計算用データ生成装置上のコンピュータに計算用データ生成を行わせる計算用データ生成プログラムであって、
     前記パラメータ記憶手段に記憶されている前記パラメータに基づき、前記ボクセルデータを定義し、各ボクセルに対して、ボクセル属性を付与して、前記ボクセルデータ記憶手段に記憶するボクセルデータ生成ステップと、
     前記ボクセルの中心点を使用して、前記ボクセルの数より少ない前記初期点データを生成して、前記初期点データ記憶手段に記憶する初期点データ生成ステップと、
     前記ボクセルデータ記憶手段に記憶されている各ボクセルの属性と、前記初期点データ記憶手段に記憶されている前記初期点データとに基づき、前記対象物体内を、複数の前記ボクセルで構成する分割領域を定義し、定義した前記分割領域データを前記分割領域データ記憶手段に記憶する分割領域データ生成ステップと、
     前記分割領域データ記憶手段に記憶されている前記分割領域データに基づき、各分割領域の境界面データを生成し、該境界面データを前記計算用データとして前記計算用データ記憶手段に記憶する計算用データ生成ステップと
     を前記コンピュータに行わせることを特徴とする計算用データ生成プログラム。
  10.  前記分割領域データ生成ステップは、
     前記初期点データ記憶手段に記憶されている前記初期点データの中から、各ボクセルの中心点に最も距離が近い初期点を選択して、各ボクセルが属する分割領域を特定することにより前記分割領域を生成することを特徴とする請求項9に記載の計算用データ生成プログラム。
  11.  前記分割領域データ生成ステップは、
     所定の軸に垂直な前記ボクセルの境界面で構成するスライス面と、前記初期点のそれぞれを中心とする球体の交差する断面を定義し、該断面から前記初期点からの距離に応じて高さの異なるポテンシャル立体を定義し、該ポテンシャル立体を3次元の隠面処理を行って描画した画像データに基づいて、前記スライス面上の分割領域を定義する処理を、前記解析領域内の全ての前記スライス面に対して行うことにより前記分割領域を生成することを特徴とする請求項9に記載の計算用データ生成プログラム。
  12.  前記初期点データ生成ステップは、
     前記パッチデータ記憶手段に記憶されている前記パッチデータと、前記ボクセルデータ記憶手段に記憶されている前記ボクセルデータとから、前記対象物体内部に位置する前記ボクセルの内側ボクセルを選択し、前記内側ボクセルのうち、隣接するボクセルが存在しない内側ボクセルに内接する球を定義し、前記球上に球上点を定義するともに、前記対象物体の壁上に壁上点を定義し、対となる前記球上点と前記壁上点との間に分割点を定義し、該分割点と前記ボクセルの中心点とを前記初期点とすることを特徴とする請求項9から11のいずれかに記載の計算用データ生成プログラム。
PCT/JP2011/068662 2010-08-24 2011-08-18 計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム WO2012026383A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
KR1020137004454A KR20130098306A (ko) 2010-08-24 2011-08-18 계산용 데이터 생성 장치, 계산용 데이터 생성 방법 및 계산용 데이터 생성 프로그램
EP11819846.4A EP2610772A4 (en) 2010-08-24 2011-08-18 CALCULATION DATA GENERATION APPARATUS, CALCULATION DATA GENERATION METHOD, AND CALCULATION DATA GENERATION PROGRAM
RU2013112926/08A RU2013112926A (ru) 2010-08-24 2011-08-18 Устройство для создания расчетных данных, способ создания расчетных данных и программа для создания расчетных данных
JP2011551332A JP5045853B2 (ja) 2010-08-24 2011-08-18 計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム
CN2011800408301A CN103080941A (zh) 2010-08-24 2011-08-18 计算用数据生成装置、计算用数据生成方法及计算用数据生成程序
US13/774,557 US20130173239A1 (en) 2010-08-24 2013-02-22 Generating device for calculation data, generating method for calculation data, and generating program for calculation data

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2010-187309 2010-08-24
JP2010187309 2010-08-24
JP2010-284878 2010-12-21
JP2010284878 2010-12-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13/774,557 Continuation US20130173239A1 (en) 2010-08-24 2013-02-22 Generating device for calculation data, generating method for calculation data, and generating program for calculation data

Publications (1)

Publication Number Publication Date
WO2012026383A1 true WO2012026383A1 (ja) 2012-03-01

Family

ID=45723385

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/068662 WO2012026383A1 (ja) 2010-08-24 2011-08-18 計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム

Country Status (7)

Country Link
US (1) US20130173239A1 (ja)
EP (1) EP2610772A4 (ja)
JP (1) JP5045853B2 (ja)
KR (1) KR20130098306A (ja)
CN (1) CN103080941A (ja)
RU (1) RU2013112926A (ja)
WO (1) WO2012026383A1 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018122252A (ja) * 2017-02-01 2018-08-09 日機装株式会社 解析方法、解析装置、照射方法および照射装置
JP6504333B1 (ja) * 2018-09-12 2019-04-24 Agc株式会社 シミュレーション方法、物理量計算プログラム及び物理量計算装置
JP6516081B1 (ja) * 2018-09-12 2019-05-22 Agc株式会社 シミュレーション方法、mbdプログラムによるシミュレーション方法、数値解析装置、mbd用数値解析システム、数値解析プログラムおよびmbdプログラム
JP2019101850A (ja) * 2017-12-05 2019-06-24 日本製鉄株式会社 構造物モデル生成装置、粒子挙動解析装置、構造物モデル生成方法、粒子挙動解析方法、およびプログラム
WO2020054087A1 (ja) * 2018-09-12 2020-03-19 Agc株式会社 シミュレーション方法、物理量計算プログラム及び物理量計算装置
WO2020054086A1 (ja) * 2018-09-12 2020-03-19 Agc株式会社 シミュレーション方法、mbdプログラムによるシミュレーション方法、数値解析装置、mbd用数値解析システム、数値解析プログラムおよびmbdプログラム

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8892405B1 (en) * 2011-10-18 2014-11-18 The Boeing Company System and method for transferring analysis properties between geometry models
JP6026295B2 (ja) * 2013-01-23 2016-11-16 株式会社デンソーアイティーラボラトリ カーブ形状モデル化装置、方法及び車載用ナビゲーション装置
JP6253053B2 (ja) * 2013-11-29 2017-12-27 富士通株式会社 データ探索装置、データ探索装置の制御方法およびデータ探索装置の制御プログラム
KR101676576B1 (ko) * 2015-08-13 2016-11-15 삼성에스디에스 주식회사 3차원 모델의 복셀화 및 각 복셀의 속성 할당 장치 및 방법
DE102017127276A1 (de) * 2017-08-30 2019-02-28 Taiwan Semiconductor Manufacturing Co., Ltd. Standardzellen und abwandlungen davon innerhalb einer standardzellenbibliothek
JP7247531B2 (ja) * 2018-11-16 2023-03-29 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
CN111047106B (zh) * 2019-12-23 2023-04-14 南智(重庆)能源技术有限公司 井口阀门寿命预测方法
KR102474886B1 (ko) * 2021-03-09 2022-12-06 서울대학교 산학협력단 3d 솔리드 모델의 디자인 방법
CN113440859B (zh) * 2021-07-04 2023-05-16 王禹豪 游戏物品数值生成与检测方法、装置及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008547A1 (ja) * 2003-07-16 2005-01-27 Riken 境界表現データからボリュームデータを生成する方法及びそのプログラム
JP2005202634A (ja) * 2004-01-15 2005-07-28 Keio Gijuku 六面体有限要素数値解析方法
WO2006095629A1 (ja) * 2005-03-09 2006-09-14 Riken 境界面情報の生成方法とその生成プログラム
US20080021684A1 (en) 2004-06-02 2008-01-24 Jean-Claude Dulac Method For Building A Three Dimensional Cellular Partition Of A Geological Domain
JP2010187309A (ja) 2009-02-13 2010-08-26 Ricoh Co Ltd 緊急通報システム、緊急通報方法及び緊急通報に用いる番号登録処理システム
JP2010284878A (ja) 2009-06-11 2010-12-24 Olympus Corp インクジェットヘッドの濃度ムラ判定方法及びその装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0792838B2 (ja) * 1989-12-28 1995-10-09 インターナショナル・ビジネス・マシーンズ・コーポレーション 三次元図形表示方法及びシステム
US5261404A (en) * 1991-07-08 1993-11-16 Mick Peter R Three-dimensional mammal anatomy imaging system and method
US5920319A (en) * 1994-10-27 1999-07-06 Wake Forest University Automatic analysis in virtual endoscopy
US7733339B2 (en) * 2004-05-04 2010-06-08 Raytheon Company System and method for partitioning CAD models of parts into simpler sub-parts for analysis of physical characteristics of the parts
US7657075B2 (en) * 2005-05-06 2010-02-02 Stereotaxis, Inc. Registration of three dimensional image data with X-ray imaging system
US7995810B2 (en) * 2005-06-24 2011-08-09 The University Of Iowa Research Foundation System and methods for image segmentation in n-dimensional space
JP4350773B2 (ja) * 2007-07-25 2009-10-21 株式会社スクウェア・エニックス 画像生成装置及び方法、並びにプログラム及び記録媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005008547A1 (ja) * 2003-07-16 2005-01-27 Riken 境界表現データからボリュームデータを生成する方法及びそのプログラム
JP2005202634A (ja) * 2004-01-15 2005-07-28 Keio Gijuku 六面体有限要素数値解析方法
US20080021684A1 (en) 2004-06-02 2008-01-24 Jean-Claude Dulac Method For Building A Three Dimensional Cellular Partition Of A Geological Domain
WO2006095629A1 (ja) * 2005-03-09 2006-09-14 Riken 境界面情報の生成方法とその生成プログラム
JP2010187309A (ja) 2009-02-13 2010-08-26 Ricoh Co Ltd 緊急通報システム、緊急通報方法及び緊急通報に用いる番号登録処理システム
JP2010284878A (ja) 2009-06-11 2010-12-24 Olympus Corp インクジェットヘッドの濃度ムラ判定方法及びその装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2610772A4 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018122252A (ja) * 2017-02-01 2018-08-09 日機装株式会社 解析方法、解析装置、照射方法および照射装置
JP2019101850A (ja) * 2017-12-05 2019-06-24 日本製鉄株式会社 構造物モデル生成装置、粒子挙動解析装置、構造物モデル生成方法、粒子挙動解析方法、およびプログラム
JP6504333B1 (ja) * 2018-09-12 2019-04-24 Agc株式会社 シミュレーション方法、物理量計算プログラム及び物理量計算装置
JP6516081B1 (ja) * 2018-09-12 2019-05-22 Agc株式会社 シミュレーション方法、mbdプログラムによるシミュレーション方法、数値解析装置、mbd用数値解析システム、数値解析プログラムおよびmbdプログラム
WO2020054087A1 (ja) * 2018-09-12 2020-03-19 Agc株式会社 シミュレーション方法、物理量計算プログラム及び物理量計算装置
WO2020054086A1 (ja) * 2018-09-12 2020-03-19 Agc株式会社 シミュレーション方法、mbdプログラムによるシミュレーション方法、数値解析装置、mbd用数値解析システム、数値解析プログラムおよびmbdプログラム
US11144685B2 (en) 2018-09-12 2021-10-12 AGC Inc. Simulation method, simulation method by MBD program, numerical analysis apparatus, numerical analysis system for MBD, numerical analysis program, and MBD program

Also Published As

Publication number Publication date
JPWO2012026383A1 (ja) 2013-10-28
EP2610772A4 (en) 2015-04-22
US20130173239A1 (en) 2013-07-04
RU2013112926A (ru) 2014-09-27
KR20130098306A (ko) 2013-09-04
CN103080941A (zh) 2013-05-01
EP2610772A1 (en) 2013-07-03
JP5045853B2 (ja) 2012-10-10

Similar Documents

Publication Publication Date Title
JP5045853B2 (ja) 計算用データ生成装置、計算用データ生成方法及び計算用データ生成プログラム
JP5454557B2 (ja) 物理量計算方法、数値解析方法、物理量計算プログラム、数値解析プログラム、物理量計算装置及び数値解析装置
Chougrani et al. Lattice structure lightweight triangulation for additive manufacturing
Agrawal et al. IGA: a simplified introduction and implementation details for finite element users
Alves et al. An object-oriented approach to the generalized finite element method
Pappalardo et al. Development of ANCF tetrahedral finite elements for the nonlinear dynamics of flexible structures
Zegard et al. Advancing building engineering through structural and topology optimization
Kim et al. A new finite element approach for solving three‐dimensional problems using trimmed hexahedral elements
Wu 3D simulation of complex fractures with a simple mesh
Pal et al. A family of multi‐point flux approximation schemes for general element types in two and three dimensions with convergence performance
CN106897425A (zh) 一种地球重力场数据的三维可视化方法
Wang et al. A projective transformation-based topology optimization using moving morphable components
Barrera et al. High-order mesh morphing for boundary and interface fitting to implicit geometries
Sellán et al. Solid geometry processing on deconstructed domains
Bawin et al. Automatic feature‐preserving size field for three‐dimensional mesh generation
Zhu et al. A simple automatic hexahedron mesh generation and polyhedral smoothed finite element method for mechanics problems
Robinson et al. Strategies for adding features to CAD models in order to optimize performance
Montanari et al. NURBS-enhanced finite element method (NEFEM) on quadrilateral meshes
Florez et al. Domain Decomposition Methods in Geomechanics
Gasparini et al. Engineering analysis in imprecise geometric models
Manzoor et al. Three-dimensional geological boundary aligned unstructured grid generation, and CVD-MPFA flow computation
Ospina-Bohórquez et al. A Digital Twin for Monitoring the Construction of a Wind Farm. Infrastructures 2023, 8, 10
Zhou et al. MVF Designer: Design and Visualization of Morse Vector Fields
Gondegaon et al. Geometric modeling for isogeometric analysis
Vučina et al. Ad-hoc cluster and workflow for parallel implementation of initial-stage evolutionary optimum design

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201180040830.1

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2011551332

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11819846

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20137004454

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2011819846

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2013112926

Country of ref document: RU

Kind code of ref document: A