getfem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Getfem-commits] [getfem-commits] branch master updated: Add scripting i


From: Konstantinos Poulios
Subject: [Getfem-commits] [getfem-commits] branch master updated: Add scripting interface for creating mesh_fem with bspline basis functions
Date: Sun, 18 Dec 2022 19:04:08 -0500

This is an automated email from the git hooks/post-receive script.

logari81 pushed a commit to branch master
in repository getfem.

The following commit(s) were added to refs/heads/master by this push:
     new e4c954d0 Add scripting interface for creating mesh_fem with bspline 
basis functions
e4c954d0 is described below

commit e4c954d07f5184de4fd00f82c7055150c7ba069d
Author: Konstantinos Poulios <logari81@gmail.com>
AuthorDate: Mon Dec 19 01:03:59 2022 +0100

    Add scripting interface for creating mesh_fem with bspline basis functions
---
 interface/src/gf_mesh_fem.cc | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/interface/src/gf_mesh_fem.cc b/interface/src/gf_mesh_fem.cc
index 7cc1b6a0..6b245acf 100644
--- a/interface/src/gf_mesh_fem.cc
+++ b/interface/src/gf_mesh_fem.cc
@@ -226,6 +226,24 @@ void gf_mesh_fem(getfemint::mexargs_in& m_in,
        );
 
 
+    /*@INIT MF = ('bspline', @tmesh m, @int NX, @int NY, @int order)
+      Create a @tmf on mesh `m`, whose basis functions are global functions
+      corresponding to bspline basis of order `order`, in an NX x NY grid
+      that spans the entire bounding box of `m`. @*/
+    sub_command
+      ("bspline", 3, 4, 0, 1,
+       mm = extract_mesh_object(in.pop());
+       size_type NX = in.pop().to_integer(1,1000);
+       size_type NY = in.pop().to_integer(1,1000);
+       size_type order = in.pop().to_integer(3,5);
+
+       auto mfgf = std::make_shared<getfem::mesh_fem_global_function>(*mm);
+       mfgf->set_qdim(1.);
+       define_bspline_basis_functions_for_mesh_fem(*mfgf, NX, NY, order);
+       mmf = mfgf;
+       );
+
+
     /*@INIT MF = ('partial', @tmf mf, @ivec DOFs[, @ivec RCVs])
       Build a restricted @tmf by keeping only a subset of the degrees of
       freedom of `mf`.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]