MODGEN MODGEN is a program which generates source models from physical input data. The output is in the form of a model file containing the flux, relative position, size, elongation, orientation, and type of each component in the model. MODGEN is useful for creating models for the purpose of running programs FAKE in order to investigate the imaging potential of an planned VLBI array on a particular type of source. Example: Create A Solar System at 10 Parsecs modgen TEMP = 5700, 300, 125 UTEMP = "K" DIAMeter = 1.0, 0.009166, 0.102442 UDIAM = "DSUN" RADius = 0, 1.0, 5.0 URAD = "AU" THETA = 0, 80, 100 TYPE = 2, 2, 2 NSPOTS = 25, 0, 0 DISTance = 10 UDIST = "PC" LAMBDA = 12 ULAMB = "MICRONS" OUTMOD = "earthjup.mod" INCL = 45 ROTATE = 45 DISKDUST = 1.e-7 DISKTYPE = 1 / MODGEN may be run from a command file, of which this is an example. In VMS, if the file is called MODGEN.COM, it can be run at a terminal by typing @MODGEN or as a batch job by typing SUBMIT MODGEN. In UNIX, if the file is called modgen.csh, it can be run at a terminal by typing 'csh modgen.csh' or as a batch job by typing 'nohup csh modgen.csh'. MODGEN can be run interactively simply by typing the command MODGEN and then supplying the parameters. The command MODGEN is defined in the file VLB:LOGIN.COM (VMS) or by including the proper vlb directory in one's default path (UNIX). MODGEN Page 2 Parameters Brackets [] indicate default values. End the list of parameters with a slash (/) or end-of-file (control-Z in VMS, control-D in Unix). DISTance = x *** compulsory *** LAMBDA = x *** compulsory *** INCL = x [ 0.0 degrees ] ROTate = x [ 0.0 degrees ] OUTMOD = "filename" [ "OUTMOD" ] TEMP = x1, x2, ... *** compulsory *** DIAMeter = x1, x2, ... *** compulsory *** RADius = x1, x2, ... [ 0.0 ] THETA = x1, x2, ... [ -1, -1, ...; i.e., choose randomly ] TYPE = n1, n2, ... [ 2, 2, ...; i.e., disks ] NSPOTS = n1, n2, ... [ 0, 0, ... ] DISKDUST = x [ 0.0, i.e., no disk dust shells ] SPHDUST = x [ 0.0, i.e., no spherical dust shells ] DISKTYPe = n [ 2 ] SPHTYPe = n [ 2 ] UTEMP = "temperature_units" [ "K" ] UDIAM = "diameter_units" [ "DSUN" ] URAD = "radius_units" [ "AU" ] UDIST = "distance_units [ "PC" ] ULAMB = "wavelength_units" [ "MICRONS" ] Discussion The primary purpose of MODGEN is to produce model files for use in simulated interferometer observations from physical input data. The output model file contains a list of component fluxes (in Jy), positions (in milliarcseconds) relative from the phase center, sizes (in milliarcseconds), axial ratio, orientation (in degrees), and component type. See VLBHELP INTRO for more details on models. General input parameters are the DISTance of the model source (default units are parsecs), the wavelength LAMBDA at which the model fluxes are to be evaluated (default units are microns), the INCLination of the system in degrees, the ROTation angle about the line of sight (east from north) in degrees, and the output model file OUTMOD. DIST and LAMBDA are compulsory; INCL and ROT default to zero degrees (face on in the plane of the sky and not rotated about the line of sight). All units except angular units may be changed in the input file. A wide range of unit types is available; see below. Up to 40 model components can be entered and at least one must be entered. For each component a TEMPerature (default units are degrees K) and a physical DIAMeter (default units are solar diameters) must be specified. Note that non-thermal sources can be created by setting TEMP for each component to the brightness temperature at the appropriate LAMBDA. In addition, a RADius (default units in astronomical units) in the plane of the sky (before tilting with INCL) and an angular location MODGEN Page 3 THETA (in degrees east from north before rotating with ROT) can be specified. The default RADius is zero. If THETA for a component is set to -1 (the default), MODGEN generates a random angle for the component. The default component type is a disk, but this can be changed for each component with the array TYPE. All components with types 0-4 are given circular shape. In addition, dark spots with negative flux of up to 10 percent of a component can be generated on the surface of each component to simulate star spots, structure on the surface of a planet, a obscuring clouds, etc. The negative spot flux is chosen randomly and spots are not allowed to extend beyond the edge of the component. The default is NSPOTS=0 for each component. If one or more values are missing in the TEMP, DIAM, and TYPE lists, the number of components will be derived from the longest list, and the missing values will be generated from the last non-default value in each list. In addition to user-specified components, if requested, MODGEN will create thirty (30) disk dust shells which coexist with the model components. These shells stretch from a radius of about a factor of three closer to center than the next innermost component to a factor of three farther than the outermost component. They are created in thermal equilibrium with the hottest component at the phase center (all other components are ignored) and a temperature appropriate for that thermal equilibrium; the dust melting temperature is taken to be 1000 degrees K above which the surface brightness exponentially decreases with temperature. The dust shell dimensionless emissivity is given by the parameter DISKDUST, whose default value is zero, i.e., don't generate the shells. The shells are generated by overlapping two model components (default type disk which can be changed with parameter DISKTYP), one positive and the other negative; the total number of components generated for the 30 shells is therefore 60. Disk dust shells are initially placed in the plane of the sky, but they tilt with the application of INCL and ROT. If a shell becomes optically thick due to tilting, its luminosity is limited to the black body value. However, dust extinction of other model components is not taken into account. The user can also create thirty (30) spherical dust shells (another 60 components) which also coexist with the other model components but which do not flatten as the system inclination is changed. These are controlled by parameters SPHDUST (the dimensionless emissivity) and SPHTYP in the same way as the disk dust shells are. Units The default units mentioned above can be easily changed with the parameters UTEMP, UDIAM, URAD, UDIST, and ULAMB. Acceptable values of UTEMP are most variations of 'EV' (including KEV, MEV, etc.), most variations of 'HZ' (including KHZ, MHZ, GHZ, THZ, etc.), and, of course, degrees K (the default). There are 26 acceptable units of length for UDIAM, URAD, UDIST, and ULAMB. These include ANGST, MICRON, most variations of 'METER' (MM, CM, etc.), some standard object sizes (REARTH, RSUN, DSUN), astronomical length units (AU, LY, PC, KPC, etc.), and even 'Z' or 'REDSH' (normally used for UDIST) to specify a cosmological distance, assuming Ho=75 km/s/Mpc. MODGEN Page 4 Program History Version 1.0: 1991 Feb 1. New program. (D.L. Meier) Version 1.1: 1991 Feb 11. Add DISKTYPE and SPHTYPE parameters to allow control over model type of dust shells. Limit flattened disk dust emissivity to unity. Update physical constants in UCONV (DLM). D.L. Meier, 1991 Mar 7