Agenda
- 10:00-10:30 Arrival and Seating (Confirmation of registration information)
- 10:30-11:00 Project Introduction
- 11:00-12:00 Coding Session 1
- 12:00-13:20 Lunch Break & Group Discussion 1
- 13:30-14:20 Coding Session 2
- 14:20-14:30 Group Discussion 2
- 14:30-15:00 Technical sharing: scientific programming to develop code of the space-time conservation element and solution element (CESE) method in Python and C++
- 15:00-15:30 Group Discussion 3
- 15:30-16:30 Final Sprint
- 16:30-17:00 Project Summary & Closing
About the scisprint
To join the sprint, please bring your laptop and sign up. You are also very welcome to bring your project. Please contact us if you have any questions.
scisprint, hosted by the sciwork community, is a monthly coding sprint. It would like to facilitate discussions and exchanges among people in the fields of science, numerical computation, and engineering. Participants, regardless of experience level, can gain valuable development insights in this event.
We would like to provide a supportive and friendly environment for all attendees to support more developers to join in the open-source communities.
Technical sharing
scientific programming to develop code of the space-time conservation element and solution element (CESE) method in Python and C++
Venue: At the largest room in NTHU CTC
Scientific programming solves problems in the physical world. It is the most effective to learn the required knowledge in both computer and science by developing the code and equations from ground up. Take time-accurate simulation of non-linear fluid dynamics for example, it calls for a numerical method, a mesh data structure, and an array library for fast processing. Python and array are the key to provide an easy-to-use user interface and facilitate collaboration between programmers and engineers. The architecture is general for many applications, and will be demonstrated by a code of the space-time conservation element and solution element (CESE) method with unstructured meshes of mixed elements. I will discuss the use of Python and C++ in the code and what we will further develop.
Hacking Session
It aims to encourage collaboration and interaction among developers through project participation. The projects cover various fields, including but not limited to science, numerical computation, and engineering. You are also encouraged to share your own projects in scisprint. Refer to project list below for more details.
Project List
modmesh
- Related Subjects: Python, C++, PDE
- Project Link: Github
- Project Contact: Yung-Yu Chen (discord: @yyc#7718)
modmesh seamlessly mixes C++ and Python through pybind11, allowing you to leverage the strengths of both programming languages for efficient PDE solving. We use Qt and Python to visualize the computation results to give you a better understanding of your PDE solution. modmesh also supports mesh visualization, currently in the Gmsh mesh file format. We have recently made efforts to improve the modmesh UI/UX.
The design allows it to run on Windows, Linux, and MacOS. Everyone can use or contribute to modmesh.
uTensor
- Project Link: GitHub
- Project Contact: Dboy(discord: @dboyliao#1295)
uTensor is an extremely lightweight machine learning inference framework built on C++11. It simplifies model deployment by seamlessly converting TensorFlow-trained models into efficient C++ files that can be used to infer on the embedding device and integrate with optimized libraries such as CMSIS-NN by ARM with ease. Compared with the binary files, C++ source code will provide greater flexibility to modify the trained model for the embedding engineers.
We provide the defaults for tensors, operators, and memory allocation. Just like the booming development of machine learning, we are also actively developing the above functions. Welcome to join us.
sciwork portal
- Project Link: GitHub
- Project Contact: Chester (discord: @chester), Wuxian (discord: @5x9527), Steve Chen (discord: @Steve Chen)
sciwork Portal is a project for maintaining our official website - sciwork.dev, which was built by Pelican with tailwindCSS, and deployed by Netfliy. We create the promotional pages for meetup and sprint events. Our team also maintains the sciwork conference page - conf.sciwork.dev.
We have always been actively trying to provide users a better web browsing experience, including information presentation and visual experience. Welcome to join us if you are interested in website maintence.
Cyntx
- Project Link: GitHub
- Project Contact: Alex Chiang (discord: @alexchiang_60942)
Cytnx (pronounced as sci-tens) is a tensor network library designed for classical/quantum physics simulations. It supports C++ and Python with almost identical interface and syntax, such that users can effortlessly switch between the two languages. Aiming at a quick learning process for new users of tensor network algorithms, the interfaces resemble the popular scientific libraries such as numpy, Scipy, and PyTorch. Symmetries present in physical systems can be easily defined and implemented in tensors.In addition, we provide a useful class called Network that allows users to store large tensor networks and perform the contractions in an optimal order that can be automatically computed.
There are still many physics applications and GPU support backend being developed. Welcome to join us to contribute to Cytnx.
AItlas
A knowledge graph should formally represent relations between/among entities and provide insights for semantic computation in natural language understanding (NLU). The representation is usually like a net 2D or atlas in 3D and higher dimensions. In recent years, this is usually called RAG. We believe a knowledge graph (thus KG) can do more for AI, thus named our project AI+Atlas = AItlas.
Sign Up
Please register at kktix.
Venue
前沿理論及計算研究中心 (國立清華大學第三綜合大樓 A 區 5 樓).
Center for Theory and Computation (Rm. P518, 3rd General Building, National Tsing Hua University).