00001 00002 /* 00003 * This file is generated by a script, do not edit. 00004 * 00005 * This documentation string was generated from 00006 * a C comment block within a mex program 00007 * by `doc2docstring.py' on Fri Jul 1 22:35:36 2011. 00008 */ 00009 00010 static const char docstring[] = 00011 "smoothsphere: smooth a projected sphere with a kernel\n" 00012 "\n" 00013 " [y,s,p]=smoothsphere(x,geom,k,kparam,kwt,bws)\n" 00014 " * Given a solar image of location given by `geom', smooth it\n" 00015 " using the radially-symmetric kernel `k'.\n" 00016 " * This version is threaded, using 8 threads by default.\n" 00017 " Set MXT_NUM_THREADS in the environment to lower this number.\n" 00018 " * Off-disk values are indicated by NaN in the output.\n" 00019 " * The kernel used is dependent only on the weighted distance\n" 00020 " between two positions, say P1 and P2, in three-dimensional\n" 00021 " coordinates, normalized to live on the unit sphere:\n" 00022 " d = P1 - P2\n" 00023 " dist = d' W d (>= 0)\n" 00024 " for a diagonal weight matrix W.\n" 00025 " The kernel values in `k' are specified for values of `dist'\n" 00026 " in a linear range from 0 to kparam(1), typically 0.015.\n" 00027 " Given a certain value of `dist' found between an image pixel\n" 00028 " and the kernel center, the associated weight is interpolated\n" 00029 " linearly using the table. If dot > kparam(1), a zero weight\n" 00030 " is used.\n" 00031 " * We have typically let k be a gaussian kernel of width\n" 00032 " (standard deviation) = 0.0325, i.e.,\n" 00033 " k(dist) = C * exp[ -0.5 * dist / sqr(0.0325) ],\n" 00034 " since dist is a squared quantity already, and C is a constant\n" 00035 " chosen to make k have unit norm as a spherical kernel.\n" 00036 " * As a shortcut, if k is a scalar, the kernel is taken to\n" 00037 " be the above function, but with width 0.0325 multiplied by\n" 00038 " k(1). In this case, the LUT consists of 256 points evenly\n" 00039 " spaced over [0,kparam(1)].\n" 00040 " * The diagonal portion of the distance weight matrix W may be\n" 00041 " supplied as a triple kwt. This weights distances between\n" 00042 " P1 and P2 in the x, y, and z directions respectively. The\n" 00043 " P-angle (rotation in the x-y plane) is taken into account in\n" 00044 " this weighting, so that y is cross-track, and x and z are\n" 00045 " always along-track.\n" 00046 " * Typically the kernel falls to zero rather quickly. As a\n" 00047 " computational shortcut, it is assumed that the kernel extends\n" 00048 " only kparam(2) pixels on each side of its center. For W = I,\n" 00049 " this implies that an \"on\" pixel in x extends to influence at\n" 00050 " most a \"swath\" 2*kparam(2)+1 pixels on a side. Both the P-angle\n" 00051 " and the W matrix are taken into account in finding the swath.\n" 00052 " For instance, a W_y > 1 will cause the y portion of the swath\n" 00053 " to shrink, because distance decreases faster. The swath is\n" 00054 " always parallel to the (i,j) image axes, so P-angles not a\n" 00055 " multiple of 90 degrees will cause the swath to be enlarged\n" 00056 " to contain a rotated rectangle.\n" 00057 " * To decrease computational load, nearby pixels may be grouped\n" 00058 " into meta-pixels called blocks. This is especially trouble-free\n" 00059 " away from the limb, where local geometry is nearly planar, so\n" 00060 " the blocking is given as a table that depends on z (in [0,1]).\n" 00061 " A row in the table of (z,bw) means: above the value z, use\n" 00062 " a blocking of bw (>1). For z=0 to bws(1,1), no blocking is used.\n" 00063 " * For example, the small-image default means to use single pixels\n" 00064 " below 0.4, 2x2 blocks above 0.4, and 4x4 above 0.6. For typical\n" 00065 " MDI images, this is 16%, 20%, and 64% of on-disk pixels, respectively.\n" 00066 " Using block sizes that do not pack together is legal, but causes\n" 00067 " inefficiency due to poor fits between abutting blocks; diagnose\n" 00068 " bad packing with the p output.\n" 00069 " * Supply bws=[] to treat all pixels singly (turn off blocking).\n" 00070 " * The optional output s is the z-coordinate (in [0,R]).\n" 00071 " The optional p output is the block (patch) number of each\n" 00072 " pixel.\n" 00073 "\n" 00074 " Inputs:\n" 00075 " real x[m,n];\n" 00076 " real geom[5]; -- [x0 y0 rsun b0 p0]\n" 00077 " real k[p] or k[1];\n" 00078 " real kparam[2]; -- [top window]\n" 00079 " opt real kwt = [1 1 1];\n" 00080 " opt real bws[bwnum,2] = [0.4 2;0.6 4]; -- m < 2048\n" 00081 " = [0.3 2;0.5 4; 0.7 8]; -- m >= 2048\n" 00082 "\n" 00083 " Outputs:\n" 00084 " real y[m,n];\n" 00085 " opt real s[m,n];\n" 00086 " opt int p[m,n];\n" 00087 "\n" 00088 " See also:\n" 00089 "\n" 00090 " implemented as a mex file\n" 00091 "\n" 00092 ""; 00093 00094 /* End of generated file */ 00095

Generated on Mon Mar 26 07:00:45 2018 for JSOC_Documentation by 1.5.7.1