计算二维主应力的前端界面

news2025/3/10 20:57:19
<!DOCTYPE html>  
<html>  
<head>  
    <title>二维主应力</title>  
</head>  
<body>  
    <h2>计算二维主应力</h2>  
    <form>  
        <label for="input1">σ_1(Mpa):</label>  
        <input type="text" id="input1" name="input1" value="25">  
        <br><br>  
        <label for="input2">σ_2(Mpa):</label>  
        <input type="text" id="input2" name="input2" value="25">  
        <br><br>  
        <label for="input3">τ1(Mpa):</label>  
        <input type="text" id="input3" name="input3" value="26">  
        <br><br> 
        <label for="input4">τ2(Mpa):</label>  
        <input type="text" id="input4" name="input4" value="22">  
        <br><br>  
        <label for="input5">两个面之间夹角α°:</label>  
        <input type="text" id="input5" name="input5">  
        <br><br>  
        <button type="button" onclick="submitForm()">计算</button>  
    </form>  
    <p id="yuanxin"></p>
    <p id="tao"></p>
    <p id="yingli"></p>
    <script> 
        function cos1(a){
            return Math.cos(a*Math.PI/180);
        } 
        function tan1(a){
            return Math.tan(a*Math.PI/180);
        }
        function sin1(a){
            return Math.sin(a*Math.PI/180);
        }
        function juli(point1,point2){
            return Math.sqrt((point1[0]-point2[0])**2+(point1[1]-point2[1])**2);
        }
        function submitForm() {  
            // 在这里可以获取输入框的值并进行处理  
            var ox = parseFloat(document.getElementById("input1").value);  
            var oy = parseFloat(document.getElementById("input2").value);  
            var tao1 = parseFloat(document.getElementById("input3").value);  
            var tao2 = parseFloat(document.getElementById("input4").value);
            var a=parseFloat(document.getElementById("input5").value);
            var x=findIntersectionWithXAxis([ox,tao1],[oy,tao2],a);
            document.getElementById('yuanxin').textContent=`圆心:${x}`;
            var juli1=juli([ox,tao1],[x,0]);
            document.getElementById('tao').textContent=`最大切应力:${juli1} MPa`;
            var x1=x+juli1;
            var x2=x-juli1;
            document.getElementById('yingli').textContent=`主应力:${x1} MPa ${x2} MPa`
        }
        function findIntersectionWithXAxis(point1, point2,a) {  
    // 检查点是否有效  
    if (!Array.isArray(point1) || point1.length !== 2 ||  
        !Array.isArray(point2) || point2.length !== 2) {  
        alert('Invalid points. Each point should be an array with two elements.');  
    }  
  
    const x1 = point1[0];  
    const y1 = point1[1];  
    const x2 = point2[0];  
    const y2 = point2[1];  
    var delta;
    // 计算中点  
    const midX = (x1 + x2) / 2;  
    const midY = (y1 + y2) / 2;  
  
    // 计算两点连线的斜率  
    const slope = (y2 - y1) / (x2 - x1);  
  
    // 检查两点是否相同或垂直  
    if (x1 === x2 && y1 === y2) {  
        alert('The two points are the same, so there is no perpendicular bisector.');  
    } else if (x1 === x2) {  
        if(a<90||a>90){
            delta=Math.abs(y1)/tan1(a);
        }
        else if(a==90||a==180){
            delta=0;
        }
        else{
            alert('请输入角度'); 
        }
        return x1-delta;
    }  
  
    // 计算垂直平分线的斜率  
    const perpendicularSlope = -1 / slope;  
  
    // 使用点斜式和中点找到垂直平分线的方程 y - y1 = m(x - x1)  
    // 代入y = 0来解方程找到x的值  
    const intersectionX = (perpendicularSlope === 0) ? midX : (-midY + (perpendicularSlope * midX)) / perpendicularSlope;  
  
    return intersectionX;  
}  

    </script>  
</body>  
</html>

