Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F90405116
Mesh.h
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Fri, Nov 1, 09:34
Size
2 KB
Mime Type
text/x-c
Expires
Sun, Nov 3, 09:34 (2 d)
Engine
blob
Format
Raw Data
Handle
22070259
Attached To
rGOOSEFEM GooseFEM
Mesh.h
View Options
/* =================================================================================================
(c - GPLv3) T.W.J. de Geus (Tom) | tom@geus.me | www.geus.me | github.com/tdegeus/GooseFEM
================================================================================================= */
#ifndef GOOSEFEM_MESH_H
#define GOOSEFEM_MESH_H
// -------------------------------------------------------------------------------------------------
#include "GooseFEM.h"
// ======================================== GooseFEM::Mesh =========================================
namespace GooseFEM {
namespace Mesh {
// -------------------------------------------------------------------------------------------------
// list with DOF-numbers in sequential order
inline MatS dofs(size_t nnode, size_t ndim);
// -------------------------------------------------------------------------------------------------
// renumber to lowest possible numbers (e.g. [0,3,4,2] -> [0,2,3,1])
// - core
template<class InputIterator, class OutputIterator>
inline void renumber(
const InputIterator first, const InputIterator last, const OutputIterator result
);
// - interface
inline MatS renumber(const MatS &dofs);
// -------------------------------------------------------------------------------------------------
// reorder (and renumber) such that certain indices "idx" are moved to the beginning or the end
// - core
template<class InputIterator, class OutputIterator, class IndexIterator>
inline void reorder(
const InputIterator first, const InputIterator last, const OutputIterator result,
const IndexIterator first_index, const IndexIterator last_index, std::string location
);
// - interface
inline MatS reorder(const MatS &dofs, const ColS &idx, std::string location="end");
// -------------------------------------------------------------------------------------------------
// elements connected to each node:
// out[: ,0 ] = number of elements connected to each node
// out[j ,i+1] = "i"th element connected to node "j"
inline SpMatS elem2node(const MatS &conn);
// -------------------------------------------------------------------------------------------------
}} // namespace ...
// =================================================================================================
#endif
Event Timeline
Log In to Comment