Changeset 40491 for trunk/psModules
- Timestamp:
- Jun 27, 2018, 4:11:56 PM (8 years ago)
- Location:
- trunk/psModules
- Files:
-
- 5 edited
- 3 copied
-
. (modified) (1 prop)
-
src/objects/Makefile.am (modified) (2 diffs)
-
src/objects/models/fwhm.sh (modified) (7 diffs)
-
src/objects/models/hscv1.fwhm.h (copied) (copied from branches/czw_branch/20170908/psModules/src/objects/models/hscv1.fwhm.h )
-
src/objects/models/pmModel_HSC_V1.c (copied) (copied from branches/czw_branch/20170908/psModules/src/objects/models/pmModel_HSC_V1.c )
-
src/objects/models/pmModel_HSC_V1.h (copied) (copied from branches/czw_branch/20170908/psModules/src/objects/models/pmModel_HSC_V1.h )
-
src/objects/pmModelClass.c (modified) (2 diffs)
-
src/objects/pmSourceOutputs.c (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psModules
-
Property svn:mergeinfo
set to
/branches/czw_branch/20160809/psModules merged eligible /branches/czw_branch/20170908/psModules merged eligible
-
Property svn:mergeinfo
set to
-
trunk/psModules/src/objects/Makefile.am
r37964 r40491 92 92 models/pmModel_EXP.c \ 93 93 models/pmModel_DEV.c \ 94 models/pmModel_TRAIL.c 94 models/pmModel_TRAIL.c \ 95 models/pmModel_HSC_V1.c 95 96 96 97 pkginclude_HEADERS = \ … … 142 143 models/pmModel_EXP.h \ 143 144 models/pmModel_DEV.h \ 144 models/pmModel_TRAIL.h 145 models/pmModel_TRAIL.h \ 146 models/pmModel_HSC_V1.h 145 147 146 148 CLEANFILES = *~ -
trunk/psModules/src/objects/models/fwhm.sh
r38280 r40491 161 161 end 162 162 163 # qgauss is like ps1_v1 with z^2.25164 macro find.fwhm. qgauss163 # hsc 164 macro find.fwhm.hscv1 165 165 if ($0 != 2) 166 echo "USAGE: find. qgauss(K)"166 echo "USAGE: find.fwhm (K)" 167 167 break 168 168 end … … 180 180 create z 0 50 $dz 181 181 182 # set f = 1.0 / (1.0 + $K*z + z^ 2.25)183 # f = $K*z + z^ 2.25- 1.0, find where f == 0.0184 185 set f = $K*z + z^ 2.25- 1.0186 set dfdz = $K + 2.25*z^1.25182 # set f = 1.0 / (1.0 + $K*z + z^1.667) 183 # f = $K*z + z^1.667 - 1.0, find where f == 0.0 184 185 set f = $K*z + z^1.8 - 1.0 186 set dfdz = $K + 1.8*z^0.8 187 187 188 188 #lim -n 0 z f; clear; box; plot z f 189 189 #lim -n 1 z dfdz; clear; box; plot z dfdz 190 190 191 $nZ0 = 0 192 $nZ1 = 5 / $dz 191 # these just need to bound the solution 192 $nZ0 = 0.5 / $dz 193 $nZ1 = 5.0 / $dz 193 194 194 195 $Zg = 0.5*(z[$nZ0] + z[$nZ1]) … … 206 207 $dZ = $Fg / $dFdz_g 207 208 209 # echo -no-return $Zg $Fg $dZ $dFdz_g 210 211 $Zg -= $dZ 212 213 $Zg = max ($Zg , 0) 214 $Zg = min ($Zg , z[-2]) 215 $nZg = int($Zg / $dz) 216 217 # echo ": $Zg $nZg" 218 end 219 # echo $Zg $Fg $dZ $dFdz_g 220 $Zhm = $Zg 221 $FWHM = 2*sqrt(2*$Zg) 222 223 fprintf "%4.2f, // %4.1f, %4.2f" $FWHM $K $Zhm 224 end 225 226 # qgauss is like ps1_v1 with z^2.25 227 macro find.fwhm.qgauss 228 if ($0 != 2) 229 echo "USAGE: find.qgauss (K)" 230 break 231 end 232 233 $K = $1 234 235 if ($K == 0.0) 236 $Zhm = 1.0 237 $FWHM = 2*sqrt(2) 238 fprintf "%4.2f, // %4.1f, %4.2f" $FWHM $K $Zhm 239 return 240 end 241 242 $dz = 0.01 243 create z 0 50 $dz 244 245 # set f = 1.0 / (1.0 + $K*z + z^2.25) 246 # f = $K*z + z^2.25 - 1.0, find where f == 0.0 247 248 set f = $K*z + z^2.25 - 1.0 249 set dfdz = $K + 2.25*z^1.25 250 251 #lim -n 0 z f; clear; box; plot z f 252 #lim -n 1 z dfdz; clear; box; plot z dfdz 253 254 $nZ0 = 0 255 $nZ1 = 5 / $dz 256 257 $Zg = 0.5*(z[$nZ0] + z[$nZ1]) 258 $nZg = int($Zg / $dz) 259 $dZ = 1.0 260 261 for i 0 10 262 # interpolate between $nZg and $nZg + 1 263 $Fg = f[$nZg] + ($Zg - $nZg*$dz)*(f[$nZg+1] - f[$nZg])/$dz 264 $dFdz_g = dfdz[$nZg] + ($Zg - $nZg*$dz)*(dfdz[$nZg+1] - dfdz[$nZg])/$dz 265 266 # $Fg = f[$nZg] 267 # $dFdz_g = dfdz[$nZg] 268 269 $dZ = $Fg / $dFdz_g 270 208 271 # echo $Zg $Fg $dZ $dFdz_g 209 272 … … 223 286 if ($0 != 4) 224 287 echo "USAGE: fwhm.trend (model) (struct) (output)" 225 echo " model: pgauss, rgauss, ps1v1, qgauss "288 echo " model: pgauss, rgauss, ps1v1, qgauss, hscv1" 226 289 break 227 290 end … … 229 292 delete fwhm_v k_v 230 293 231 $SAVE = 0294 $SAVE = 1 232 295 if ($SAVE) exec rm -f $3 233 296 if ($SAVE) output $3 … … 240 303 if ($SAVE) echo "# define MIN_FWHM_BIN $minK" 241 304 if ($SAVE) echo "# define N_FWHM_BIN {int(($maxK - $minK) / $delK) + 1}" 242 if ($SAVE) echo "static float $2[] = \{"305 # if ($SAVE) echo "static float $2[] = \{" 243 306 244 307 for k $minK $maxK $delK -incl … … 247 310 concat $FWHM fwhm_v 248 311 end 249 if ($SAVE) echo "\}@"312 # if ($SAVE) echo "\}@" 250 313 if ($SAVE) output stdout 251 314 252 lim k_v fwhm_v; clear; box; plot k_v fwhm_v -pt 10 -sz 1.0253 end 254 315 # lim k_v fwhm_v; clear; box; plot k_v fwhm_v -pt 10 -sz 1.0 316 end 317 -
trunk/psModules/src/objects/pmModelClass.c
r36859 r40491 47 47 # include "models/pmModel_QGAUSS.h" 48 48 # include "models/pmModel_PS1_V1.h" 49 # include "models/pmModel_HSC_V1.h" 49 50 # include "models/pmModel_RGAUSS.h" 50 51 # include "models/pmModel_SERSIC.h" … … 63 64 {"PS_MODEL_DEV", 7, 1, (pmModelFunc)pmModelFunc_DEV, (pmModelFlux)pmModelFlux_DEV, (pmModelRadius)pmModelRadius_DEV, (pmModelSetFWHM)pmModelSetFWHM_DEV, (pmModelLimits)pmModelLimits_DEV, (pmModelGuessFunc)pmModelGuess_DEV, (pmModelFromPSFFunc)pmModelFromPSF_DEV, (pmModelParamsFromPSF)pmModelParamsFromPSF_DEV, (pmModelFitStatusFunc)pmModelFitStatus_DEV, (pmModelSetLimitsFunc)pmModelSetLimits_DEV }, 64 65 {"PS_MODEL_TRAIL", 7, 0, (pmModelFunc)pmModelFunc_TRAIL, (pmModelFlux)pmModelFlux_TRAIL, (pmModelRadius)pmModelRadius_TRAIL, (pmModelSetFWHM)pmModelSetFWHM_TRAIL, (pmModelLimits)pmModelLimits_TRAIL, (pmModelGuessFunc)pmModelGuess_TRAIL, (pmModelFromPSFFunc)pmModelFromPSF_TRAIL, (pmModelParamsFromPSF)pmModelParamsFromPSF_TRAIL, (pmModelFitStatusFunc)pmModelFitStatus_TRAIL, (pmModelSetLimitsFunc)pmModelSetLimits_TRAIL }, 66 {"PS_MODEL_HSC_V1", 8, 0, (pmModelFunc)pmModelFunc_HSC_V1, (pmModelFlux)pmModelFlux_HSC_V1, (pmModelRadius)pmModelRadius_HSC_V1, (pmModelSetFWHM)pmModelSetFWHM_HSC_V1, (pmModelLimits)pmModelLimits_HSC_V1, (pmModelGuessFunc)pmModelGuess_HSC_V1, (pmModelFromPSFFunc)pmModelFromPSF_HSC_V1, (pmModelParamsFromPSF)pmModelParamsFromPSF_HSC_V1, (pmModelFitStatusFunc)pmModelFitStatus_HSC_V1, (pmModelSetLimitsFunc)pmModelSetLimits_HSC_V1 }, 65 67 }; 66 68 -
trunk/psModules/src/objects/pmSourceOutputs.c
r38038 r40491 135 135 outputs->psfCore = PAR[PM_PAR_7]; 136 136 } 137 if (model->type == pmModelClassGetType ("PS_MODEL_HSC_V1")) { 138 outputs->psfCore = PAR[PM_PAR_7]; 139 } 137 140 138 141 outputs->psfMajorFWHM = model->class->modelSetFWHM(model->params, axes.major);
Note:
See TracChangeset
for help on using the changeset viewer.