解决如图所示的两个面求圆心坐标和σ的值

对于如上图所示的结构,是α=90°时的情况

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1618393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Docker搭建Maven仓库Nexus

文章目录 一、简介二、Docker部署三、仓库配置四、用户使用Maven五、管理Docker镜像 一、简介 Nexus Repository Manager&#xff08;简称Nexus&#xff09;是一个强大的仓库管理器。 Nexus3支持maven、docker、npm、yum、apt等多种仓库的管理。 建立了 Maven 私服后&#xf…

Android—— log的记忆

一、关键log 1.Java的 backtrace(堆栈log) 上述是一个空指针异常&#xff0c;问题出现在sgtc.settings&#xff0c;所以属于客户UI问题。 2.WindowManager(管理屏幕上的窗口和视图层次结构) 3.ActivityManager(管理应用程序生命周期和任务栈) 4.wifi操作 (1) 连接wifi&#…

初入单元测试

单元测试&#xff1a;针对最小的功能单元(方法)&#xff0c;编写测试代码对其进行正确性测试 Junit可以用来对方法进行测试&#xff0c;虽然是有第三方公司开发&#xff0c;但是很多开发工具已经集成了&#xff0c;如IDEA。 Junit 优点&#xff1a;可以灵活的编写测试代码&am…

互联网大佬座位排排坐:马化腾第一,雷军第二

关注卢松松&#xff0c;会经常给你分享一些我的经验和观点。 这是马化腾、雷军、张朝阳、周鸿祎的座位&#xff0c;我觉得是按照互联网地位排序的。 马化腾坐头把交椅&#xff0c;这个没毛病&#xff0c;有他在的地方&#xff0c;其他几位都得喊声“大哥”。雷军坐第二把交椅…

世界读书日,解决沟通问题或提升沟通能力,听书690本的我最推荐的3本书

前言 今天是世界读书日&#xff0c;好想找个图书馆泡一天&#xff0c;认认真真读一本书。从去年开始对读书感兴趣&#xff0c;前前后后目前为止一共听了 690 本书&#xff0c;有社科类&#xff0c;心理学类&#xff0c;历史类&#xff0c;脑科学类&#xff0c;管理类&#xff0…

深入探索Android Service:后台服务的终极指南(上)

引言 在Android应用开发中&#xff0c;Service是一个至关重要的组件&#xff0c;它允许开发者执行后台任务&#xff0c;而无需用户界面。然而&#xff0c;Service的启动方式、生命周期管理以及与其他组件的交互&#xff0c;对于很多开发者来说仍然是一个难点。本文将深入剖析S…

CyclicBarrier(循环屏障)源码解读与使用

&#x1f3f7;️个人主页&#xff1a;牵着猫散步的鼠鼠 &#x1f3f7;️系列专栏&#xff1a;Java全栈-专栏 &#x1f3f7;️个人学习笔记&#xff0c;若有缺误&#xff0c;欢迎评论区指正 目录 1. 前言 2. 什么是CyclicBarrier&#xff1f; 3. CyclicBarrier与CountDownL…

redis常用数据结构

redis常用数据结构 Redis 底层在实现下面数据结构的时候&#xff0c;会进行特定的优化&#xff0c;来达到节省时间/空间的效果。 内部结构 String raw&#xff08;最基本的字符串&#xff09;&#xff0c;int&#xff08;实现计数功能&#xff0c;当value为整数的时候会用整…

碳课堂|什么是碳市场?如何进行碳交易?

近年来&#xff0c;随着全球变暖问题日益受到重视&#xff0c;碳达峰、碳中和成为国际社会共识&#xff0c;为更好地减缓和适应气候变化&#xff0c;同时降低碳关税风险&#xff0c;以“二氧化碳的排放权利”为商品的碳交易和碳市场应时而生。 一、什么是碳交易、碳市场 各国…

JavaSE——程序逻辑控制

