b311480e |
1 | -- Created on: 1998-11-10 |
2 | -- Created by: Igor FEOKTISTOV |
3 | -- Copyright (c) 1998-1999 Matra Datavision |
973c2be1 |
4 | -- Copyright (c) 1999-2014 OPEN CASCADE SAS |
b311480e |
5 | -- |
973c2be1 |
6 | -- This file is part of Open CASCADE Technology software library. |
b311480e |
7 | -- |
d5f74e42 |
8 | -- This library is free software; you can redistribute it and/or modify it under |
9 | -- the terms of the GNU Lesser General Public License version 2.1 as published |
973c2be1 |
10 | -- by the Free Software Foundation, with special exception defined in the file |
11 | -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT |
12 | -- distribution for complete text of the license and disclaimer of any warranty. |
b311480e |
13 | -- |
973c2be1 |
14 | -- Alternatively, this file may be used under the terms of Open CASCADE |
15 | -- commercial license or contractual agreement. |
7fd59977 |
16 | |
17 | class ElementsOfRefMatrix from FEmTool inherits FunctionSet from math |
18 | |
19 | ---Purpose: this class describes the functions needed for |
20 | -- calculating matrix elements of RefMatrix for linear |
21 | -- criteriums (Tension, Flexsion and Jerk). |
22 | -- Each function from set gives value Pi(u)'*Pj(u)' or |
23 | -- Pi(u)''*Pj(u)'' or Pi(u)'''*Pj(u)''' for each i and j, |
24 | -- where Pi(u) is i-th basis function of expansion and |
25 | -- (') means derivative. |
26 | uses |
27 | Vector from math, |
28 | Base from PLib |
29 | |
30 | raises |
31 | ConstructionError from Standard |
32 | |
33 | is |
34 | Create(TheBase : Base from PLib; DerOrder : Integer from Standard) |
35 | |
36 | -- DerOrder is order of derivative (1, 2, 3) |
37 | |
38 | returns ElementsOfRefMatrix from FEmTool |
39 | raises ConstructionError from Standard; |
40 | -- if DerOrder is not valid |
41 | |
42 | NbVariables(me) |
43 | ---Purpose: returns the number of variables of the function. |
44 | -- It is supposed that NbVariables = 1. |
45 | |
46 | returns Integer; |
47 | |
48 | |
49 | |
50 | NbEquations(me) |
51 | ---Purpose: returns the number of equations of the function. |
52 | |
53 | returns Integer; |
54 | |
55 | |
56 | Value(me: in out; X: Vector; F: out Vector) |
57 | ---Purpose: computes the values <F> of the functions for the |
58 | -- variable <X>. |
59 | -- returns True if the computation was done successfully, |
60 | -- False otherwise. |
61 | -- F contains results only for i<=j in following order: |
62 | -- P0*P0, P0*P1, P0*P2... P1*P1, P1*P2,... (upper triangle of |
63 | -- matrix {PiPj}) |
64 | |
65 | returns Boolean; |
66 | |
67 | fields |
68 | myBase : Base from PLib; |
69 | myDerOrder : Integer; |
70 | myNbEquations : Integer; |
71 | |
72 | end ElementsOfRefMatrix; |