Ejemplo n.º 1
0
        private Material NewMaterial(Material oriMaterial, MaterialType newMaterialType)
        {
            Material newM;

            switch (newMaterialType)
            {
            case MaterialType.MohrCoulomb:
                newM = new MohrCoulomb(oriMaterial.Name, oriMaterial.Density, oriMaterial.Elasticity, oriMaterial.PoissonRatio,
                                       cohesion: 1000, frictionAngle: 30);
                break;

            default:
                newM = new Material(oriMaterial.Name, oriMaterial.Density, oriMaterial.Elasticity, oriMaterial.PoissonRatio, newMaterialType);
                break;
            }
            return(newM);
        }
Ejemplo n.º 2
0
        /// <summary> 构造一个车站模型实例 </summary>
        /// <param name="sm"></param>
        public static void ConstructStationModel(Model1 sm)
        {
            //
            Material mat1 = new Material("elas1", 1900, 200e9, 0.3, MaterialType.Elastic);

            sm.Definitions.Materials.Add(mat1);
            Material mat2 = new MohrCoulomb("MC", 1900, 200e9, 0.3, 60e6, 30);

            sm.Definitions.Materials.Add(mat2);
            //
            Profile rec = new Rectangular("rec1", 0.5, 1.5);

            sm.Definitions.Profiles.Add(rec);
            Profile profT = new TT("t1", 2, 1, 0.1, 0.1);

            sm.Definitions.Profiles.Add(profT);

            //
            sm.Frame = Frame.Create(new float[] { 4, 5, 6, }, new float[] { 3, 6 }, defaultMat: mat1, defaultProfile: rec);

            //
            sm.Frame.Beams[0].Profile    = profT;
            sm.Frame.Columns[0].Material = mat2;
        }