ana

package
v0.0.0-...-54c0f88 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 8, 2015 License: BSD-3-Clause Imports: 7 Imported by: 0

Documentation

Overview

package ana implements analytical solutions

package ana implements analytical solutions

package ana implements analytical solutions

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PolarStresses

func PolarStresses(x, y, sx, sy, sxy float64) (r, sr, st, srt float64)

PolarStresses computes stress components w.r.t polar system from given Cartesian components

Types

type CteStressPstrain

type CteStressPstrain struct {
	E float64 // Young's modulus
	// contains filtered or unexported fields
}

CteStressPstrain computes the constant-stress solution to a simple linear elastic plane-strain problem

            qnV
      ↓↓↓↓↓↓↓↓↓↓↓↓↓
    ▷ o-----------o ←
    ▷ |           | ←
    ▷ |     E     | ← qnH
ly  ▷ |     ν     | ←
    ▷ |           | ←
    ▷ o-----------o ←
      △  △  △  △  △
           lx

func (CteStressPstrain) CheckDispl

func (o CteStressPstrain) CheckDispl(tst *testing.T, t float64, u, x []float64, tol float64)

CheckDispl checks displacements

func (CteStressPstrain) CheckStress

func (o CteStressPstrain) CheckStress(tst *testing.T, t float64, σ, x []float64, tol float64)

CheckStress check stresses

func (*CteStressPstrain) Init

func (o *CteStressPstrain) Init(prms fun.Prms)

Init initialises this structure

func (CteStressPstrain) Solution

func (o CteStressPstrain) Solution(t float64) (σx, σy, σz, εx, εy float64)

Solution computes solution

type PressCylin

type PressCylin struct {
	E float64 // Young's modulus

	Y    float64 // TODO
	P0   float64 // Pressure at the elastic/plastic transition (TODO: check this)
	Plim float64 // limiting pressure

	// auxiliary
	P_fx float64 // P value to be passed to fx function
	// contains filtered or unexported fields
}

PressCylin implements the constant-stress solution to a simple linear elastic plane-strain problem -- Hill's solution

        , - - ,
    , '         ' ,
  ,                 ,
 ,      .-'''-.      ,
,      / ↖ ↑ ↗ \      ,
,     |  ← P →  |     ,
,      \ ↙ ↓ ↘ /      ,
 ,      `-...-'      ,
  ,                 ,
    ,            , '
      ' - , ,  '

func (PressCylin) CalcPressDisp

func (o PressCylin) CalcPressDisp(np int) (P, Ub []float64)

CalcLoadDisp returns the internal pressure and outer displacements for plotting the load-displacement graph

func (PressCylin) CalcStresses

func (o PressCylin) CalcStresses(Pvals []float64, nr int) (R []float64, Sr, St [][]float64)

func (*PressCylin) Calc_c

func (o *PressCylin) Calc_c(P float64) float64

Calc_c computes the elastic/plastic transition zone TODO: check what's 'c' exactly

func (PressCylin) ElastOuterU

func (o PressCylin) ElastOuterU(P float64) (ub float64)

ElastOuterU computes the elastic solution for the radial displacement at the outer surface

func (*PressCylin) Init

func (o *PressCylin) Init(prms fun.Prms)

Init initialises this structure

func (PressCylin) Plastic

func (o PressCylin) Plastic(c float64) (P, ub float64)

Plastic computes the pressure corresponding to c and the radial displacment at the outer surface

func (PressCylin) Stresses

func (o PressCylin) Stresses(c, r float64) (sr, st float64)

Stresses compute the radial and tangential stresses

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL