public MeepFluxRegion(MeepVector3 center)
			{
			Center = center;
			Size = MeepVector3.Zero;
			Direction = Direction.Automatic;
			Weight = 1;
			}
 public MeepFluxRegion(MeepVector3 center)
 {
     Center    = center;
     Size      = MeepVector3.Zero;
     Direction = Direction.Automatic;
     Weight    = 1;
 }
Beispiel #3
0
 public MeepBlock(MeepMaterialType material, MeepVector3 center, MeepVector3 size)
     : base(material, center)
 {
     Size = size;
     E1   = MeepVector3.AxisX;
     E2   = MeepVector3.AxisY;
     E3   = MeepVector3.AxisZ;
 }
		public MeepBlock(MeepMaterialType material, MeepVector3 center, MeepVector3 size)
			:base(material,center)
			{
			Size = size;
			E1 = MeepVector3.AxisX;
			E2 = MeepVector3.AxisY;
			E3 = MeepVector3.AxisZ;
			}
		public static MeepSource CreateContinuousSource(Component component, MeepVector3 center, double wavelength)
			{
			MeepSource res = new MeepSource( component, center, wavelength );
			res.Type = SourceType.Continuous;
			res.EndTime = double.PositiveInfinity;
			res.Width = 0;
			res.Cutoff = 3;
			return res;
			}
		private MeepSource(Component component, MeepVector3 center, double wavelength)
			{
			Component = component;
			Center = center;
			Size = MeepVector3.Zero;
			Amplitude = 1.0;
			Wavelength = wavelength;
			StartTime = 0;
			}
		public static MeepSource CreateGaussianSource(Component component, MeepVector3 center, double wavelength, double width)
			{
			MeepSource res = new MeepSource( component, center, wavelength );
			res.Type = SourceType.Gaussian;
			res.EndTime = double.NaN;
			res.Width = width;
			res.Cutoff = 5;
			return res;
			}
Beispiel #8
0
 private MeepSource(Component component, MeepVector3 center, double wavelength)
 {
     Component  = component;
     Center     = center;
     Size       = MeepVector3.Zero;
     Amplitude  = 1.0;
     Wavelength = wavelength;
     StartTime  = 0;
 }
Beispiel #9
0
        public static MeepSource CreateGaussianSource(Component component, MeepVector3 center, double wavelength, double width)
        {
            MeepSource res = new MeepSource(component, center, wavelength);

            res.Type    = SourceType.Gaussian;
            res.EndTime = double.NaN;
            res.Width   = width;
            res.Cutoff  = 5;
            return(res);
        }
Beispiel #10
0
        public static MeepSource CreateContinuousSource(Component component, MeepVector3 center, double wavelength)
        {
            MeepSource res = new MeepSource(component, center, wavelength);

            res.Type    = SourceType.Continuous;
            res.EndTime = double.PositiveInfinity;
            res.Width   = 0;
            res.Cutoff  = 3;
            return(res);
        }
 public MeepGeometricObject(MeepMaterialType material, MeepVector3 center)
 {
     Material = material;
     Center   = center;
 }
		public MeepGeometricObject(MeepMaterialType material, MeepVector3 center)
			{
			Material = material;
			Center = center;
			}
Beispiel #13
0
 public static MeepStepFunction InPoint(MeepVector3 pt, IList <MeepStepFunction> functions)
 {
     return(new MeepOutputControl("in-point", new object[] { pt }, functions));
 }
		public MeepLattice(MeepVector3 size) { Size = size; }
		/// <summary></summary>
		public MeepBlock FromParallelogram(PointD origin, SizeD vector1, SizeD vector2)
			{
			MeepVector3 center = Convert( origin + 0.5 * vector1 + 0.5 * vector2, CenterZ );
			MeepVector3 size = new MeepVector3( vector1.Magnitude, vector2.Magnitude, SizeZ );
			return new MeepBlock( MeepMaterial, center, size )
			{
				E1 = Convert( ( 1 / vector1.Magnitude ) * vector1, 0 ),
				E2 = Convert( ( 1 / vector2.Magnitude ) * vector2, 0 ),
				E3 = MeepVector3.AxisZ,
			};
			}
		public MeepVolume(MeepVector3 center, MeepVector3 size)
			{
			Center = center;
			Size = size;
			}
 public MeepVolume(MeepVector3 center, MeepVector3 size)
 {
     Center = center;
     Size   = size;
 }
 public MeepLattice(MeepVector3 size)
 {
     Size = size;
 }