如何将这个问题放入python中呢?

问题描述

我正在python中解决此问题,该问题在于获取骑士四面体网格的总体积。

我编写的这段代码获取的是网格的第一个四面体的体积值,但问题是我不知道如何放置它,以便读取所有四面体并添加每个四面体一。我知道它带有for循环,但我不知道将它放在哪里。

为了更好地理解,此处附有一张“ tets”和“ pts”矩阵的照片,“ tets”矩阵的思想是存储“ pts”行,其中每四个点的坐标被发现组成一个四面体。

Image 1

Image 2

这是代码:

<div>
    <div class="d-flex">
        <div class="bg-primary text-left" id="sidebar-container">
            <div class="logo p-3 d-flex justify-content-between align-items-center">
                <h4 class="text-white" id="logo-name">Company Name</h4>
                <div class="i fas fa-chevron-circle-left left" id="left" onClick="smallNav()"></div>
            </div>
            <div class="menu d-flex flex-column">
                <router-link class="nav-link mt-4 d-flex py-3" :to="{name: 'Home'}" exact="true">
                    <div class="d-flex align-items-center"> <i class="fas fa-home mr-3 menuicon"> </i><span class="menu-title">Home</span></div>
                </router-link>
                <router-link class="nav-link text-white py-3" :to="{name: 'About'}">
                    <div class="d-flex align-items-center"> <i class="fas fa-home mr-3 menuicon"></i><span class="menu-title">Plan</span> </div>
                </router-link>
            </div>
        </div>
        <div class="w-100">
            <nav class="navbar navbar-expand-lg navbar-light bg-light">
                <div class="container-fluid pl-0 pr-0">
                    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"><span class="navbar-toggler-icon"></span></button>
                    <form class="form-inline my-2 position-relative d-inline-block">
                        <input class="form-control mr-sm-2" type="search" placeholder="Search" aria-label="Search" />
                        <button class="btn position-absolute btn-search" type="submit"><i class="fas fa-search"> </i></button>
                    </form>
                    <div class="collapse navbar-collapse" id="navbarSupportedContent">
                        <ul class="navbar-nav ml-auto">
                            <li class="nav-item dropdown"><a class="nav-link dropdown-toggle d-flex align-items-center" id="navbarDropdown" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><img class="avatar mr-2 img-fluid" src="https://www.kindpng.com/picc/m/464-4644512_circle-avatar-picture-png-transparent-png.png" />Jan Kowalski</a>
                                <div class="dropdown-menu" aria-labelledby="navbarDropdown"><a class="dropdown-item" href="#">Mój profil</a><a class="dropdown-item" href="#">Subskrypcja</a>
                                    <div class="dropdown-divider"></div><a class="dropdown-item" href="#">Wyloguj</a>
                                </div>
                            </li>
                            <div class="d-none" id="mobile">
                                <li class="nav-item"></li>Home
                                <li class="nav-item"></li>About
                                <li class="nav-item"></li>About
                            </div>
                        </ul>
                    </div>
                </div>
            </nav>
        </div>
    </div>
</div>

解决方法

制定程序来计算单个四面体的体积

def tetra_vol(nodes):
    M = np.array( [ 1,*pts[node]] for node in nodes)
    return abs(np.linalg.det(M))/6

随时用您使用的计算完全相同的行列式值的单个步骤替换它。您采用的操作是行操作,可用于将4x4行列式简化为3x3行列式,并且其中使用了显式公式。

然后计算所有四面体的总和

Vol = sum(tetra_vol(tet) for tet in tets)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...