【源码】二维平面应力问题中的弹性材料模型仿真

本文介绍了弹性模型函数Elastic_Model,详细说明了其输入参数,包括包含材料特性的变量Material、包含材料状态历史变量的Material_State以及当前迭代中的应变矢量e,还说明了输出为包含当前增量材料状态变量的Material_State和本构矩阵D,最后提示可点击“阅读原文”下载完整源码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

640?wx_fmt=jpeg

function [Material_State,D]=Elastic_Model(Material,Material_State,e)


函数输入:

Input: 

-------- 

Material:包含材料特性的变量Material.E(弹性模量)和Material.v(泊松比)


Material_State:包含以前增量或迭代时材料状态变量的历史变量。包括Material_State.s(应力向量)、Material_State.e(应变向量),还可能包含其他变量,具体取决于材料模型。该变量在弹性材料模型中并不重要。


e:当前迭代中的应变矢量。


Material: A variable containing material properties Material.E (Modulus of Elasticity) and Material.v (poisson ratio) 

Material_State: A history variable containing material state variables at previous increment or iteration. it includes Material_State.s (stress vector) , Material_State.e (strain vector) and may also contain other variables depending on material model. This variable is not important in elastic material model 

e: Strain vector in the current iteration.


函数输出:

Output: 

----------- 

Material_State:包含当前增量材料状态变量的历史变量

D:本构矩阵

Material_State: A history variable containing material state variables at current increment 

D: Constitutive matrix


完整源码下载请点击“阅读原文”

import java.applet.Applet; import java.awt.Color; import java.awt.Graphics; import java.awt.Rectangle; /** An applet that displays a simple animation */ public class BouncingCircle extends Applet implements Runnable { int x = 150, y = 50, r = 50; // Position and radius of the circle int dx = 11, dy = 7; // Trajectory of circle Thread animator; // The thread that performs the animation volatile boolean pleaseStop; // A flag to ask the thread to stop /** This method simply draws the circle at its current position */ public void paint(Graphics g) { g.setColor(Color.red); g.fillOval(x - r, y - r, r * 2, r * 2); } /** * This method moves (and bounces) the circle and then requests a redraw. * The animator thread calls this method periodically. */ public void animate() { // Bounce if we've hit an edge. Rectangle bounds = getBounds(); if ((x - r + dx < 0) || (x + r + dx > bounds.width)) dx = -dx; if ((y - r + dy < 0) || (y + r + dy > bounds.height)) dy = -dy; // Move the circle. x += dx; y += dy; // Ask the browser to call our paint() method to draw the circle // at its new position. repaint(); } /** * This method is from the Runnable interface. It is the body of the thread * that performs the animation. The thread itself is created and started in * the start() method. */ public void run() { while (!pleaseStop) { // Loop until we're asked to stop animate(); // Update and request redraw try { Thread.sleep(100); } // Wait 100 milliseconds catch (InterruptedException e) { } // Ignore interruptions } } /** Start animating when the browser starts the applet */ public void start() { animator = new Thread(this); // Create a thread pleaseStop = false; // Don't ask it to stop now animator.start(); // Start the thread. // The thread that called start now returns to its caller. // Meanwhile, the new animator thread has called the run() method } /** Stop animating when the browser stops the applet */ public void stop() { // Set the flag that causes the run() method to end pleaseStop = true; } }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值