SCHEMA Mesh_function_arm;
  
USE FROM Maths_function_arm -- Maths_function
  (Maths_function);
USE FROM Mesh_arm -- Mesh
  (Mesh);
USE FROM Tabular_function_arm -- Tabular_function
  (Table);
  
ENTITY Mesh_function
  SUBTYPE OF (Maths_function);
  basis :  OPTIONAL LIST[1,?] OF Mesh_function_basis;
  control_values :  Table;
  mesh :  Mesh;
  uniform_basis :  OPTIONAL BOOLEAN;
  values_at_vertices :  BOOLEAN;
  WHERE
    necessary_basis :  values_at_vertices OR EXISTS (basis);
    uniform_specified :  EXISTS (basis) = EXISTS (uniform_basis);
    one_basis_if_uniform :  IF EXISTS (basis) AND 
                               EXISTS (uniform_basis) THEN
                              IF uniform_basis THEN
                                SIZEOF (basis) = 1;
                              ELSE
                                TRUE;
                              ENDIF;
                            ELSE
                              TRUE;
                            ENDIF;   
END_ENTITY;
  
ENTITY Mesh_function_basis;
  SUBTYPE OF (Maths_functon);
  cell_topological_dimension :  INTEGER;
  control_value_array_dimension :  INTEGER;
  control_value_array_order :  ARRAY[1,control_value_array_dimension] OF INTEGER;
  control_value_positions :  Table;
END_ENTITY;
  
END_SCHEMA;

Page last updated - 7 Sep 2000