1. 顺序结构 顺序结构 比较简单&#xff0c;按照代码书写的顺序一行一行执行。 例如&#xff1a; public static void main(String[] args) {System.out.println(111);System.out.println(222);System.out.println(333);} 运行结果如下&#xff1a; 如果调整代码的书写顺序 , …

[Android]Jetpack Compose加载图标和图片

一、加载本地矢量图标 在 Android 开发中使用本地矢量图标是一种常见的做法&#xff0c;因为矢量图标&#xff08;通常保存为 SVG 或 Android 的 XML vector format&#xff09;具有可缩放性和较小的文件大小。 在 Jetpack Compose 中加载本地矢量图标可以使用内置的支持&…

基于Vue+ElementPlus自定义带历史记录的搜索框组件

前言 基于Vue2.5ElementPlus实现的一个自定义带历史记录的搜索框组件 效果如图&#xff1a; 基本样式&#xff1a; 获取焦点后&#xff1a; 这里的历史记录默认最大存储10条&#xff0c;同时右侧的清空按钮可以清空所有历史记录。 同时搜索记录也支持点击搜索&#xff0c;按…

2013-2021年各省经济韧性相关测度指标面板数据

2013-2021年各省经济韧性相关测度指标面板数据 1、时间&#xff1a;2013-2021年 2、指标&#xff1a;城镇化率 %、财政科学技术支出&#xff08;亿元&#xff09;、万人高等教育在校人数&#xff08;万人&#xff09;、财政教育支出&#xff08;亿元&#xff09;、第三产业占…

【后端】PyCharm的安装指引与基础配置

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、PyCharm是什么二、PyCharm安装指引安装PyCharm社区版安装PyCharm专业版 三、配置PyCharm&#xff1a;四、总结 前言 随着开发语言及人工智能工具的普及&am…

Discuz! X系列版本安装包

源码下载地址&#xff1a;Discuz! X系列版本安装包 很多新老站长跟我说要找Discuz! X以前的版本安装包&#xff0c;我们做Discuz! X开发已经十几年了&#xff0c;这些都是官方原版安装包&#xff0c;方便大家使用&#xff08;在官网已经找不到这些版本的安装包了&#xff09; …

4.23日总结(项目总结)

1.项目&#xff1a; 今日项目通过一个在登录界面的一个静态变量&#xff0c;完成了区分老师和学生&#xff0c;能够分开老师和学生&#xff0c;并且不同身份的人进去会有不同的显示&#xff0c;以及登录链接主界面&#xff0c;还有学生和老师的不同的表&#xff0c;其次就是创…

实现Spring底层机制(二)

文章目录 阶段2—封装bean定义信息到Map1.代码框架图2.代码实现1.文件目录2.新增注解Scope存储单例或多例信息Scope.java3.修改MonsterService.java指定多例注解4.新增bean定义对象存储bean定义信息BeanDefinition.java5.修改pom.xml增加依赖6.修改容器实现bean定义信息扫描Sun…

修改element-ui中el-calendar(日历)的样式

效果图如下&#xff1a; <template><div class"dashboard-container"><el-card style"width: 350px; height: auto; border-radius: 8px"><div class"custom-style"><p class"new-data">{{ newDate }}&…

Qt使用miniblink第三方浏览器模块

文章目录 一、前言二、miniblink简介三、miniblink使用四、运行效果五、工程结构 一、前言 本文取自刘典武大师&#xff1a;Qt编写地图综合应用58-兼容多浏览器内核 用Qt做项目过程中&#xff0c;遇到需要用到浏览器控件的项目&#xff0c;可能都会绕不开一个问题&#xff0c;那…

12-Makefile_03(续)

使用变量 使用C自动编译成*.o的默认规则有个缺陷&#xff0c;由于没有显式地表示*.o依赖于.h头文件&#xff0c;假如修改了头文件的内容&#xff0c;那么*.o并不会更新&#xff0c;这是不可接受的。并且默认规则使用固定的“cc”进行编译&#xff0c;假如想使用ARM-GCC进行交叉…